Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim...
authorFabian Stemmler <stemmler@in.tum.de>
Wed, 28 Aug 2019 09:05:04 +0000 (11:05 +0200)
committerFabian Stemmler <stemmler@in.tum.de>
Wed, 28 Aug 2019 09:05:04 +0000 (11:05 +0200)
81 files changed:
net.mograsim.logic.model.am2900/FullAdder.json [deleted file]
net.mograsim.logic.model.am2900/HalfAdder.json [deleted file]
net.mograsim.logic.model.am2900/Test.json [deleted file]
net.mograsim.logic.model.am2900/components/GUI_rsLatch.json
net.mograsim.logic.model.am2900/components/GUIand.json
net.mograsim.logic.model.am2900/components/GUIand41.json
net.mograsim.logic.model.am2900/components/GUIandor414.json
net.mograsim.logic.model.am2900/components/GUIdemux2.json
net.mograsim.logic.model.am2900/components/GUIdff.json
net.mograsim.logic.model.am2900/components/GUIdff4.json
net.mograsim.logic.model.am2900/components/GUIdff4_invwe.json
net.mograsim.logic.model.am2900/components/GUIdlatch.json
net.mograsim.logic.model.am2900/components/GUIdlatch4.json
net.mograsim.logic.model.am2900/components/GUIfulladder.json
net.mograsim.logic.model.am2900/components/GUIhalfadder.json
net.mograsim.logic.model.am2900/components/GUImux1.json
net.mograsim.logic.model.am2900/components/GUImux1_4.json
net.mograsim.logic.model.am2900/components/GUImux2_4.json
net.mograsim.logic.model.am2900/components/GUImux3.json
net.mograsim.logic.model.am2900/components/GUInand3.json
net.mograsim.logic.model.am2900/components/GUInot4.json
net.mograsim.logic.model.am2900/components/GUIor4.json
net.mograsim.logic.model.am2900/components/GUIor_4.json
net.mograsim.logic.model.am2900/components/GUIram2.json
net.mograsim.logic.model.am2900/components/GUIram4.json
net.mograsim.logic.model.am2900/components/GUIsel2_4.json
net.mograsim.logic.model.am2900/components/GUIsel3_4.json
net.mograsim.logic.model.am2900/components/GUIxor.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901ALUFuncDecode.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901ALUInclDecode.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901ALUInclSourceDecodeInclFunctionDecode.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901ALUOneBit.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901DestDecode.json
net.mograsim.logic.model.am2900/components/am2901/GUIAm2901SourceDecode.json
net.mograsim.logic.model.am2900/components/am2904/GUIAm2904.json
net.mograsim.logic.model.am2900/components/am2904/GUIAm2904TestLogic.json
net.mograsim.logic.model.am2900/components/am2910/GUIAm2910.json
net.mograsim.logic.model.am2900/components/am2910/GUIAm2910_old.json
net.mograsim.logic.model.editor/components/GUI_rsLatch.json
net.mograsim.logic.model.editor/components/GUIand.json
net.mograsim.logic.model.editor/components/GUIand41.json
net.mograsim.logic.model.editor/components/GUIandor414.json
net.mograsim.logic.model.editor/components/GUIdemux2.json
net.mograsim.logic.model.editor/components/GUIdff.json
net.mograsim.logic.model.editor/components/GUIdff4.json
net.mograsim.logic.model.editor/components/GUIdff4_invwe.json
net.mograsim.logic.model.editor/components/GUIdlatch.json
net.mograsim.logic.model.editor/components/GUIdlatch4.json
net.mograsim.logic.model.editor/components/GUIfulladder.json
net.mograsim.logic.model.editor/components/GUIhalfadder.json
net.mograsim.logic.model.editor/components/GUImux1.json
net.mograsim.logic.model.editor/components/GUImux1_4.json
net.mograsim.logic.model.editor/components/GUImux2_4.json
net.mograsim.logic.model.editor/components/GUImux3.json
net.mograsim.logic.model.editor/components/GUInand3.json
net.mograsim.logic.model.editor/components/GUInot4.json
net.mograsim.logic.model.editor/components/GUIor4.json
net.mograsim.logic.model.editor/components/GUIor_4.json
net.mograsim.logic.model.editor/components/GUIram2.json
net.mograsim.logic.model.editor/components/GUIram4.json
net.mograsim.logic.model.editor/components/GUIsel2_4.json
net.mograsim.logic.model.editor/components/GUIsel3_4.json
net.mograsim.logic.model.editor/components/GUIxor.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901ALUFuncDecode.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901ALUInclDecode.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901ALUInclSourceDecodeInclFunctionDecode.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901ALUOneBit.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901DestDecode.json
net.mograsim.logic.model.editor/components/am2901/GUIAm2901SourceDecode.json
net.mograsim.logic.model.editor/components/am2904/GUIAm2904.json
net.mograsim.logic.model.editor/components/am2904/GUIAm2904TestLogic.json
net.mograsim.logic.model.editor/components/am2910/GUIAm2910.json
net.mograsim.logic.model.editor/components/am2910/GUIAm2910_old.json
net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/SaveLoadManager.java
net.mograsim.logic.model.editor/src/net/mograsim/logic/model/editor/ui/EditorGUI.java
net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/IndirectGUIComponentCreator.java
net.mograsim.logic.model/src/net/mograsim/logic/model/serializing/standardComponentIDMapping.json
net.mograsim.logic.model/src/net/mograsim/logic/model/snippets/CodeSnippetSupplier.java
net.mograsim.logic.model/src/net/mograsim/logic/model/snippets/highlevelstatehandlers/standard/standardSnippetIDMapping.json

