projects
/
Mograsim.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
926c74b
)
GUIMerger/Splitter don't crash without logic bindings; made them thinner
author
Daniel Kirschten
<daniel.kirschten@gmx.de>
Sun, 18 Aug 2019 19:39:00 +0000
(21:39 +0200)
committer
Daniel Kirschten
<daniel.kirschten@gmx.de>
Sun, 18 Aug 2019 19:39:00 +0000
(21:39 +0200)
net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java
patch
|
blob
|
history
net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java
patch
|
blob
|
history
diff --git
a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java
b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java
index
fc1743b
..
3f5c254
100644
(file)
--- a/
net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java
+++ b/
net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUIMerger.java
@@
-20,12
+20,12
@@
import net.mograsim.preferences.Preferences;
public class GUIMerger extends GUIComponent
{
public class GUIMerger extends GUIComponent
{
- private static final double width =
2
0;
+ private static final double width =
1
0;
private static final double heightPerPin = 10;
public final int logicWidth;
private static final double heightPerPin = 10;
public final int logicWidth;
- private ReadEnd[] inputEnds;
+ private
final
ReadEnd[] inputEnds;
private ReadEnd outputEnd;
public GUIMerger(ViewModelModifiable model, int logicWidth, String name)
private ReadEnd outputEnd;
public GUIMerger(ViewModelModifiable model, int logicWidth, String name)
@@
-37,6
+37,7
@@
public class GUIMerger extends GUIComponent
for (int i = 0; i < logicWidth; i++, inputHeight += 10)
addPin(new Pin(this, "I" + i, 1, 0, inputHeight));
addPin(new Pin(this, "O", logicWidth, width, logicWidth * heightPerPin / 2));
for (int i = 0; i < logicWidth; i++, inputHeight += 10)
addPin(new Pin(this, "I" + i, 1, 0, inputHeight));
addPin(new Pin(this, "O", logicWidth, width, logicWidth * heightPerPin / 2));
+ inputEnds = new ReadEnd[logicWidth];
}
@Override
}
@Override
@@
-69,7
+70,7
@@
public class GUIMerger extends GUIComponent
public void setLogicModelBinding(ReadEnd[] inputEnds, ReadEnd outputEnd)
{
public void setLogicModelBinding(ReadEnd[] inputEnds, ReadEnd outputEnd)
{
-
this.inputEnds = inputEnds
;
+
System.arraycopy(inputEnds, 0, this.inputEnds, 0, logicWidth)
;
this.outputEnd = outputEnd;
}
this.outputEnd = outputEnd;
}
diff --git
a/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java
b/net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java
index
2211114
..
ca3c9e4
100644
(file)
--- a/
net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java
+++ b/
net.mograsim.logic.model/src/net/mograsim/logic/model/model/components/atomic/GUISplitter.java
@@
-20,13
+20,13
@@
import net.mograsim.preferences.Preferences;
public class GUISplitter extends GUIComponent
{
public class GUISplitter extends GUIComponent
{
- private static final double width =
2
0;
+ private static final double width =
1
0;
private static final double heightPerPin = 10;
public final int logicWidth;
private ReadEnd inputEnd;
private static final double heightPerPin = 10;
public final int logicWidth;
private ReadEnd inputEnd;
- private ReadEnd[] outputEnds;
+ private
final
ReadEnd[] outputEnds;
public GUISplitter(ViewModelModifiable model, int logicWidth, String name)
{
public GUISplitter(ViewModelModifiable model, int logicWidth, String name)
{
@@
-37,6
+37,7
@@
public class GUISplitter extends GUIComponent
double outputHeight = 0;
for (int i = 0; i < logicWidth; i++, outputHeight += 10)
addPin(new Pin(this, "O" + i, 1, width, outputHeight));
double outputHeight = 0;
for (int i = 0; i < logicWidth; i++, outputHeight += 10)
addPin(new Pin(this, "O" + i, 1, width, outputHeight));
+ outputEnds = new ReadEnd[logicWidth];
}
@Override
}
@Override
@@
-70,7
+71,7
@@
public class GUISplitter extends GUIComponent
public void setLogicModelBinding(ReadEnd inputEnd, ReadEnd[] outputEnds)
{
this.inputEnd = inputEnd;
public void setLogicModelBinding(ReadEnd inputEnd, ReadEnd[] outputEnds)
{
this.inputEnd = inputEnd;
-
this.outputEnds = outputEnds
;
+
System.arraycopy(outputEnds, 0, this.outputEnds, 0, logicWidth)
;
}
static
}
static