javafx.scene.input.MouseEvent#isPrimaryButtonDown ( )源码实例Demo

下面列出了javafx.scene.input.MouseEvent#isPrimaryButtonDown ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: constellation   文件: OverviewPanel.java
/**
 * Helper method that is used to determine if resizing operations need
 * to be handled.
 *
 * This method changes the cursor to inform the user that resizing can
 * occur.
 *
 * @param t The triggered mouse event.
 *
 * @see MouseEvent
 */
private void handleResizing(final MouseEvent t) {
    // Determine if the cursor is currently hovering over the left border:
    if ((rect.getX() - BUFFER) <= t.getX() && t.getX() <= (rect.getX() + BUFFER)) {
        rect.setCursor(Cursor.W_RESIZE);

        // Switch on resizing left flags if is a primary mouse:
        if (t.isPrimaryButtonDown()) {
            isResizingLeft = true;
            isResizingRight = false;
        }
    } // Determine if the cursor is currently hovering over the right border:
    else if ((rect.getX() + rect.getWidth() - BUFFER) <= t.getX()
            && t.getX() <= (rect.getX() + rect.getWidth() + BUFFER)) {
        rect.setCursor(Cursor.E_RESIZE);

        // Switch on resizing right flags if is a primary mouse click:
        if (t.isPrimaryButtonDown()) {
            isResizingLeft = false;
            isResizingRight = true;
        }
    } // Not hovering over a border:
    else {
        rect.setCursor(Cursor.NONE);
    }
}
 
源代码2 项目: mzmine3   文件: Fx3DStageController.java
public void handleMouseDragged(MouseEvent me) {
  double rotateFactor = 0.12;
  mousePosX = me.getSceneX();
  mousePosY = me.getSceneY();
  if (me.isPrimaryButtonDown()) {
    rotateX.setAngle(rotateX.getAngle() + rotateFactor * (mousePosY - mouseOldY));
    rotateY.setAngle(rotateY.getAngle() - rotateFactor * (mousePosX - mouseOldX));
  }
  if (me.isSecondaryButtonDown()) {
    translateX.setX(translateX.getX() + (mousePosX - mouseOldX));
    translateY.setY(translateY.getY() + (mousePosY - mouseOldY));

  }
  mouseOldX = mousePosX;
  mouseOldY = mousePosY;
}
 
源代码3 项目: phoebus   文件: Rubberband.java
private void handleStart(final MouseEvent event)
{
    if (! event.isPrimaryButtonDown())
        return;
    active = true;

    // Event originates from a node that allows 'clicking' beyond the
    // model elements, i.e. the size of the 'parent'.
    // The 'parent', however, may be scrolled, and the rubber band needs
    // to show up in the 'parent', so convert coordinates
    // from event to the parent:
    final Point2D in_parent = parent.sceneToLocal(event.getSceneX(), event.getSceneY());
    x0 = in_parent.getX();
    y0 = in_parent.getY();
    rect.setX(x0);
    rect.setY(y0);
    rect.setWidth(1);
    rect.setHeight(1);
    parent.getChildren().add(rect);
    event.consume();
}
 
源代码4 项目: mzmine2   文件: Fx3DStageController.java
public void handleMouseDragged(MouseEvent me) {
    double rotateFactor = 0.12;
    mousePosX = me.getSceneX();
    mousePosY = me.getSceneY();
    if (me.isPrimaryButtonDown()) {
        rotateX.setAngle(rotateX.getAngle()
                + rotateFactor * (mousePosY - mouseOldY));
        rotateY.setAngle(rotateY.getAngle()
                - rotateFactor * (mousePosX - mouseOldX));
    }
    if (me.isSecondaryButtonDown()) {
        translateX.setX(translateX.getX() + (mousePosX - mouseOldX));
        translateY.setY(translateY.getY() + (mousePosY - mouseOldY));

    }
    mouseOldX = mousePosX;
    mouseOldY = mousePosY;
}
 