diff --git a/net.mograsim.logic.model.am2900/FullAdder.json b/net.mograsim.logic.model.am2900/FullAdder.json
deleted file mode 100644 (file)
index a027c43..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-mograsim version: 0.1.1
-{
-  "type": "SimpleRectangularSubmodelComponent",
-  "width": 35.0,
-  "height": 30.0,
-  "interfacePins": [
-    {
-      "location": {
-        "x": 0.0,
-        "y": 5.0
-      },
-      "name": "A",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 0.0,
-        "y": 15.0
-      },
-      "name": "B",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 0.0,
-        "y": 25.0
-      },
-      "name": "C",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 35.0,
-        "y": 5.0
-      },
-      "name": "Y",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 35.0,
-        "y": 15.0
-      },
-      "name": "Z",
-      "logicWidth": 1
-    }
-  ],
-  "composition": {
-    "innerScale": 0.4,
-    "subComps": [
-      {
-        "pos": {
-          "x": 5.0,
-          "y": 40.0
-        },
-        "type": "class:net.mograsim.logic.model.model.components.mi.nandbased.GUIhalfadder",
-        "params": {}
-      },
-      {
-        "pos": {
-          "x": 45.0,
-          "y": 7.5
-        },
-        "type": "class:net.mograsim.logic.model.model.components.mi.nandbased.GUIhalfadder",
-        "params": {}
-      },
-      {
-        "pos": {
-          "x": 57.5,
-          "y": 40.0
-        },
-        "type": "class:net.mograsim.logic.model.model.components.GUINandGate",
-        "params": {
-          "logicWidth": 1
-        }
-      }
-    ],
-    "innerWires": [
-      {
-        "pin1": {
-          "compId": 0,
-          "pinName": "A"
-        },
-        "pin2": {
-          "compId": 2,
-          "pinName": "A"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compId": 0,
-          "pinName": "B"
-        },
-        "pin2": {
-          "compId": 1,
-          "pinName": "A"
-        }
-      },
-      {
-        "pin1": {
-          "compId": 0,
-          "pinName": "C"
-        },
-        "pin2": {
-          "compId": 1,
-          "pinName": "B"
-        }
-      },
-      {
-        "pin1": {
-          "compId": 1,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 2,
-          "pinName": "B"
-        }
-      },
-      {
-        "pin1": {
-          "compId": 1,
-          "pinName": "_Z"
-        },
-        "pin2": {
-          "compId": 3,
-          "pinName": "B"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compId": 2,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 0,
-          "pinName": "Y"
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compId": 2,
-          "pinName": "_Z"
-        },
-        "pin2": {
-          "compId": 3,
-          "pinName": "A"
-        },
-        "path": [
-          {
-            "x": 82.5,
-            "y": 22.5
-          },
-          {
-            "x": 82.5,
-            "y": 35.0
-          },
-          {
-            "x": 52.5,
-            "y": 35.0
-          },
-          {
-            "x": 52.5,
-            "y": 45.0
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 3,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 0,
-          "pinName": "Z"
-        }
-      }
-    ]
-  },
-  "specialized": {
-    "input_count": 3,
-    "label": "GUIfulladder",
-    "logic_width": 1,
-    "output_count": 2
-  }
-}
\ No newline at end of file
diff --git a/net.mograsim.logic.model.am2900/HalfAdder.json b/net.mograsim.logic.model.am2900/HalfAdder.json
deleted file mode 100644 (file)
index 9eb7057..0000000
+++ /dev/null
@@ -1,323 +0,0 @@
-mograsim version: 0.1.1
-{
-  "type": "SimpleRectangularSubmodelComponent",
-  "width": 35.0,
-  "height": 20.0,
-  "interfacePins": [
-    {
-      "location": {
-        "x": 0.0,
-        "y": 5.0
-      },
-      "name": "A",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 0.0,
-        "y": 15.0
-      },
-      "name": "B",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 35.0,
-        "y": 5.0
-      },
-      "name": "Y",
-      "logicWidth": 1
-    },
-    {
-      "location": {
-        "x": 35.0,
-        "y": 15.0
-      },
-      "name": "_Z",
-      "logicWidth": 1
-    }
-  ],
-  "composition": {
-    "innerScale": 0.4,
-    "subComps": [
-      {
-        "pos": {
-          "x": 10.0,
-          "y": 15.0
-        },
-        "type": "class:net.mograsim.logic.model.model.components.GUINandGate",
-        "params": {
-          "logicWidth": 1
-        }
-      },
-      {
-        "pos": {
-          "x": 40.0,
-          "y": 2.5
-        },
-        "type": "class:net.mograsim.logic.model.model.components.GUINandGate",
-        "params": {
-          "logicWidth": 1
-        }
-      },
-      {
-        "pos": {
-          "x": 40.0,
-          "y": 27.5
-        },
-        "type": "class:net.mograsim.logic.model.model.components.GUINandGate",
-        "params": {
-          "logicWidth": 1
-        }
-      },
-      {
-        "pos": {
-          "x": 65.0,
-          "y": 2.5
-        },
-        "type": "class:net.mograsim.logic.model.model.components.GUINandGate",
-        "params": {
-          "logicWidth": 1
-        }
-      },
-      {
-        "pos": {
-          "x": 4.0,
-          "y": 11.5
-        },
-        "type": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
-        "params": {
-          "logicWidth": 1
-        }
-      },
-      {
-        "pos": {
-          "x": 4.0,
-          "y": 36.5
-        },
-        "type": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
-        "params": {
-          "logicWidth": 1
-        }
-      },
-      {
-        "pos": {
-          "x": 34.0,
-          "y": 24.0
-        },
-        "type": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
-        "params": {
-          "logicWidth": 1
-        }
-      }
-    ],
-    "innerWires": [
-      {
-        "pin1": {
-          "compId": 0,
-          "pinName": "A"
-        },
-        "pin2": {
-          "compId": 5,
-          "pinName": ""
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compId": 5,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 2,
-          "pinName": "A"
-        },
-        "path": [
-          {
-            "x": 5.0,
-            "y": 7.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 5,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 1,
-          "pinName": "A"
-        },
-        "path": [
-          {
-            "x": 5.0,
-            "y": 20.0
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 0,
-          "pinName": "B"
-        },
-        "pin2": {
-          "compId": 6,
-          "pinName": ""
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compId": 6,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 3,
-          "pinName": "B"
-        },
-        "path": [
-          {
-            "x": 5.0,
-            "y": 42.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 6,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 1,
-          "pinName": "B"
-        },
-        "path": [
-          {
-            "x": 5.0,
-            "y": 30.0
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 1,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 7,
-          "pinName": ""
-        },
-        "path": []
-      },
-      {
-        "pin1": {
-          "compId": 7,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 0,
-          "pinName": "_Z"
-        },
-        "path": [
-          {
-            "x": 80.0,
-            "y": 25.0
-          },
-          {
-            "x": 80.0,
-            "y": 37.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 7,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 2,
-          "pinName": "B"
-        },
-        "path": [
-          {
-            "x": 35.0,
-            "y": 17.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 7,
-          "pinName": ""
-        },
-        "pin2": {
-          "compId": 3,
-          "pinName": "A"
-        },
-        "path": [
-          {
-            "x": 35.0,
-            "y": 32.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 2,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 4,
-          "pinName": "A"
-        },
-        "path": [
-          {
-            "x": 62.5,
-            "y": 12.5
-          },
-          {
-            "x": 62.5,
-            "y": 7.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 3,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 4,
-          "pinName": "B"
-        },
-        "path": [
-          {
-            "x": 62.5,
-            "y": 37.5
-          },
-          {
-            "x": 62.5,
-            "y": 17.5
-          }
-        ]
-      },
-      {
-        "pin1": {
-          "compId": 4,
-          "pinName": "Y"
-        },
-        "pin2": {
-          "compId": 0,
-          "pinName": "Y"
-        },
-        "path": []
-      }
-    ]
-  },
-  "specialized": {
-    "input_count": 2,
-    "label": "GUIhalfadder",
-    "logic_width": 1,
-    "output_count": 2
-  }
-}
\ No newline at end of file
diff --git a/net.mograsim.logic.model.am2900/Test.json b/net.mograsim.logic.model.am2900/Test.json
deleted file mode 100644 (file)
index 56085df..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-mograsim version: 0.1.1
-{
-  "type": "SimpleRectangularSubmodelComponent",
-  "width": 35.0,
-  "height": 10.0,
-  "interfacePins": [
-    {
-      "location": {
-        "x": 0.0,
-        "y": 5.0
-      },
-      "name": "Input pin #0",
-      "logicWidth": 1
-    }
-  ],
-  "composition": {
-    "innerScale": 0.4,
-    "subComps": [
-      {
-        "pos": {
-          "x": 0.0,
-          "y": 0.0
-        },
-        "type": "file:HalfAdder.json",
-        "params": {}
-      }
-    ],
-    "innerWires": []
-  },
-  "specialized": {
-    "input_count": 1,
-    "label": "Test",
-    "logic_width": 1,
-    "output_count": 0
-  }
-}
\ No newline at end of file
index 4199e45..6f679a9 100644 (file)
@@ -219,7 +219,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "_rsLatch",
     "centerTextHeight": 5.0,
@@ -227,13 +227,13 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.WireForcingAtomicHighLevelStateHandler",
+        "id": "wireForcing",
         "params": {
           "wiresToForce": [
             "q"
index 6ec536a..ef57797 100644 (file)
@@ -141,7 +141,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIand",
     "centerTextHeight": 5.0,
@@ -149,5 +149,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 9577681..87b7394 100644 (file)
@@ -332,7 +332,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIand41",
     "centerTextHeight": 5.0,
@@ -340,5 +340,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index c6dc821..bd61b9d 100644 (file)
@@ -493,7 +493,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIandor414",
     "centerTextHeight": 5.0,
@@ -501,5 +501,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 55e3c8a..3523e99 100644 (file)
@@ -524,7 +524,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdemux2",
     "centerTextHeight": 5.0,
@@ -532,5 +532,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 345b126..66af673 100644 (file)
@@ -332,7 +332,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdff",
     "centerTextHeight": 5.0,
@@ -340,13 +340,13 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUI_rsLatch#1",
           "subStateID": "q"
index 4064f93..d03fafe 100644 (file)
@@ -653,7 +653,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "D flip flop\n4 bit",
     "centerTextHeight": 5.0,
@@ -661,27 +661,27 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q1": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#0",
           "subStateID": "q"
         }
       },
       "q2": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#1",
           "subStateID": "q"
         }
       },
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "q1",
@@ -698,14 +698,14 @@ mograsim version: 0.1.3
         }
       },
       "q3": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#2",
           "subStateID": "q"
         }
       },
       "q4": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#3",
           "subStateID": "q"
index cb697d2..3108cc5 100644 (file)
@@ -662,7 +662,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "D flip flop\n4 bit",
     "centerTextHeight": 5.0,
@@ -670,27 +670,27 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q1": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#0",
           "subStateID": "q"
         }
       },
       "q2": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#1",
           "subStateID": "q"
         }
       },
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "q1",
@@ -707,14 +707,14 @@ mograsim version: 0.1.3
         }
       },
       "q3": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#2",
           "subStateID": "q"
         }
       },
       "q4": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#3",
           "subStateID": "q"
index 26c4071..034ab79 100644 (file)
@@ -237,7 +237,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdlatch",
     "centerTextHeight": 5.0,
@@ -245,13 +245,13 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUI_rsLatch#0",
           "subStateID": "q"
index 28021df..d798d7f 100644 (file)
@@ -332,7 +332,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdlatch4",
     "centerTextHeight": 5.0,
@@ -340,27 +340,27 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q1": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#0",
           "subStateID": "q"
         }
       },
       "q2": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#1",
           "subStateID": "q"
         }
       },
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "q1",
@@ -377,14 +377,14 @@ mograsim version: 0.1.3
         }
       },
       "q3": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#2",
           "subStateID": "q"
         }
       },
       "q4": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#3",
           "subStateID": "q"
index b509eb2..d464701 100644 (file)
@@ -185,7 +185,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIfulladder",
     "centerTextHeight": 5.0,
@@ -193,5 +193,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 8ca9ccd..d0a0fa2 100644 (file)
@@ -319,7 +319,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIhalfadder",
     "centerTextHeight": 5.0,
