renderOutline() and renderSymbol() now have access to visibleRegion
authorDaniel Kirschten <daniel.kirschten@gmx.de>
Thu, 6 Jun 2019 19:30:08 +0000 (21:30 +0200)
committerDaniel Kirschten <daniel.kirschten@gmx.de>
Thu, 6 Jun 2019 19:30:08 +0000 (21:30 +0200)
net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/components/SimpleRectangularSubmodelComponent.java
net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/components/SubmodelComponent.java

index 96f1a33..89a55f0 100644 (file)
@@ -7,6 +7,7 @@ import java.util.List;
 import net.haspamelodica.swt.helper.gcs.GeneralGC;
 import net.haspamelodica.swt.helper.swtobjectwrappers.Font;
 import net.haspamelodica.swt.helper.swtobjectwrappers.Point;
+import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle;
 import net.mograsim.logic.ui.model.ViewModelModifiable;
 import net.mograsim.logic.ui.model.wires.Pin;
 
@@ -103,7 +104,7 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent
        }
 
        @Override
-       protected void renderSymbol(GeneralGC gc)
+       protected void renderSymbol(GeneralGC gc, Rectangle visibleRegion)
        {
                double posX = getBounds().x;
                double posY = getBounds().y;
@@ -117,7 +118,7 @@ public class SimpleRectangularSubmodelComponent extends SubmodelComponent
        }
 
        @Override
-       protected void renderOutline(GeneralGC gc)
+       protected void renderOutline(GeneralGC gc, Rectangle visibleRegion)
        {
                gc.drawRectangle(getBounds());
        }
index 72663a2..a4fe1aa 100644 (file)
@@ -153,16 +153,16 @@ public abstract class SubmodelComponent extends GUIComponent
                if (labelAlpha != 0)
                {
                        gc.setAlpha(labelAlpha);
-                       renderSymbol(gc);
+                       renderSymbol(gc, visibleRegion);
                }
                conf.reset(gc);
                // draw the outline after all other operations to make interface pins look better
-               renderOutline(gc);
+               renderOutline(gc, visibleRegion);
        }
 
-       protected abstract void renderOutline(GeneralGC gc);
+       protected abstract void renderOutline(GeneralGC gc, Rectangle visibleRegion);
 
-       protected abstract void renderSymbol(GeneralGC gc);
+       protected abstract void renderSymbol(GeneralGC gc, Rectangle visibleRegion);
 
        private static double map(double val, double valMin, double valMax, double mapMin, double mapMax)
        {