源代码5 项目: graph-editor   文件: ResizableBox.java
/**
 * Processes the current mouse position, updating the cursor accordingly.
 *
 * @param event the latest {@link MouseEvent} for the mouse entering or moving inside the rectangle
 */
private void processMousePosition(final MouseEvent event) {

    if (event.isPrimaryButtonDown()) {
        return;
    }

    final RectangleMouseRegion mouseRegion = getMouseRegion(event.getX(), event.getY());

    if (!mouseRegion.equals(RectangleMouseRegion.INSIDE)) {
        mouseInPositionForResize = true;
    } else {
        mouseInPositionForResize = false;
    }

    updateCursor(mouseRegion);
}
 
源代码6 项目: graph-editor   文件: AutoScrollingWindow.java
/**
 * Handles mouse-dragged events.
 *
 * <p>
 * The event object is stored to be re-fired later. When we pan the window, we re-fire the previous drag event on
 * its target so that even if the cursor is no longer moving, the dragged-object will continue to move smoothly
 * along as the window auto-scrolls.
 * </p>
 *
 * @param event the mouse-dragged event object
 */
private void handleMouseDragged(final MouseEvent event) {

    if (event.isPrimaryButtonDown() && event.getTarget() instanceof Node) {

        currentDragEvent = event;
        dragEventTarget = (Node) event.getTarget();

        jumpDistance = getDistanceToJump(event.getX(), event.getY());

        if (jumpDistance == null) {
            jumpsTaken = 0;
        } else if (!isScrolling && isAutoScrollingEnabled()) {
            startScrolling();
        }
    }
}
 
源代码7 项目: chart-fx   文件: DragResizerUtil.java
protected void resetNodeSize(final MouseEvent evt) {
    if (!evt.isPrimaryButtonDown() || evt.getClickCount() < 2) {
        return;
    }

    if (!(node instanceof Region)) {
        return;
    }

    ((Region) node).setPrefWidth(Region.USE_COMPUTED_SIZE);
    ((Region) node).setPrefHeight(Region.USE_COMPUTED_SIZE);
}
 
源代码8 项目: jace   文件: JaceUIController.java
private void showMenuButton(MouseEvent evt) {
    if (!evt.isPrimaryButtonDown() && !evt.isSecondaryButtonDown() && !controlOverlay.isVisible()) {
        resetMenuButtonTimer();
        if (!menuButtonPane.isVisible()) {
            menuButtonPane.setVisible(true);
            FadeTransition ft = new FadeTransition(Duration.millis(500), menuButtonPane);
            ft.setFromValue(0.0);
            ft.setToValue(1.0);
            ft.play();
        }
    }
    rootPane.requestFocus();
}
 
源代码9 项目: jace   文件: JaceUIController.java
private void showControlOverlay(MouseEvent evt) {
    if (!evt.isPrimaryButtonDown() && !evt.isSecondaryButtonDown()) {
        delayTimer.stop();
        menuButtonPane.setVisible(false);
        controlOverlay.setVisible(true);
        FadeTransition ft = new FadeTransition(Duration.millis(500), controlOverlay);
        ft.setFromValue(0.0);
        ft.setToValue(1.0);
        ft.play();
        rootPane.requestFocus();
    }
}
 
源代码10 项目: marathonv5   文件: RFXComponent.java
protected void mousePressed(MouseEvent me) {
    if (me.isPrimaryButtonDown() && me.getClickCount() == 1 && !me.isAltDown() && !me.isMetaDown() && !me.isControlDown()) {
        mouseButton1Pressed(me);
    } else {
        recorder.recordClick2(this, me, true);
    }
}
 
