diff --git a/distribution/ReleaseNotes.txt b/distribution/ReleaseNotes.txt index 460210c52..5aff704e3 100644 --- a/distribution/ReleaseNotes.txt +++ b/distribution/ReleaseNotes.txt @@ -9,6 +9,7 @@ planned as v0.10 - Added N and P channel FETs and some CMOS examples, including a 16 bit SRAM - Improved and documented the file import strategy. - Truth tables are easier to edit. +- added a tree view to insert components - added support for the ATF1502 and ATF1504 CPLDs - some minor bug fixes diff --git a/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java b/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java index 6d1c5b459..1d074026b 100644 --- a/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java +++ b/src/main/java/de/neemann/digital/draw/library/ElementLibrary.java @@ -63,7 +63,7 @@ public class ElementLibrary implements Iterable * Creates a new instance. */ public ElementLibrary() { - root = new LibraryNode("root"); + root = new LibraryNode(Lang.get("menu_elements")); LibraryNode node = new LibraryNode(Lang.get("lib_Logic")); node.add(And.DESCRIPTION); diff --git a/src/main/java/de/neemann/digital/gui/components/tree/SelectTree.java b/src/main/java/de/neemann/digital/gui/components/tree/SelectTree.java index 725425332..aa432ce77 100644 --- a/src/main/java/de/neemann/digital/gui/components/tree/SelectTree.java +++ b/src/main/java/de/neemann/digital/gui/components/tree/SelectTree.java @@ -39,20 +39,21 @@ public class SelectTree extends JTree { addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent mouseEvent) { - TreePath path = getSelectionPath(); - if (path != null && path.getPathCount() > 0) { - LibraryNode node = (LibraryNode) path.getLastPathComponent(); - if (node.isLeaf()) { - try { - ElementTypeDescription d = node.getDescription(); - component.setPartToInsert(new VisualElement(d.getName()).setShapeFactory(shapeFactory)); - insertHistory.add(new InsertAction(node, insertHistory, component, shapeFactory)); - } catch (IOException e) { - e.printStackTrace(); + if (mouseEvent.getClickCount() == 2) { + TreePath path = getSelectionPath(); + if (path != null && path.getPathCount() > 0) { + LibraryNode node = (LibraryNode) path.getLastPathComponent(); + if (node.isLeaf()) { + try { + ElementTypeDescription d = node.getDescription(); + component.setPartToInsert(new VisualElement(d.getName()).setShapeFactory(shapeFactory)); + insertHistory.add(new InsertAction(node, insertHistory, component, shapeFactory)); + } catch (IOException e) { + e.printStackTrace(); + } } } } - } }); setCellRenderer(new MyCellRenderer());