Fixed a bug in Am2900; created dlatch8/80; relayouted some components
[Mograsim.git] / net.mograsim.logic.model.editor / src / net / mograsim / logic / model / editor / ui / EditorCanvas.java
index 98aefbb..aedaa48 100644 (file)
@@ -22,14 +22,22 @@ public class EditorCanvas extends LogicUICanvas
                super(parent, style, editor.toBeEdited.submodel);
 
                handles = editor.handleManager.getHandles();
-               editor.handleManager.addHandleAddedListener(h -> h.addRedrawListener(this::redrawThreadsafe));
+               editor.handleManager.addHandleAddedListener(h ->
+               {
+                       redrawThreadsafe();
+                       h.addRedrawListener(this::redrawThreadsafe);
+               });
                // TODO: Is this even necessary? The Handle should be finalized by the gc
-               editor.handleManager.addHandleRemovedListener(h -> h.removeRedrawListener(this::redrawThreadsafe));
+               editor.handleManager.addHandleRemovedListener(h ->
+               {
+                       redrawThreadsafe();
+                       h.removeRedrawListener(this::redrawThreadsafe);
+               });
 
                addZoomedRenderer(gc ->
                {
                        Rectangle visibleRegion = new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom);
-                       Color background = Preferences.current().getColor("net.mograsim.logic.ui.color.background");
+                       Color background = Preferences.current().getColor("net.mograsim.logic.model.color.background");
                        if (background != null)
                                setBackground(background);// this.setBackground, not gc.setBackground to have the background fill the
                                                                                        // canvas