From: Daniel Kirschten Date: Fri, 27 Mar 2020 16:54:29 +0000 (+0100) Subject: Fixed an endless redraw loop on GTK X-Git-Url: https://mograsim.net/gitweb/?p=Mograsim.git;a=commitdiff_plain;h=17f902a2717d92dee566eae233cc635ec8bebd74 Fixed an endless redraw loop on GTK --- diff --git a/plugins/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java b/plugins/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java index aedaa481..3030103b 100644 --- a/plugins/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java +++ b/plugins/net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorCanvas.java @@ -2,7 +2,6 @@ package net.mograsim.logic.model.editor.ui; import java.util.Collection; -import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Composite; import net.haspamelodica.swt.helper.gcs.TranslatedGC; @@ -10,7 +9,6 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; import net.mograsim.logic.model.LogicUICanvas; import net.mograsim.logic.model.editor.Editor; import net.mograsim.logic.model.editor.handles.Handle; -import net.mograsim.preferences.Preferences; //TODO: Remove Inheritance public class EditorCanvas extends LogicUICanvas @@ -37,10 +35,6 @@ public class EditorCanvas extends LogicUICanvas addZoomedRenderer(gc -> { Rectangle visibleRegion = new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom); - 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 TranslatedGC tgc = new TranslatedGC(gc, 0.0d, 0.0d, 1 / editor.toBeEdited.getSubmodelScale(), false); editor.toBeEdited.getOutlineRenderer().render(tgc, new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom)); diff --git a/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java b/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java index 9675167c..3a70dcd1 100644 --- a/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java +++ b/plugins/net.mograsim.logic.model/src/net/mograsim/logic/model/LogicUICanvas.java @@ -47,14 +47,12 @@ public class LogicUICanvas extends ZoomableCanvas this.model = model; + Color background = Preferences.current().getColor("net.mograsim.logic.model.color.background"); + if (background != null) + setBackground(background); + LogicUIRenderer renderer = new LogicUIRenderer(model); - addZoomedRenderer(gc -> - { - 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 - renderer.render(gc, new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom)); - }); + addZoomedRenderer(gc -> renderer.render(gc, new Rectangle(-offX / zoom, -offY / zoom, gW / zoom, gH / zoom))); model.setRedrawHandler(() -> { if (!isDisposed())