@@ -327,5 +327,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index b75d9f1..c0d53e5 100644 (file)
@@ -230,7 +230,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux1",
     "centerTextHeight": 5.0,
@@ -238,5 +238,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index b9f6612..c90cd3e 100644 (file)
@@ -476,7 +476,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux1_4",
     "centerTextHeight": 5.0,
@@ -484,5 +484,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index f9648ee..042d9e1 100644 (file)
@@ -679,7 +679,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux1_4",
     "centerTextHeight": 5.0,
@@ -687,6 +687,6 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevelStateHandler"
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "default"
 }
\ No newline at end of file
index 69181cd..3f6a8bc 100644 (file)
@@ -104,7 +104,7 @@ mograsim version: 0.1.3
     "innerScale": 0.4,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 24.0,
@@ -113,7 +113,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 19.0,
@@ -466,7 +466,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux3",
     "centerTextHeight": 5.0,
@@ -474,6 +474,6 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevelStateHandler"
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "default"
 }
\ No newline at end of file
index 1bdc7cc..e57eefe 100644 (file)
@@ -201,7 +201,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUInand3",
     "centerTextHeight": 5.0,
@@ -209,5 +209,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 0a3b703..a7e95a3 100644 (file)
@@ -379,7 +379,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUInot4",
     "centerTextHeight": 5.0,
@@ -387,5 +387,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index fca69d6..5b09418 100644 (file)
@@ -539,7 +539,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIor4",
     "centerTextHeight": 5.0,
@@ -547,5 +547,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 07a3e1e..ed484c9 100644 (file)
@@ -871,7 +871,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIor_4",
     "centerTextHeight": 5.0,
@@ -879,5 +879,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 31a01fb..ea3eff9 100644 (file)
@@ -2951,7 +2951,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIram2",
     "centerTextHeight": 5.0,
@@ -2959,30 +2959,30 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {
       "c00": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#0"
         }
       },
       "c11": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#3"
         }
       },
       "c10": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#2"
         }
       },
       "c01": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#1"
         }
@@ -2990,7 +2990,7 @@ mograsim version: 0.1.3
     },
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "c11.q",
index 05bfe9d..e5e71cc 100644 (file)
@@ -3331,7 +3331,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIram4",
     "centerTextHeight": 5.0,
@@ -3339,141 +3339,141 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {
       "c00": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0"
         }
       },
       "c11": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3"
         }
       },
       "c10": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2"
         }
       },
       "c01": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1"
         }
       },
       "c1000": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c10"
         }
       },
       "c1011": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c10"
         }
       },
       "c1110": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c11"
         }
       },
       "c1001": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c10"
         }
       },
       "c1100": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c11"
         }
       },
       "c1111": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c11"
         }
       },
       "c0000": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c00"
         }
       },
       "c0011": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c00"
         }
       },
       "c0110": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c01"
         }
       },
       "c0010": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c00"
         }
       },
       "c1010": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c10"
         }
       },
       "c0101": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c01"
         }
       },
       "c0001": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c00"
         }
       },
       "c0100": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c01"
         }
       },
       "c0111": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c01"
         }
       },
       "c1101": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c11"
@@ -3482,7 +3482,7 @@ mograsim version: 0.1.3
     },
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "c11.q",
index 1693ebf..ef71748 100644 (file)
@@ -835,7 +835,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIsel2_4",
     "centerTextHeight": 5.0,
@@ -843,5 +843,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index cb7c3b4..494332c 100644 (file)
@@ -904,7 +904,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIsel3_4",
     "centerTextHeight": 5.0,
@@ -912,5 +912,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index a15e5df..82b991e 100644 (file)
@@ -268,7 +268,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIxor",
     "centerTextHeight": 5.0,
@@ -276,5 +276,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 02f1761..81536b1 100644 (file)
@@ -3391,7 +3391,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901",
     "centerTextHeight": 5.0,
@@ -3399,18 +3399,18 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {
       "qreg": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff4#0"
         }
       },
       "regs": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram4#0"
         }
index a575c5c..006a46f 100644 (file)
@@ -702,7 +702,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUFuncDecode",
     "centerTextHeight": 5.0,
@@ -710,5 +710,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index c6f61c4..0f8ee57 100644 (file)
@@ -1509,7 +1509,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUInclDecode",
     "centerTextHeight": 5.0,
@@ -1517,5 +1517,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 12e2850..71d2d2d 100644 (file)
@@ -1352,7 +1352,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUInclSourceDecodeInclFunctionDecode",
     "centerTextHeight": 5.0,
@@ -1360,5 +1360,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 5abfdb5..b32a2b1 100644 (file)
@@ -532,7 +532,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUOneBit",
     "centerTextHeight": 5.0,
@@ -540,5 +540,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 150c099..38f5fa6 100644 (file)
@@ -1072,7 +1072,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901DestDecode",
     "centerTextHeight": 5.0,
@@ -1080,5 +1080,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 8c086bf..cb28db6 100644 (file)
@@ -1116,7 +1116,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2901SourceDecode",
     "centerTextHeight": 5.0,
