Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorptessier2018-05-07 08:40:33 +0000
committerptessier2018-05-07 08:40:33 +0000
commit98a8f0095777a8c8c65647178a6e61eb71ffa010 (patch)
tree4e0c6c51c305dbde111326c917751563e8a6bf64
parent578fb333f206cda65807d98c5b991bb7a0f6fd56 (diff)
downloadorg.eclipse.papyrus-98a8f0095777a8c8c65647178a6e61eb71ffa010.tar.gz
org.eclipse.papyrus-98a8f0095777a8c8c65647178a6e61eb71ffa010.tar.xz
org.eclipse.papyrus-98a8f0095777a8c8c65647178a6e61eb71ffa010.zip
Bug 528441 - [AFViewpoints][Palettes] Setting diagram prototype
programmatically does not refresh palettes of open diagrams fix null pointer exception Change-Id: If263da2d05976bf68a3285904da945d8d72d374e
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/part/UmlGmfDiagramEditor.java19
1 files changed, 12 insertions, 7 deletions
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/part/UmlGmfDiagramEditor.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/part/UmlGmfDiagramEditor.java
index 44ab3acf8c9..929953e2550 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/part/UmlGmfDiagramEditor.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/part/UmlGmfDiagramEditor.java
@@ -69,7 +69,7 @@ public class UmlGmfDiagramEditor extends SynchronizableGmfDiagramEditor implemen
* of Papyrus editor.
*/
protected boolean viewerInitialized = false;
-
+
/**
* Listener to to the diagram kind
*/
@@ -99,10 +99,10 @@ public class UmlGmfDiagramEditor extends SynchronizableGmfDiagramEditor implemen
ISaveAndDirtyService saveAndDirtyService = servicesRegistry.getService(ISaveAndDirtyService.class);
saveAndDirtyService.registerIsaveablePart(this);
viewerInitialized = false;
-
+
// add a listener to the diagram kind id
PapyrusDiagramStyle style = DiagramUtils.getPapyrusDiagramStyle(diagram);
- style.eAdapters().add(diagramKindAdapter = new AdapterImpl() {
+ diagramKindAdapter = new AdapterImpl() {
@Override
public void notifyChanged(Notification msg) {
@@ -110,8 +110,11 @@ public class UmlGmfDiagramEditor extends SynchronizableGmfDiagramEditor implemen
getEditDomain().setPaletteRoot(createPaletteRoot(null));
getGraphicalViewer().setContents(getDiagram());
}
-
- });
+
+ };
+ if(style!=null) {
+ style.eAdapters().add(diagramKindAdapter);
+ }
}
/**
@@ -172,7 +175,9 @@ public class UmlGmfDiagramEditor extends SynchronizableGmfDiagramEditor implemen
// remove the listener to the diagram kind id
if (diagramKindAdapter != null) {
PapyrusDiagramStyle style = DiagramUtils.getPapyrusDiagramStyle(getDiagram());
- style.eAdapters().remove(diagramKindAdapter);
+ if(style!=null) {
+ style.eAdapters().remove(diagramKindAdapter);
+ }
diagramKindAdapter = null;
}
@@ -202,7 +207,7 @@ public class UmlGmfDiagramEditor extends SynchronizableGmfDiagramEditor implemen
// the service can't be found. Maybe it is already disposed.
// Do nothing
}
-
+
partNameSynchronizer = null;
diagram = null;
servicesRegistry = null;

Back to the top