diff --git a/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/ByteMonitorRepresentation.java b/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/ByteMonitorRepresentation.java index 3815953624..b26d8a8534 100644 --- a/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/ByteMonitorRepresentation.java +++ b/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/ByteMonitorRepresentation.java @@ -447,5 +447,14 @@ public void updateChanges() } } } + + if (jfx_node != null) { + jfx_node.layout(); + } + for (Label label : labels) { + if (label != null) { + label.layout(); + } + } } } diff --git a/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/LabelRepresentation.java b/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/LabelRepresentation.java index e65e4d4a89..3585156e5d 100644 --- a/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/LabelRepresentation.java +++ b/app/display/representation-javafx/src/main/java/org/csstudio/display/builder/representation/javafx/widgets/LabelRepresentation.java @@ -138,12 +138,14 @@ public void updateChanges() { case NONE: jfx_node.setPrefSize(width, height); + jfx_node.setMinSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.setMaxSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); if (was_ever_transformed) jfx_node.getTransforms().clear(); break; case NINETY: jfx_node.setPrefSize(height, width); + jfx_node.setMinSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.setMaxSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.getTransforms().setAll(new Rotate(-rotation.getAngle()), new Translate(-height, 0)); @@ -151,6 +153,7 @@ public void updateChanges() break; case ONEEIGHTY: jfx_node.setPrefSize(width, height); + jfx_node.setMinSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.setMaxSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.getTransforms().setAll(new Rotate(-rotation.getAngle()), new Translate(-width, -height)); @@ -158,6 +161,7 @@ public void updateChanges() break; case MINUS_NINETY: jfx_node.setPrefSize(height, width); + jfx_node.setMinSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.setMaxSize(Control.USE_PREF_SIZE, Control.USE_PREF_SIZE); jfx_node.getTransforms().setAll(new Rotate(-rotation.getAngle()), new Translate(0, -width));