public void mousePressed(MouseEvent e) { if (ctx != null) { // save the current selection set operator prevSetOp = ctx.getSetOperator(tm).getSetOperator(); // set the selection set operator ctx.getSetOperator(tm).setFromInputEventMask(e.getModifiers()); } start = e.getPoint(); current = e.getPoint(); selecting = true; repaint(); }
public void mouseReleased(MouseEvent e) { current = e.getPoint(); // intersect with graph Rectangle selrect = new Rectangle(start.x, start.y, current.x - start.x, current.y - start.y); int[] gi = gs.getIndicesAt(selrect, graph.getXAxis(), graph.getYAxis()); DefaultListSelectionModel rsm = new DefaultListSelectionModel(); if (gi != null) { rsm.setValueIsAdjusting(true); for (int j = 0; j < gi.length; j++) { // find node and select segs for node and all descendents int nodeidx = gi[j] / 2; TreeNode tn = nodemap[nodeidx]; selectTraverse(tn, rsm); } rsm.setValueIsAdjusting(false); } if (ctx != null) { // Merge this selection with the table selection list // using the current set selection operator ColumnMap cmap = ctx.getColumnMap(tm, 0); if (cmap != null) { cmap.selectValues(rsm); } } if (ctx != null) { // restore the original selection set operator ctx.getSetOperator(tm).setSetOperator(prevSetOp); } repaint(); }
public void mouseReleased(MouseEvent e) { if (e.isPopupTrigger()) { DefaultTreeModel model = (DefaultTreeModel) m_tree.getModel(); TreePath path = m_tree.getSelectionPath(); if (path != null) { DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent(); if (node == model.getRoot()) { mi_add.setEnabled(true); mi_edit.setEnabled(false); mi_delete.setEnabled(false); } else { mi_add.setEnabled(true); mi_edit.setEnabled(true); mi_delete.setEnabled(true); } Rectangle rectangle = m_tree.getPathBounds(path); if (rectangle.contains(e.getPoint())) m_popupMenu.show(m_tree, e.getX(), e.getY()); } } }