Daniel Kirschten [Sun, 30 Jun 2019 14:33:41 +0000 (16:33 +0200)]
Fixed GUIram4 high level state access
Daniel Kirschten [Sun, 30 Jun 2019 13:17:25 +0000 (15:17 +0200)]
More helpful error message if no component is selected in LogicUICanvas
Daniel Kirschten [Sun, 30 Jun 2019 13:13:31 +0000 (15:13 +0200)]
Restructured high level state access
Daniel Kirschten [Sun, 30 Jun 2019 13:12:36 +0000 (15:12 +0200)]
Moved sanity check to make more sense
Daniel Kirschten [Sun, 30 Jun 2019 12:54:40 +0000 (14:54 +0200)]
Corrected incorrect correction of bit order
Christian Femers [Sat, 29 Jun 2019 01:36:40 +0000 (03:36 +0200)]
Removed System.out's
Christian Femers [Sat, 29 Jun 2019 01:35:09 +0000 (03:35 +0200)]
Changed high level addressing to have the correct bit and reg. order
Christian Femers [Sat, 29 Jun 2019 01:30:32 +0000 (03:30 +0200)]
Fixed and added a lot of tests
Christian Femers [Sat, 29 Jun 2019 01:29:46 +0000 (03:29 +0200)]
Improved package structure
Christian Femers [Sat, 29 Jun 2019 01:29:05 +0000 (03:29 +0200)]
Added getBounds() to TextComponent
Christian Femers [Sat, 29 Jun 2019 01:28:14 +0000 (03:28 +0200)]
Fixed ManualSwitch concerning U and added Bit methods
Christian Femers [Fri, 28 Jun 2019 17:26:19 +0000 (19:26 +0200)]
Added an visual-only text component and modelling helper class
Christian Femers [Fri, 28 Jun 2019 17:24:47 +0000 (19:24 +0200)]
Made LogicUIStandalone implement Runnable because why not.
Christian Femers [Fri, 28 Jun 2019 17:22:57 +0000 (19:22 +0200)]
Common ConnectionPoint interface to simplify many things
Simplifies the GUIWire's constructors and allows to loop to create wire
connections.
Daniel Kirschten [Wed, 26 Jun 2019 21:10:56 +0000 (23:10 +0200)]
Slight improvements in documentation.
Daniel Kirschten [Wed, 26 Jun 2019 21:02:59 +0000 (23:02 +0200)]
Implemented set/getHighLevelState for most components
Daniel Kirschten [Wed, 26 Jun 2019 20:29:20 +0000 (22:29 +0200)]
Constructor of BitVector now is fail-fast for bits being null
Daniel Kirschten [Wed, 26 Jun 2019 19:53:44 +0000 (21:53 +0200)]
Added debug shell for setHighLevelState; improved ViewModel comments
Daniel Kirschten [Wed, 26 Jun 2019 19:19:17 +0000 (21:19 +0200)]
Merge remote-tracking branch 'origin/development' into development
Fabian Stemmler [Wed, 26 Jun 2019 19:11:21 +0000 (21:11 +0200)]
mapping.json is now loaded by the class loader
Daniel Kirschten [Wed, 26 Jun 2019 17:19:39 +0000 (19:19 +0200)]
Implemented GUI_rsLatch#setHighLevelState
Daniel Kirschten [Wed, 26 Jun 2019 17:19:32 +0000 (19:19 +0200)]
Implemented GUIManualSwitch#setHighLevelState
Daniel Kirschten [Wed, 26 Jun 2019 17:16:31 +0000 (19:16 +0200)]
Implemented things needed for setHighLevelState
Fabian Stemmler [Wed, 26 Jun 2019 13:51:57 +0000 (15:51 +0200)]
Added forceValues(...) method to Wire
Daniel Kirschten [Wed, 26 Jun 2019 10:50:41 +0000 (12:50 +0200)]
Commented MovablePin
Daniel Kirschten [Wed, 26 Jun 2019 10:49:16 +0000 (12:49 +0200)]
Commented WireCrossPoint
Daniel Kirschten [Wed, 26 Jun 2019 10:16:54 +0000 (12:16 +0200)]
Commented Pin
Daniel Kirschten [Tue, 25 Jun 2019 12:57:57 +0000 (14:57 +0200)]
Included net.mograsim.preferences into net.mograsim.plugin.feature
Daniel Kirschten [Tue, 25 Jun 2019 09:47:16 +0000 (11:47 +0200)]
The user no longer has to click on "Apply" to see changes in the preview
Daniel Kirschten [Tue, 25 Jun 2019 09:37:51 +0000 (11:37 +0200)]
Simulation preview no longer can be moved / zoomed; removed old code
Daniel Kirschten [Tue, 25 Jun 2019 09:33:12 +0000 (11:33 +0200)]
More colors managed by Preferences
Daniel Kirschten [Tue, 25 Jun 2019 09:23:43 +0000 (11:23 +0200)]
Removed visitor pattern used for one test only
Daniel Kirschten [Tue, 25 Jun 2019 08:49:19 +0000 (10:49 +0200)]
executeWithDifferentColor no longer crashes if col==null
Daniel Kirschten [Tue, 25 Jun 2019 08:45:53 +0000 (10:45 +0200)]
Now using preference system in plugin.core
Daniel Kirschten [Tue, 25 Jun 2019 08:45:39 +0000 (10:45 +0200)]
Changes in the preference system
Daniel Kirschten [Tue, 25 Jun 2019 08:03:50 +0000 (10:03 +0200)]
Created net.mograsim.preferences
Daniel Kirschten [Tue, 25 Jun 2019 07:27:42 +0000 (09:27 +0200)]
Cleaned project references and MANIFEST.mf Bundle-Vendor entries
Fabian Stemmler [Mon, 24 Jun 2019 15:46:14 +0000 (17:46 +0200)]
Reorganized location of .json components
Fabian Stemmler [Mon, 24 Jun 2019 14:25:25 +0000 (16:25 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into development
Fabian Stemmler [Mon, 24 Jun 2019 14:22:20 +0000 (16:22 +0200)]
Equivalent inner components now exchangeable. Fixed in/output pin order.
1. Previously, the creation of the inner components of a custom
component was fixated in the file, even though the same inner component
could either be described by a class, or a file. mapping.json now
dictates, which one to use.
2. Added the .json versions of all currently available
SubmodelComponents
3. Since pins are no longer addressed by index, but rather by name,
rectangular custom components were created with a more or less random
pin order, were inputs and outputs were mixed. This issue was fixed.
Daniel Kirschten [Sun, 23 Jun 2019 22:35:16 +0000 (00:35 +0200)]
Cleaned up:
-Empty but required folders now are being tracked via .gitkeep files
-Cleaned build.properties files
-Moved test source build output folders to bin/test
-Removed duplicate ClickableSubmodelComponentsTest
-Removed source folders from .classpath in projects that don't need /
have source folders
Christian Femers [Sun, 23 Jun 2019 18:37:16 +0000 (20:37 +0200)]
Added logo
Christian Femers [Sun, 23 Jun 2019 17:38:05 +0000 (19:38 +0200)]
Copyright notice added
Christian Femers [Sun, 23 Jun 2019 17:35:27 +0000 (19:35 +0200)]
Update LICENSE to EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
Christian Femers [Sun, 23 Jun 2019 17:29:10 +0000 (19:29 +0200)]
Completely changed the structure and switched to Eclipse Plugin.
Daniel Kirschten [Sat, 22 Jun 2019 13:16:04 +0000 (15:16 +0200)]
Commented GUIWire
Daniel Kirschten [Sat, 22 Jun 2019 13:07:57 +0000 (15:07 +0200)]
Corrected documentation of wireCreated() and wireDestroyed()
Daniel Kirschten [Sat, 22 Jun 2019 12:40:25 +0000 (14:40 +0200)]
ViewLogicModelAdapter no longer forces all GUIComponents to be loaded
Daniel Kirschten [Sat, 22 Jun 2019 08:58:33 +0000 (10:58 +0200)]
Commented SubmodelComponent
Daniel Kirschten [Sat, 22 Jun 2019 08:56:46 +0000 (10:56 +0200)]
Changed SubmodelComponent.addSubmodelInterface() interface
Daniel Kirschten [Sat, 22 Jun 2019 08:43:15 +0000 (10:43 +0200)]
Changed interface of GUIComponent.getPins()
Daniel Kirschten [Sat, 22 Jun 2019 08:34:04 +0000 (10:34 +0200)]
Improved comments of GUIComponent
Daniel Kirschten [Sat, 22 Jun 2019 08:31:11 +0000 (10:31 +0200)]
Added a check in addPin()
Daniel Kirschten [Sat, 22 Jun 2019 08:15:05 +0000 (10:15 +0200)]
Commented GUIComponent
Daniel Kirschten [Sat, 22 Jun 2019 07:48:03 +0000 (09:48 +0200)]
Stopped creation of unneccessary Rectangle instances
Daniel Kirschten [Sat, 22 Jun 2019 07:33:50 +0000 (09:33 +0200)]
Implemented SubmodelComponent.clicked(); removed obsolete TODOs
Daniel Kirschten [Fri, 21 Jun 2019 22:15:17 +0000 (00:15 +0200)]
Removed obsolete AtomicAm2901NANDBased
Daniel Kirschten [Fri, 21 Jun 2019 21:55:07 +0000 (23:55 +0200)]
Finished GUIAm2901
Daniel Kirschten [Fri, 21 Jun 2019 21:33:37 +0000 (23:33 +0200)]
Made Wire.fuse(Wire, Wire, int, int int) public
Fabian Stemmler [Fri, 21 Jun 2019 17:27:50 +0000 (19:27 +0200)]
Fusing Wires will no longer initialize Wires with value U
Daniel Kirschten [Fri, 21 Jun 2019 14:42:22 +0000 (16:42 +0200)]
Fixed a bug in GUIAm2901
Daniel Kirschten [Fri, 21 Jun 2019 14:01:11 +0000 (16:01 +0200)]
Implemented functional GUIAm2901 without layout
Daniel Kirschten [Fri, 21 Jun 2019 14:00:48 +0000 (16:00 +0200)]
Made GUIComponent.getPin(String) fail-fast
Fabian Stemmler [Fri, 21 Jun 2019 13:02:41 +0000 (15:02 +0200)]
Quickfix for Wire.fuse(...)
The fusion of Wires caused an exception upon updating Wire values, if
one of the fused Wires had no inputs, other than the Wire it was fused
with.
The Connector Component still has this issue.
Daniel Kirschten [Fri, 21 Jun 2019 12:42:04 +0000 (14:42 +0200)]
Updated GUIAm2901ALUInclDecode
Daniel Kirschten [Fri, 21 Jun 2019 12:24:17 +0000 (14:24 +0200)]
Updated GUIAm2901ALUFuncDecode
Daniel Kirschten [Fri, 21 Jun 2019 12:14:50 +0000 (14:14 +0200)]
ViewLogicModelAdapter now supports directly connected interface pins
Daniel Kirschten [Fri, 21 Jun 2019 12:13:57 +0000 (14:13 +0200)]
Made LogicExecuter robust against crashes in Timeline.executeUntil
Daniel Kirschten [Fri, 21 Jun 2019 10:56:25 +0000 (12:56 +0200)]
Implemented GUIAm2901ALUInclSourceDecodeInclFunctionDecode
Fabian Stemmler [Fri, 21 Jun 2019 10:22:25 +0000 (12:22 +0200)]
Updated SubmodelComponentParams json format
Instead of saving an inner GUIComponents logicWidth, a Map<String,
Object> containing all relevant information for instantiation is saved.
Insured that FileWriter/Readers are closed in JsonHandler.
Daniel Kirschten [Fri, 21 Jun 2019 09:18:43 +0000 (11:18 +0200)]
Pins are now accessed via name, not index
Daniel Kirschten [Wed, 19 Jun 2019 11:13:49 +0000 (13:13 +0200)]
Added call checks for subclass methods:
SubmodelComponents don't allow add / removePin,
SimpleRectangularSubmodelComponents don't allow add /
removeSubmodelInterface and setSize
Daniel Kirschten [Wed, 19 Jun 2019 11:04:01 +0000 (13:04 +0200)]
Daniel Kirschten [Wed, 19 Jun 2019 10:56:26 +0000 (12:56 +0200)]
SimpleRectangularSubmodelComponent now supports pin names
Fabian Stemmler [Tue, 18 Jun 2019 19:40:59 +0000 (21:40 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into development
Fabian Stemmler [Tue, 18 Jun 2019 19:38:22 +0000 (21:38 +0200)]
Logic Wire bits can now be fused together (Wire.fuse(...))
Daniel Kirschten [Tue, 18 Jun 2019 16:01:32 +0000 (18:01 +0200)]
Pins now have names
Daniel Kirschten [Tue, 18 Jun 2019 15:48:30 +0000 (17:48 +0200)]
Implemented GUIAm2901ALUInclDecode
Daniel Kirschten [Tue, 18 Jun 2019 14:26:14 +0000 (16:26 +0200)]
Implemented GUIAm2901ALUFuncDecode
Daniel Kirschten [Tue, 18 Jun 2019 11:00:21 +0000 (13:00 +0200)]
Exported all packages
Daniel Kirschten [Tue, 18 Jun 2019 10:43:31 +0000 (12:43 +0200)]
Improved rendering quality for speedup
Daniel Kirschten [Tue, 18 Jun 2019 08:28:01 +0000 (10:28 +0200)]
Fixed GUIram4
Fabian Stemmler [Tue, 18 Jun 2019 08:17:48 +0000 (10:17 +0200)]
Added file version and closed resource leak
Component json files are now created with the version in the first line.
Removed a superfluous FileWriter in JsonHandler.
Daniel Kirschten [Tue, 18 Jun 2019 07:17:57 +0000 (09:17 +0200)]
Merge remote-tracking branch 'origin/development' into development
Fabian Stemmler [Mon, 17 Jun 2019 15:52:22 +0000 (17:52 +0200)]
Providing json examples
The format is basically finished, only the InnerComponentParams might
still changed.
Daniel Kirschten [Mon, 17 Jun 2019 14:24:15 +0000 (16:24 +0200)]
Implemented GUIAm2901ALUOneBit
Daniel Kirschten [Mon, 17 Jun 2019 13:47:06 +0000 (15:47 +0200)]
Implemented GUIAm2901SourceDecode
Fabian Stemmler [Mon, 17 Jun 2019 13:26:07 +0000 (15:26 +0200)]
Cleaned up GUICustomComponentCreator and wrote documentation.
Fabian Stemmler [Sun, 16 Jun 2019 21:21:12 +0000 (23:21 +0200)]
Simplified file representation of SubmodelComponents
Merged SubmodelComponentParams and the SimpleRectangularComponentParams
into one, by adding a map of specialized parameters to
SubmodelComponentParams. There is only one file type now, so the
distinction via file extension is no longer required. This new system
still requires some clean up, but should be extensible when new
subclasses of SubmodelComponent are created.
Fabian Stemmler [Fri, 14 Jun 2019 13:40:57 +0000 (15:40 +0200)]
General SubmodelComponents can now be saved to a json format
Format for SimpleRectangularSubmodelComponents has changed.
Format for SubmodelComponents holds information on Pin positions.
Both SubmodelComponents and SimpleRect... can be created through the
GUICustomComponentCreator (SubmodelComponents are created as
SimpleRect..., as SubmodelComponent is abstract). This can be expanded
upon for the addition of more subclasses to SubmodelComponent. Included
a class JsonExample for testing a few standard cases.
Daniel Kirschten [Wed, 12 Jun 2019 09:35:43 +0000 (11:35 +0200)]
Implemented GUIAm2901DestDecode
Daniel Kirschten [Wed, 12 Jun 2019 08:27:31 +0000 (10:27 +0200)]
Implemented GUIAm2901QReg
Daniel Kirschten [Tue, 11 Jun 2019 20:57:25 +0000 (22:57 +0200)]
Implemented GUIor4
Daniel Kirschten [Tue, 11 Jun 2019 20:57:20 +0000 (22:57 +0200)]
Removed redundant calls to getPin
Daniel Kirschten [Tue, 11 Jun 2019 20:39:15 +0000 (22:39 +0200)]
Implemented GUIsel3_4
Daniel Kirschten [Tue, 11 Jun 2019 20:12:05 +0000 (22:12 +0200)]
Implemented GUIxor
Daniel Kirschten [Tue, 11 Jun 2019 20:01:44 +0000 (22:01 +0200)]
Made GUIsel2_4 more "tabellaric"
Daniel Kirschten [Tue, 11 Jun 2019 19:58:53 +0000 (21:58 +0200)]
Improved GUIsel2_4 wire layout
Daniel Kirschten [Tue, 11 Jun 2019 19:55:28 +0000 (21:55 +0200)]
Implemented GUIram4
Daniel Kirschten [Tue, 11 Jun 2019 15:31:59 +0000 (17:31 +0200)]
Updated to new SWTHelper version needed for LogicUIRenderer.