A proposal for resolving the loading problem of json files
[Mograsim.git] / net.mograsim.logic.model / src / net / mograsim / logic / model / serializing / DeserializedSubmodelComponent.java
index 2de3345..c52fe29 100644 (file)
@@ -2,8 +2,6 @@ package net.mograsim.logic.model.serializing;
 
 import com.google.gson.JsonElement;
 
-import net.haspamelodica.swt.helper.gcs.GeneralGC;
-import net.haspamelodica.swt.helper.swtobjectwrappers.Rectangle;
 import net.mograsim.logic.model.model.ViewModelModifiable;
 import net.mograsim.logic.model.model.components.submodels.SubmodelComponent;
 import net.mograsim.logic.model.model.wires.MovablePin;
@@ -11,7 +9,6 @@ import net.mograsim.logic.model.model.wires.Pin;
 import net.mograsim.logic.model.snippets.HighLevelStateHandler;
 import net.mograsim.logic.model.snippets.Renderer;
 
-//TODO serialize handlers
 public class DeserializedSubmodelComponent extends SubmodelComponent
 {
        /**
@@ -28,10 +25,6 @@ public class DeserializedSubmodelComponent extends SubmodelComponent
         */
        public final JsonElement paramsForSerializingOverride;
 
-       private Renderer outlineRenderer;
-       private Renderer symbolRenderer;
-       private HighLevelStateHandler highLevelStateHandler;
-
        public DeserializedSubmodelComponent(ViewModelModifiable model, String name, String idForSerializingOverride,
                        JsonElement paramsForSerializingOverride)
        {
@@ -41,44 +34,21 @@ public class DeserializedSubmodelComponent extends SubmodelComponent
        }
 
        @Override
-       public void setHighLevelState(String stateID, Object newState)
-       {
-               highLevelStateHandler.setHighLevelState(stateID, newState);
-       }
-
-       @Override
-       public Object getHighLevelState(String stateID)
-       {
-               return highLevelStateHandler.getHighLevelState(stateID);
-       }
-
-       @Override
-       protected void renderOutline(GeneralGC gc, Rectangle visibleRegion)
+       public void setSymbolRenderer(Renderer symbolRenderer)
        {
-               if (outlineRenderer != null)
-                       outlineRenderer.render(gc, visibleRegion);
+               super.setSymbolRenderer(symbolRenderer);
        }
 
        @Override
-       protected void renderSymbol(GeneralGC gc, Rectangle visibleRegion)
-       {
-               if (symbolRenderer != null)
-                       symbolRenderer.render(gc, visibleRegion);
-       }
-
        public void setOutlineRenderer(Renderer outlineRenderer)
        {
-               this.outlineRenderer = outlineRenderer;
-       }
-
-       public void setSymbolRenderer(Renderer symbolRenderer)
-       {
-               this.symbolRenderer = symbolRenderer;
+               super.setOutlineRenderer(outlineRenderer);
        }
 
-       public void setHighLevelStateHandler(HighLevelStateHandler highLevelStateHandler)
+       @Override
+       public void setHighLevelStateHandler(HighLevelStateHandler handler)
        {
-               this.highLevelStateHandler = highLevelStateHandler;
+               super.setHighLevelStateHandler(handler);
        }
 
        public ViewModelModifiable getSubmodelModifiable()
@@ -104,5 +74,9 @@ public class DeserializedSubmodelComponent extends SubmodelComponent
                return super.addSubmodelInterface(supermodelPin);
        }
 
-       // TODO static initializer
+       @Override
+       public void removeSubmodelInterface(String name)
+       {
+               super.removeSubmodelInterface(name);
+       }
 }
\ No newline at end of file