@@ -1124,5 +1124,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index a1959d9..d86ee05 100644 (file)
@@ -232,7 +232,7 @@ mograsim version: 0.1.3
     "innerScale": 0.2,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#14",
         "pos": {
           "x": 520.0,
@@ -241,7 +241,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#13",
         "pos": {
           "x": 330.0,
@@ -250,7 +250,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#16",
         "pos": {
           "x": 255.0,
@@ -259,7 +259,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#15",
         "pos": {
           "x": 255.0,
@@ -277,7 +277,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 180.0,
@@ -286,7 +286,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 165.0,
@@ -295,7 +295,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 335.0,
@@ -304,7 +304,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 295.0,
@@ -313,7 +313,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 530.0,
@@ -322,7 +322,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 150.0,
@@ -331,7 +331,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 215.0,
@@ -340,7 +340,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUITriStateBuffer",
+        "id": "GUITriStateBuffer",
         "name": "GUITriStateBuffer#0",
         "pos": {
           "x": 530.0,
@@ -352,7 +352,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 120.0,
@@ -361,7 +361,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 215.0,
@@ -370,7 +370,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 215.0,
@@ -387,7 +387,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#10",
         "pos": {
           "x": 195.0,
@@ -404,7 +404,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#12",
         "pos": {
           "x": 195.0,
@@ -421,7 +421,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#11",
         "pos": {
           "x": 195.0,
@@ -454,7 +454,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#4",
         "pos": {
           "x": 25.0,
@@ -463,7 +463,7 @@ mograsim version: 0.1.3
         "params": 2
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#3",
         "pos": {
           "x": 510.0,
@@ -480,7 +480,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#2",
         "pos": {
           "x": 15.0,
@@ -497,7 +497,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#1",
         "pos": {
           "x": 25.0,
@@ -514,7 +514,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#0",
         "pos": {
           "x": 25.0,
@@ -571,7 +571,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#10",
         "pos": {
           "x": 340.0,
@@ -580,7 +580,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#9",
         "pos": {
           "x": 205.0,
@@ -589,7 +589,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#8",
         "pos": {
           "x": 205.0,
@@ -598,7 +598,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#5",
         "pos": {
           "x": 225.0,
@@ -607,7 +607,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#4",
         "pos": {
           "x": 225.0,
@@ -616,7 +616,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#7",
         "pos": {
           "x": 205.0,
@@ -625,7 +625,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#6",
         "pos": {
           "x": 205.0,
@@ -634,7 +634,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 130.0,
@@ -643,7 +643,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 190.0,
@@ -652,7 +652,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#3",
         "pos": {
           "x": 225.0,
@@ -661,7 +661,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#2",
         "pos": {
           "x": 225.0,
@@ -670,7 +670,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#9",
         "pos": {
           "x": 240.0,
@@ -679,7 +679,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#4",
         "pos": {
           "x": 395.0,
@@ -688,7 +688,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#3",
         "pos": {
           "x": 450.0,
@@ -697,7 +697,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#2",
         "pos": {
           "x": 395.0,
@@ -706,7 +706,7 @@ mograsim version: 0.1.3
         "params": 2
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#1",
         "pos": {
           "x": 555.0,
@@ -715,7 +715,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#8",
         "pos": {
           "x": 445.0,
@@ -724,7 +724,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#7",
         "pos": {
           "x": 445.0,
@@ -733,7 +733,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#6",
         "pos": {
           "x": 285.0,
@@ -742,7 +742,7 @@ mograsim version: 0.1.3
         "params": 3
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#5",
         "pos": {
           "x": 395.0,
@@ -751,7 +751,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#0",
         "pos": {
           "x": 10.0,
@@ -760,7 +760,7 @@ mograsim version: 0.1.3
         "params": 13
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2904.GUIAm2904RegCTInstrDecode",
+        "id": "GUIAm2904RegCTInstrDecode",
         "name": "GUIAm2904RegCTInstrDecode#0",
         "pos": {
           "x": 50.0,
@@ -768,7 +768,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#10",
         "pos": {
           "x": 445.0,
@@ -777,7 +777,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2904.GUIAm2904ShiftInstrDecode",
+        "id": "GUIAm2904ShiftInstrDecode",
         "name": "GUIAm2904ShiftInstrDecode#0",
         "pos": {
           "x": 50.0,
@@ -2717,7 +2717,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2904",
     "centerTextHeight": 5.0,
@@ -2725,8 +2725,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index 26928e5..5b35584 100644 (file)
@@ -80,7 +80,7 @@ mograsim version: 0.1.3
     "innerScale": 0.4,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 45.0,
@@ -89,7 +89,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 85.0,
@@ -98,7 +98,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#3",
         "pos": {
           "x": 45.0,
@@ -107,7 +107,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#2",
         "pos": {
           "x": 120.0,
@@ -116,7 +116,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 34.0,
@@ -125,7 +125,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 29.0,
@@ -134,7 +134,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#0",
         "pos": {
           "x": 5.0,
@@ -143,7 +143,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 79.0,
@@ -152,7 +152,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 79.0,
@@ -161,7 +161,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 24.0,
@@ -170,7 +170,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 19.0,
@@ -179,7 +179,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 74.0,
@@ -188,7 +188,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 39.0,
@@ -197,7 +197,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 24.0,
@@ -206,7 +206,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 74.0,
@@ -215,7 +215,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#5",
         "pos": {
           "x": 80.0,
@@ -224,7 +224,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#10",
         "pos": {
           "x": 39.0,
@@ -241,7 +241,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#4",
         "pos": {
           "x": 80.0,
@@ -748,7 +748,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Test\nlogic",
     "centerTextHeight": 5.0,
@@ -756,8 +756,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index 647afc3..e410f3b 100644 (file)
@@ -112,7 +112,7 @@ mograsim version: 0.1.3
     "innerScale": 0.2,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 10.0,
@@ -121,7 +121,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIram5_12",
+        "id": "GUIram5_12",
         "name": "GUIram5_12#0",
         "pos": {
           "x": 305.0,
@@ -129,7 +129,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 40.0,
@@ -138,7 +138,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIdff12",
+        "id": "GUIdff12",
         "name": "GUIdff12#0",
         "pos": {
           "x": 305.0,
@@ -146,7 +146,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIinc12",
+        "id": "GUIinc12",
         "name": "GUIinc12#0",
         "pos": {
           "x": 305.0,
@@ -154,7 +154,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#3",
         "pos": {
           "x": 265.0,
@@ -163,7 +163,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 294.0,
@@ -172,7 +172,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 324.0,
@@ -181,7 +181,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 179.0,
@@ -190,7 +190,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 189.0,
@@ -199,7 +199,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 4.0,
@@ -208,7 +208,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 179.0,
@@ -217,7 +217,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 299.0,
@@ -226,7 +226,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUITriStateBuffer",
+        "id": "GUITriStateBuffer",
         "name": "GUITriStateBuffer#0",
         "pos": {
           "x": 180.0,
@@ -238,7 +238,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 299.0,
@@ -247,7 +247,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 299.0,
@@ -256,7 +256,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 299.0,
@@ -265,7 +265,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUInor12",
+        "id": "GUInor12",
         "name": "GUInor12#0",
         "pos": {
           "x": 190.0,
@@ -273,7 +273,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#0",
         "pos": {
           "x": 160.0,
@@ -282,7 +282,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910InstrPLA",
+        "id": "GUIAm2910InstrPLA",
         "name": "GUIAm2910InstrPLA#0",
         "pos": {
           "x": 80.0,
@@ -290,7 +290,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910SP",
+        "id": "GUIAm2910SP",
         "name": "GUIAm2910SP#0",
         "pos": {
           "x": 305.0,
@@ -298,7 +298,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#1",
         "pos": {
           "x": 260.0,
@@ -307,7 +307,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#2",
         "pos": {
           "x": 345.0,
@@ -316,7 +316,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIsel4_12",
+        "id": "GUIsel4_12",
         "name": "GUIsel4_12#0",
         "pos": {
           "x": 150.0,
@@ -324,7 +324,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910RegCntr",
+        "id": "GUIAm2910RegCntr",
         "name": "GUIAm2910RegCntr#0",
         "pos": {
           "x": 160.0,
@@ -1121,7 +1121,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2910",
     "centerTextHeight": 5.0,
@@ -1129,8 +1129,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index ae71c6d..20f9ac0 100644 (file)
@@ -104,7 +104,7 @@ mograsim version: 0.1.3
     "innerScale": 0.2,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 10.0,
@@ -113,7 +113,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIram5_12",
+        "id": "GUIram5_12",
         "name": "GUIram5_12#0",
         "pos": {
           "x": 305.0,
@@ -121,7 +121,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 40.0,
@@ -130,7 +130,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIdff12",
+        "id": "GUIdff12",
         "name": "GUIdff12#0",
         "pos": {
           "x": 305.0,
@@ -138,7 +138,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIinc12",
+        "id": "GUIinc12",
         "name": "GUIinc12#0",
         "pos": {
           "x": 305.0,
@@ -146,7 +146,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#3",
         "pos": {
           "x": 265.0,
@@ -155,7 +155,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 294.0,
@@ -164,7 +164,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 324.0,
@@ -173,7 +173,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 179.0,
@@ -182,7 +182,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 189.0,
@@ -191,7 +191,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 4.0,
@@ -200,7 +200,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 179.0,
@@ -209,7 +209,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 299.0,
@@ -218,7 +218,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 299.0,
@@ -227,7 +227,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 299.0,
@@ -236,7 +236,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 299.0,
@@ -245,7 +245,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIsel4_12",
+        "id": "GUIsel4_12",
         "name": "GUIsel4_12#0",
         "pos": {
           "x": 150.0,
@@ -253,7 +253,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUInor12",
+        "id": "GUInor12",
         "name": "GUInor12#0",
         "pos": {
           "x": 190.0,
@@ -261,7 +261,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#0",
         "pos": {
           "x": 160.0,
@@ -270,7 +270,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910InstrPLA",
+        "id": "GUIAm2910InstrPLA",
         "name": "GUIAm2910InstrPLA#0",
         "pos": {
           "x": 80.0,
@@ -278,7 +278,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910SP",
+        "id": "GUIAm2910SP",
         "name": "GUIAm2910SP#0",
         "pos": {
           "x": 305.0,
@@ -286,7 +286,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#1",
         "pos": {
           "x": 260.0,
@@ -295,7 +295,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#2",
         "pos": {
           "x": 345.0,
@@ -304,7 +304,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910RegCntr",
+        "id": "GUIAm2910RegCntr",
         "name": "GUIAm2910RegCntr#0",
         "pos": {
           "x": 160.0,
@@ -1072,7 +1072,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2910",
     "centerTextHeight": 5.0,
@@ -1080,8 +1080,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index 4199e45..6f679a9 100644 (file)
@@ -219,7 +219,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "_rsLatch",
     "centerTextHeight": 5.0,
@@ -227,13 +227,13 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.WireForcingAtomicHighLevelStateHandler",
+        "id": "wireForcing",
         "params": {
           "wiresToForce": [
             "q"
index 6ec536a..ef57797 100644 (file)
@@ -141,7 +141,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIand",
     "centerTextHeight": 5.0,
@@ -149,5 +149,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 9577681..87b7394 100644 (file)
@@ -332,7 +332,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIand41",
     "centerTextHeight": 5.0,
@@ -340,5 +340,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index c6dc821..bd61b9d 100644 (file)
@@ -493,7 +493,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIandor414",
     "centerTextHeight": 5.0,
@@ -501,5 +501,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 55e3c8a..3523e99 100644 (file)
@@ -524,7 +524,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdemux2",
     "centerTextHeight": 5.0,
@@ -532,5 +532,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 345b126..66af673 100644 (file)
@@ -332,7 +332,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdff",
     "centerTextHeight": 5.0,
@@ -340,13 +340,13 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUI_rsLatch#1",
           "subStateID": "q"
index 4064f93..d03fafe 100644 (file)
@@ -653,7 +653,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "D flip flop\n4 bit",
     "centerTextHeight": 5.0,
@@ -661,27 +661,27 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q1": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#0",
           "subStateID": "q"
         }
       },
       "q2": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#1",
           "subStateID": "q"
         }
       },
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "q1",
@@ -698,14 +698,14 @@ mograsim version: 0.1.3
         }
       },
       "q3": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#2",
           "subStateID": "q"
         }
       },
       "q4": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#3",
           "subStateID": "q"
index cb697d2..3108cc5 100644 (file)
@@ -662,7 +662,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "D flip flop\n4 bit",
     "centerTextHeight": 5.0,
@@ -670,27 +670,27 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q1": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#0",
           "subStateID": "q"
         }
       },
       "q2": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#1",
           "subStateID": "q"
         }
       },
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "q1",
@@ -707,14 +707,14 @@ mograsim version: 0.1.3
         }
       },
       "q3": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#2",
           "subStateID": "q"
         }
       },
       "q4": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff#3",
           "subStateID": "q"
index 26c4071..034ab79 100644 (file)
@@ -237,7 +237,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdlatch",
     "centerTextHeight": 5.0,
@@ -245,13 +245,13 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUI_rsLatch#0",
           "subStateID": "q"
index 28021df..d798d7f 100644 (file)
@@ -332,7 +332,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIdlatch4",
     "centerTextHeight": 5.0,
@@ -340,27 +340,27 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {
       "q1": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#0",
           "subStateID": "q"
         }
       },
       "q2": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#1",
           "subStateID": "q"
         }
       },
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "q1",
@@ -377,14 +377,14 @@ mograsim version: 0.1.3
         }
       },
       "q3": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#2",
           "subStateID": "q"
         }
       },
       "q4": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch#3",
           "subStateID": "q"
index b509eb2..d464701 100644 (file)
@@ -185,7 +185,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIfulladder",
     "centerTextHeight": 5.0,
@@ -193,5 +193,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 8ca9ccd..d0a0fa2 100644 (file)
@@ -319,7 +319,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIhalfadder",
     "centerTextHeight": 5.0,
@@ -327,5 +327,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index b75d9f1..c0d53e5 100644 (file)
@@ -230,7 +230,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux1",
     "centerTextHeight": 5.0,
@@ -238,5 +238,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index b9f6612..c90cd3e 100644 (file)
@@ -476,7 +476,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux1_4",
     "centerTextHeight": 5.0,
@@ -484,5 +484,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index f9648ee..042d9e1 100644 (file)
@@ -679,7 +679,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux1_4",
     "centerTextHeight": 5.0,
@@ -687,6 +687,6 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevelStateHandler"
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "default"
 }
\ No newline at end of file
index 69181cd..3f6a8bc 100644 (file)
@@ -104,7 +104,7 @@ mograsim version: 0.1.3
     "innerScale": 0.4,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 24.0,
@@ -113,7 +113,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 19.0,
@@ -466,7 +466,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUImux3",
     "centerTextHeight": 5.0,
@@ -474,6 +474,6 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.DefaultHighLevelStateHandler"
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "default"
 }
\ No newline at end of file
index 1bdc7cc..e57eefe 100644 (file)
@@ -201,7 +201,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUInand3",
     "centerTextHeight": 5.0,
@@ -209,5 +209,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 0a3b703..a7e95a3 100644 (file)
@@ -379,7 +379,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUInot4",
     "centerTextHeight": 5.0,
@@ -387,5 +387,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index fca69d6..5b09418 100644 (file)
@@ -539,7 +539,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIor4",
     "centerTextHeight": 5.0,
@@ -547,5 +547,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 07a3e1e..ed484c9 100644 (file)
@@ -871,7 +871,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIor_4",
     "centerTextHeight": 5.0,
@@ -879,5 +879,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 31a01fb..ea3eff9 100644 (file)
@@ -2951,7 +2951,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIram2",
     "centerTextHeight": 5.0,
@@ -2959,30 +2959,30 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {
       "c00": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#0"
         }
       },
       "c11": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#3"
         }
       },
       "c10": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#2"
         }
       },
       "c01": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdlatch4#1"
         }
@@ -2990,7 +2990,7 @@ mograsim version: 0.1.3
     },
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "c11.q",
index 05bfe9d..e5e71cc 100644 (file)
@@ -3331,7 +3331,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIram4",
     "centerTextHeight": 5.0,
@@ -3339,141 +3339,141 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {
       "c00": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0"
         }
       },
       "c11": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3"
         }
       },
       "c10": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2"
         }
       },
       "c01": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1"
         }
       },
       "c1000": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c10"
         }
       },
       "c1011": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c10"
         }
       },
       "c1110": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c11"
         }
       },
       "c1001": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c10"
         }
       },
       "c1100": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c11"
         }
       },
       "c1111": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c11"
         }
       },
       "c0000": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c00"
         }
       },
       "c0011": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c00"
         }
       },
       "c0110": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c01"
         }
       },
       "c0010": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c00"
         }
       },
       "c1010": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#2",
           "prefix": "c10"
         }
       },
       "c0101": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c01"
         }
       },
       "c0001": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c00"
         }
       },
       "c0100": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#0",
           "prefix": "c01"
         }
       },
       "c0111": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#3",
           "prefix": "c01"
         }
       },
       "c1101": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram2#1",
           "prefix": "c11"
