mirror of
https://github.com/hneemann/Digital.git
synced 2025-09-29 16:01:19 -04:00
+/- shortcut also works if element is selected
This commit is contained in:
parent
6fecb0e4b9
commit
e0d89eadc2
@ -165,21 +165,8 @@ public class CircuitComponent extends JComponent implements Circuit.ChangedListe
|
|||||||
}
|
}
|
||||||
}.setAccelerator("D").enableAcceleratorIn(this);
|
}.setAccelerator("D").enableAcceleratorIn(this);
|
||||||
|
|
||||||
new ToolTipAction("plus") {
|
new PlusMinusAction(1).setAccelerator("PLUS").enableAcceleratorIn(this);
|
||||||
@Override
|
new PlusMinusAction(-1).setAccelerator("MINUS").enableAcceleratorIn(this);
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
if (activeMouseController instanceof MouseControllerNormal)
|
|
||||||
addToInputCount(getPosVector(lastMousePos.x, lastMousePos.y), 1);
|
|
||||||
}
|
|
||||||
}.setAccelerator("PLUS").enableAcceleratorIn(this);
|
|
||||||
|
|
||||||
new ToolTipAction("minus") {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
if (activeMouseController instanceof MouseControllerNormal)
|
|
||||||
addToInputCount(getPosVector(lastMousePos.x, lastMousePos.y), -1);
|
|
||||||
}
|
|
||||||
}.setAccelerator("MINUS").enableAcceleratorIn(this);
|
|
||||||
|
|
||||||
new ToolTipAction(Lang.get("menu_programDiode")) {
|
new ToolTipAction(Lang.get("menu_programDiode")) {
|
||||||
@Override
|
@Override
|
||||||
@ -320,21 +307,6 @@ public class CircuitComponent extends JComponent implements Circuit.ChangedListe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addToInputCount(Vector pos, int delta) {
|
|
||||||
VisualElement ve = circuit.getElementAt(pos);
|
|
||||||
if (ve != null) {
|
|
||||||
try {
|
|
||||||
if (library.getElementType(ve.getElementName()).hasAttribute(Keys.INPUT_COUNT)) {
|
|
||||||
int number = ve.getElementAttributes().get(Keys.INPUT_COUNT) + delta;
|
|
||||||
if (number >= Keys.INPUT_COUNT.getMin() && number <= Keys.INPUT_COUNT.getMax())
|
|
||||||
modify(new ModifyAttribute<>(ve, Keys.INPUT_COUNT, number));
|
|
||||||
}
|
|
||||||
} catch (ElementNotFoundException e) {
|
|
||||||
// do nothing on error
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Apply a modification
|
* Apply a modification
|
||||||
*
|
*
|
||||||
@ -857,6 +829,37 @@ public class CircuitComponent extends JComponent implements Circuit.ChangedListe
|
|||||||
return redoAction;
|
return redoAction;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private final class PlusMinusAction extends ToolTipAction {
|
||||||
|
private final int delta;
|
||||||
|
|
||||||
|
private PlusMinusAction(int delta) {
|
||||||
|
super("plusMinus");
|
||||||
|
this.delta = delta;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
VisualElement ve = null;
|
||||||
|
if (activeMouseController instanceof MouseControllerNormal)
|
||||||
|
ve = circuit.getElementAt(getPosVector(lastMousePos.x, lastMousePos.y));
|
||||||
|
if (activeMouseController instanceof MouseControllerMoveElement)
|
||||||
|
ve = ((MouseControllerMoveElement) activeMouseController).getVisualElement();
|
||||||
|
|
||||||
|
if (ve != null) {
|
||||||
|
try {
|
||||||
|
if (library.getElementType(ve.getElementName()).hasAttribute(Keys.INPUT_COUNT)) {
|
||||||
|
int number = ve.getElementAttributes().get(Keys.INPUT_COUNT) + delta;
|
||||||
|
if (number >= Keys.INPUT_COUNT.getMin() && number <= Keys.INPUT_COUNT.getMax())
|
||||||
|
modify(new ModifyAttribute<>(ve, Keys.INPUT_COUNT, number));
|
||||||
|
}
|
||||||
|
} catch (ElementNotFoundException e1) {
|
||||||
|
// do nothing on error
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private class MouseDispatcher extends MouseAdapter implements MouseMotionListener {
|
private class MouseDispatcher extends MouseAdapter implements MouseMotionListener {
|
||||||
private Vector pos;
|
private Vector pos;
|
||||||
private boolean isMoved;
|
private boolean isMoved;
|
||||||
@ -1168,6 +1171,10 @@ public class CircuitComponent extends JComponent implements Circuit.ChangedListe
|
|||||||
}
|
}
|
||||||
mouseNormal.activate();
|
mouseNormal.activate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public VisualElement getVisualElement() {
|
||||||
|
return visualElement;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private final class MouseControllerMoveWire extends MouseController {
|
private final class MouseControllerMoveWire extends MouseController {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user