]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/elements/MonitorClass.java
Apply updates to font and color of monitor's prefix and suffix nodes
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / elements / MonitorClass.java
index 080f6b9c4ee8b5b0924aadf7640fe3265e1f2f09..4e64751dfcf00f12b65cced52423fdf2de30df43 100644 (file)
@@ -551,6 +551,21 @@ public class MonitorClass {
                     shape.setTransform(at2);
                 }
 
+                TextNode prefixNode = e.getHint(KEY_SG_PREFIX_NODE);
+                if (prefixNode != null) {
+                    if (prefixNode.getFont() != font) {
+                        prefixNode.setFont(font);
+                    }
+                    prefixNode.setColor(color);
+                }
+                TextNode suffixNode = e.getHint(KEY_SG_SUFFIX_NODE);
+                if (suffixNode != null) {
+                    if (suffixNode.getFont() != font) {
+                        suffixNode.setFont(font);
+                    }
+                    suffixNode.setColor(color);
+                }
+
                 updatePrefixAndSuffixPositions(e);
             }
         }
@@ -602,14 +617,14 @@ public class MonitorClass {
             }
             TextNode prefixNode = (TextNode) e.getHint(KEY_SG_PREFIX_NODE);
             if (prefixNode != null) {
-                Rectangle2D bounds = prefixNode.getBoundsInLocal();
+                Rectangle2D bounds = node.parentToLocal(prefixNode.localToParent(prefixNode.getBoundsInLocal()));
                 if (size == null)
                     size = new Rectangle2D.Double(0, 0, 0, 0);
                 size.add(bounds);
             }
             TextNode suffixNode = (TextNode) e.getHint(KEY_SG_SUFFIX_NODE);
             if (suffixNode != null) {
-                Rectangle2D bounds = suffixNode.getBoundsInLocal();
+                Rectangle2D bounds = node.parentToLocal(suffixNode.localToParent(suffixNode.getBoundsInLocal()));
                 if (size == null)
                     size = new Rectangle2D.Double(0, 0, 0, 0);
                 size.add(bounds);