源代码11 项目: phoebus   文件: ImagePlot.java
/** setOnMouseMoved */
private void mouseMove(final MouseEvent e)
{
    final Point2D current = new Point2D(e.getX(), e.getY());
    mouse_current = Optional.of(current);

    // While zooming, when mouse is quickly dragged outside the widget
    // and then released, the 'mouseUp' event is sometimes missing.
    // --> When seeing an active mouse move w/o button press,
    //     treat that just like a release.
    if (mouse_mode.ordinal() >= MouseMode.ZOOM_IN_X.ordinal()  &&  !e.isPrimaryButtonDown())
    {
        mouseUp(e);
        return;
    }

    PlotCursors.setCursor(this, mouse_mode);

    final Point2D start = mouse_start.orElse(null);
    switch (mouse_mode)
    {
    case PAN_PLOT:
        if (start != null)
        {
            x_axis.pan(mouse_start_x_range, x_axis.getValue((int)start.getX()), x_axis.getValue((int)current.getX()));
            y_axis.pan(mouse_start_y_range, y_axis.getValue((int)start.getY()), y_axis.getValue((int)current.getY()));
        }
        break;
    case ZOOM_IN_X:
    case ZOOM_IN_Y:
    case ZOOM_IN_PLOT:
        // Show mouse feedback for ongoing zoom
        requestRedraw();
        break;
    default:
    }
    if (! crosshair)
        updateLocationInfo(e.getX(), e.getY());
}
 
源代码12 项目: jace   文件: WolfensteinCheats.java
private void processMouseEvent(MouseEvent evt) {
    if (evt.isPrimaryButtonDown() || evt.isSecondaryButtonDown()) {
        Node source = (Node) evt.getSource();
        double mouseX = evt.getSceneX() / source.getBoundsInLocal().getWidth();
        double mouseY = evt.getSceneY() / source.getBoundsInLocal().getHeight();
        int x = Math.max(0, Math.min(7, (int) ((mouseX - 0.148) * 11)));
        int y = Math.max(0, Math.min(7, (int) ((mouseY - 0.101) * 11)));
        int location = x + (y << 3);
        if (evt.getButton() == MouseButton.PRIMARY) {
            killEnemyAt(location);
        } else {
            teleportTo(location);
        }
    }
}
 
源代码13 项目: chart-fx   文件: MouseEventsHelper.java
public static boolean isOnlyMiddleButtonDown(final MouseEvent event) {
    return event.isMiddleButtonDown() && !event.isPrimaryButtonDown() && !event.isSecondaryButtonDown();
}
 
源代码14 项目: chart-fx   文件: MouseEventsHelper.java
public static boolean isOnlySecondaryButtonDown(final MouseEvent event) {
    return event.getButton() == SECONDARY && !event.isPrimaryButtonDown() && !event.isMiddleButtonDown();
}
 
源代码15 项目: phoebus   文件: ImagePlot.java
/** onMousePressed */
private void mouseDown(final MouseEvent e)
{
    // Don't start mouse actions when user invokes context menu
    if (! e.isPrimaryButtonDown()  ||  (PlatformInfo.is_mac_os_x && e.isControlDown()))
        return;

    // Received a click while a tacker is active
    // -> User clicked outside of tracker. Remove it.
    if (roi_tracker != null)
    {
        removeROITracker();
        // Don't cause accidental 'zoom out' etc.
        // User needs to click again for that.
        return;
    }

    // Select any tracker
    final Point2D current = new Point2D(e.getX(), e.getY());
    for (RegionOfInterest roi : rois)
        if (roi.isVisible()  &&  roi.isInteractive())
        {
            final Rectangle rect = roiToScreen(roi);
            if (rect.contains(current.getX(), current.getY()))
            {   // Check if complete ROI is visible,
                // because otherwise tracker would extend beyond the
                // current image viewport
                final Rectangle2D image_rect = GraphicsUtils.convert(image_area);
                if (image_rect.contains(rect.x, rect.y, rect.width, rect.height))
                {
                    roi_tracker = new Tracker(image_rect);
                    roi_tracker.setPosition(rect.x, rect.y, rect.width, rect.height);
                    ChildCare.addChild(getParent(), roi_tracker);
                    final int index = rois.indexOf(roi);
                    roi_tracker.setListener((old_pos, new_pos) -> updateRoiFromScreen(index, new_pos));
                    return;
                }
            }
        }

    mouse_start = mouse_current = Optional.of(current);

    final int clicks = e.getClickCount();

    if (mouse_mode == MouseMode.NONE)
    {
        if (crosshair)
        {
            updateLocationInfo(e.getX(), e.getY());
            requestRedraw();
        }
    }
    else if (mouse_mode == MouseMode.PAN)
    {   // Determine start of 'pan'
        mouse_start_x_range = x_axis.getValueRange();
        mouse_start_y_range = y_axis.getValueRange();
        mouse_mode = MouseMode.PAN_PLOT;
    }
    else if (mouse_mode == MouseMode.ZOOM_IN  &&  clicks == 1)
    {   // Determine start of 'rubberband' zoom.
        // Reset cursor from SIZE* to CROSS.
        if (y_axis.getBounds().contains(current.getX(), current.getY()))
        {
            mouse_mode = MouseMode.ZOOM_IN_Y;
            PlotCursors.setCursor(this, mouse_mode);
        }
        else if (image_area.contains(current.getX(), current.getY()))
        {
            mouse_mode = MouseMode.ZOOM_IN_PLOT;
            PlotCursors.setCursor(this, mouse_mode);
        }
        else if (x_axis.getBounds().contains(current.getX(), current.getY()))
        {
            mouse_mode = MouseMode.ZOOM_IN_X;
            PlotCursors.setCursor(this, mouse_mode);
        }
    }
    else if ((mouse_mode == MouseMode.ZOOM_IN && clicks == 2)  ||  mouse_mode == MouseMode.ZOOM_OUT)
        zoomInOut(current.getX(), current.getY(), ZOOM_FACTOR);
}
 
