X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.ui%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2FLogicUIRenderer.java;fp=net.mograsim.logic.ui%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2FLogicUIRenderer.java;h=0000000000000000000000000000000000000000;hb=b5d8c2d71e27350ea7c9314e40df5bb0584271cd;hp=56ecffb76c6a4473471d90b8c6ede23da82d33b1;hpb=69cb6725ef670328959d55649257ded6ac924b33;p=Mograsim.git diff --git a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/LogicUIRenderer.java b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/LogicUIRenderer.java deleted file mode 100644 index 56ecffb7..00000000 --- a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/LogicUIRenderer.java +++ /dev/null @@ -1,57 +0,0 @@ -package net.mograsim.logic.ui; - -import org.eclipse.swt.SWT; - -import net.haspamelodica.swt.helper.gcs.GeneralGC; -import net.haspamelodica.swt.helper.swtobjectwrappers.Point; -import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle; -import net.mograsim.logic.ui.model.ViewModel; -import net.mograsim.logic.ui.model.components.GUIComponent; -import net.mograsim.logic.ui.model.wires.Pin; - -public class LogicUIRenderer -{ - private static final boolean DRAW_PINS = false; - - private final ViewModel model; - - public LogicUIRenderer(ViewModel model) - { - this.model = model; - } - - public void render(GeneralGC gc, Rectangle visibleRegion) - { - gc.setAntialias(SWT.ON); - gc.setClipping(visibleRegion); - gc.setLineWidth(.5); - model.getWires().forEach(w -> - { - Rectangle bounds = w.getBounds(); - double lw = gc.getLineWidth(); - if (visibleRegion.intersects(bounds.x - lw, bounds.y - lw, bounds.width + lw + lw, bounds.height + lw + lw)) - w.render(gc); - }); - model.getComponentsByName().values().forEach(c -> renderComponent(gc, c, visibleRegion)); - } - - private static void renderComponent(GeneralGC gc, GUIComponent component, Rectangle visibleRegion) - { - Rectangle bounds = component.getBounds(); - double lw = gc.getLineWidth(); - if (visibleRegion.intersects(bounds.x - lw, bounds.y - lw, bounds.width + lw + lw, bounds.height + lw + lw)) - { - component.render(gc, visibleRegion); - if (DRAW_PINS) - { - gc.setBackground(gc.getDevice().getSystemColor(SWT.COLOR_DARK_CYAN)); - for (Pin p : component.getPins().values()) - { - Point pos = p.getPos(); - gc.fillOval(pos.x - 1, pos.y - 1, 2, 2); - } - } - } - } - -} \ No newline at end of file