public void showPopupMenu(java.awt.event.MouseEvent evt) { int r = m_table.rowAtPoint(new Point(evt.getX(), evt.getY())); if (r != -1) { m_table.setRowSelectionInterval(r, r); } m_popupMenu.show(this, evt.getX(), evt.getY()); }
/** * Spusti se pri zmacknuti tlacitka. Pokud je pod mysi obraz figury, zjisti, zda se muze pohnout * (pokud ano, upravi ho pro tahnuti, nastavi ho do figLabel) a zobrazi kontextovou napovedu. */ private void eCatcherMousePressed( java.awt.event.MouseEvent evt) { // GEN-FIRST:event_eCatcherMousePressed if (figLabel != null || finished) { return; } BoardSquare bsquare = (BoardSquare) eCatcher.getComponentAt(evt.getPoint()); JPanel fsquare = (JPanel) figurePan.getComponent(bsquare.getIndex()); sourceBSquare = bsquare; Point defLocation = fsquare.getLocation(); xAdjustment = (int) defLocation.getX() - evt.getX(); yAdjustment = (int) defLocation.getY() - evt.getY(); if (fsquare.getComponentCount() == 0) { return; } figLabel = (JLabel) fsquare.getComponent(0); setFocus(gui.getFocus(bsquare.getColumn(), bsquare.getRow())); if (!gui.canMove(bsquare.getColumn(), bsquare.getRow())) { figLabel = null; return; } fsquare.remove(figLabel); boardPane.add(figLabel, 0); figLabel.setLocation(evt.getX() + xAdjustment, evt.getY() + yAdjustment); figLabel.setSize(figLabel.getWidth(), figLabel.getHeight()); } // GEN-LAST:event_eCatcherMousePressed
/** Spousti se pri tazeni mysi. Pokud je figLabel neprazdne, tahne drzenou figurou. */ private void eCatcherMouseDragged( java.awt.event.MouseEvent evt) { // GEN-FIRST:event_eCatcherMouseDragged if (figLabel == null) { return; } figLabel.setLocation(evt.getX() + xAdjustment, evt.getY() + yAdjustment); } // GEN-LAST:event_eCatcherMouseDragged
public void mousePressed(java.awt.event.MouseEvent e) { isClick = true; JButton b = (JButton) e.getSource(); // check to see if the target button can be moved if (!solved && check(buttons.indexOf(b))) { // hide the target button b.setVisible(false); // Figure out the bounds of the areas where source // and target buttons are located int menuOffset = getJMenuBar().getHeight(); dragSourceArea = b.getBounds(); dragTargetArea = ((JButton) buttons.get(hiddenIndex)).getBounds(); dragSourceArea.translate(0, menuOffset); dragTargetArea.translate(0, menuOffset); // setup the bounds of the panel to limit the locations on the drag // layer panelArea = new Rectangle(0, menuOffset, getJPanel().getWidth(), getJPanel().getHeight()); // Setup and show the drag button on the upper layer getDragButton().setText(b.getText()); getDragButton().setBounds(dragSourceArea); getDragButton().setVisible(true); // Offset when repositioning the drag button later cursorOffset = new Point(e.getX(), e.getY()); } }
// ====================================================== private void treeMouseClicked(java.awt.event.MouseEvent evt) { // Set selection at mouse position TreePath selectedPath = getPathForLocation(evt.getX(), evt.getY()); if (selectedPath == null) return; int mask = evt.getModifiers(); // Check button clicked if (evt.getClickCount() == 2 && (mask & MouseEvent.BUTTON1_MASK) != 0) { } else if ((mask & MouseEvent.BUTTON3_MASK) != 0) { } }
// ====================================================== // ====================================================== private void treeMouseReleased(java.awt.event.MouseEvent evt) { int mask = evt.getModifiers(); if ((mask & MouseEvent.BUTTON1_MASK) != 0) { if (dragged_node == null) return; TreePath selectedPath = getPathForLocation(evt.getX(), evt.getY()); if (selectedPath == null) if ((selectedPath = getUpperPath(evt.getX(), evt.getY())) == null) return; DefaultMutableTreeNode node = (DefaultMutableTreeNode) selectedPath.getPathComponent(selectedPath.getPathCount() - 1); Object o = node.getUserObject(); int pos = 0; if (o instanceof String) { DefaultMutableTreeNode p_node = (DefaultMutableTreeNode) node.getParent(); pos = p_node.getIndex(node); node = p_node; } moveLeaf(node, dragged_node, pos); dragged_node = null; Cursor cursor = new Cursor(Cursor.DEFAULT_CURSOR); parent.setCursor(cursor); } }
public void mouseDragged(java.awt.event.MouseEvent e) { if (dragTargetArea != null) { // Since we're dragging, this is no longer considered a click isClick = false; // Draw the target feedback and position the drag button based // on the mouse's new location e.translatePoint(dragSourceArea.x, dragSourceArea.y); Point p = makeSafePoint(e.getX(), e.getY()); paintTargetFeedback(p.x, p.y); getDragButton().setLocation(p.x - cursorOffset.x, p.y - cursorOffset.y); } }
protected void handleSelection(java.awt.event.MouseEvent evt) { if (tree != null && tree.isEnabled()) { if (isEditing(tree) && tree.getInvokesStopCellEditing() && !stopEditing(tree)) { return; } if (tree.isRequestFocusEnabled()) { tree.requestFocus(); } TreePath path = getClosestPathForLocation(tree, evt.getX(), evt.getY()); if (path != null) { Rectangle bounds = getPathBounds(tree, path); if (evt.getY() > (bounds.y + bounds.height)) { return; } if (SwingUtilities.isLeftMouseButton(evt)) checkForClickInExpandControl(path, evt.getX(), evt.getY()); if (!startEditing(path, evt)) { selectPathForEvent(path, evt); } } } }
// ====================================================== // ====================================================== private void treeMousePressed(java.awt.event.MouseEvent evt) { int mask = evt.getModifiers(); if ((mask & MouseEvent.BUTTON1_MASK) != 0) { TreePath selectedPath = getPathForLocation(evt.getX(), evt.getY()); if (selectedPath == null) return; DefaultMutableTreeNode node = (DefaultMutableTreeNode) selectedPath.getPathComponent(selectedPath.getPathCount() - 1); Object o = node.getUserObject(); if (o instanceof String) { TransferHandler transfer = this.getTransferHandler(); transfer.exportAsDrag(this, evt, TransferHandler.COPY); dragged_node = node; parent.setCursor(renderer.getNodeCursor(node)); } } }
public void mouseReleased(java.awt.event.MouseEvent e) { if (dragTargetArea != null) { // Turn off the drag button and feedback getDragButton().setVisible(false); paintTargetFeedback(-1, -1); e.translatePoint(dragSourceArea.x, dragSourceArea.y); Point p = makeSafePoint(e.getX(), e.getY()); JButton b = (JButton) e.getSource(); if (isClick || dragTargetArea.contains(p.x, p.y)) { // if we're considered a simple click, or the dragging ended // within the target area, perform the move. slide(buttons.indexOf(b)); } else { // The drag finished outside the target, so just show the // hidden button and don't move anything. b.setVisible(true); } dragTargetArea = null; dragSourceArea = null; } }