源代码16 项目: gef   文件: CreateCurveOnDragHandler.java
@Override
public void startDrag(MouseEvent event) {
	// create new curve
	GeometricCurve curve = new GeometricCurve(new Point[] { new Point(), new Point() },
			MvcLogoExample.GEF_COLOR_GREEN, MvcLogoExample.GEF_STROKE_WIDTH, MvcLogoExample.GEF_DASH_PATTERN, null);
	curve.addSourceAnchorage(getShapePart().getContent());

	// create using CreationPolicy from root part
	CreationPolicy creationPolicy = getHost().getRoot().getAdapter(CreationPolicy.class);
	init(creationPolicy);
	curvePart = (GeometricCurvePart) creationPolicy.create(curve, getHost().getRoot(),
			HashMultimap.<IContentPart<? extends Node>, String> create());
	commit(creationPolicy);

	// disable refresh visuals for the curvePart
	storeAndDisableRefreshVisuals(curvePart);

	// move curve to pointer location
	curvePart.getVisual().setEndPoint(getLocation(event));

	// build operation to deselect all but the new curve part
	List<IContentPart<? extends Node>> toBeDeselected = new ArrayList<>(
			getHost().getRoot().getViewer().getAdapter(SelectionModel.class).getSelectionUnmodifiable());
	toBeDeselected.remove(curvePart);
	DeselectOperation deselectOperation = new DeselectOperation(getHost().getRoot().getViewer(), toBeDeselected);
	// execute on stack
	try {
		getHost().getRoot().getViewer().getDomain().execute(deselectOperation, new NullProgressMonitor());
	} catch (ExecutionException e) {
		throw new RuntimeException(e);
	}

	// find bend target part
	bendTargetPart = findBendTargetPart(curvePart, event.getTarget());
	if (bendTargetPart != null) {
		dragPolicies = bendTargetPart.getAdapters(ClickDragGesture.ON_DRAG_POLICY_KEY);
	}
	if (dragPolicies != null) {
		MouseEvent dragEvent = new MouseEvent(event.getSource(), event.getTarget(), MouseEvent.MOUSE_DRAGGED,
				event.getX(), event.getY(), event.getScreenX(), event.getScreenY(), event.getButton(),
				event.getClickCount(), event.isShiftDown(), event.isControlDown(), event.isAltDown(),
				event.isMetaDown(), event.isPrimaryButtonDown(), event.isMiddleButtonDown(),
				event.isSecondaryButtonDown(), event.isSynthesized(), event.isPopupTrigger(),
				event.isStillSincePress(), event.getPickResult());
		for (IOnDragHandler dragPolicy : dragPolicies.values()) {
			dragPolicy.startDrag(event);
			// XXX: send initial drag event so that the end position is set
			dragPolicy.drag(dragEvent, new Dimension());
		}
	}
}
 
