Removed old ColorHelper class
authorDaniel Kirschten <daniel.kirschten@gmx.de>
Wed, 3 Jul 2019 08:39:25 +0000 (10:39 +0200)
committerDaniel Kirschten <daniel.kirschten@gmx.de>
Wed, 3 Jul 2019 08:39:25 +0000 (10:39 +0200)
net.mograsim.logic.ui/src/net/mograsim/logic/ui/ColorHelper.java [deleted file]
net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/wires/GUIWire.java
net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/wires/WireCrossPoint.java

diff --git a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/ColorHelper.java b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/ColorHelper.java
deleted file mode 100644 (file)
index 0b65d2b..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-package net.mograsim.logic.ui;
-
-import java.util.function.Consumer;
-import java.util.function.Supplier;
-
-import org.eclipse.swt.graphics.Color;
-
-import net.haspamelodica.swt.helper.gcs.GeneralGC;
-import net.mograsim.preferences.ColorDefinition;
-import net.mograsim.preferences.ColorManager;
-
-public class ColorHelper
-{
-       public static void executeWithDifferentForeground(GeneralGC gc, ColorDefinition col, Runnable exec)
-       {
-               executeWithDifferentColor(col, gc::getForeground, gc::setForeground, exec);
-       }
-
-       public static void executeWithDifferentBackground(GeneralGC gc, ColorDefinition col, Runnable exec)
-       {
-               executeWithDifferentColor(col, gc::getBackground, gc::setBackground, exec);
-       }
-
-       private static void executeWithDifferentColor(ColorDefinition col, Supplier<Color> getColor, Consumer<Color> setColor, Runnable exec)
-       {
-               if (col == null)
-                       exec.run();
-               else
-               {
-                       ColorManager cm = ColorManager.current();
-                       Color oldColor = getColor.get();
-                       Color newColor = cm.toColor(col);
-                       setColor.accept(newColor);
-                       exec.run();
-                       setColor.accept(oldColor);
-               }
-       }
-
-       private ColorHelper()
-       {
-               throw new UnsupportedOperationException("No instances of ColorHelper");
-       }
-}
\ No newline at end of file
index 5a0579c..6f6147a 100644 (file)
@@ -14,8 +14,9 @@ import net.mograsim.logic.core.types.BitVector;
 import net.mograsim.logic.core.types.BitVectorFormatter;
 import net.mograsim.logic.core.wires.Wire;
 import net.mograsim.logic.core.wires.Wire.ReadEnd;
-import net.mograsim.logic.ui.ColorHelper;
 import net.mograsim.logic.ui.model.ViewModelModifiable;
+import net.mograsim.preferences.ColorDefinition;
+import net.mograsim.preferences.ColorManager;
 
 /**
  * A wire connecting exactly two {@link Pin}s.
@@ -226,7 +227,10 @@ public class GUIWire
         */
        public void render(GeneralGC gc)
        {
-               ColorHelper.executeWithDifferentForeground(gc, BitVectorFormatter.formatAsColor(end), () -> gc.drawPolyline(effectivePath));
+               ColorDefinition wireColor = BitVectorFormatter.formatAsColor(end);
+               if (wireColor != null)
+                       gc.setForeground(ColorManager.current().toColor(wireColor));
+               gc.drawPolyline(effectivePath);
        }
 
        /**
index 6235f34..3abf9f7 100644 (file)
@@ -7,10 +7,11 @@ import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle;
 import net.mograsim.logic.core.LogicObserver;
 import net.mograsim.logic.core.types.BitVectorFormatter;
 import net.mograsim.logic.core.wires.Wire.ReadEnd;
-import net.mograsim.logic.ui.ColorHelper;
 import net.mograsim.logic.ui.model.ViewModelModifiable;
 import net.mograsim.logic.ui.model.components.GUIComponent;
 import net.mograsim.logic.ui.model.components.atomic.SimpleRectangularGUIGate;
+import net.mograsim.preferences.ColorDefinition;
+import net.mograsim.preferences.ColorManager;
 
 /**
  * A {@link GUIComponent} with only one pin. Is used to create wires connecting more than two pins. <br>
@@ -74,8 +75,10 @@ public class WireCrossPoint extends GUIComponent implements ConnectionPoint
        @Override
        public void render(GeneralGC gc, Rectangle visibleRegion)
        {
-               ColorHelper.executeWithDifferentBackground(gc, BitVectorFormatter.formatAsColor(end),
-                               () -> gc.fillOval(getPosX(), getPosY(), CIRCLE_DIAM, CIRCLE_DIAM));
+               ColorDefinition wireColor = BitVectorFormatter.formatAsColor(end);
+               if (wireColor != null)
+                       gc.setBackground(ColorManager.current().toColor(wireColor));
+               gc.fillOval(getPosX(), getPosY(), CIRCLE_DIAM, CIRCLE_DIAM);
        }
 
        // logic model binding