From c1891e1990cb00f32f3d570a0f8d6bb9ebf74c2b Mon Sep 17 00:00:00 2001 From: hneemann Date: Sat, 9 Jan 2021 10:00:02 +0100 Subject: [PATCH] Adds a button to create a concrete circuit to the code dialog. --- .../neemann/digital/gui/components/CircuitComponent.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java b/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java index a9c5bfe29..051550b50 100644 --- a/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java +++ b/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java @@ -1175,7 +1175,7 @@ public class CircuitComponent extends JComponent implements ChangedListener, Lib } }.setToolTip(Lang.get("attr_openCircuit_tt"))); } - if (elementType == GenericInitCode.DESCRIPTION && getCircuit().getAttributes().get(Keys.IS_GENERIC)) { + if ((elementType == GenericInitCode.DESCRIPTION || elementType == GenericCode.DESCRIPTION) && getCircuit().getAttributes().get(Keys.IS_GENERIC)) { attributeDialog.addButton(Lang.get("attr_createConcreteCircuitLabel"), new ToolTipAction(Lang.get("attr_createConcreteCircuit")) { @Override public void actionPerformed(ActionEvent e) { @@ -1187,8 +1187,12 @@ public class CircuitComponent extends JComponent implements ChangedListener, Lib modify(checkNetRename(element, modified, mod)); } + ElementAttributes attr = null; + if (elementType == GenericInitCode.DESCRIPTION) + attr = element.getElementAttributes(); + Circuit concreteCircuit = new ResolveGenerics(getCircuit(), library) - .resolveCircuit(element.getElementAttributes()) + .resolveCircuit(attr) .cleanupConcreteCircuit() .getCircuit();