本文整理汇总了Java中java.awt.event.MouseEvent.SHIFT_MASK属性的典型用法代码示例。如果您正苦于以下问题:Java MouseEvent.SHIFT_MASK属性的具体用法?Java MouseEvent.SHIFT_MASK怎么用?Java MouseEvent.SHIFT_MASK使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类java.awt.event.MouseEvent
的用法示例。
在下文中一共展示了MouseEvent.SHIFT_MASK属性的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: mousePressed
/**
* If the mouse is pressed in an empty area, create a new vertex there.
* If the mouse is pressed on an existing vertex, prepare to create
* an edge from that vertex to another
*/
@SuppressWarnings("unchecked")
@Override
public void mousePressed(MouseEvent e) {
if (checkModifiers(e)) {
final VisualizationViewer<Vertex, Edge> vv = (VisualizationViewer<Vertex, Edge>) e.getSource();
final Point2D p = e.getPoint();
GraphElementAccessor<Vertex, Edge> pickSupport = vv.getPickSupport();
if (pickSupport != null) {
final Vertex vertex = pickSupport.getVertex(vv.getModel().getGraphLayout(), p.getX(), p.getY());
if (vertex != null) { // get ready to make an edge
creatingAnEdge = true;
Graph<Vertex, Edge> graph = vv.getModel().getGraphLayout().getGraph();
edgeType = (graph instanceof DirectedGraph) ? EdgeType.DIRECTED : EdgeType.UNDIRECTED;
if ((e.getModifiers() & MouseEvent.SHIFT_MASK) != 0 && graph instanceof UndirectedGraph == false) {
edgeType = EdgeType.DIRECTED;
}
super.mousePressed(e);
} else { // make a new vertex
creatingAnEdge = false;
Vertex newVertex = (Vertex) vertexFactory.create();
action = new CreateVertexUndoableAction(vv.getGraphLayout(), newVertex, vv.getRenderContext().getMultiLayerTransformer().inverseTransform(p));
action.execute();
UndoableControl.getController().actionExecuted(action);
}
}
}
}