public void actionPerformed(ActionEvent e) { String cmd=e.getActionCommand(); if(cmd==null) return; if (cmd.equals("Help")) { showHelp(); return; } if(cmd.equals("Show Parent")) { DefaultMutableTreeNode parent = (DefaultMutableTreeNode)root.getParent(); if (parent!=null) { TreePanel panel = pcp.getPanelForNode(parent); if(panel==null) panel = pcp.newPanel(parent); if(panel!=null) panel.setVisible(); } return; } if(cmd.equals("Reload Plugins From Panel")) {// cmd fired by clicking on tree leaf pcp.closeAll(false); IJ.doCommand("Reload Plugins"); } else { if(cmd.equals("Reload Plugins")) // cmd fired from ImageJ menu; don't propagate it further pcp.closeAll(false); else IJ.doCommand(cmd); return; } }
public void buildTreePanel() { pFrame=new JFrame(title); pFrame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); pTreeModel = new DefaultTreeModel(root); pTree=new JTree(pTreeModel); pTree.setEditable(false); pTree.putClientProperty("JTree.lineStyle","Angled"); pTree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION); pTree.setRootVisible(false); pTree.setShowsRootHandles(true); //pTree.setDragEnabled(true); JScrollPane ptView=new JScrollPane(pTree); addMenu(); pFrame.getContentPane().add(ptView, BorderLayout.CENTER); addListeners(); pFrame.pack(); if (defaultLocation!=null) { if (IJ.debugMode) IJ.log("CP.buildTreePanel: "+defaultLocation); pFrame.setLocation(defaultLocation.x, defaultLocation.y); } else pcp.restoreGeometry(this); //restoreExpandedNodes(); if (pFrame.getLocation().x==0) GUI.center(pFrame); setVisible(); ImageJ ij = IJ.getInstance(); ij.addWindowListener(this); pFrame.addKeyListener(ij); pTree.addKeyListener(ij); }
public void actionPerformed(ActionEvent e) { String cmd=e.getActionCommand(); if(cmd==null) return; if (cmd.equals("Help")) { showHelp(); return; } if(cmd.equals("Show Parent")) { DefaultMutableTreeNode parent = (DefaultMutableTreeNode)root.getParent(); if (parent!=null) { TreePanel panel = pcp.getPanelForNode(parent); if(panel==null) panel = pcp.newPanel(parent); if(panel!=null) panel.setVisible(); } return; } if(cmd.equals("Reload Plugins From Panel")) {// cmd fired by clicking on tree leaf pcp.closeAll(false); IJ.doCommand("Reload Plugins"); } else { if(cmd.equals("Reload Plugins")) // cmd fired from ImageJ menu; don't propagate it further pcp.closeAll(false); else IJ.doCommand(cmd); return; } }
public void buildTreePanel() { pFrame=new JFrame(title); pFrame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); pTreeModel = new DefaultTreeModel(root); pTree=new JTree(pTreeModel); pTree.setEditable(false); pTree.putClientProperty("JTree.lineStyle","Angled"); pTree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION); pTree.setRootVisible(false); pTree.setShowsRootHandles(true); //pTree.setDragEnabled(true); JScrollPane ptView=new JScrollPane(pTree); addMenu(); pFrame.getContentPane().add(ptView, BorderLayout.CENTER); addListeners(); pFrame.pack(); if (defaultLocation!=null) { if (IJ.debugMode) IJ.log("CP.buildTreePanel: "+defaultLocation); pFrame.setLocation(defaultLocation.x, defaultLocation.y); } else pcp.restoreGeometry(this); //restoreExpandedNodes(); if (pFrame.getLocation().x==0) GUI.center(pFrame); setVisible(); ImageJ ij = IJ.getInstance(); ij.addWindowListener(this); pFrame.addKeyListener(ij); pTree.addKeyListener(ij); }
void tearOff(DefaultMutableTreeNode node, Point pnt) { isDragging = false; pFrame.setCursor(Cursor.getDefaultCursor()); if(node==null) node = (DefaultMutableTreeNode)pTree.getLastSelectedPathComponent(); if(node.isLeaf()) return; TreeNode[] nPath = node.getPath(); TreeNode[] rPath = root.getPath(); DefaultMutableTreeNode[] tPath = new DefaultMutableTreeNode[nPath.length-rPath.length+1]; for(int i=0; i<tPath.length; i++) tPath[i] = (DefaultMutableTreeNode)nPath[i+rPath.length-1]; TreePath path = new TreePath(nPath); TreePath localPath = new TreePath(tPath); String pathString = localPath.toString(); TreePanel p = pcp.getPanelForNode(node); if (p==null) { if(pnt!=null) p = pcp.newPanel(node, pnt); else p = pcp.newPanel(node); pTree.collapsePath(localPath); } else { if (pnt!=null) p.setLocation(pnt); p.setVisible(); pTree.collapsePath(localPath); } }
void tearOff(DefaultMutableTreeNode node, Point pnt) { isDragging = false; pFrame.setCursor(Cursor.getDefaultCursor()); if(node==null) node = (DefaultMutableTreeNode)pTree.getLastSelectedPathComponent(); if(node.isLeaf()) return; TreeNode[] nPath = node.getPath(); TreeNode[] rPath = root.getPath(); DefaultMutableTreeNode[] tPath = new DefaultMutableTreeNode[nPath.length-rPath.length+1]; for(int i=0; i<tPath.length; i++) tPath[i] = (DefaultMutableTreeNode)nPath[i+rPath.length-1]; TreePath path = new TreePath(nPath); TreePath localPath = new TreePath(tPath); String pathString = localPath.toString(); TreePanel p = pcp.getPanelForNode(node); if (p==null) { if(pnt!=null) p = pcp.newPanel(node, pnt); else p = pcp.newPanel(node); pTree.collapsePath(localPath); } else { if (pnt!=null) p.setLocation(pnt); p.setVisible(); pTree.collapsePath(localPath); } }