Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/customization')
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/LocalPaletteContentPage.java107
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization/src/org/eclipse/papyrus/customization/wizard/CustomizationPage.java38
2 files changed, 72 insertions, 73 deletions
diff --git a/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/LocalPaletteContentPage.java b/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/LocalPaletteContentPage.java
index 6e4aa4250f6..63a0514e54e 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/LocalPaletteContentPage.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/LocalPaletteContentPage.java
@@ -61,6 +61,7 @@ import org.eclipse.jface.viewers.IDoubleClickListener;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.ILabelProviderListener;
import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.ITreeSelection;
@@ -472,7 +473,7 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
// get the elements from the drag listener (either a palette entry or a palette
// entry proxy)
- IStructuredSelection transferedSelection = (IStructuredSelection) LocalSelectionTransfer.getTransfer().nativeToJava(event.currentDataType);
+ IStructuredSelection transferedSelection = (IStructuredSelection) LocalSelectionTransfer.getTransfer().getSelection();
Object entry = transferedSelection.getFirstElement();
// creates the proxy for the element to be dropped
@@ -509,8 +510,13 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
@Override
public void dragOver(DropTargetEvent event) {
super.dragOver(event);
-
- IStructuredSelection transferedSelection = (IStructuredSelection) LocalSelectionTransfer.getTransfer().nativeToJava(event.currentDataType);
+
+ LocalSelectionTransfer localTransfer = LocalSelectionTransfer.getTransfer();
+ IStructuredSelection transferedSelection = null;
+ if (localTransfer.isSupportedType(event.currentDataType)) {
+ transferedSelection = (IStructuredSelection) localTransfer.getSelection();
+ }
+
// check selection is compatible for drop target
TreeItem item = paletteTreeViewer.getTree().getItem(paletteTreeViewer.getTree().toControl(new Point(event.x, event.y)));
@@ -531,27 +537,7 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
Transfer[] transfers = new Transfer[] { LocalSelectionTransfer.getTransfer() };
// drag listener
- DragSourceListener listener = new DragSourceAdapter() {
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void dragStart(DragSourceEvent event) {
- super.dragStart(event);
- event.data = paletteTreeViewer.getSelection();
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void dragSetData(DragSourceEvent event) {
- super.dragSetData(event);
- LocalSelectionTransfer.getTransfer().setSelection(paletteTreeViewer.getSelection());
- }
-
- };
+ DragSourceListener listener = new LocalSelectionDragSource(paletteTreeViewer);
paletteTreeViewer.addDragSupport(DND.DROP_MOVE, transfers, listener);
}
@@ -567,6 +553,11 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
*/
protected void checkSelectionForDrop(IStructuredSelection transferedSelection, TreeItem item, DropTargetEvent event) {
event.detail = DND.DROP_NONE;
+
+ if (transferedSelection == null) {
+ return;
+ }
+
Object entry = transferedSelection.getFirstElement();
// handle only first selected element
if (item == null) {
@@ -762,7 +753,7 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
return;
}
- Iterator<Object> it = selection.iterator();
+ Iterator<?> it = selection.iterator();
while (it.hasNext()) {
Object o = it.next();
if (o instanceof PaletteEntryProxy) {
@@ -1268,7 +1259,7 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
if (topPackage != null) {
return topPackage.getAllAppliedProfiles();
}
- return Collections.EMPTY_LIST;
+ return Collections.emptyList();
}
/**
@@ -1279,27 +1270,7 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
Transfer[] transfers = new Transfer[] { LocalSelectionTransfer.getTransfer() };
// drag listener
- DragSourceListener listener = new DragSourceAdapter() {
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void dragStart(DragSourceEvent event) {
- super.dragStart(event);
- event.data = availableToolsViewer.getSelection();
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void dragSetData(DragSourceEvent event) {
- super.dragSetData(event);
- LocalSelectionTransfer.getTransfer().setSelection(availableToolsViewer.getSelection());
- }
-
- };
+ DragSourceListener listener = new LocalSelectionDragSource(availableToolsViewer);
availableToolsViewer.addDragSupport(DND.DROP_LINK, transfers, listener);
}
@@ -2164,12 +2135,12 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
List<Class> metaclasses = stereotype.getAllExtendedMetaclasses();
for (Class stMetaclass : metaclasses) {
// get Eclass
- java.lang.Class metaclassClass = stMetaclass.getClass();
+ java.lang.Class<?> metaclassClass = stMetaclass.getClass();
if (metaclassClass != null) {
EClassifier metaClassifier = UMLPackage.eINSTANCE.getEClassifier(stMetaclass.getName());
if (((EClass) metaClassifier).isSuperTypeOf(toolMetaclass)) {
// should create the palette entry
- HashMap properties = new HashMap();
+ Map<String, Object> properties = new HashMap<String, Object>();
properties.put(IPapyrusPaletteConstant.ASPECT_ACTION_KEY, StereotypeAspectActionProvider.createConfigurationNode(stereotype.getQualifiedName()));
AspectCreationEntry aspectEntry = new AspectCreationEntry(stereotype.getName() + " (" + entry.getLabel() + ")", "Create an element with a stereotype", entry.getId() + "_" + System.currentTimeMillis(),
entry.getSmallIcon(), (CombinedTemplateCreationEntry) entry, properties);
@@ -2279,13 +2250,12 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
List<Class> metaclasses = stereotype.getAllExtendedMetaclasses();
for (Class stMetaclass : metaclasses) {
// get Eclass
- java.lang.Class metaclassClass = stMetaclass.getClass();
+ java.lang.Class<?> metaclassClass = stMetaclass.getClass();
if (metaclassClass != null) {
EClassifier metaClassifier = UMLPackage.eINSTANCE.getEClassifier(stMetaclass.getName());
if (((EClass) metaClassifier).isSuperTypeOf(toolMetaclass)) {
// should create the palette entry
- HashMap properties = new HashMap();
- ArrayList<String> stereotypesQNToApply = new ArrayList<String>();
+ Map<String, Object> properties = new HashMap<String, Object>();
properties.put(IPapyrusPaletteConstant.ASPECT_ACTION_KEY, StereotypeAspectActionProvider.createConfigurationNode(stereotype.getQualifiedName()));
AspectCreationEntry aspectEntry = new AspectCreationEntry(stereotype.getName() + " (" + entry.getLabel() + ")", "Create an element with a stereotype", entry.getId() + "_" + System.currentTimeMillis(),
entry.getSmallIcon(), entry, properties);
@@ -2468,4 +2438,37 @@ public class LocalPaletteContentPage extends WizardPage implements Listener {
public void setPriority(ProviderPriority priority) {
this.priority = priority;
}
+
+ protected static class LocalSelectionDragSource extends DragSourceAdapter {
+ private ISelectionProvider selectionSource;
+
+ public LocalSelectionDragSource(ISelectionProvider selectionProvider) {
+ selectionSource = selectionProvider;
+ }
+
+ @Override
+ public void dragStart(DragSourceEvent event) {
+ super.dragStart(event);
+ LocalSelectionTransfer.getTransfer().setSelection(selectionSource.getSelection());
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void dragSetData(DragSourceEvent event) {
+ super.dragSetData(event);
+ LocalSelectionTransfer.getTransfer().setSelection(selectionSource.getSelection());
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void dragFinished(DragSourceEvent event) {
+ LocalSelectionTransfer.getTransfer().setSelection(null);
+ super.dragFinished(event);
+ }
+
+ }
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization/src/org/eclipse/papyrus/customization/wizard/CustomizationPage.java b/plugins/customization/org.eclipse.papyrus.customization/src/org/eclipse/papyrus/customization/wizard/CustomizationPage.java
index 9f29e7369a5..243339fcabc 100644
--- a/plugins/customization/org.eclipse.papyrus.customization/src/org/eclipse/papyrus/customization/wizard/CustomizationPage.java
+++ b/plugins/customization/org.eclipse.papyrus.customization/src/org/eclipse/papyrus/customization/wizard/CustomizationPage.java
@@ -11,22 +11,14 @@
*****************************************************************************/
package org.eclipse.papyrus.customization.wizard;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.papyrus.customization.display.DisplayManager;
import org.eclipse.papyrus.customization.messages.Messages;
import org.eclipse.papyrus.customization.model.customizationplugin.CustomizationConfiguration;
import org.eclipse.papyrus.customization.model.customizationplugin.CustomizationPluginFactory;
-import org.eclipse.papyrus.views.properties.contexts.View;
-import org.eclipse.papyrus.views.properties.runtime.EmbeddedDisplayEngine;
-import org.eclipse.papyrus.views.properties.runtime.ViewConstraintEngine;
+import org.eclipse.papyrus.views.properties.runtime.DisplayEngine;
+import org.eclipse.papyrus.views.properties.util.PropertiesDisplayHelper;
import org.eclipse.papyrus.views.properties.widgets.layout.PropertiesLayout;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.FillLayout;
-import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
@@ -34,6 +26,8 @@ public class CustomizationPage extends WizardPage {
private CustomizationConfiguration configuration;
+ private DisplayEngine displayEngine;
+
protected CustomizationPage() {
this(null);
}
@@ -57,17 +51,7 @@ public class CustomizationPage extends WizardPage {
this.configuration = CustomizationPluginFactory.eINSTANCE.createCustomizationConfiguration();
}
- IStructuredSelection selection = new StructuredSelection(configuration);
-
- ViewConstraintEngine constraintEngine = DisplayManager.instance.constraintEngine;
- Set<View> views = constraintEngine.getViews(selection);
-
- Composite self = new Composite(container, SWT.BORDER);
- self.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
- self.setLayout(new FillLayout());
-
- EmbeddedDisplayEngine display = new EmbeddedDisplayEngine();
- display.display(views, self, selection, SWT.NONE);
+ displayEngine = PropertiesDisplayHelper.display(this.configuration, container);
setControl(container);
}
@@ -89,4 +73,16 @@ public class CustomizationPage extends WizardPage {
return configuration;
}
+ /**
+ * @see org.eclipse.jface.dialogs.DialogPage#dispose()
+ *
+ */
+ @Override
+ public void dispose() {
+ if (displayEngine != null) {
+ displayEngine.dispose();
+ }
+ super.dispose();
+ }
+
}

Back to the top