Author: koen.aers(a)jboss.com
Date: 2009-07-07 22:34:10 -0400 (Tue, 07 Jul 2009)
New Revision: 16487
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/editor/JpdlEditor.java
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/wizard/NewJpdl4FileWizard.java
Log:
make property sheet and details view open when the jdpl editor opens
Modified: trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml
===================================================================
--- trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml 2009-07-08 02:32:36 UTC (rev
16486)
+++ trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/plugin.xml 2009-07-08 02:34:10 UTC (rev
16487)
@@ -937,12 +937,54 @@
<view
id="org.jboss.tools.flow.jpdl4.details"
minimized="false"
+ relationship="stack"
+ relative="org.eclipse.mylyn.tasks.ui.views.tasks"
+ visible="false">
+ </view>
+ <view
+ id="org.jboss.tools.flow.jpdl4.details"
+ minimized="false"
ratio="0.5"
relationship="top"
relative="org.eclipse.ui.views.ContentOutline"
visible="false">
</view>
+ <newWizardShortcut
+ id="org.jboss.tools.flow.jpdl4.file">
+ </newWizardShortcut>
</perspectiveExtension>
+ <perspectiveExtension
+ targetID="org.eclipse.jst.j2ee.J2EEPerspective">
+ <viewShortcut
+ id="org.jboss.tools.flow.jpdl4.details">
+ </viewShortcut>
+ <view
+ id="org.jboss.tools.flow.jpdl4.details"
+ minimized="false"
+ ratio="0.5"
+ relationship="top"
+ relative="org.eclipse.ui.views.ContentOutline"
+ visible="false">
+ </view>
+ <newWizardShortcut
+ id="org.jboss.tools.flow.jpdl4.file">
+ </newWizardShortcut>
+ </perspectiveExtension>
</extension>
+<!-- <extension
+ point="org.eclipse.ui.popupMenus">
+ <objectContribution
+ objectClass="org.eclipse.core.resources.IProject"
+ adaptable="true"
+ id="org.jboss.tools.flow.jpdl4.projectSetup">
+ <action
+ class="org.jboss.tools.flow.jpdl4.actions.SetupJpdl4ProjectAction"
+ label="Add jPDL 4 Support..."
+ menubarPath="org.eclipse.ui.projectConfigure/additions"
+ enablesFor="+"
+ id="org.jboss.tools.flow.jpdl4.actions.SetupJpdl4ProjectAction">
+ </action>
+ </objectContribution>
+ </extension> -->
</plugin>
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/editor/JpdlEditor.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/editor/JpdlEditor.java 2009-07-08
02:32:36 UTC (rev 16486)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/editor/JpdlEditor.java 2009-07-08
02:34:10 UTC (rev 16487)
@@ -21,6 +21,13 @@
import org.eclipse.swt.graphics.ImageData;
import org.eclipse.swt.graphics.ImageLoader;
import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.part.FileEditorInput;
import org.eclipse.ui.views.properties.IPropertySheetPage;
import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor;
@@ -34,13 +41,14 @@
import org.jboss.tools.flow.jpdl4.view.DetailsPage;
import org.jboss.tools.flow.jpdl4.view.IDetailsPage;
-public class JpdlEditor extends GenericModelEditor implements
ITabbedPropertySheetPageContributor {
-
+public class JpdlEditor extends GenericModelEditor implements
+ ITabbedPropertySheetPageContributor {
+
public static String ID = "org.jboss.tools.flow.jpdl4.editor";
-
+
private DetailsPage detailsPage;
private JpdlPropertySheetPage propertySheetPage;
-
+
public void doSave(IProgressMonitor monitor) {
super.doSave(monitor);
writeImage();
@@ -51,108 +59,124 @@
writeImage();
}
- protected PaletteRoot createPalette() {
- return new JpdlPaletteFactory().createPalette();
- }
-
- protected org.eclipse.gef.EditPartFactory createEditPartFactory() {
- return new JpdlGraphicalEditPartFactory();
- }
+ protected PaletteRoot createPalette() {
+ return new JpdlPaletteFactory().createPalette();
+ }
- protected Object createModel() {
- return
ElementRegistry.createWrapper("org.jboss.tools.flow.jpdl4.process");
- }
-
- protected void writeModel(OutputStream os) throws IOException {
- Object object = getModel();
- if (object instanceof Wrapper) {
- JpdlSerializer.serialize((Wrapper)object, os);
- }
- }
-
- protected void writeImage() {
+ protected org.eclipse.gef.EditPartFactory createEditPartFactory() {
+ return new JpdlGraphicalEditPartFactory();
+ }
+
+ protected Object createModel() {
+ return ElementRegistry
+ .createWrapper("org.jboss.tools.flow.jpdl4.process");
+ }
+
+ protected void writeModel(OutputStream os) throws IOException {
+ Object object = getModel();
+ if (object instanceof Wrapper) {
+ JpdlSerializer.serialize((Wrapper) object, os);
+ }
+ }
+
+ protected void writeImage() {
// TODO repair doSave method
SWTGraphics g = null;
GC gc = null;
Image image = null;
-
- LayerManager lm =
(LayerManager)getGraphicalViewer().getEditPartRegistry().get(LayerManager.ID);
+
+ LayerManager lm = (LayerManager) getGraphicalViewer()
+ .getEditPartRegistry().get(LayerManager.ID);
IFigure figure = lm.getLayer(LayerConstants.PRINTABLE_LAYERS);
-
+
try {
-
- Rectangle r = figure.getBounds();
+
+ Rectangle r = figure.getBounds();
image = new Image(Display.getDefault(), r.width, r.height);
- gc = new GC(image);
- g = new SWTGraphics(gc);
- g.translate(r.x * -1, r.y * -1);
- figure.paint(g);
- ImageLoader imageLoader = new ImageLoader();
- imageLoader.data = new ImageData[] {image.getImageData()};
- imageLoader.save(getImageSavePath(), SWT.IMAGE_JPEG);
- refreshProcessFolder();
-
- } finally {
- if (g != null) {
- g.dispose();
- }
- if (gc != null) {
- gc.dispose();
- }
- if (image != null) {
- image.dispose();
- }
- }
- }
-
+ gc = new GC(image);
+ g = new SWTGraphics(gc);
+ g.translate(r.x * -1, r.y * -1);
+ figure.paint(g);
+ ImageLoader imageLoader = new ImageLoader();
+ imageLoader.data = new ImageData[] { image.getImageData() };
+ imageLoader.save(getImageSavePath(), SWT.IMAGE_JPEG);
+ refreshProcessFolder();
+
+ } finally {
+ if (g != null) {
+ g.dispose();
+ }
+ if (gc != null) {
+ gc.dispose();
+ }
+ if (image != null) {
+ image.dispose();
+ }
+ }
+ }
+
+ public void init(IEditorSite site, IEditorInput input)
+ throws PartInitException {
+ super.init(site, input);
+ IWorkbenchPage workbenchPage = getActivePage();
+ if (workbenchPage != null) {
+ if (workbenchPage.findView("org.eclipse.ui.views.PropertySheet") == null) {
+ workbenchPage.showView("org.eclipse.ui.views.PropertySheet");
+ }
+ if (workbenchPage.findView("org.jboss.tools.flow.jpdl4.details") == null) {
+ workbenchPage.showView("org.jboss.tools.flow.jpdl4.details");
+ }
+ }
+ }
+
+ private IWorkbenchPage getActivePage() {
+ IWorkbenchWindow workbenchWindow = getActiveWorkbenchWindow();
+ return workbenchWindow == null ? null : workbenchWindow.getActivePage();
+ }
+
+ private IWorkbenchWindow getActiveWorkbenchWindow() {
+ IWorkbench workbench = PlatformUI.getWorkbench();
+ return workbench == null ? null : workbench.getActiveWorkbenchWindow();
+ }
+
private String getImageSavePath() {
IFile file = getFile();
IPath path = file.getRawLocation();
- if ("xml".equals(path.getFileExtension())) path =
path.removeFileExtension();
- if ("jpdl".equals(path.getFileExtension())) path =
path.removeFileExtension();
+ if ("xml".equals(path.getFileExtension()))
+ path = path.removeFileExtension();
+ if ("jpdl".equals(path.getFileExtension()))
+ path = path.removeFileExtension();
path = path.addFileExtension("png");
return path.toOSString();
}
private void refreshProcessFolder() {
try {
- IFile file = ((FileEditorInput)getEditorInput()).getFile();
- file.getParent().refreshLocal(1, null);
+ IFile file = ((FileEditorInput) getEditorInput()).getFile();
+ file.getParent().refreshLocal(1, null);
} catch (CoreException e) {
e.printStackTrace();
}
}
protected void createModel(InputStream is) {
- boolean empty = true;
- try {
- empty = is.available() == 0;
- } catch (IOException e) {
- // ignored
- }
- setModel(empty ? createModel() : JpdlDeserializer.deserialize(is));
- }
-
-// public SelectionSynchronizer getSelectionSynchronizer() {
-// if (selectionSynchronizer == null) {
-// selectionSynchronizer = new JpdlSelectionSynchronizer();
-// selectionSynchronizer.addViewer(getGraphicalViewer());
-// }
-// return selectionSynchronizer;
-// }
-
+ boolean empty = true;
+ try {
+ empty = is.available() == 0;
+ } catch (IOException e) {
+ // ignored
+ }
+ setModel(empty ? createModel() : JpdlDeserializer.deserialize(is));
+ }
+
public String getContributorId() {
return getSite().getId();
}
-
-// public CommandStack getCommandStack() {
-// return super.getCommandStack();
-// }
-
+
public DefaultEditDomain getEditDomain() {
return super.getEditDomain();
}
-
+
protected DetailsPage getDetailsPage() {
if (detailsPage == null) {
initDetailsPage();
@@ -162,23 +186,25 @@
protected void initDetailsPage() {
detailsPage = new DetailsPage(this);
- getSite().getSelectionProvider().addSelectionChangedListener(detailsPage);
+ getSite().getSelectionProvider().addSelectionChangedListener(
+ detailsPage);
}
-
+
private JpdlPropertySheetPage getPropertySheetPage() {
if (propertySheetPage == null) {
- propertySheetPage = new JpdlPropertySheetPage(this, getCommandStack());
+ propertySheetPage = new JpdlPropertySheetPage(this,
+ getCommandStack());
}
return propertySheetPage;
}
-
- @SuppressWarnings("unchecked")
+
+ @SuppressWarnings("unchecked")
public Object getAdapter(Class adapter) {
- if (adapter == IPropertySheetPage.class)
- return getPropertySheetPage();
- else if (adapter == IDetailsPage.class)
- return getDetailsPage();
- return super.getAdapter(adapter);
- }
-
+ if (adapter == IPropertySheetPage.class)
+ return getPropertySheetPage();
+ else if (adapter == IDetailsPage.class)
+ return getDetailsPage();
+ return super.getAdapter(adapter);
+ }
+
}
Modified:
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/wizard/NewJpdl4FileWizard.java
===================================================================
---
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/wizard/NewJpdl4FileWizard.java 2009-07-08
02:32:36 UTC (rev 16486)
+++
trunk/jbpm/plugins/org.jboss.tools.flow.jpdl4/src/org/jboss/tools/flow/jpdl4/wizard/NewJpdl4FileWizard.java 2009-07-08
02:34:10 UTC (rev 16487)
@@ -3,6 +3,7 @@
import org.eclipse.core.resources.IFile;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.ui.INewWizard;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
@@ -13,7 +14,7 @@
import org.eclipse.ui.wizards.newresource.BasicNewResourceWizard;
import org.jboss.tools.flow.jpdl4.Logger;
-public class NewJpdl4FileWizard extends Wizard implements IWorkbenchWizard {
+public class NewJpdl4FileWizard extends Wizard implements IWorkbenchWizard, INewWizard {
private static String ID_PROP_SHEET = "org.eclipse.ui.views.PropertySheet";
Show replies by date