--- /dev/null
+package org.simantics.modeling.ui.diagram.monitor;\r
+\r
+import org.simantics.browsing.ui.swt.widgets.impl.ModifyComboListenerImpl;\r
+import org.simantics.db.Resource;\r
+import org.simantics.db.WriteGraph;\r
+import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.diagram.stubs.DiagramResource;\r
+\r
+public class FormatModifier extends ModifyComboListenerImpl<Resource, Resource> {\r
+\r
+ @Override\r
+ public void applySelection(WriteGraph graph, Resource monitor, Resource newFormatter) throws DatabaseException {\r
+ graph.markUndoPoint();\r
+ DiagramResource DIA = DiagramResource.getInstance(graph);\r
+ Resource exist = graph.getPossibleObject(monitor, DIA.HasFormatter);\r
+ if (newFormatter.equals(exist))\r
+ return;\r
+ graph.deny(monitor, DIA.HasFormatter);\r
+ graph.claim(monitor, DIA.HasFormatter, newFormatter);\r
+ }\r
+\r
+}
\ No newline at end of file