JBoss Tools SVN: r17998 - in trunk/smooks/plugins/org.jboss.tools.smooks.ui: META-INF and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2009-10-09 06:33:52 -0400 (Fri, 09 Oct 2009)
New Revision: 17998
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/.settings/org.eclipse.jdt.core.prefs
trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/contentassist/TypePackageCompletionProcessor.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ProcessGraphContentProvider.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksGraphicalEditorPart.java
Log:
JBIDE-4648
remove the Zest plugin dependency and change some codes which use the APIs from Zest.
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/.settings/org.eclipse.jdt.core.prefs 2009-10-09 10:19:27 UTC (rev 17997)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/.settings/org.eclipse.jdt.core.prefs 2009-10-09 10:33:52 UTC (rev 17998)
@@ -1,8 +1,12 @@
-#Wed Aug 05 22:55:22 CST 2009
+#Fri Oct 09 18:14:57 CST 2009
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF 2009-10-09 10:19:27 UTC (rev 17997)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF 2009-10-09 10:33:52 UTC (rev 17998)
@@ -27,8 +27,6 @@
org.jboss.tools.smooks.runtime,
org.eclipse.gef,
org.eclipse.jdt.launching,
- org.eclipse.zest.core,
- org.eclipse.zest.layouts,
org.eclipse.core.filesystem
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/contentassist/TypePackageCompletionProcessor.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/contentassist/TypePackageCompletionProcessor.java 2009-10-09 10:19:27 UTC (rev 17997)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/contentassist/TypePackageCompletionProcessor.java 2009-10-09 10:33:52 UTC (rev 17998)
@@ -240,7 +240,7 @@
private Comparator<? super Object> getComparator() {
if (fComparator == null) {
- fComparator = new Comparator<? super Object>() {
+ fComparator = new Comparator<Object>() {
/*
* (non-Javadoc)
*
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ProcessGraphContentProvider.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ProcessGraphContentProvider.java 2009-10-09 10:19:27 UTC (rev 17997)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ProcessGraphContentProvider.java 2009-10-09 10:33:52 UTC (rev 17998)
@@ -15,7 +15,6 @@
import java.util.List;
import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.zest.core.viewers.IGraphEntityContentProvider;
import org.jboss.tools.smooks.model.graphics.ext.ProcessType;
import org.jboss.tools.smooks.model.graphics.ext.TaskType;
@@ -23,7 +22,7 @@
* @author Dart
*
*/
-public class ProcessGraphContentProvider implements IGraphEntityContentProvider
+public class ProcessGraphContentProvider /* implements IGraphEntityContentProvider */
{
private void collectTasks(List<Object> list, TaskType task) {
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksGraphicalEditorPart.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksGraphicalEditorPart.java 2009-10-09 10:19:27 UTC (rev 17997)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksGraphicalEditorPart.java 2009-10-09 10:33:52 UTC (rev 17998)
@@ -41,24 +41,18 @@
import org.eclipse.gef.ui.parts.GraphicalEditorWithPalette;
import org.eclipse.gef.ui.parts.GraphicalViewerKeyHandler;
import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.util.TransferDropTargetListener;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.IWorkbenchPart;
@@ -69,11 +63,6 @@
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.Hyperlink;
import org.eclipse.ui.forms.widgets.ScrolledPageBook;
-import org.eclipse.ui.forms.widgets.Section;
-import org.eclipse.zest.core.viewers.GraphViewer;
-import org.eclipse.zest.core.widgets.ZestStyles;
-import org.eclipse.zest.layouts.LayoutStyles;
-import org.eclipse.zest.layouts.algorithms.HorizontalTreeLayoutAlgorithm;
import org.jboss.tools.smooks.configuration.SmooksConstants;
import org.jboss.tools.smooks.configuration.editors.IXMLStructuredObject;
import org.jboss.tools.smooks.configuration.editors.SelectorCreationDialog;
@@ -93,11 +82,6 @@
import org.jboss.tools.smooks.gef.tree.model.TreeContainerModel;
import org.jboss.tools.smooks.gef.tree.model.TreeNodeConnection;
import org.jboss.tools.smooks.gef.tree.model.TreeNodeModel;
-import org.jboss.tools.smooks.graphical.actions.AbstractProcessGraphAction;
-import org.jboss.tools.smooks.graphical.actions.AddNextTaskNodeAction;
-import org.jboss.tools.smooks.graphical.actions.AddPreviousTaskNodeAction;
-import org.jboss.tools.smooks.graphical.actions.AddTaskNodeAction;
-import org.jboss.tools.smooks.graphical.actions.DeleteTaskNodeAction;
import org.jboss.tools.smooks.graphical.editors.commands.IgnoreException;
import org.jboss.tools.smooks.graphical.editors.editparts.InputDataContainerEditPart;
import org.jboss.tools.smooks.graphical.editors.editparts.SmooksGraphUtil;
@@ -107,8 +91,6 @@
import org.jboss.tools.smooks.graphical.editors.model.JavaBeanChildGraphModel;
import org.jboss.tools.smooks.graphical.editors.model.JavaBeanGraphModel;
import org.jboss.tools.smooks.model.graphics.ext.FigureType;
-import org.jboss.tools.smooks.model.graphics.ext.GraphFactory;
-import org.jboss.tools.smooks.model.graphics.ext.GraphPackage;
import org.jboss.tools.smooks.model.graphics.ext.GraphType;
import org.jboss.tools.smooks.model.graphics.ext.ISmooksGraphChangeListener;
import org.jboss.tools.smooks.model.graphics.ext.ProcessType;
@@ -149,7 +131,7 @@
private ConnectionModelFactory connectionModelFactory;
- private GraphViewer processGraphViewer;
+// private GraphViewer processGraphViewer;
private ScrolledPageBook pageBook;
@@ -190,41 +172,41 @@
}
protected void createProcessGraphicalPanel(Composite parent) {
- processGraphViewer = new GraphViewer(parent, SWT.NONE);
- processGraphViewer.setContentProvider(new ProcessGraphContentProvider());
-
- processGraphViewer.setLabelProvider(new LabelProvider() {
-
- @Override
- public Image getImage(Object element) {
- // TODO Auto-generated method stub
- return super.getImage(element);
- }
-
- @Override
- public String getText(Object element) {
- if (element instanceof TaskType) {
- String id = ((TaskType) element).getId();
- String name = ((TaskType) element).getName();
- if (name == null) {
- name = id;
- }
- if (name == null) {
- name = "null";
- }
- return name;
- }
- return "";
- }
-
- });
- processGraphViewer.setConnectionStyle(ZestStyles.CONNECTIONS_DIRECTED);
- HorizontalTreeLayoutAlgorithm layoutAlgorithm = new HorizontalTreeLayoutAlgorithm(
- LayoutStyles.NO_LAYOUT_NODE_RESIZING);
- processGraphViewer.setLayoutAlgorithm(layoutAlgorithm, true);
- if (parent instanceof Section) {
- ((Section) parent).setClient(processGraphViewer.getControl());
- }
+// processGraphViewer = new GraphViewer(parent, SWT.NONE);
+// processGraphViewer.setContentProvider(new ProcessGraphContentProvider());
+//
+// processGraphViewer.setLabelProvider(new LabelProvider() {
+//
+// @Override
+// public Image getImage(Object element) {
+// // TODO Auto-generated method stub
+// return super.getImage(element);
+// }
+//
+// @Override
+// public String getText(Object element) {
+// if (element instanceof TaskType) {
+// String id = ((TaskType) element).getId();
+// String name = ((TaskType) element).getName();
+// if (name == null) {
+// name = id;
+// }
+// if (name == null) {
+// name = "null";
+// }
+// return name;
+// }
+// return "";
+// }
+//
+// });
+// processGraphViewer.setConnectionStyle(ZestStyles.CONNECTIONS_DIRECTED);
+// HorizontalTreeLayoutAlgorithm layoutAlgorithm = new HorizontalTreeLayoutAlgorithm(
+// LayoutStyles.NO_LAYOUT_NODE_RESIZING);
+// processGraphViewer.setLayoutAlgorithm(layoutAlgorithm, true);
+// if (parent instanceof Section) {
+// ((Section) parent).setClient(processGraphViewer.getControl());
+// }
}
protected void initProcessGraphicalViewer() {
@@ -236,111 +218,111 @@
}
if (process != null) {
- getProcessGraphViewer().setInput(process);
+// getProcessGraphViewer().setInput(process);
}
}
protected void configProcessGraphicalViewer() {
- MenuManager manager = new MenuManager();
-
- initProcessGraphicalPanelActions(manager);
-
- Menu menu = manager.createContextMenu(getProcessGraphViewer().getControl());
- getProcessGraphViewer().getControl().setMenu(menu);
- manager.addMenuListener(new IMenuListener() {
-
- public void menuAboutToShow(IMenuManager manager) {
- for (Iterator<?> iterator = processPanelActions.iterator(); iterator.hasNext();) {
- IAction a = (IAction) iterator.next();
- if (a instanceof AbstractProcessGraphAction) {
- ((AbstractProcessGraphAction) a).selectionChanged(new SelectionChangedEvent(processGraphViewer,
- processGraphViewer.getSelection()));
- }
- }
- manager.update();
- }
- });
+// MenuManager manager = new MenuManager();
+//
+// initProcessGraphicalPanelActions(manager);
+//
+// Menu menu = manager.createContextMenu(getProcessGraphViewer().getControl());
+// getProcessGraphViewer().getControl().setMenu(menu);
+// manager.addMenuListener(new IMenuListener() {
+//
+// public void menuAboutToShow(IMenuManager manager) {
+// for (Iterator<?> iterator = processPanelActions.iterator(); iterator.hasNext();) {
+// IAction a = (IAction) iterator.next();
+// if (a instanceof AbstractProcessGraphAction) {
+// ((AbstractProcessGraphAction) a).selectionChanged(new SelectionChangedEvent(processGraphViewer,
+// processGraphViewer.getSelection()));
+// }
+// }
+// manager.update();
+// }
+// });
}
protected void initProcessGraphicalPanelActions(IMenuManager manager) {
- AddTaskNodeAction addInputTaskAction = new AddTaskNodeAction(SmooksConstants.TASK_ID_INPUT, "Add Input Task",
- smooksModelProvider) {
-
- @Override
- public void run() {
- if (this.provider != null) {
- SmooksGraphicsExtType graph = provider.getSmooksGraphicsExt();
- ProcessType process = graph.getProcesses().getProcess();
- if (process != null && process.getTask().isEmpty()) {
- TaskType childTask = GraphFactory.eINSTANCE.createTaskType();
- childTask.setId(taskID);
- childTask.setName("Input Task");
- Command command = AddCommand.create(provider.getEditingDomain(), process,
- GraphPackage.Literals.PROCESS_TYPE__TASK, childTask);
- provider.getEditingDomain().getCommandStack().execute(command);
- }
- }
- }
-
- @Override
- public void update() {
- this.setEnabled(false);
- SmooksGraphicsExtType graph = smooksModelProvider.getSmooksGraphicsExt();
- ProcessType process = graph.getProcesses().getProcess();
- if (process != null && process.getTask().isEmpty()) {
- this.setEnabled(true);
- }
- }
-
- };
- manager.add(addInputTaskAction);
- processPanelActions.add(addInputTaskAction);
-
- MenuManager addNextTaskMenuManager = new MenuManager("Add Next Task");
- manager.add(addNextTaskMenuManager);
-
- AddNextTaskNodeAction addNextInputAction = new AddNextTaskNodeAction(SmooksConstants.TASK_ID_INPUT, "Input",
- smooksModelProvider);
- this.processPanelActions.add(addNextInputAction);
- addNextTaskMenuManager.add(addNextInputAction);
-
- AddNextTaskNodeAction addNextJavaMappingAction = new AddNextTaskNodeAction(
- SmooksConstants.TASK_ID_JAVA_MAPPING, "Java Mapping", smooksModelProvider);
- this.processPanelActions.add(addNextJavaMappingAction);
- addNextTaskMenuManager.add(addNextJavaMappingAction);
-
- MenuManager addPreTaskMenuManager = new MenuManager("Add Previous Task");
- manager.add(addPreTaskMenuManager);
-
- AddPreviousTaskNodeAction addPreInputAction = new AddPreviousTaskNodeAction(SmooksConstants.TASK_ID_INPUT,
- "Input", smooksModelProvider);
- this.processPanelActions.add(addPreInputAction);
- addPreTaskMenuManager.add(addPreInputAction);
-
- AddPreviousTaskNodeAction addPreJavaMappingAction = new AddPreviousTaskNodeAction(
- SmooksConstants.TASK_ID_JAVA_MAPPING, "Java Mapping", smooksModelProvider);
- this.processPanelActions.add(addPreJavaMappingAction);
- addPreTaskMenuManager.add(addPreJavaMappingAction);
-
- DeleteTaskNodeAction deleteAction = new DeleteTaskNodeAction(smooksModelProvider);
- manager.add(deleteAction);
-
- this.processPanelActions.add(deleteAction);
-
- getProcessGraphViewer().addSelectionChangedListener(new ISelectionChangedListener() {
-
- public void selectionChanged(SelectionChangedEvent event) {
- IStructuredSelection selection = (IStructuredSelection) event.getSelection();
- Object firstElement = selection.getFirstElement();
- showTaskControl(firstElement);
- }
- });
+// AddTaskNodeAction addInputTaskAction = new AddTaskNodeAction(SmooksConstants.TASK_ID_INPUT, "Add Input Task",
+// smooksModelProvider) {
+//
+// @Override
+// public void run() {
+// if (this.provider != null) {
+// SmooksGraphicsExtType graph = provider.getSmooksGraphicsExt();
+// ProcessType process = graph.getProcesses().getProcess();
+// if (process != null && process.getTask().isEmpty()) {
+// TaskType childTask = GraphFactory.eINSTANCE.createTaskType();
+// childTask.setId(taskID);
+// childTask.setName("Input Task");
+// Command command = AddCommand.create(provider.getEditingDomain(), process,
+// GraphPackage.Literals.PROCESS_TYPE__TASK, childTask);
+// provider.getEditingDomain().getCommandStack().execute(command);
+// }
+// }
+// }
+//
+// @Override
+// public void update() {
+// this.setEnabled(false);
+// SmooksGraphicsExtType graph = smooksModelProvider.getSmooksGraphicsExt();
+// ProcessType process = graph.getProcesses().getProcess();
+// if (process != null && process.getTask().isEmpty()) {
+// this.setEnabled(true);
+// }
+// }
+//
+// };
+// manager.add(addInputTaskAction);
+// processPanelActions.add(addInputTaskAction);
+//
+// MenuManager addNextTaskMenuManager = new MenuManager("Add Next Task");
+// manager.add(addNextTaskMenuManager);
+//
+// AddNextTaskNodeAction addNextInputAction = new AddNextTaskNodeAction(SmooksConstants.TASK_ID_INPUT, "Input",
+// smooksModelProvider);
+// this.processPanelActions.add(addNextInputAction);
+// addNextTaskMenuManager.add(addNextInputAction);
+//
+// AddNextTaskNodeAction addNextJavaMappingAction = new AddNextTaskNodeAction(
+// SmooksConstants.TASK_ID_JAVA_MAPPING, "Java Mapping", smooksModelProvider);
+// this.processPanelActions.add(addNextJavaMappingAction);
+// addNextTaskMenuManager.add(addNextJavaMappingAction);
+//
+// MenuManager addPreTaskMenuManager = new MenuManager("Add Previous Task");
+// manager.add(addPreTaskMenuManager);
+//
+// AddPreviousTaskNodeAction addPreInputAction = new AddPreviousTaskNodeAction(SmooksConstants.TASK_ID_INPUT,
+// "Input", smooksModelProvider);
+// this.processPanelActions.add(addPreInputAction);
+// addPreTaskMenuManager.add(addPreInputAction);
+//
+// AddPreviousTaskNodeAction addPreJavaMappingAction = new AddPreviousTaskNodeAction(
+// SmooksConstants.TASK_ID_JAVA_MAPPING, "Java Mapping", smooksModelProvider);
+// this.processPanelActions.add(addPreJavaMappingAction);
+// addPreTaskMenuManager.add(addPreJavaMappingAction);
+//
+// DeleteTaskNodeAction deleteAction = new DeleteTaskNodeAction(smooksModelProvider);
+// manager.add(deleteAction);
+//
+// this.processPanelActions.add(deleteAction);
+//
+// getProcessGraphViewer().addSelectionChangedListener(new ISelectionChangedListener() {
+//
+// public void selectionChanged(SelectionChangedEvent event) {
+// IStructuredSelection selection = (IStructuredSelection) event.getSelection();
+// Object firstElement = selection.getFirstElement();
+// showTaskControl(firstElement);
+// }
+// });
}
- public GraphViewer getProcessGraphViewer() {
- return processGraphViewer;
- }
+// public GraphViewer getProcessGraphViewer() {
+// return processGraphViewer;
+// }
@Override
public void createPartControl(Composite parent) {
@@ -414,10 +396,10 @@
getEditorSite().getShell().getDisplay().asyncExec(new Runnable() {
public void run() {
if (mostRecentCommand != null) {
- if (getProcessGraphViewer() != null) {
- getProcessGraphViewer().refresh();
- getProcessGraphViewer().applyLayout();
- }
+// if (getProcessGraphViewer() != null) {
+// getProcessGraphViewer().refresh();
+// getProcessGraphViewer().applyLayout();
+// }
Command rawCommand = mostRecentCommand;
while (rawCommand instanceof CommandWrapper) {
rawCommand = ((CommandWrapper) rawCommand).getCommand();
15 years
JBoss Tools SVN: r17997 - trunk/documentation/guides/GettingStartedGuide/en/modules.
by jbosstools-commits@lists.jboss.org
Author: msorokin
Date: 2009-10-09 06:19:27 -0400 (Fri, 09 Oct 2009)
New Revision: 17997
Modified:
trunk/documentation/guides/GettingStartedGuide/en/modules/project_examples.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-761
Project Example is updated
Modified: trunk/documentation/guides/GettingStartedGuide/en/modules/project_examples.xml
===================================================================
--- trunk/documentation/guides/GettingStartedGuide/en/modules/project_examples.xml 2009-10-09 10:18:44 UTC (rev 17996)
+++ trunk/documentation/guides/GettingStartedGuide/en/modules/project_examples.xml 2009-10-09 10:19:27 UTC (rev 17997)
@@ -13,9 +13,72 @@
<title>Project Examples</title>
<para><emphasis><property>JBoss Developer Studio</property></emphasis> provides an option to download and import a ready-made
- project that you can explore and derive some useful technology implementation lessons. </para>
+ project that you can explore and derive some useful technology implementation lessons from. </para>
+ <para>
+ To adjust the settings of the Project Examples feature you need to navigate to <property>Windows> Preferences > JBoss Tools > Project Examples
+ </property>. </para>
+ <figure>
+ <title>Project Examples Preferences</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/project_examples/preferences.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>The <property>Show experimental sites</property> checkbox serves to enable/disable representing the user sites in the <property>Project Example</property> dialog ( <property>Help > Project Examples</property>). </para>
+
+
+ <section id="UserSites">
+ <title>User Sites</title>
+ <para>
+ As you can see from the <emphasis role="bold">Project Examples Preferences</emphasis> image you can add a custom project example that can be provided by anyone.
+ This feature can, for example, facilitate project testing.
+
+ </para>
+ <para>
+ In oder to add a new project example you need to select the <property>User sites</property>
+ option and press the <property>Add</property> button to the right.
+ </para>
+ <para>When the <property>Add</property> button is pressed the
+ <property>Add Project Example Site</property> dialog is displayed. The dialog contains 2
+ input fields: <property>Name</property> where you need to specify the name of the new entry and <property>URL</property>
+ that has to point to the xml file that contains example project(s) properties.
+ In more detail the structure of the xml file is discussed further in the chapter of the guide.
+ Alternatively, if the xml is stored on your local machine, you can hit the <property>Browse</property> button to select the file in the file system.</para>
+ <para>Here is an example of the xml file that holds project example settings:</para>
+
+ <programlisting role="XML"><![CDATA[
+<projects>
+ <project>
+ <category>User Examples</category>
+ <name>User Project Example</name>
+ <shortDescription>
+ Short project description.
+ </shortDescription>
+ <description>
+ Full project description.
+ </description>
+ <size>10900</size>
+ <url>
+ http://projectexample.org/projectexample.zip
+ </url>
+ </project>
+</projects>
+]]></programlisting>
+
+ <para>Once you define the location of the xml file with projects settings you will see a new user site entry added.
+ Please note now if you select the entry you can edit and remove it with the corresponding buttons to the right.
+ You can not do such operations with the <property>Plugin provides sites</property>.</para>
+
+ <para>When the user sites location is set up you can download and install the project(s).
+ Please see the next chapter of the guide. </para>
+ </section>
+
+
+
<section id="DownloadingProjectExample">
<title>Downloading a Project Example</title>
@@ -25,7 +88,7 @@
<para>Go to the menu bar and select <emphasis><property>File > New > Other...</property></emphasis>
</para></listitem>
- <listitem><para>Select <emphasis><property>Jboss Tools > Project Examples</property></emphasis>(You can also call the <emphasis><property>Project Examples</property></emphasis> from menu bar: <emphasis><property>Help > Project Examples...</property></emphasis>)</para></listitem>
+ <listitem><para>Select <emphasis><property>Jboss Tools > Project Examples</property></emphasis>(You can also call the <emphasis><property>Project Examples</property></emphasis> from menu bar: <property>Help > Project Examples...</property>)</para></listitem>
</itemizedlist>
@@ -39,8 +102,11 @@
</mediaobject>
</figure>
+ <para>
+ Alternatively, you should navigate to <property>New > Other..</property>, scroll down to find the <property>JBoss Tools</property> option (or just type in the first letters of the word "JBoss" for quick search), expand the option and select <property>Project Examples</property>, click <property>Next</property>.
+ </para>
<itemizedlist>
- <listitem><para>Now in the New Project Example dialog you can select a project you would like to explore and a site to download it from</para>
+ <listitem><para>Now in the <property>New Project Example</property> dialog you can select a project you would like to explore and a site to download it from</para>
<para>Project Examples Wizard provides a filter field to more easily locate the project examples you want, so you can type in the project you would like to explore in the field.</para></listitem>
</itemizedlist>
@@ -54,6 +120,21 @@
</imageobject>
</mediaobject>
</figure>
+
+ <para>If you have previously specified user sites (see the <link linkend="UserSites">User Sites</link> chapter) they also will be displayed in the list of project examples in the category that was defined in the xml file with user sites settings. </para>
+ <figure>
+ <title>User Site</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/project_examples/pr_example_user_site.png"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para>
+ Pleas note that to view the user sites you need to have <property>Show experimental sites</property> checked.
+ </para>
+
<note>
<title>Note:</title>
<para>
@@ -69,8 +150,11 @@
<para>When downloading is finished the project will be imported automatically and you will be able to see it in the Package Explorer.</para>
- <para>Now you can run the application on the server.</para>
+ <para>Now you can run the application on the server.
+ </para>
+
+
<figure>
<title>Seam Demo Application run on the Server</title>
<mediaobject>
@@ -79,6 +163,7 @@
</imageobject>
</mediaobject>
</figure>
+
</section>
<section id="QuickFixes">
15 years
JBoss Tools SVN: r17996 - trunk/documentation/guides/GettingStartedGuide/en/images/project_examples.
by jbosstools-commits@lists.jboss.org
Author: msorokin
Date: 2009-10-09 06:18:44 -0400 (Fri, 09 Oct 2009)
New Revision: 17996
Added:
trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_user_site.png
trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/preferences.png
Modified:
trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_1.png
trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_2.png
Log:
https://jira.jboss.org/jira/browse/JBDS-761
Project Example is updated
Modified: trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_1.png
===================================================================
(Binary files differ)
Modified: trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_2.png
===================================================================
(Binary files differ)
Added: trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_user_site.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/pr_example_user_site.png
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:mime-type
+ application/octet-stream
Added: trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/preferences.png
===================================================================
(Binary files differ)
Property changes on: trunk/documentation/guides/GettingStartedGuide/en/images/project_examples/preferences.png
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:mime-type
+ application/octet-stream
15 years
JBoss Tools SVN: r17995 - in trunk: seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2009-10-09 06:16:59 -0400 (Fri, 09 Oct 2009)
New Revision: 17995
Added:
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSearcher.java
Modified:
trunk/common/plugins/org.jboss.tools.common.el.ui/src/org/jboss/tools/common/el/ui/refactoring/RenameMethodParticipant.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameMethodParticipant.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/ELSearchQuery.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/SeamELReferencesQueryParticipant.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4856, https://jira.jboss.org/jira/browse/JBIDE-4771
Modified: trunk/common/plugins/org.jboss.tools.common.el.ui/src/org/jboss/tools/common/el/ui/refactoring/RenameMethodParticipant.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.el.ui/src/org/jboss/tools/common/el/ui/refactoring/RenameMethodParticipant.java 2009-10-09 09:15:53 UTC (rev 17994)
+++ trunk/common/plugins/org.jboss.tools.common.el.ui/src/org/jboss/tools/common/el/ui/refactoring/RenameMethodParticipant.java 2009-10-09 10:16:59 UTC (rev 17995)
@@ -40,7 +40,7 @@
private IMethod method;
private String oldName;
private String newName;
- private SeamRenameMethodSearcher searcher;
+ private RenameMethodSearcher searcher;
private RefactoringStatus status;
private CompositeChange rootChange;
private TextFileChange lastChange;
@@ -93,7 +93,7 @@
oldName = method.getElementName();
newName = getArguments().getNewName();
- searcher = new SeamRenameMethodSearcher((IFile)method.getResource(), oldName);
+ searcher = new RenameMethodSearcher((IFile)method.getResource(), oldName);
added = false;
return true;
}
@@ -130,8 +130,8 @@
}
}
- class SeamRenameMethodSearcher extends RefactorSearcher{
- public SeamRenameMethodSearcher(IFile file, String name){
+ class RenameMethodSearcher extends RefactorSearcher{
+ public RenameMethodSearcher(IFile file, String name){
super(file, name, method);
}
Added: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSearcher.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSearcher.java (rev 0)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSearcher.java 2009-10-09 10:16:59 UTC (rev 17995)
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.seam.internal.core.refactoring;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.jdt.core.IJavaElement;
+import org.jboss.tools.common.el.core.refactoring.RefactorSearcher;
+import org.jboss.tools.seam.core.SeamProjectsSet;
+
+public abstract class SeamRefactorSearcher extends RefactorSearcher {
+ SeamProjectsSet projectsSet;
+
+ public SeamRefactorSearcher(IFile file, String name){
+ super(file, name);
+ projectsSet = new SeamProjectsSet(file.getProject());
+ }
+
+ public SeamRefactorSearcher(IFile file, String name, IJavaElement element){
+ this(file, name);
+ javaElement = element;
+ }
+
+ protected IProject[] getProjects(){
+ return projectsSet.getAllProjects();
+ }
+
+ protected IContainer getViewFolder(IProject project){
+ if(project.equals(projectsSet.getWarProject()))
+ return projectsSet.getDefaultViewsFolder();
+ else if(project.equals(projectsSet.getEarProject()))
+ return projectsSet.getDefaultEarViewsFolder();
+
+ return null;
+ }
+
+ @Override
+ protected boolean isFileCorrect(IFile file){
+ if(!file.isSynchronized(IResource.DEPTH_ZERO)){
+ return false;
+ }else if(file.isPhantom()){
+ return false;
+ }else if(file.isReadOnly()){
+ return false;
+ }
+ return true;
+ }
+
+}
Property changes on: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRefactorSearcher.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameMethodParticipant.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameMethodParticipant.java 2009-10-09 09:15:53 UTC (rev 17994)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameMethodParticipant.java 2009-10-09 10:16:59 UTC (rev 17995)
@@ -121,7 +121,6 @@
}
private void change(IFile file, int offset, int length, String text){
- //System.out.println("change file - "+file.getFullPath()+" offset - "+offset+" len - "+length+" text <"+text+">");
String key = file.getFullPath().toString()+" "+offset;
if(!keys.contains(key)){
TextFileChange change = getChange(file);
@@ -131,12 +130,9 @@
}
}
- class SeamRenameMethodSearcher extends RefactorSearcher{
- SeamProjectsSet projectsSet;
-
+ class SeamRenameMethodSearcher extends SeamRefactorSearcher{
public SeamRenameMethodSearcher(IFile file, String name){
super(file, name, method);
- projectsSet = new SeamProjectsSet(file.getProject());
}
@Override
@@ -153,34 +149,6 @@
}
return true;
}
-
- protected IProject[] getProjects(){
- return projectsSet.getAllProjects();
- }
-
- protected IContainer getViewFolder(IProject project){
- if(project.equals(projectsSet.getWarProject()))
- return projectsSet.getDefaultViewsFolder();
- else if(project.equals(projectsSet.getEarProject()))
- return projectsSet.getDefaultEarViewsFolder();
-
- return null;
- }
-
-// protected ELInvocationExpression findComponentReference(ELInvocationExpression invocationExpression){
-// ELInvocationExpression invExp = invocationExpression;
-// while(invExp != null){
-// if(invExp instanceof ELMethodInvocation || invExp instanceof ELPropertyInvocation){
-// if(invExp.getMemberName() != null && invExp.getMemberName().equals(propertyName))
-// return invExp;
-// else
-// invExp = invExp.getLeft();
-// }else{
-// invExp = invExp.getLeft();
-// }
-// }
-// return null;
-// }
@Override
protected void match(IFile file, int offset, int length) {
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java 2009-10-09 09:15:53 UTC (rev 17994)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java 2009-10-09 10:16:59 UTC (rev 17995)
@@ -442,11 +442,9 @@
}
}
- class SeamSearcher extends RefactorSearcher{
- SeamProjectsSet projectsSet;
+ class SeamSearcher extends SeamRefactorSearcher{
public SeamSearcher(IFile declarationFile, String oldName){
super(declarationFile, oldName);
- projectsSet = new SeamProjectsSet(declarationFile.getProject());
}
@Override
@@ -459,10 +457,6 @@
change(file, offset, length, newName);
}
- protected IProject[] getProjects(){
- return projectsSet.getAllProjects();
- }
-
protected ELInvocationExpression findComponentReference(ELInvocationExpression invocationExpression){
ELInvocationExpression invExp = invocationExpression;
while(invExp != null){
@@ -479,13 +473,5 @@
return null;
}
- protected IContainer getViewFolder(IProject project){
- if(project.equals(projectsSet.getWarProject()))
- return projectsSet.getDefaultViewsFolder();
- else if(project.equals(projectsSet.getEarProject()))
- return projectsSet.getDefaultEarViewsFolder();
-
- return null;
- }
}
}
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/ELSearchQuery.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/ELSearchQuery.java 2009-10-09 09:15:53 UTC (rev 17994)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/ELSearchQuery.java 2009-10-09 10:16:59 UTC (rev 17995)
@@ -10,9 +10,7 @@
******************************************************************************/
package org.jboss.tools.seam.ui.search;
-import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
@@ -25,8 +23,7 @@
import org.jboss.tools.common.el.core.model.ELInvocationExpression;
import org.jboss.tools.common.el.core.model.ELMethodInvocation;
import org.jboss.tools.common.el.core.model.ELPropertyInvocation;
-import org.jboss.tools.common.el.core.refactoring.RefactorSearcher;
-import org.jboss.tools.seam.core.SeamProjectsSet;
+import org.jboss.tools.seam.internal.core.refactoring.SeamRefactorSearcher;
public class ELSearchQuery implements ISearchQuery {
private String propertyName;
@@ -68,39 +65,12 @@
return Status.OK_STATUS;
}
- class ELSearcher extends RefactorSearcher{
- SeamProjectsSet projectsSet;
+ class ELSearcher extends SeamRefactorSearcher{
public ELSearcher(IFile file, String name){
super(file, name);
- projectsSet = new SeamProjectsSet(file.getProject());
}
@Override
- protected boolean isFileCorrect(IFile file){
- if(!file.isSynchronized(IResource.DEPTH_ZERO)){
- return false;
- }else if(file.isPhantom()){
- return false;
- }else if(file.isReadOnly()){
- return false;
- }
- return true;
- }
-
- protected IProject[] getProjects(){
- return projectsSet.getAllProjects();
- }
-
- protected IContainer getViewFolder(IProject project){
- if(project.equals(projectsSet.getWarProject()))
- return projectsSet.getDefaultViewsFolder();
- else if(project.equals(projectsSet.getEarProject()))
- return projectsSet.getDefaultEarViewsFolder();
-
- return null;
- }
-
- @Override
protected void match(IFile file, int offset, int length) {
Match match = new Match(file, offset, length);
result.addMatch(match);
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/SeamELReferencesQueryParticipant.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/SeamELReferencesQueryParticipant.java 2009-10-09 09:15:53 UTC (rev 17994)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/search/SeamELReferencesQueryParticipant.java 2009-10-09 10:16:59 UTC (rev 17995)
@@ -32,6 +32,7 @@
import org.jboss.tools.common.el.core.model.ELPropertyInvocation;
import org.jboss.tools.common.el.core.refactoring.RefactorSearcher;
import org.jboss.tools.seam.core.SeamProjectsSet;
+import org.jboss.tools.seam.internal.core.refactoring.SeamRefactorSearcher;
public class SeamELReferencesQueryParticipant implements IQueryParticipant, IMatchPresentation{
private ELSearcher searcher;
@@ -71,40 +72,14 @@
int currentLength, boolean activate) throws PartInitException {
}
- class ELSearcher extends RefactorSearcher{
+ class ELSearcher extends SeamRefactorSearcher{
ISearchRequestor requestor;
- SeamProjectsSet projectsSet;
public ELSearcher(ISearchRequestor requestor, IJavaElement element, IFile file, String name){
super(file, name, element);
this.requestor = requestor;
- projectsSet = new SeamProjectsSet(file.getProject());
}
- @Override
- protected boolean isFileCorrect(IFile file){
- if(!file.isSynchronized(IResource.DEPTH_ZERO)){
- return false;
- }else if(file.isPhantom()){
- return false;
- }else if(file.isReadOnly()){
- return false;
- }
- return true;
- }
-
- protected IProject[] getProjects(){
- return projectsSet.getAllProjects();
- }
-
- protected IContainer getViewFolder(IProject project){
- if(project.equals(projectsSet.getWarProject()))
- return projectsSet.getDefaultViewsFolder();
- else if(project.equals(projectsSet.getEarProject()))
- return projectsSet.getDefaultEarViewsFolder();
-
- return null;
- }
@Override
protected void match(IFile file, int offset, int length) {
@@ -112,19 +87,5 @@
requestor.reportMatch(match);
}
-// protected ELInvocationExpression findComponentReference(ELInvocationExpression invocationExpression){
-// ELInvocationExpression invExp = invocationExpression;
-// while(invExp != null){
-// if(invExp instanceof ELMethodInvocation || invExp instanceof ELPropertyInvocation){
-// if(invExp.getMemberName() != null && invExp.getMemberName().equals(propertyName))
-// return invExp;
-// else
-// invExp = invExp.getLeft();
-// }else{
-// invExp = invExp.getLeft();
-// }
-// }
-// return null;
-// }
}
}
15 years
JBoss Tools SVN: r17994 - trunk/smooks/docs/reference/en/images/config_page.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-10-09 05:15:53 -0400 (Fri, 09 Oct 2009)
New Revision: 17994
Removed:
trunk/smooks/docs/reference/en/images/config_page/config_page4.png
trunk/smooks/docs/reference/en/images/config_page/config_page5.png
Log:
https://jira.jboss.org/jira/browse/JBDS-498 - deleting unused image;
Deleted: trunk/smooks/docs/reference/en/images/config_page/config_page4.png
===================================================================
(Binary files differ)
Deleted: trunk/smooks/docs/reference/en/images/config_page/config_page5.png
===================================================================
(Binary files differ)
15 years
JBoss Tools SVN: r17993 - trunk/smooks/docs/reference/en/images/quick_start.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2009-10-09 05:13:40 -0400 (Fri, 09 Oct 2009)
New Revision: 17993
Removed:
trunk/smooks/docs/reference/en/images/quick_start/quick_start13.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start14.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start15.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start3.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start4.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start5.png
Log:
https://jira.jboss.org/jira/browse/JBDS-498 - deleting unused image;
Deleted: trunk/smooks/docs/reference/en/images/quick_start/quick_start13.png
===================================================================
(Binary files differ)
Deleted: trunk/smooks/docs/reference/en/images/quick_start/quick_start14.png
===================================================================
(Binary files differ)
Deleted: trunk/smooks/docs/reference/en/images/quick_start/quick_start15.png
===================================================================
(Binary files differ)
Deleted: trunk/smooks/docs/reference/en/images/quick_start/quick_start3.png
===================================================================
(Binary files differ)
Deleted: trunk/smooks/docs/reference/en/images/quick_start/quick_start4.png
===================================================================
(Binary files differ)
Deleted: trunk/smooks/docs/reference/en/images/quick_start/quick_start5.png
===================================================================
(Binary files differ)
15 years
JBoss Tools SVN: r17992 - in trunk/smooks/plugins/org.jboss.tools.smooks.ui: src/org/jboss/tools/smooks/configuration/editors and 4 other directories.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2009-10-09 03:04:02 -0400 (Fri, 09 Oct 2009)
New Revision: 17992
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksReaderFormPage.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv/CsvReaderUICreator.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv12/Csv12ReaderUICreator.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/json/JsonReaderUICreator.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java
Log:
JBIDE-4819
done
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF 2009-10-09 04:41:52 UTC (rev 17991)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF 2009-10-09 07:04:02 UTC (rev 17992)
@@ -28,7 +28,8 @@
org.eclipse.gef,
org.eclipse.jdt.launching,
org.eclipse.zest.core,
- org.eclipse.zest.layouts
+ org.eclipse.zest.layouts,
+ org.eclipse.core.filesystem
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksReaderFormPage.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksReaderFormPage.java 2009-10-09 04:41:52 UTC (rev 17991)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksReaderFormPage.java 2009-10-09 07:04:02 UTC (rev 17992)
@@ -16,6 +16,11 @@
import java.util.List;
import java.util.Properties;
+import org.eclipse.core.filesystem.EFS;
+import org.eclipse.core.filesystem.IFileInfo;
+import org.eclipse.core.filesystem.IFileStore;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.Path;
import org.eclipse.draw2d.ColorConstants;
import org.eclipse.emf.common.command.Command;
import org.eclipse.emf.common.command.CompoundCommand;
@@ -32,7 +37,12 @@
import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.jdt.core.IJavaElement;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.ui.JavaUI;
import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.CheckStateChangedEvent;
import org.eclipse.jface.viewers.CheckboxTableViewer;
import org.eclipse.jface.viewers.DoubleClickEvent;
@@ -57,6 +67,10 @@
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
import org.eclipse.ui.forms.IManagedForm;
import org.eclipse.ui.forms.editor.FormEditor;
import org.eclipse.ui.forms.editor.FormPage;
@@ -67,6 +81,7 @@
import org.eclipse.ui.forms.widgets.ScrolledForm;
import org.eclipse.ui.forms.widgets.ScrolledPageBook;
import org.eclipse.ui.forms.widgets.Section;
+import org.eclipse.ui.ide.IDE;
import org.jboss.tools.smooks.configuration.editors.uitls.SmooksUIUtils;
import org.jboss.tools.smooks.configuration.editors.wizard.StructuredDataSelectionWizard;
import org.jboss.tools.smooks.configuration.validate.ISmooksModelValidateListener;
@@ -789,6 +804,62 @@
}
});
+ inputDataViewer.addDoubleClickListener(new IDoubleClickListener() {
+
+ public void doubleClick(DoubleClickEvent event) {
+ IStructuredSelection selection = (IStructuredSelection) event.getSelection();
+ Object element = selection.getFirstElement();
+ if (element instanceof InputType) {
+ String type = ((InputType) element).getType();
+ String filePath = SmooksModelUtils.getInputPath((InputType) element);
+ if (type != null && filePath != null) {
+ if (SmooksModelUtils.INPUT_TYPE_JAVA.equals(type)) {
+ IFile file = ((IFileEditorInput) getEditorInput()).getFile();
+ IJavaProject javaProject = JavaCore.create(file.getProject());
+ if (javaProject != null) {
+ try {
+ if(filePath.endsWith("[]")){
+ filePath = filePath.substring(0,filePath.length() - 2);
+ }
+ IJavaElement result = javaProject.findType(filePath);
+ if (result != null)
+ JavaUI.openInEditor(result);
+ else {
+ MessageDialog.openError(getSite().getWorkbenchWindow().getShell(),
+ "Can't find type", "Can't find type \"" + filePath + "\" in \""
+ + javaProject.getProject().getName() + "\" project.");
+ }
+ } catch (Exception e) {
+
+ }
+ }
+ } else {
+ try {
+ filePath = SmooksUIUtils.parseFilePath(filePath);
+ if (filePath != null) {
+ IFileStore fileStore = EFS.getLocalFileSystem().getStore(new Path(filePath));
+ IFileInfo fetchInfo = fileStore.fetchInfo();
+ if (!fetchInfo.isDirectory() && fetchInfo.exists()) {
+ IWorkbenchWindow window = getSite().getWorkbenchWindow();
+ IWorkbenchPage page = window.getActivePage();
+ try {
+ IDE.openEditorOnFileStore(page, fileStore);
+ } catch (PartInitException e) {
+ MessageDialog.open(MessageDialog.ERROR, window.getShell(), "Open File",
+ "Can't open the file : '" + filePath + "'", SWT.SHEET);
+ }
+ } else {
+ }
+ }
+ } catch (Exception e) {
+ MessageDialog.open(MessageDialog.ERROR, getSite().getWorkbenchWindow().getShell(),
+ "Open File", "Can't open the file : '" + filePath + "'", SWT.SHEET);
+ }
+ }
+ }
+ }
+ }
+ });
TableColumn header = new TableColumn(inputDataViewer.getTable(), SWT.NONE);
header.setText("Type");
header.setWidth(100);
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv/CsvReaderUICreator.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv/CsvReaderUICreator.java 2009-10-09 04:41:52 UTC (rev 17991)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv/CsvReaderUICreator.java 2009-10-09 07:04:02 UTC (rev 17992)
@@ -47,14 +47,10 @@
*/
public class CsvReaderUICreator extends PropertyUICreator {
- private TableViewer fieldsViewer;
private List<FieldText> fieldsList = new ArrayList<FieldText>();
- private Button addButton;
- private Button removeButton;
-
/*
* (non-Javadoc)
*
@@ -121,7 +117,7 @@
String fields = (String) SmooksUIUtils.getEditValue(descriptor, model);
gd = new GridData(GridData.FILL_BOTH);
- fieldsViewer = new TableViewer(fieldsComposite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
+ final TableViewer fieldsViewer = new TableViewer(fieldsComposite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
fieldsViewer.getControl().setLayoutData(gd);
fieldsViewer.getTable().setLinesVisible(true);
fieldsViewer.setContentProvider(new FieldsContentProvider());
@@ -194,15 +190,15 @@
gd = new GridData(GridData.FILL_HORIZONTAL);
- addButton = new Button(buttonComposite, SWT.NONE);
+ final Button addButton = new Button(buttonComposite, SWT.NONE);
addButton.setLayoutData(gd);
addButton.setText("Add Field");
- removeButton = new Button(buttonComposite, SWT.NONE);
+ final Button removeButton = new Button(buttonComposite, SWT.NONE);
removeButton.setLayoutData(gd);
removeButton.setText("Remove");
- this.addButton.addSelectionListener(new SelectionListener() {
+ addButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
addButton.setEnabled(false);
@@ -224,7 +220,7 @@
}
});
- this.removeButton.addSelectionListener(new SelectionListener() {
+ removeButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
IStructuredSelection s = (IStructuredSelection) fieldsViewer.getSelection();
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv12/Csv12ReaderUICreator.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv12/Csv12ReaderUICreator.java 2009-10-09 04:41:52 UTC (rev 17991)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/csv12/Csv12ReaderUICreator.java 2009-10-09 07:04:02 UTC (rev 17992)
@@ -54,14 +54,10 @@
*/
public class Csv12ReaderUICreator extends PropertyUICreator {
- private TableViewer fieldsViewer;
private List<FieldText> fieldsList = new ArrayList<FieldText>();
- private Button addButton;
- private Button removeButton;
-
/*
* (non-Javadoc)
*
@@ -156,7 +152,7 @@
String fields = (String) SmooksUIUtils.getEditValue(descriptor, model);
gd = new GridData(GridData.FILL_BOTH);
- fieldsViewer = new TableViewer(fieldsComposite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
+ final TableViewer fieldsViewer = new TableViewer(fieldsComposite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
fieldsViewer.getControl().setLayoutData(gd);
fieldsViewer.getTable().setLinesVisible(true);
fieldsViewer.setContentProvider(new FieldsContentProvider());
@@ -229,15 +225,15 @@
gd = new GridData(GridData.FILL_HORIZONTAL);
- addButton = new Button(buttonComposite, SWT.NONE);
+ final Button addButton = new Button(buttonComposite, SWT.NONE);
addButton.setLayoutData(gd);
addButton.setText("Add Field");
- removeButton = new Button(buttonComposite, SWT.NONE);
+ final Button removeButton = new Button(buttonComposite, SWT.NONE);
removeButton.setLayoutData(gd);
removeButton.setText("Remove");
- this.addButton.addSelectionListener(new SelectionListener() {
+ addButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
// addButton.setEnabled(false);
@@ -259,7 +255,7 @@
}
});
- this.removeButton.addSelectionListener(new SelectionListener() {
+ removeButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
IStructuredSelection s = (IStructuredSelection) fieldsViewer.getSelection();
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/json/JsonReaderUICreator.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/json/JsonReaderUICreator.java 2009-10-09 04:41:52 UTC (rev 17991)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/json/JsonReaderUICreator.java 2009-10-09 07:04:02 UTC (rev 17992)
@@ -74,7 +74,7 @@
EObject keyMap = ((JsonReader) model).getKeyMap();
if (keyMap != null) {
Group group = new Group(parent, SWT.NONE);
- group.setText("Key Maps");
+ group.setText("Keys Map");
group.setBackground(ColorConstants.white);
FillLayout fl = new FillLayout();
group.setLayout(fl);
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java 2009-10-09 04:41:52 UTC (rev 17991)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java 2009-10-09 07:04:02 UTC (rev 17992)
@@ -1215,11 +1215,14 @@
if (fresource.getProject().hasNature(JavaCore.NATURE_ID)) {
IJavaProject javaProject = JavaCore.create(fresource.getProject());
String typeName = searchComposite.getText().getText();
+ if(typeName.endsWith("[]")){
+ typeName = typeName.substring(0,typeName.length() - 2);
+ }
IJavaElement result = javaProject.findType(typeName);
if (result != null)
JavaUI.openInEditor(result);
else {
- MessageDialog.openInformation(classTextComposite.getShell(), "Can't find type",
+ MessageDialog.openError(classTextComposite.getShell(), "Can't find type",
"Can't find type \"" + typeName + "\" in \""
+ javaProject.getProject().getName() + "\" project.");
}
15 years
JBoss Tools SVN: r17990 - in trunk/as/plugins: org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/util and 5 other directories.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2009-10-08 18:23:02 -0400 (Thu, 08 Oct 2009)
New Revision: 17990
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportDataModelProvider.java
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportPage.java
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportWizard.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/META-INF/MANIFEST.MF
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/util/VCFUtil.java
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/vcf/ModuleExportOperation.java
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/plugin.xml
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/Messages.java
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/WTPOveridePlugin.java
trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/messages.properties
Log:
JBIDE-5005 - Export wizard (etc). the majority of the work. Only tiny changes will still be required
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/META-INF/MANIFEST.MF 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/META-INF/MANIFEST.MF 2009-10-08 22:23:02 UTC (rev 17990)
@@ -20,7 +20,8 @@
org.eclipse.jst.common.frameworks;bundle-version="1.1.300",
org.eclipse.core.commands;bundle-version="3.5.0",
org.eclipse.jst.server.core;bundle-version="1.2.0",
- org.eclipse.jdt.core;bundle-version="3.5.0"
+ org.eclipse.jdt.core;bundle-version="3.5.0",
+ org.eclipse.wst.common.emfworkbench.integration;bundle-version="1.1.301"
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Export-Package: org.jboss.ide.eclipse.as.wtp.core.modules,
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/util/VCFUtil.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/util/VCFUtil.java 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/util/VCFUtil.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -12,19 +12,29 @@
import java.util.Arrays;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.Map;
+import java.util.Set;
import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Status;
+import org.eclipse.wst.common.componentcore.ModuleCoreNature;
import org.eclipse.wst.common.componentcore.datamodel.properties.ICreateReferenceComponentsDataModelProperties;
import org.eclipse.wst.common.componentcore.internal.operation.CreateReferenceComponentsDataModelProvider;
+import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
import org.eclipse.wst.common.frameworks.datamodel.IDataModelProvider;
+import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
+import org.eclipse.wst.common.project.facet.core.IGroup;
+import org.eclipse.wst.common.project.facet.core.IProjectFacet;
+import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
import org.jboss.ide.eclipse.as.wtp.core.ASWTPToolsPlugin;
public class VCFUtil {
@@ -59,4 +69,49 @@
throw new CoreException(status);
}
}
+
+ /**
+ * Finds the one facet which is in the "modules" group
+ * @param project
+ * @return
+ */
+ public static IProjectFacet getModuleFacet(IProject proj) {
+ if( ModuleCoreNature.isFlexibleProject(proj)) {
+ try {
+ IGroup group = ProjectFacetsManager.getGroup("modules");
+ if( group != null ) {
+ Set<IProjectFacetVersion> set = group.getMembers();
+ Iterator<IProjectFacetVersion> i = set.iterator();
+ while(i.hasNext()) {
+ IProjectFacet facet = i.next().getProjectFacet();
+ if( FacetedProjectFramework.hasProjectFacet(proj, facet.getId())) {
+ return facet;
+ }
+ }
+ }
+ } catch( CoreException ce ) {
+ }
+ }
+ return null;
+ }
+
+ // TODO can increase efficiency by using a pre-loaded map
+ public static String getModuleFacetExtension(IProject project) {
+ IProjectFacet facet = getModuleFacet(project);
+ if( facet != null ) {
+ if( facet.getId().equals(IModuleConstants.JST_WEB_MODULE)) return ".war";
+ if( facet.getId().equals(IModuleConstants.JST_EJB_MODULE)) return ".jar";
+ if( facet.getId().equals(IModuleConstants.JST_UTILITY_MODULE)) return ".jar";
+ if( facet.getId().equals(IModuleConstants.JST_EAR_MODULE)) return ".ear";
+ if( facet.getId().equals(IModuleConstants.WST_WEB_MODULE)) return ".war";
+ if( facet.getId().equals(IModuleConstants.JST_APPCLIENT_MODULE)) return ".jar";
+ if( facet.getId().equals(IModuleConstants.JST_CONNECTOR_MODULE)) return ".rar";
+ if( facet.getId().equals("jst.jboss.esb")) return ".esb";
+ if( facet.getId().equals("jbt.bpel.facet.core")) return ".bpel";
+ // TODO add our extensions
+ }
+ return null;
+ }
+
+
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/vcf/ModuleExportOperation.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/vcf/ModuleExportOperation.java 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.core/src/org/jboss/ide/eclipse/as/wtp/core/vcf/ModuleExportOperation.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -12,9 +12,6 @@
import static org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.ARCHIVE_DESTINATION;
import static org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.COMPONENT;
-import static org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.EXPORT_SOURCE_FILES;
-import static org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.OPTIMIZE_FOR_SPECIFIC_RUNTIME;
-import static org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.RUNTIME_SPECIFIC_PARTICIPANTS;
import static org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.RUN_BUILD;
import java.io.File;
@@ -24,7 +21,6 @@
import java.lang.reflect.InvocationTargetException;
import java.util.HashSet;
import java.util.Iterator;
-import java.util.List;
import java.util.Set;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
@@ -50,7 +46,6 @@
import org.eclipse.core.runtime.jobs.MultiRule;
import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jst.j2ee.commonarchivecore.internal.exception.SaveFailureException;
-import org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties.IArchiveExportParticipantData;
import org.eclipse.jst.j2ee.internal.archive.operations.EJBArchiveOpsResourceHandler;
import org.eclipse.jst.j2ee.internal.plugin.LibCopyBuilder;
import org.eclipse.jst.j2ee.internal.project.ProjectSupportResourceHandler;
@@ -62,21 +57,22 @@
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
import org.eclipse.wst.server.core.IModule;
+import org.eclipse.wst.server.core.IModuleType;
import org.eclipse.wst.server.core.ServerUtil;
import org.eclipse.wst.server.core.model.IModuleFile;
import org.eclipse.wst.server.core.model.IModuleFolder;
import org.eclipse.wst.server.core.model.IModuleResource;
import org.eclipse.wst.server.core.model.ModuleDelegate;
+import org.eclipse.wst.server.core.util.ProjectModule;
+import org.jboss.ide.eclipse.as.wtp.core.modules.IJBTModule;
-public abstract class ModuleExportOperation extends AbstractDataModelOperation {
+public class ModuleExportOperation extends AbstractDataModelOperation {
protected IProgressMonitor progressMonitor;
private IVirtualComponent component;
private IModule module;
private IPath destinationPath;
- private boolean exportSource = false;
public ModuleExportOperation() {
super();
@@ -91,7 +87,6 @@
protected final int LIB_BUILDER_WORK = 100;
protected final int EXPORT_WORK = 1000;
protected final int CLOSE_WORK = 10;
- protected final int SINGLE_PARTICIPANT_WORK = 200;
protected int computeTotalWork() {
int totalWork = REFRESH_WORK;
@@ -99,65 +94,36 @@
totalWork += JAVA_BUILDER_WORK + LIB_BUILDER_WORK;
}
totalWork += EXPORT_WORK + CLOSE_WORK;
-
- final IDataModel dm = getDataModel();
-
- if( dm.getProperty( OPTIMIZE_FOR_SPECIFIC_RUNTIME ) == Boolean.TRUE ) {
- final List<IArchiveExportParticipantData> extensions
- = (List<IArchiveExportParticipantData>) dm.getProperty( RUNTIME_SPECIFIC_PARTICIPANTS );
- totalWork += extensions.size() * SINGLE_PARTICIPANT_WORK;
- }
-
return totalWork;
}
public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
setComponent((IVirtualComponent) model.getProperty(COMPONENT));
setDestinationPath(new Path(model.getStringProperty(ARCHIVE_DESTINATION)));
-// setExportSource(model.getBooleanProperty(EXPORT_SOURCE_FILES));
- try
- {
+ try {
monitor.beginTask(ProjectSupportResourceHandler.getString(ProjectSupportResourceHandler.Exporting_archive, new Object [] { getDestinationPath().lastSegment() }), computeTotalWork());
setProgressMonitor(monitor);
-
- try {
- // defect 240999
- component.getProject().refreshLocal(IResource.DEPTH_INFINITE, new SubProgressMonitor(monitor, REFRESH_WORK));
- if (model.getBooleanProperty(RUN_BUILD)) {
- runNecessaryBuilders(component, new SubProgressMonitor(monitor, JAVA_BUILDER_WORK + LIB_BUILDER_WORK));
- }
- export();
- } catch (Exception e) {
- monitor.worked(CLOSE_WORK);
- throw new ExecutionException(EJBArchiveOpsResourceHandler.Error_exporting__UI_ + archiveString(), e);
- }
-
- final IDataModel dm = getDataModel();
-
- if( dm.getProperty( OPTIMIZE_FOR_SPECIFIC_RUNTIME ) == Boolean.TRUE )
- {
- for( IArchiveExportParticipantData extData
- : (List<IArchiveExportParticipantData>) dm.getProperty( RUNTIME_SPECIFIC_PARTICIPANTS ) )
- {
- final IDataModelOperation op
- = extData.getParticipant().createOperation( extData.getDataModel() );
-
- op.execute( null, null );
- monitor.worked( SINGLE_PARTICIPANT_WORK );
- }
+ if( component != null ) {
+ try {
+ // defect 240999
+ component.getProject().refreshLocal(IResource.DEPTH_INFINITE, new SubProgressMonitor(monitor, REFRESH_WORK));
+ if (model.getBooleanProperty(RUN_BUILD)) {
+ runNecessaryBuilders(component, new SubProgressMonitor(monitor, JAVA_BUILDER_WORK + LIB_BUILDER_WORK));
+ }
+ export();
+ } catch (Exception e) {
+ monitor.worked(CLOSE_WORK);
+ throw new ExecutionException(EJBArchiveOpsResourceHandler.Error_exporting__UI_ + component.getProject().getName(), e);
+ }
}
- }
- finally
- {
+ } finally {
monitor.done();
}
return OK_STATUS;
}
- protected abstract String archiveString();
-
protected void setProgressMonitor(IProgressMonitor newProgressMonitor) {
progressMonitor = newProgressMonitor;
}
@@ -184,21 +150,19 @@
protected void setDestinationPath(IPath newDestinationPath) {
destinationPath = newDestinationPath;
}
-
-// protected boolean isExportSource() {
-// return exportSource;
-// }
-//
-// protected void setExportSource(boolean newExportSource) {
-// exportSource = newExportSource;
-// }
-
+
+ /*
+ * It's assumed that if the module is a "Project Module" then there's only
+ * one of these per project. This might not be a great assumption, but
+ * accepting the first ProjectModule which responds is how the behaviour works here.
+ */
protected void setModule() {
- String moduleType = getModuleTypeID();
- if( component != null && component.getProject() != null && moduleType != null) {
+ if( component != null && component.getProject() != null) {
IModule[] modules = ServerUtil.getModules(component.getProject());
+ ModuleDelegate delegate;
for( int i = 0; i < modules.length; i++ ) {
- if( modules[i].getModuleType().getId().equals(moduleType)) {
+ delegate = (ModuleDelegate)modules[i].loadAdapter(ModuleDelegate.class, new NullProgressMonitor());
+ if( delegate != null && delegate instanceof ProjectModule ) {
module = modules[i];
return;
}
@@ -207,15 +171,15 @@
module = null;
}
- protected abstract String getModuleTypeID();
-
-
/* Return null to skip this child */
protected /* abstract */ String getChildURI(IModule parent, IModule child) {
IEnterpriseApplication app = (IEnterpriseApplication)parent.loadAdapter(IEnterpriseApplication.class, new NullProgressMonitor());
if( app != null ) {
return app.getURI(child);
}
+ IJBTModule mod = (IJBTModule)parent.loadAdapter(IJBTModule.class, new NullProgressMonitor());
+ if( mod != null )
+ return mod.getURI(child);
return null;
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/plugin.xml
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/plugin.xml 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/plugin.xml 2009-10-08 22:23:02 UTC (rev 17990)
@@ -68,4 +68,23 @@
name="Build Path Class Folders">
</referenceFragment>
</extension>
+
+
+
+ <extension
+ point="org.eclipse.ui.exportWizards">
+ <wizard
+ category="org.eclipse.jst.j2ee.internal"
+ class="org.jboss.ide.eclipse.as.wtp.ui.wizards.export.ProjectModuleExportWizard"
+ icon="icons/jar_obj.gif"
+ id="org.jboss.ide.eclipse.as.wtp.ui.wizards.export.ProjectModuleExportWizard"
+ name="Module Archive">
+ <description>
+ Export this project as an arbitrary zipped archive file.
+ </description>
+ <selection
+ class="org.eclipse.core.resources.IResource">
+ </selection>
+ </wizard>
+ </extension>
</plugin>
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/Messages.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/Messages.java 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/Messages.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -11,6 +11,19 @@
public static String AddModuleDependenciesPropertiesPage_SourceColumn;
public static String J2EEDependenciesPage_Description;
public static String J2EEDependenciesPage_ErrorCheckingFacets;
+ public static String MODULE_EXISTS_ERROR;
+ public static String DESTINATION_INVALID;
+ public static String DESTINATION_ARCHIVE_SHOULD_END_WITH;
+ public static String RESOURCE_EXISTS_ERROR;
+ public static String IS_READ_ONLY;
+ public static String Export_LabelDestination;
+ public static String Export_WizardTitle;
+ public static String Export_PageTitle;
+ public static String Export_PageDescription;
+ public static String Export_LabelProject;
+ public static String Export_LabelBrowse;
+ public static String Export_OverwriteCheckbox;
+
static {
// initialize resource bundle
NLS.initializeMessages(BUNDLE_NAME, Messages.class);
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/WTPOveridePlugin.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/WTPOveridePlugin.java 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/WTPOveridePlugin.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -64,6 +64,18 @@
return new Status(severity, PLUGIN_ID, aCode,
aMessage != null ? aMessage : "No message.", exception); //$NON-NLS-1$
}
+ public static IStatus createErrorStatus(String message) {
+ return createErrorStatus(message, null);
+ }
+ public static IStatus createWarningStatus(String message) {
+ return createWarningStatus(message, null);
+ }
+ public static IStatus createErrorStatus(String message, Throwable exception) {
+ return new Status(IStatus.ERROR, PLUGIN_ID, -1, message, exception);
+ }
+ public static IStatus createWarningStatus(String message, Throwable exception) {
+ return new Status(IStatus.WARNING, PLUGIN_ID, -1, message, exception);
+ }
public static IStatus createErrorStatus(int aCode, String aMessage,
Throwable exception) {
return createStatus(IStatus.ERROR, aCode, aMessage, exception);
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/messages.properties
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/messages.properties 2009-10-08 21:03:40 UTC (rev 17989)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/messages.properties 2009-10-08 22:23:02 UTC (rev 17990)
@@ -5,3 +5,15 @@
AddModuleDependenciesPropertiesPage_SourceColumn=Source
J2EEDependenciesPage_Description=ModuleDependency Page Description
J2EEDependenciesPage_ErrorCheckingFacets=Error Checking Project Facets
+Export_WizardTitle=Export a Project Module
+Export_PageTitle=Export a Project Module
+Export_PageDescription=Export a project according to it's "module" structure.
+Export_LabelDestination=Destination
+Export_LabelProject=Project
+Export_LabelBrowse=Browse...
+Export_OverwriteCheckbox=Overwrite existing file
+MODULE_EXISTS_ERROR=Module name is invalid.
+DESTINATION_INVALID=Destination archive is invalid.
+DESTINATION_ARCHIVE_SHOULD_END_WITH=Destination archive should end with {0}.
+RESOURCE_EXISTS_ERROR=Resource {0} already exists. If you wish to overwrite select the "Overwrite Existing file" option.
+IS_READ_ONLY=Destination location is read only.
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportDataModelProvider.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportDataModelProvider.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportDataModelProvider.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -0,0 +1,248 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.ide.eclipse.as.wtp.ui.wizards.export;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.wst.common.componentcore.internal.util.ComponentUtilities;
+import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
+import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
+import org.eclipse.wst.common.frameworks.datamodel.DataModelPropertyDescriptor;
+import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
+import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
+import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonMessages;
+import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonPlugin;
+import org.eclipse.wst.common.project.facet.core.IFacetedProject;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
+import org.jboss.ide.eclipse.as.wtp.core.util.VCFUtil;
+import org.jboss.ide.eclipse.as.wtp.core.vcf.ModuleExportOperation;
+import org.jboss.ide.eclipse.as.wtp.ui.Messages;
+import org.jboss.ide.eclipse.as.wtp.ui.WTPOveridePlugin;
+
+public class ProjectModuleExportDataModelProvider extends
+ AbstractDataModelProvider implements IJ2EEComponentExportDataModelProperties {
+
+ public IDataModelOperation getDefaultOperation() {
+ return new ModuleExportOperation(model);
+ }
+ public HashMap<String, IVirtualComponent> componentMap;
+
+ public ProjectModuleExportDataModelProvider() {
+ super();
+ }
+
+ public Set getPropertyNames() {
+ Set<String> propertyNames = super.getPropertyNames();
+ propertyNames.add(PROJECT_NAME);
+ propertyNames.add(ARCHIVE_DESTINATION);
+ propertyNames.add(OVERWRITE_EXISTING);
+ propertyNames.add(RUN_BUILD);
+ propertyNames.add(COMPONENT);
+ return propertyNames;
+ }
+
+ public Object getDefaultProperty(String propertyName) {
+ if (propertyName.equals(ARCHIVE_DESTINATION)) {
+ return ""; //$NON-NLS-1$
+ } else if (propertyName.equals(OVERWRITE_EXISTING)) {
+ return Boolean.FALSE;
+ } else if( propertyName.equals(RUN_BUILD))
+ return Boolean.TRUE;
+ return super.getDefaultProperty(propertyName);
+ }
+
+ public boolean isPropertyEnabled( final String propertyName ) {
+ return true;
+ }
+
+ public boolean propertySet(String propertyName, Object propertyValue) {
+ boolean set = super.propertySet(propertyName, propertyValue);
+ final IDataModel dm = getDataModel();
+
+ if (propertyName.equals(PROJECT_NAME)) {
+ if (getComponentMap().isEmpty())
+ intializeComponentMap();
+ IVirtualComponent component = (IVirtualComponent) getComponentMap().get(propertyValue);
+ if (null != component && component.getName().equals(propertyValue)) {
+ setProperty(COMPONENT, component);
+ } else {
+ setProperty(COMPONENT, null);
+ }
+
+ dm.notifyPropertyChange( RUNTIME, IDataModel.VALID_VALUES_CHG );
+ IFacetedProject fproj = null;
+ if( component != null ) {
+ try {
+ fproj = ProjectFacetsManager.create( component.getProject() );
+ } catch( CoreException e ) {
+ WTPOveridePlugin.logError(e );
+ }
+ }
+ }
+ return set;
+ }
+
+ public HashMap<String, IVirtualComponent> getComponentMap() {
+ if (componentMap == null)
+ componentMap = new HashMap<String, IVirtualComponent>();
+ return componentMap;
+ }
+
+ public void intializeComponentMap() {
+ IVirtualComponent[] comps = ComponentUtilities.getAllWorkbenchComponents();
+ for (int i = 0; i < comps.length; i++) {
+ getComponentMap().put(comps[i].getName(), comps[i]);
+ }
+ }
+
+ /**
+ * Populate the resource name combo with projects that are not encrypted.
+ */
+ public DataModelPropertyDescriptor[] getValidPropertyDescriptors(String propertyName) {
+ if (propertyName.equals(PROJECT_NAME)) {
+ List<String> componentNames = new ArrayList<String>();
+ IVirtualComponent[] wbComps = ComponentUtilities.getAllWorkbenchComponents();
+ List<IVirtualComponent> relevantComponents = new ArrayList<IVirtualComponent>();
+ for (int i = 0; i < wbComps.length; i++) {
+ relevantComponents.add(wbComps[i]);
+ getComponentMap().put(wbComps[i].getName(), wbComps[i]);
+ }
+
+ if (relevantComponents == null || relevantComponents.size() == 0)
+ return null;
+
+ for (int j = 0; j < relevantComponents.size(); j++) {
+ componentNames.add(((IVirtualComponent) relevantComponents.get(j)).getName());
+ }
+ String[] names = (String[]) componentNames.toArray(new String[componentNames.size()]);
+
+ return DataModelPropertyDescriptor.createDescriptors(names);
+ }
+
+ return super.getValidPropertyDescriptors(propertyName);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.wst.common.frameworks.internal.operation.WTPOperationDataModel#doValidateProperty(java.lang.String)
+ */
+ public IStatus validate(String propertyName) {
+ if (PROJECT_NAME.equals(propertyName)) {
+ String projectName = (String) model.getProperty(PROJECT_NAME);
+ if (projectName == null || projectName.equals("")) //$NON-NLS-1$
+ return WTPOveridePlugin.createErrorStatus(Messages.MODULE_EXISTS_ERROR);
+ IVirtualComponent component = (IVirtualComponent) componentMap.get(projectName);
+ if (component == null) {
+ return WTPOveridePlugin.createErrorStatus(Messages.MODULE_EXISTS_ERROR);
+ }
+ }
+ if (ARCHIVE_DESTINATION.equals(propertyName)) {
+ String archiveLocation = (String) model.getProperty(ARCHIVE_DESTINATION);
+ if (!model.isPropertySet(ARCHIVE_DESTINATION) || archiveLocation.equals("")) { //$NON-NLS-1$
+ return WTPOveridePlugin.createErrorStatus(Messages.DESTINATION_INVALID);
+ } else if (model.isPropertySet(ARCHIVE_DESTINATION)) {
+ IStatus tempStatus = validateLocation(archiveLocation);
+ if (tempStatus != OK_STATUS)
+ return tempStatus;
+ } else if (model.isPropertySet(ARCHIVE_DESTINATION) && !validateModuleType(archiveLocation)) {
+ String assumedExtension = VCFUtil.getModuleFacetExtension(getProject());
+ if( assumedExtension != null )
+ return WTPOveridePlugin.createWarningStatus(NLS.bind(Messages.DESTINATION_ARCHIVE_SHOULD_END_WITH, assumedExtension));
+ }
+ }
+ if (ARCHIVE_DESTINATION.equals(propertyName) || OVERWRITE_EXISTING.equals(propertyName)) {
+ String location = (String) getProperty(ARCHIVE_DESTINATION);
+ if (checkForExistingFileResource(location)) {
+ return WTPOveridePlugin.createErrorStatus(NLS.bind(Messages.RESOURCE_EXISTS_ERROR, location));
+ }
+ }
+ return OK_STATUS;
+ }
+
+ private IStatus validateLocation(String archiveLocation) {
+ IPath path = null;
+ try {
+ path = new Path(archiveLocation);
+ } catch (IllegalArgumentException ex) {
+ return WTPOveridePlugin.createErrorStatus(Messages.DESTINATION_INVALID);
+ }
+ IWorkspace workspace = ResourcesPlugin.getWorkspace();
+ IStatus status = workspace.validateName(path.lastSegment(), IResource.FILE);
+ if (!status.isOK()) {
+ return status;
+ }
+ String device = path.getDevice();
+ if (device == null)
+ return OK_STATUS;
+ if (path == null || device.length() == 1 && device.charAt(0) == IPath.DEVICE_SEPARATOR)
+ return WTPOveridePlugin.createErrorStatus(Messages.DESTINATION_INVALID);
+
+ if (!path.toFile().canWrite()) {
+ if (path.toFile().exists()) {
+ return WTPOveridePlugin.createErrorStatus(Messages.IS_READ_ONLY);
+ }
+ boolean OK = false;
+ path = path.removeLastSegments(1);
+ for (int i = 1; !OK && i < 20 && path.segmentCount() > 0; i++) {
+ if (path.toFile().exists()) {
+ OK = true;
+ }
+ status = workspace.validateName(path.lastSegment(), IResource.FOLDER);
+ if (!status.isOK()) {
+ return WTPOveridePlugin.createErrorStatus(Messages.DESTINATION_INVALID);
+ }
+ path = path.removeLastSegments(1);
+ }
+ }
+
+ return OK_STATUS;
+ }
+
+ private boolean checkForExistingFileResource(String fileName) {
+ if (!model.getBooleanProperty(OVERWRITE_EXISTING)) {
+ java.io.File externalFile = new java.io.File(fileName);
+ if (externalFile != null && externalFile.exists())
+ return true;
+ }
+ return false;
+ }
+
+ private boolean validateModuleType(String archive) {
+ String assumedExtension = VCFUtil.getModuleFacetExtension(getProject());
+ if( archive.length() < 4)
+ return false;
+ String lastFour = archive.substring(archive.length() - 4, archive.length());
+ if (!lastFour.equalsIgnoreCase(assumedExtension)) {
+ return false;
+ }
+ return true;
+ }
+
+ private IProject getProject() {
+ final IVirtualComponent component = (IVirtualComponent) getProperty( COMPONENT );
+ return component == null ? null : component.getProject();
+ }
+
+}
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportPage.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportPage.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportPage.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -0,0 +1,205 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.ide.eclipse.as.wtp.ui.wizards.export;
+
+import java.util.Iterator;
+import java.util.Set;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jst.j2ee.datamodel.properties.IJ2EEComponentExportDataModelProperties;
+import org.eclipse.jst.j2ee.internal.plugin.J2EEUIMessages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.FileDialog;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.wst.common.componentcore.ModuleCoreNature;
+import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
+import org.eclipse.wst.common.frameworks.internal.datamodel.ui.DataModelWizardPage;
+import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
+import org.eclipse.wst.common.project.facet.core.IGroup;
+import org.eclipse.wst.common.project.facet.core.IProjectFacet;
+import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
+import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
+import org.jboss.ide.eclipse.as.wtp.core.util.VCFUtil;
+import org.jboss.ide.eclipse.as.wtp.ui.Messages;
+
+public class ProjectModuleExportPage extends DataModelWizardPage {
+ private static boolean isWindows = SWT.getPlatform().toLowerCase().startsWith("win"); //$NON-NLS-1$
+ private static final int SIZING_TEXT_FIELD_WIDTH = 305;
+ protected static final String STORE_PREFIX = "JBT_EXPORT_"; //$NON-NLS-1$
+ protected static final String STORE_OVERWRITE = "OVERWRITE"; //$NON-NLS-1$
+
+ protected IStructuredSelection selection;
+ private Combo resourceNameCombo;
+ private Combo destinationNameCombo;
+ private Button destinationBrowseButton;
+ protected Button overwriteExistingFilesCheckbox;
+
+ public ProjectModuleExportPage(IDataModel model, String pageName, IStructuredSelection selection) {
+ super(model, pageName);
+ setTitle(Messages.Export_PageTitle);
+ setDescription(Messages.Export_PageDescription);
+ //setImageDescriptor(ESBSharedImages.getImageDescriptor(ESBSharedImages.WIZARD_NEW_PROJECT));
+ this.selection = selection;
+ if( selection != null && selection.getFirstElement() != null ) {
+ Object o = selection.getFirstElement();
+ if( o instanceof IProject ) {
+ model.setProperty(IJ2EEComponentExportDataModelProperties.PROJECT_NAME, ((IProject)o).getName());
+ }
+ }
+ }
+
+ @Override
+ protected String[] getValidationPropertyNames() {
+ return new String[]{IJ2EEComponentExportDataModelProperties.PROJECT_NAME,
+ IJ2EEComponentExportDataModelProperties.ARCHIVE_DESTINATION,
+ IJ2EEComponentExportDataModelProperties.OVERWRITE_EXISTING};
+ }
+
+ @Override
+ protected Composite createTopLevelComposite(Composite parent) {
+ Composite composite = new Composite(parent, SWT.NULL);
+ GridLayout layout = new GridLayout(1, false);
+ composite.setLayout(layout);
+
+ createSourceAndDestinationGroup(composite);
+ createOptionsGroup(composite);
+
+ setupInfopop(composite);
+ restoreWidgetValues();
+ Dialog.applyDialogFont(parent);
+ return composite;
+ }
+
+ private void createSourceAndDestinationGroup(Composite parent) {
+ Composite composite = new Composite(parent, SWT.NULL);
+ GridLayout layout = new GridLayout(3, false);
+ composite.setLayout(layout);
+ createExportComponentGroup(composite);
+ createDestinationGroup(composite);
+ }
+
+ protected void createExportComponentGroup(Composite parent) {
+ //Project label
+ Label projectLabel = new Label(parent, SWT.NONE);
+ projectLabel.setText(Messages.Export_LabelProject);
+ //Project combo
+ resourceNameCombo = new Combo(parent, SWT.SINGLE | SWT.BORDER);
+ GridData data = new GridData(GridData.FILL_HORIZONTAL);
+ data.widthHint = SIZING_TEXT_FIELD_WIDTH;
+ resourceNameCombo.setLayoutData(data);
+ synchHelper.synchCombo(resourceNameCombo, IJ2EEComponentExportDataModelProperties.PROJECT_NAME, null);
+ new Label(parent, SWT.NONE);//Pad label
+ }
+
+ protected void createDestinationGroup(org.eclipse.swt.widgets.Composite parent) {
+
+ //Destination label
+ Label destinationLabel = new Label(parent, SWT.NONE);
+ destinationLabel.setText(Messages.Export_LabelDestination);
+ // destination name combo field
+ destinationNameCombo = new Combo(parent, SWT.SINGLE | SWT.BORDER);
+ destinationNameCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ synchHelper.synchCombo(destinationNameCombo, IJ2EEComponentExportDataModelProperties.ARCHIVE_DESTINATION, null);
+
+ // destination browse button
+ destinationBrowseButton = new Button(parent, SWT.PUSH);
+ destinationBrowseButton.setText(Messages.Export_LabelBrowse);
+ destinationBrowseButton.setLayoutData((new GridData(GridData.FILL_HORIZONTAL)));
+ destinationBrowseButton.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent e) {
+ handleDestinationBrowseButtonPressed();
+ }
+ });
+ destinationBrowseButton.setEnabled(true);
+ }
+
+ protected void handleDestinationBrowseButtonPressed() {
+
+ FileDialog dialog = new FileDialog(destinationNameCombo.getShell(), SWT.SAVE);
+ String fileName = getDataModel().getStringProperty(IJ2EEComponentExportDataModelProperties.PROJECT_NAME);
+ String[] filters = getFilterExpression();
+ if (filters.length != 0 && filters[0] != null && filters[0].indexOf('.') != -1) {
+ fileName += filters[0].substring(filters[0].indexOf('.'));
+ }
+ dialog.setFileName(fileName);
+ if (isWindows) {
+ dialog.setFilterExtensions(filters);
+ }
+ String filename = dialog.open();
+ if (filename != null)
+ destinationNameCombo.setText(filename);
+ }
+
+ /**
+ * Return the most likely suffix for this archive
+ * @return
+ */
+ protected String[] getFilterExpression() {
+ return new String[0];
+ }
+
+ protected void restoreWidgetValues() {
+ IDialogSettings settings = getDialogSettings();
+ if (settings != null) {
+ String[] sourceNames = settings.getArray(STORE_PREFIX + getModuleFacet());
+ if (sourceNames == null)
+ return; // ie.- no settings stored
+ for (int i = 0; i < sourceNames.length; i++) {
+ if (sourceNames[i] == null)
+ sourceNames[i] = ""; //$NON-NLS-1$
+ }
+ destinationNameCombo.setItems(sourceNames);
+ boolean overwrite = settings.getBoolean(STORE_PREFIX + STORE_OVERWRITE);
+ model.setBooleanProperty(IJ2EEComponentExportDataModelProperties.OVERWRITE_EXISTING, overwrite);
+ }
+ }
+
+ protected void createOptionsGroup(Composite parent) {
+
+ // options group
+ Composite optionsGroup = new Composite(parent, SWT.NULL);
+ GridLayout layout = new GridLayout(1, false);
+ optionsGroup.setLayout(layout);
+
+ // overwrite... checkbox
+ createOverwriteExistingFilesCheckbox(optionsGroup);
+ }
+
+ protected void createOverwriteExistingFilesCheckbox(Composite optionsGroup) {
+ //Overwrite checkbox
+ overwriteExistingFilesCheckbox = new Button(optionsGroup, SWT.CHECK | SWT.LEFT);
+ overwriteExistingFilesCheckbox.setText(Messages.Export_OverwriteCheckbox);
+ overwriteExistingFilesCheckbox.setEnabled(true);
+ synchHelper.synchCheckbox(overwriteExistingFilesCheckbox, IJ2EEComponentExportDataModelProperties.OVERWRITE_EXISTING, null);
+ }
+
+ protected String getModuleFacet() {
+ Object o = selection.getFirstElement();
+ if( o instanceof IProject ) {
+ IProject proj = (IProject)o;
+ IProjectFacet facet = VCFUtil.getModuleFacet(proj);
+ return facet == null ? null : facet.getId();
+ }
+ return null;
+ }
+
+}
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportWizard.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportWizard.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.wtp.ui/src/org/jboss/ide/eclipse/as/wtp/ui/wizards/export/ProjectModuleExportWizard.java 2009-10-08 22:23:02 UTC (rev 17990)
@@ -0,0 +1,87 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.ide.eclipse.as.wtp.ui.wizards.export;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IExportWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
+import org.eclipse.wst.common.frameworks.datamodel.IDataModelProvider;
+import org.eclipse.wst.common.frameworks.internal.datamodel.ui.DataModelWizard;
+import org.jboss.ide.eclipse.as.wtp.ui.Messages;
+
+public class ProjectModuleExportWizard extends DataModelWizard
+ implements IExportWizard {
+ /**
+ * <p>
+ * Constant used to identify the key of the main page of the Wizard.
+ * </p>
+ */
+ protected static final String MAIN_PG = "main"; //$NON-NLS-1$
+
+ private IStructuredSelection currentSelection;
+
+ public ProjectModuleExportWizard() {
+ super();
+ setWindowTitle(Messages.Export_WizardTitle);
+ }
+
+ public ProjectModuleExportWizard(IDataModel model) {
+ super(model);
+ setWindowTitle(Messages.Export_WizardTitle);
+ }
+
+ protected IDataModelProvider getDefaultProvider() {
+ return new ProjectModuleExportDataModelProvider();
+ }
+
+ public void doAddPages() {
+ addPage(new ProjectModuleExportPage(getDataModel(), MAIN_PG, getSelection()));
+ }
+
+ protected void doInit() {
+ // do nothing
+ }
+
+ public final void init(IWorkbench workbench, IStructuredSelection selection) {
+ setWindowTitle(Messages.Export_WizardTitle);
+ this.currentSelection = selection;
+ }
+
+ private void doDispose() {
+ //dispose
+ }
+
+ public final void dispose() {
+ super.dispose();
+ doDispose();
+ this.currentSelection = null;
+ }
+
+ protected final boolean prePerformFinish() {
+ return super.prePerformFinish();
+ }
+
+ /**
+ * @return Returns the currentSelection.
+ */
+ protected final IStructuredSelection getSelection() {
+ return currentSelection;
+ }
+
+ /**
+ * @return
+ */
+ protected final ProjectModuleExportPage getMainPage() {
+ return (ProjectModuleExportPage) getPage(MAIN_PG);
+ }
+
+}
15 years
JBoss Tools SVN: r17989 - in trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common: properties and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2009-10-08 17:03:40 -0400 (Thu, 08 Oct 2009)
New Revision: 17989
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/command/ChangeNameCommand.java
trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/properties/NamedElementConfigurationComposite.java
Log:
JBIDE-4066 and JBIDE-4069
Modified: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/command/ChangeNameCommand.java
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/command/ChangeNameCommand.java 2009-10-08 18:59:41 UTC (rev 17988)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/command/ChangeNameCommand.java 2009-10-08 21:03:40 UTC (rev 17989)
@@ -21,7 +21,10 @@
public void execute() {
oldName = namedElement.getName();
- namedElement.setName(newName);
+ if ("".equals(newName) && !namedElement.isNameMandatory()) {
+ newName = null;
+ }
+ namedElement.setName(newName.trim());
}
public void undo() {
Modified: trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/properties/NamedElementConfigurationComposite.java
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/properties/NamedElementConfigurationComposite.java 2009-10-08 18:59:41 UTC (rev 17988)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/src/org/jbpm/gd/common/properties/NamedElementConfigurationComposite.java 2009-10-08 21:03:40 UTC (rev 17989)
@@ -81,7 +81,7 @@
}
private String getNameText() {
- String text = nameText.getText();
+ String text = nameText.getText().trim();
if ("".equals(text) && !namedElement.isNameMandatory()) {
text = null;
}
15 years
JBoss Tools SVN: r17988 - trunk/jbpm/plugins/org.jbpm.gd.jpdl/META-INF.
by jbosstools-commits@lists.jboss.org
Author: nickboldt
Date: 2009-10-08 14:59:41 -0400 (Thu, 08 Oct 2009)
New Revision: 17988
Modified:
trunk/jbpm/plugins/org.jbpm.gd.jpdl/META-INF/MANIFEST.MF
Log:
drop manifest requirement for .common v1.0.0 (since 1.1.0 is current version)
Modified: trunk/jbpm/plugins/org.jbpm.gd.jpdl/META-INF/MANIFEST.MF
===================================================================
--- trunk/jbpm/plugins/org.jbpm.gd.jpdl/META-INF/MANIFEST.MF 2009-10-08 18:14:57 UTC (rev 17987)
+++ trunk/jbpm/plugins/org.jbpm.gd.jpdl/META-INF/MANIFEST.MF 2009-10-08 18:59:41 UTC (rev 17988)
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %bundleName
Bundle-SymbolicName: org.jbpm.gd.jpdl;singleton:=true
-Bundle-Version: 3.1.7.qualifier
+Bundle-Version: 3.2.0.qualifier
Bundle-ClassPath: ui.jar,
lib/dom4j-1.4.jar
Bundle-Activator: org.jbpm.gd.jpdl.Plugin
@@ -67,6 +67,6 @@
org.eclipse.core.variables,
org.junit,
org.eclipse.ui.views.properties.tabbed,
- org.jboss.tools.jbpm.common;bundle-version="1.0.0"
+ org.jboss.tools.jbpm.common
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
15 years