diff --git a/swing/src/net/sf/openrocket/gui/main/componenttree/ComponentTree.java b/swing/src/net/sf/openrocket/gui/main/componenttree/ComponentTree.java index a02e626f9..a638ba8d0 100644 --- a/swing/src/net/sf/openrocket/gui/main/componenttree/ComponentTree.java +++ b/swing/src/net/sf/openrocket/gui/main/componenttree/ComponentTree.java @@ -6,6 +6,9 @@ import javax.swing.ToolTipManager; import net.sf.openrocket.document.OpenRocketDocument; import net.sf.openrocket.gui.components.BasicTree; +import java.awt.event.KeyEvent; +import java.awt.event.KeyListener; + @SuppressWarnings("serial") public class ComponentTree extends BasicTree { @@ -13,7 +16,21 @@ public class ComponentTree extends BasicTree { public ComponentTree(OpenRocketDocument document) { super(); this.setModel(new ComponentTreeModel(document.getRocket(), this)); - + + addKeyListener(new KeyListener() { + @Override + public void keyTyped(KeyEvent e) { } + + @Override + public void keyPressed(KeyEvent e) { + if ((e.getKeyCode() == KeyEvent.VK_A) && ((e.getModifiersEx() & KeyEvent.META_DOWN_MASK) != 0)) { + setSelectionInterval(1, getRowCount()); // Don't select the rocket (row 0) + } + } + + @Override + public void keyReleased(KeyEvent e) { } + }); this.setCellRenderer(new ComponentTreeRenderer()); this.setDragEnabled(true);