@@ -3482,7 +3482,7 @@ mograsim version: 0.1.3
     },
     "atomicHighLevelStates": {
       "q": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler",
+        "id": "bitVectorSplitting",
         "params": {
           "vectorPartTargets": [
             "c11.q",
index 1693ebf..ef71748 100644 (file)
@@ -835,7 +835,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIsel2_4",
     "centerTextHeight": 5.0,
@@ -843,5 +843,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index cb7c3b4..494332c 100644 (file)
@@ -904,7 +904,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIsel3_4",
     "centerTextHeight": 5.0,
@@ -912,5 +912,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index a15e5df..82b991e 100644 (file)
@@ -268,7 +268,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIxor",
     "centerTextHeight": 5.0,
@@ -276,5 +276,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 02f1761..81536b1 100644 (file)
@@ -3391,7 +3391,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901",
     "centerTextHeight": 5.0,
@@ -3399,18 +3399,18 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {
       "qreg": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIdff4#0"
         }
       },
       "regs": {
-        "id": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.subcomponent.DelegatingSubcomponentHighLevelStateHandler",
+        "id": "delegating",
         "params": {
           "delegateTarget": "GUIram4#0"
         }
index a575c5c..006a46f 100644 (file)
@@ -702,7 +702,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUFuncDecode",
     "centerTextHeight": 5.0,
@@ -710,5 +710,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index c6f61c4..0f8ee57 100644 (file)
@@ -1509,7 +1509,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUInclDecode",
     "centerTextHeight": 5.0,
@@ -1517,5 +1517,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 12e2850..71d2d2d 100644 (file)
@@ -1352,7 +1352,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUInclSourceDecodeInclFunctionDecode",
     "centerTextHeight": 5.0,
@@ -1360,5 +1360,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 5abfdb5..b32a2b1 100644 (file)
@@ -532,7 +532,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901ALUOneBit",
     "centerTextHeight": 5.0,
@@ -540,5 +540,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 150c099..38f5fa6 100644 (file)
@@ -1072,7 +1072,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "GUIAm2901DestDecode",
     "centerTextHeight": 5.0,
@@ -1080,5 +1080,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 8c086bf..cb28db6 100644 (file)
@@ -1116,7 +1116,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2901SourceDecode",
     "centerTextHeight": 5.0,
@@ -1124,5 +1124,5 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer"
+  "outlineRendererSnippetID": "default"
 }
\ No newline at end of file
index 33bddda..d86ee05 100644 (file)
@@ -1,7 +1,7 @@
 mograsim version: 0.1.3
 {
   "width": 120.0,
-  "height": 94.0,
+  "height": 139.0,
   "interfacePins": [
     {
       "location": {
@@ -69,8 +69,8 @@ mograsim version: 0.1.3
     },
     {
       "location": {
-        "x": -24.6,
-        "y": 24.400000000000002
+        "x": 120.0,
+        "y": 108.0
       },
       "name": "C0",
       "logicWidth": 1
@@ -93,8 +93,8 @@ mograsim version: 0.1.3
     },
     {
       "location": {
-        "x": -14.600000000000001,
-        "y": 14.4
+        "x": 0.0,
+        "y": 110.0
       },
       "name": "Cx",
       "logicWidth": 1
@@ -232,7 +232,7 @@ mograsim version: 0.1.3
     "innerScale": 0.2,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#14",
         "pos": {
           "x": 520.0,
@@ -241,7 +241,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#13",
         "pos": {
           "x": 330.0,
@@ -250,7 +250,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#16",
         "pos": {
           "x": 255.0,
@@ -259,7 +259,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#15",
         "pos": {
           "x": 255.0,
@@ -268,7 +268,16 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
+        "name": "WireCrossPoint#17",
+        "pos": {
+          "x": 360.0,
+          "y": 495.0
+        },
+        "params": 1
+      },
+      {
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 180.0,
@@ -277,7 +286,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 165.0,
@@ -286,7 +295,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 335.0,
@@ -295,7 +304,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 295.0,
@@ -304,7 +313,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 530.0,
@@ -313,7 +322,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 150.0,
@@ -322,7 +331,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 215.0,
@@ -331,7 +340,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUITriStateBuffer",
+        "id": "GUITriStateBuffer",
         "name": "GUITriStateBuffer#0",
         "pos": {
           "x": 530.0,
@@ -343,7 +352,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 120.0,
@@ -352,7 +361,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 215.0,
@@ -361,7 +370,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 215.0,
@@ -378,7 +387,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#10",
         "pos": {
           "x": 195.0,
@@ -395,7 +404,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#12",
         "pos": {
           "x": 195.0,
@@ -412,7 +421,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#11",
         "pos": {
           "x": 195.0,
@@ -445,7 +454,16 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
+        "name": "GUIMerger#4",
+        "pos": {
+          "x": 25.0,
+          "y": 355.0
+        },
+        "params": 2
+      },
+      {
+        "id": "GUIMerger",
         "name": "GUIMerger#3",
         "pos": {
           "x": 510.0,
@@ -462,7 +480,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#2",
         "pos": {
           "x": 15.0,
@@ -479,7 +497,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#1",
         "pos": {
           "x": 25.0,
@@ -496,7 +514,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIMerger",
+        "id": "GUIMerger",
         "name": "GUIMerger#0",
         "pos": {
           "x": 25.0,
@@ -512,6 +530,38 @@ mograsim version: 0.1.3
           "y": 295.0
         }
       },
+      {
+        "id": "GUImux1",
+        "name": "DeserializedSubmodelComponent#14",
+        "pos": {
+          "x": 415.0,
+          "y": 465.0
+        }
+      },
+      {
+        "id": "GUImux1",
+        "name": "DeserializedSubmodelComponent#13",
+        "pos": {
+          "x": 365.0,
+          "y": 485.0
+        }
+      },
+      {
+        "id": "GUIxor",
+        "name": "DeserializedSubmodelComponent#12",
+        "pos": {
+          "x": 315.0,
+          "y": 505.0
+        }
+      },
+      {
+        "id": "GUImux1",
+        "name": "DeserializedSubmodelComponent#11",
+        "pos": {
+          "x": 265.0,
+          "y": 515.0
+        }
+      },
       {
         "id": "GUIxor",
         "name": "DeserializedSubmodelComponent#10",
@@ -521,7 +571,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#10",
         "pos": {
           "x": 340.0,
@@ -530,7 +580,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#9",
         "pos": {
           "x": 205.0,
@@ -539,7 +589,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#8",
         "pos": {
           "x": 205.0,
@@ -548,7 +598,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#5",
         "pos": {
           "x": 225.0,
@@ -557,7 +607,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#4",
         "pos": {
           "x": 225.0,
@@ -566,7 +616,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#7",
         "pos": {
           "x": 205.0,
@@ -575,7 +625,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#6",
         "pos": {
           "x": 205.0,
@@ -584,7 +634,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 130.0,
@@ -593,7 +643,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 190.0,
@@ -602,7 +652,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#3",
         "pos": {
           "x": 225.0,
@@ -611,7 +661,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#2",
         "pos": {
           "x": 225.0,
@@ -620,7 +670,16 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
+        "name": "GUISplitter#9",
+        "pos": {
+          "x": 240.0,
+          "y": 475.0
+        },
+        "params": 4
+      },
+      {
+        "id": "GUISplitter",
         "name": "GUISplitter#4",
         "pos": {
           "x": 395.0,
@@ -629,7 +688,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#3",
         "pos": {
           "x": 450.0,
@@ -638,7 +697,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#2",
         "pos": {
           "x": 395.0,
@@ -647,7 +706,7 @@ mograsim version: 0.1.3
         "params": 2
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#1",
         "pos": {
           "x": 555.0,
@@ -656,7 +715,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#8",
         "pos": {
           "x": 445.0,
@@ -665,7 +724,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#7",
         "pos": {
           "x": 445.0,
@@ -674,7 +733,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#6",
         "pos": {
           "x": 285.0,
@@ -683,7 +742,7 @@ mograsim version: 0.1.3
         "params": 3
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#5",
         "pos": {
           "x": 395.0,
@@ -692,7 +751,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#0",
         "pos": {
           "x": 10.0,
@@ -701,15 +760,24 @@ mograsim version: 0.1.3
         "params": 13
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2904.GUIAm2904RegCTInstrDecode",
+        "id": "GUIAm2904RegCTInstrDecode",
         "name": "GUIAm2904RegCTInstrDecode#0",
         "pos": {
           "x": 50.0,
-          "y": 230.0
+          "y": 240.0
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2904.GUIAm2904ShiftInstrDecode",
+        "id": "GUISplitter",
+        "name": "GUISplitter#10",
+        "pos": {
+          "x": 445.0,
+          "y": 410.0
+        },
+        "params": 4
+      },
+      {
+        "id": "GUIAm2904ShiftInstrDecode",
         "name": "GUIAm2904ShiftInstrDecode#0",
         "pos": {
           "x": 50.0,
@@ -1274,7 +1342,7 @@ mograsim version: 0.1.3
         },
         "pin2": {
           "compName": "GUIAm2904RegCTInstrDecode#0",
-          "pinName": "I"
+          "pinName": "I5-0"
         },
         "name": "unnamedWire#15",
         "path": []
@@ -1534,6 +1602,78 @@ mograsim version: 0.1.3
         "name": "unnamedWire#79",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "WireCrossPoint#17",
+          "pinName": ""
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#13",
+          "pinName": "S0"
+        },
+        "name": "unnamedWire#150",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#12",
+          "pinName": "Y"
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#13",
+          "pinName": "I1"
+        },
+        "name": "unnamedWire#151",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#14",
+          "pinName": "I0"
+        },
+        "pin2": {
+          "compName": "WireCrossPoint#17",
+          "pinName": ""
+        },
+        "name": "unnamedWire#154",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#14",
+          "pinName": "S0"
+        },
+        "pin2": {
+          "compName": "GUISplitter#9",
+          "pinName": "O3"
+        },
+        "name": "unnamedWire#155",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#13",
+          "pinName": "I0"
+        },
+        "pin2": {
+          "compName": "_submodelinterface",
+          "pinName": "Cx"
+        },
+        "name": "unnamedWire#152",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#13",
+          "pinName": "Y"
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#14",
+          "pinName": "I1"
+        },
+        "name": "unnamedWire#153",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUINandGate#10",
@@ -1546,6 +1686,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#81",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#14",
+          "pinName": "Y"
+        },
+        "pin2": {
+          "compName": "_submodelinterface",
+          "pinName": "C0"
+        },
+        "name": "unnamedWire#156",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "WireCrossPoint#13",
@@ -1654,6 +1806,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#88",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUIMerger#4",
+          "pinName": "I1"
+        },
+        "pin2": {
+          "compName": "GUISplitter#0",
+          "pinName": "O12"
+        },
+        "name": "unnamedWire#140",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUIMerger#0",
@@ -1666,6 +1830,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#9",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUISplitter#8",
+          "pinName": "O1"
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#11",
+          "pinName": "I1"
+        },
+        "name": "unnamedWire#143",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUISplitter#0",
@@ -1678,6 +1854,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#8",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUISplitter#10",
+          "pinName": "I"
+        },
+        "pin2": {
+          "compName": "WireCrossPoint#3",
+          "pinName": ""
+        },
+        "name": "unnamedWire#144",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUIMerger#0",
@@ -1690,6 +1878,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#7",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUIMerger#4",
+          "pinName": "O"
+        },
+        "pin2": {
+          "compName": "GUIAm2904RegCTInstrDecode#0",
+          "pinName": "I12-11"
+        },
+        "name": "unnamedWire#141",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUISplitter#0",
@@ -1702,6 +1902,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#6",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUIAm2904RegCTInstrDecode#0",
+          "pinName": "C0_MUX"
+        },
+        "pin2": {
+          "compName": "GUISplitter#9",
+          "pinName": "I"
+        },
+        "name": "unnamedWire#142",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUIMerger#3",
@@ -1714,6 +1926,30 @@ mograsim version: 0.1.3
         "name": "unnamedWire#90",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#11",
+          "pinName": "Y"
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#12",
+          "pinName": "B"
+        },
+        "name": "unnamedWire#147",
+        "path": []
+      },
+      {
+        "pin1": {
+          "compName": "DeserializedSubmodelComponent#12",
+          "pinName": "A"
+        },
+        "pin2": {
+          "compName": "GUISplitter#9",
+          "pinName": "O0"
+        },
+        "name": "unnamedWire#148",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUIMerger#3",
@@ -1726,6 +1962,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#92",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUISplitter#10",
+          "pinName": "O1"
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#11",
+          "pinName": "I0"
+        },
+        "name": "unnamedWire#145",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "DeserializedSubmodelComponent#3",
@@ -1738,6 +1986,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#91",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUISplitter#9",
+          "pinName": "O1"
+        },
+        "pin2": {
+          "compName": "DeserializedSubmodelComponent#11",
+          "pinName": "S0"
+        },
+        "name": "unnamedWire#146",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUIAm2904RegCTInstrDecode#0",
@@ -1807,6 +2067,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#96",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUISplitter#9",
+          "pinName": "O2"
+        },
+        "pin2": {
+          "compName": "WireCrossPoint#17",
+          "pinName": ""
+        },
+        "name": "unnamedWire#149",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "GUISplitter#2",
@@ -2131,6 +2403,18 @@ mograsim version: 0.1.3
         "name": "unnamedWire#62",
         "path": []
       },
+      {
+        "pin1": {
+          "compName": "GUISplitter#0",
+          "pinName": "O11"
+        },
+        "pin2": {
+          "compName": "GUIMerger#4",
+          "pinName": "I0"
+        },
+        "name": "unnamedWire#139",
+        "path": []
+      },
       {
         "pin1": {
           "compName": "WireCrossPoint#12",
@@ -2433,7 +2717,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2904",
     "centerTextHeight": 5.0,
@@ -2441,8 +2725,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index 26928e5..5b35584 100644 (file)
@@ -80,7 +80,7 @@ mograsim version: 0.1.3
     "innerScale": 0.4,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 45.0,
@@ -89,7 +89,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 85.0,
@@ -98,7 +98,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#3",
         "pos": {
           "x": 45.0,
@@ -107,7 +107,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#2",
         "pos": {
           "x": 120.0,
@@ -116,7 +116,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 34.0,
@@ -125,7 +125,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 29.0,
@@ -134,7 +134,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
+        "id": "GUISplitter",
         "name": "GUISplitter#0",
         "pos": {
           "x": 5.0,
@@ -143,7 +143,7 @@ mograsim version: 0.1.3
         "params": 4
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 79.0,
@@ -152,7 +152,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 79.0,
@@ -161,7 +161,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 24.0,
@@ -170,7 +170,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 19.0,
@@ -179,7 +179,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 74.0,
@@ -188,7 +188,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 39.0,
@@ -197,7 +197,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 24.0,
@@ -206,7 +206,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 74.0,
@@ -215,7 +215,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#5",
         "pos": {
           "x": 80.0,
@@ -224,7 +224,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#10",
         "pos": {
           "x": 39.0,
@@ -241,7 +241,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#4",
         "pos": {
           "x": 80.0,
@@ -748,7 +748,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Test\nlogic",
     "centerTextHeight": 5.0,
@@ -756,8 +756,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index 647afc3..e410f3b 100644 (file)
@@ -112,7 +112,7 @@ mograsim version: 0.1.3
     "innerScale": 0.2,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 10.0,
@@ -121,7 +121,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIram5_12",
+        "id": "GUIram5_12",
         "name": "GUIram5_12#0",
         "pos": {
           "x": 305.0,
@@ -129,7 +129,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 40.0,
@@ -138,7 +138,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIdff12",
+        "id": "GUIdff12",
         "name": "GUIdff12#0",
         "pos": {
           "x": 305.0,
@@ -146,7 +146,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIinc12",
+        "id": "GUIinc12",
         "name": "GUIinc12#0",
         "pos": {
           "x": 305.0,
@@ -154,7 +154,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#3",
         "pos": {
           "x": 265.0,
@@ -163,7 +163,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 294.0,
@@ -172,7 +172,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 324.0,
@@ -181,7 +181,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 179.0,
@@ -190,7 +190,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 189.0,
@@ -199,7 +199,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 4.0,
@@ -208,7 +208,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 179.0,
@@ -217,7 +217,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 299.0,
@@ -226,7 +226,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUITriStateBuffer",
+        "id": "GUITriStateBuffer",
         "name": "GUITriStateBuffer#0",
         "pos": {
           "x": 180.0,
@@ -238,7 +238,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 299.0,
@@ -247,7 +247,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 299.0,
@@ -256,7 +256,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 299.0,
@@ -265,7 +265,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUInor12",
+        "id": "GUInor12",
         "name": "GUInor12#0",
         "pos": {
           "x": 190.0,
@@ -273,7 +273,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#0",
         "pos": {
           "x": 160.0,
@@ -282,7 +282,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910InstrPLA",
+        "id": "GUIAm2910InstrPLA",
         "name": "GUIAm2910InstrPLA#0",
         "pos": {
           "x": 80.0,
@@ -290,7 +290,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910SP",
+        "id": "GUIAm2910SP",
         "name": "GUIAm2910SP#0",
         "pos": {
           "x": 305.0,
@@ -298,7 +298,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#1",
         "pos": {
           "x": 260.0,
@@ -307,7 +307,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#2",
         "pos": {
           "x": 345.0,
@@ -316,7 +316,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIsel4_12",
+        "id": "GUIsel4_12",
         "name": "GUIsel4_12#0",
         "pos": {
           "x": 150.0,
@@ -324,7 +324,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910RegCntr",
+        "id": "GUIAm2910RegCntr",
         "name": "GUIAm2910RegCntr#0",
         "pos": {
           "x": 160.0,
@@ -1121,7 +1121,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2910",
     "centerTextHeight": 5.0,
@@ -1129,8 +1129,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index ae71c6d..20f9ac0 100644 (file)
@@ -104,7 +104,7 @@ mograsim version: 0.1.3
     "innerScale": 0.2,
     "subComps": [
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#1",
         "pos": {
           "x": 10.0,
@@ -113,7 +113,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIram5_12",
+        "id": "GUIram5_12",
         "name": "GUIram5_12#0",
         "pos": {
           "x": 305.0,
@@ -121,7 +121,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUINandGate",
+        "id": "GUINandGate",
         "name": "GUINandGate#0",
         "pos": {
           "x": 40.0,
@@ -130,7 +130,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIdff12",
+        "id": "GUIdff12",
         "name": "GUIdff12#0",
         "pos": {
           "x": 305.0,
@@ -138,7 +138,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIinc12",
+        "id": "GUIinc12",
         "name": "GUIinc12#0",
         "pos": {
           "x": 305.0,
@@ -146,7 +146,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#3",
         "pos": {
           "x": 265.0,
@@ -155,7 +155,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#1",
         "pos": {
           "x": 294.0,
@@ -164,7 +164,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#0",
         "pos": {
           "x": 324.0,
@@ -173,7 +173,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#3",
         "pos": {
           "x": 179.0,
@@ -182,7 +182,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#2",
         "pos": {
           "x": 189.0,
@@ -191,7 +191,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#5",
         "pos": {
           "x": 4.0,
@@ -200,7 +200,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#4",
         "pos": {
           "x": 179.0,
@@ -209,7 +209,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#7",
         "pos": {
           "x": 299.0,
@@ -218,7 +218,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#6",
         "pos": {
           "x": 299.0,
@@ -227,7 +227,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#9",
         "pos": {
           "x": 299.0,
@@ -236,7 +236,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
+        "id": "WireCrossPoint",
         "name": "WireCrossPoint#8",
         "pos": {
           "x": 299.0,
@@ -245,7 +245,7 @@ mograsim version: 0.1.3
         "params": 1
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUIsel4_12",
+        "id": "GUIsel4_12",
         "name": "GUIsel4_12#0",
         "pos": {
           "x": 150.0,
@@ -253,7 +253,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.GUInor12",
+        "id": "GUInor12",
         "name": "GUInor12#0",
         "pos": {
           "x": 190.0,
@@ -261,7 +261,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#0",
         "pos": {
           "x": 160.0,
@@ -270,7 +270,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910InstrPLA",
+        "id": "GUIAm2910InstrPLA",
         "name": "GUIAm2910InstrPLA#0",
         "pos": {
           "x": 80.0,
@@ -278,7 +278,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910SP",
+        "id": "GUIAm2910SP",
         "name": "GUIAm2910SP#0",
         "pos": {
           "x": 305.0,
@@ -286,7 +286,7 @@ mograsim version: 0.1.3
         }
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#1",
         "pos": {
           "x": 260.0,
@@ -295,7 +295,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.model.components.atomic.GUIBitDisplay",
+        "id": "GUIBitDisplay",
         "name": "GUIBitDisplay#2",
         "pos": {
           "x": 345.0,
@@ -304,7 +304,7 @@ mograsim version: 0.1.3
         "params": 12
       },
       {
-        "id": "class:net.mograsim.logic.model.am2900.components.am2910.GUIAm2910RegCntr",
+        "id": "GUIAm2910RegCntr",
         "name": "GUIAm2910RegCntr#0",
         "pos": {
           "x": 160.0,
@@ -1072,7 +1072,7 @@ mograsim version: 0.1.3
       }
     ]
   },
-  "symbolRendererSnippetID": "class:net.mograsim.logic.model.snippets.symbolrenderers.SimpleRectangularLikeSymbolRenderer",
+  "symbolRendererSnippetID": "simpleRectangularLike",
   "symbolRendererParams": {
     "centerText": "Am2910",
     "centerTextHeight": 5.0,
@@ -1080,8 +1080,8 @@ mograsim version: 0.1.3
     "pinLabelHeight": 3.5,
     "pinLabelMargin": 0.5
   },
-  "outlineRendererSnippetID": "class:net.mograsim.logic.model.snippets.outlinerenderers.DefaultOutlineRenderer",
-  "highLevelStateHandlerSnippetID": "class:net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandler",
+  "outlineRendererSnippetID": "default",
+  "highLevelStateHandlerSnippetID": "standard",
   "highLevelStateHandlerParams": {
     "subcomponentHighLevelStates": {},
     "atomicHighLevelStates": {}
index 3d22b9c..6d951af 100644 (file)
@@ -1,6 +1,8 @@
 package net.mograsim.logic.model.editor;
 
 import java.io.IOException;
+import java.util.Map;
+import java.util.Map.Entry;
 
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.FileDialog;
@@ -9,7 +11,10 @@ import org.eclipse.swt.widgets.Shell;
 import net.mograsim.logic.model.model.ViewModelModifiable;
 import net.mograsim.logic.model.serializing.DeserializedSubmodelComponent;
 import net.mograsim.logic.model.serializing.IdentifierGetter;
+import net.mograsim.logic.model.serializing.IndirectGUIComponentCreator;
 import net.mograsim.logic.model.serializing.SubmodelComponentSerializer;
+import net.mograsim.logic.model.snippets.SubmodelComponentSnippetSuppliers;
+import net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.StandardHighLevelStateHandlerSnippetSuppliers;
 
 public class SaveLoadManager
 {
@@ -53,8 +58,18 @@ public class SaveLoadManager
                        {
                                if (Editor.identifierPerComponent.containsKey(c))
                                        return Editor.identifierPerComponent.get(c);
-                               return "class:" + c.getClass().getCanonicalName();
+                               return getStandardID(c, IndirectGUIComponentCreator.getStandardComponentIDs(), true);
                        };
+                       idGetter.symbolRendererIDs = h -> getStandardID(h,
+                                       SubmodelComponentSnippetSuppliers.symbolRendererSupplier.getStandardSnippetIDs());
+                       idGetter.outlineRendererIDs = h -> getStandardID(h,
+                                       SubmodelComponentSnippetSuppliers.outlineRendererSupplier.getStandardSnippetIDs());
+                       idGetter.highLevelStateHandlerIDs = h -> getStandardID(h,
+                                       SubmodelComponentSnippetSuppliers.highLevelStateHandlerSupplier.getStandardSnippetIDs());
+                       idGetter.atomicHighLevelStateHandlerIDs = h -> getStandardID(h,
+                                       StandardHighLevelStateHandlerSnippetSuppliers.atomicHandlerSupplier.getStandardSnippetIDs());
+                       idGetter.subcomponentHighLevelStateHandlerIDs = h -> getStandardID(h,
+                                       StandardHighLevelStateHandlerSnippetSuppliers.subcomponentHandlerSupplier.getStandardSnippetIDs());
                        SubmodelComponentSerializer.serialize(editor.toBeEdited, idGetter, savePath);
                }
                catch (IOException e)
@@ -65,6 +80,18 @@ public class SaveLoadManager
                }
        }
 
+       private static String getStandardID(Object o, Map<String, String> standardIDs)
+       {
+               return getStandardID(o, standardIDs, false);
+       }
+
+       private static String getStandardID(Object o, Map<String, String> standardIDs, boolean standardIDsHaveClassConcatenated)
+       {
+               String verboseID = (standardIDsHaveClassConcatenated ? "class:" : "") + o.getClass().getCanonicalName();
+               return standardIDs.entrySet().stream().filter(e -> e.getValue().equals(verboseID)).map(Entry::getKey).findAny()
+                               .orElseGet(() -> (standardIDsHaveClassConcatenated ? "" : "class:") + verboseID);
+       }
+
        public static void openLoadDialog() throws IOException
        {
                Shell fdShell = new Shell();
index d0b25b1..7fd7323 100644 (file)
@@ -211,7 +211,7 @@ public class EditorGUI
 
        public void refreshAddList()
        {
-               addList.setItems(IndirectGUIComponentCreator.getStandardComponentIDs().stream().sorted().toArray(String[]::new));
+               addList.setItems(IndirectGUIComponentCreator.getStandardComponentIDs().keySet().stream().sorted().toArray(String[]::new));
                addList.select(0);
        }
 
index 090ca86..2b747b2 100644 (file)
@@ -6,7 +6,6 @@ import java.io.UncheckedIOException;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.Set;
 
 import com.google.gson.JsonElement;
 import com.google.gson.JsonNull;
@@ -19,7 +18,7 @@ import net.mograsim.logic.model.util.JsonHandler;
 public class IndirectGUIComponentCreator
 {
        private static final Map<String, String> standardComponentIDs = new HashMap<>();
-       private static final Set<String> standardComponentIDSetUnmodifiable = Collections.unmodifiableSet(standardComponentIDs.keySet());
+       private static final Map<String, String> standardComponentIDsUnmodifiable = Collections.unmodifiableMap(standardComponentIDs);
 
        private static final Map<String, ComponentSupplier> componentSuppliers = new HashMap<>();
 
@@ -56,9 +55,9 @@ public class IndirectGUIComponentCreator
                standardComponentIDs.put(standardComponentID, associatedComponentID);
        }
 
-       public static Set<String> getStandardComponentIDs()
+       public static Map<String, String> getStandardComponentIDs()
        {
-               return standardComponentIDSetUnmodifiable;
+               return standardComponentIDsUnmodifiable;
        }
 
        public static void setComponentSupplier(String className, ComponentSupplier componentSupplier)
@@ -85,11 +84,7 @@ public class IndirectGUIComponentCreator
        {
                if (id != null)
                {
-                       String resolvedID;
-                       if (id.startsWith("class:") || id.startsWith("file:"))
-                               resolvedID = id;
-                       else
-                               resolvedID = standardComponentIDs.get(id);
+                       String resolvedID = resolveID(id);
                        if (resolvedID != null)
                        {
                                if (resolvedID.startsWith("class:"))
@@ -118,6 +113,13 @@ public class IndirectGUIComponentCreator
                throw new RuntimeException("Could not get component supplier for ID " + id);
        }
 
+       public static String resolveID(String id)
+       {
+               if (id.startsWith("class:") || id.startsWith("file:"))
+                       return id;
+               return standardComponentIDs.get(id);
+       }
+
        private static void tryLoadComponentClass(String componentClassName)
        {
                CodeSnippetSupplier.tryInvokeStaticInitializer(componentClassName, "Error loading component class %s: %s\n");
index e510661..c0462d8 100644 (file)
@@ -53,7 +53,7 @@ mograsim version: 0.1.3
   "GUIsel1": "file:components/GUIsel1.json",
   "GUIsel2_4": "file:components/GUIsel2_4.json",
   "GUIsel3_4": "file:components/GUIsel3_4.json",
-  "GUIsel4_12": "class:net.mograsim.logic.model.am2900.components.GUImux4_12",
+  "GUIsel4_12": "class:net.mograsim.logic.model.am2900.components.GUIsel4_12",
   "GUISplitter": "class:net.mograsim.logic.model.model.components.atomic.GUISplitter",
   "GUIxor": "file:components/GUIxor.json",
   "WireCrossPoint": "class:net.mograsim.logic.model.model.wires.WireCrossPoint",
index 619254a..0016cc7 100644 (file)
@@ -3,12 +3,11 @@ package net.mograsim.logic.model.snippets;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.Set;
 
 public class CodeSnippetSupplier<C, S>
 {
        private final Map<String, String> standardSnippetIDClassNames = new HashMap<>();
-       private final Set<String> standardSnippetIDSetUnmodifiable = Collections.unmodifiableSet(standardSnippetIDClassNames.keySet());
+       private final Map<String, String> standardSnippetIDClassNamesUnmodifiable = Collections.unmodifiableMap(standardSnippetIDClassNames);
        private final Map<String, SnippetDefinintion<C, ?, S>> snippetSuppliersForClassNames = new HashMap<>();
        private final SnippetDefinintion<C, ?, S> defaultSnippetSupplier;
 
@@ -22,9 +21,9 @@ public class CodeSnippetSupplier<C, S>
                standardSnippetIDClassNames.put(standardSnippetID, associatedSnippetClassName);
        }
 
-       public Set<String> getStandardSnippetIDs()
+       public Map<String, String> getStandardSnippetIDs()
        {
-               return standardSnippetIDSetUnmodifiable;
+               return standardSnippetIDClassNamesUnmodifiable;
        }
 
        public void setSnippetSupplier(String id, SnippetDefinintion<C, ?, S> snippetSupplier)
index d06f1c2..627f5dc 100644 (file)
@@ -5,6 +5,7 @@ mograsim version: 0.1.3
   },
   "standardAtomicHandlerSuppliers": {
     "delegating": "net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.DelegatingAtomicHighLevelStateHandler",
+    "wireForcing": "net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.WireForcingAtomicHighLevelStateHandler",
     "bitVectorSplitting": "net.mograsim.logic.model.snippets.highlevelstatehandlers.standard.atomic.BitVectorSplittingAtomicHighLevelStateHandler"
   }
 }
\ No newline at end of file