源代码17 项目: JFoenix   文件: JFXDecorator.java
private void handleDragEventOnDecoratorPane(MouseEvent mouseEvent) {
    isDragging = true;
    if (!mouseEvent.isPrimaryButtonDown() || (xOffset == -1 && yOffset == -1)) {
        return;
    }
    /*
     * Long press generates drag event!
     */
    if (primaryStage.isFullScreen() || mouseEvent.isStillSincePress() || primaryStage.isMaximized() || maximized) {
        return;
    }

    newX = mouseEvent.getScreenX();
    newY = mouseEvent.getScreenY();


    double deltax = newX - initX;
    double deltay = newY - initY;
    Cursor cursor = this.getCursor();

    if (Cursor.E_RESIZE.equals(cursor)) {
        setStageWidth(initWidth + deltax);
        mouseEvent.consume();
    } else if (Cursor.NE_RESIZE.equals(cursor)) {
        if (setStageHeight(initHeight - deltay)) {
            primaryStage.setY(initStageY + deltay);
        }
        setStageWidth(initWidth + deltax);
        mouseEvent.consume();
    } else if (Cursor.SE_RESIZE.equals(cursor)) {
        setStageWidth(initWidth + deltax);
        setStageHeight(initHeight + deltay);
        mouseEvent.consume();
    } else if (Cursor.S_RESIZE.equals(cursor)) {
        setStageHeight(initHeight + deltay);
        mouseEvent.consume();
    } else if (Cursor.W_RESIZE.equals(cursor)) {
        if (setStageWidth(initWidth - deltax)) {
            primaryStage.setX(initStageX + deltax);
        }
        mouseEvent.consume();
    } else if (Cursor.SW_RESIZE.equals(cursor)) {
        if (setStageWidth(initWidth - deltax)) {
            primaryStage.setX(initStageX + deltax);
        }
        setStageHeight(initHeight + deltay);
        mouseEvent.consume();
    } else if (Cursor.NW_RESIZE.equals(cursor)) {
        if (setStageWidth(initWidth - deltax)) {
            primaryStage.setX(initStageX + deltax);
        }
        if (setStageHeight(initHeight - deltay)) {
            primaryStage.setY(initStageY + deltay);
        }
        mouseEvent.consume();
    } else if (Cursor.N_RESIZE.equals(cursor)) {
        if (setStageHeight(initHeight - deltay)) {
            primaryStage.setY(initStageY + deltay);
        }
        mouseEvent.consume();
    } else if (allowMove) {
        primaryStage.setX(mouseEvent.getScreenX() - xOffset);
        primaryStage.setY(mouseEvent.getScreenY() - yOffset);
        mouseEvent.consume();
    }
}
 
源代码18 项目: graph-editor   文件: TreeNodeSkin.java
/**
 * Stops the node being dragged if it isn't selected.
 * 
 * @param event a mouse-dragged event on the node
 */
private void filterMouseDragged(final MouseEvent event) {
    if (event.isPrimaryButtonDown() && !isSelected()) {
        event.consume();
    }
}
 
源代码19 项目: graph-editor   文件: TitledNodeSkin.java
/**
 * Stops the node being dragged if it isn't selected.
 * 
 * @param event a mouse-dragged event on the node
 */
private void filterMouseDragged(final MouseEvent event) {
    if (event.isPrimaryButtonDown() && !isSelected()) {
        event.consume();
    }
}
 
源代码20 项目: graph-editor   文件: DefaultNodeSkin.java
/**
 * Stops the node being dragged if it isn't selected.
 * 
 * @param event a mouse-dragged event on the node
 */
private void filterMouseDragged(final MouseEvent event) {
    if (event.isPrimaryButtonDown() && !isSelected()) {
        event.consume();
    }
}