|
Search this API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object y.view.HitInfo
public class HitInfo
A class that collects hit information for elements of a Graph2D
.
It can be used in ViewMode
objects to initiate a certain behavior
after a certain graph element was hit by a mouse pointer.
The hit test order can be specified by providing an appropriate
Iterator
for a Graph2D
's elements. If no such
Iterator
is given, the hit test on nodes is performed in the
order defined by HierarchyManager.postTraversal()
for hierarchically grouped graphs and in the inherent order defined by
Graph.nodes()
otherwise.
Field Summary | |
---|---|
static int |
BEND
Type specifier for bends used to declare the order of search precedence. |
static int |
EDGE
Type specifier for edges used to declare the order of search precedence. |
static int |
ELABEL
Type specifier for edge labels used to declare the order of search precedence. |
static int |
NLABEL
Type specifier for node labels used to declare the order of search precedence. |
static int |
NODE
Type specifier for nodes used to declare the order of search precedence. |
static int |
NPORT
Type specifier for node ports used to declare the order of search precedence. |
static int |
PORT
Type specifier for ports used to declare the order of search precedence. |
Constructor Summary | |
---|---|
protected |
HitInfo()
Constructs a new HitInfo with no associated hits. |
|
HitInfo(Graph2D graph,
double x,
double y,
boolean firstHitOnly)
Deprecated. |
|
HitInfo(Graph2D graph,
double x,
double y,
boolean firstHitOnly,
int p1,
int p2,
int p3,
int p4,
int p5,
int p6,
int p7)
Deprecated. |
|
HitInfo(Graph2D graph,
double x,
double y,
int type)
Deprecated. |
|
HitInfo(Graph2D graph,
double x,
double y,
int type,
boolean firstHitOnly)
Deprecated. |
|
HitInfo(Graph2D graph,
java.util.Iterator elements,
double x,
double y,
boolean firstHitOnly)
Constructs a new HitInfo for the elements of the specified
Graph2D . |
|
HitInfo(Graph2D graph,
java.util.Iterator elements,
double x,
double y,
boolean firstHitOnly,
int p1,
int p2,
int p3,
int p4,
int p5,
int p6,
int p7)
Constructs a new HitInfo for the elements of the specified
Graph2D . |
|
HitInfo(Graph2DView view,
double x,
double y,
boolean firstHitOnly)
Constructs a new HitInfo for the graph elements associated to
the specified Graph2DView . |
|
HitInfo(Graph2DView view,
double x,
double y,
boolean firstHitOnly,
int type)
Constructs a new HitInfo for the graph elements associated to
the specified Graph2DView . |
|
HitInfo(Graph2DView view,
double x,
double y,
boolean firstHitOnly,
int p1,
int p2,
int p3,
int p4,
int p5,
int p6,
int p7)
Constructs a new HitInfo for the graph elements associated to
the specified Graph2DView . |
protected |
HitInfo(HitInfo prototype)
Initializes a new HitInfo as a copy of the specified prototype
hit data. |
Method Summary | |
---|---|
protected void |
addHitBend(Bend bend)
Adds the specified Bend as a confirmed hit for this
HitInfo . |
protected void |
addHitEdge(Edge edge)
Adds the specified Edge as a confirmed hit for this
HitInfo . |
protected void |
addHitEdgeLabel(EdgeLabel label)
Adds the specified EdgeLabel as a confirmed hit for this
HitInfo . |
protected void |
addHitNode(Node node)
Adds the specified Node as a confirmed hit for this
HitInfo . |
protected void |
addHitNodeLabel(NodeLabel label)
Adds the specified NodeLabel as a confirmed hit for this
HitInfo . |
protected void |
addHitNodePort(NodePort port)
Adds the specified NodePort as a confirmed hit for this
HitInfo . |
protected void |
addHitPort(Port port)
Adds the specified Port as a confirmed hit for this
HitInfo . |
YCursor |
allHits()
Returns a cursor that grants access to all hits. |
protected boolean |
checkHit(Bend bend,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the specified Bend . |
protected boolean |
checkHit(EdgeLabel el,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the specified EdgeLabel . |
protected boolean |
checkHit(EdgeRealizer er,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the edge represented by the specified edgeRealizer . |
protected boolean |
checkHit(NodeLabel nl,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the specified NodeLabel . |
protected boolean |
checkHit(NodePort port,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the specified NodePort . |
protected boolean |
checkHit(NodeRealizer nr,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the node represented by the specified NodeRealizer . |
protected boolean |
checkHit(Port port,
double x,
double y)
Determines whether or not the specified coordinates constitute a hit for the specified Port . |
HitInfo |
cycleHits(Graph2D graph,
double x,
double y)
Performs a cyclic shift on all hits and returns the result as a new hit info. |
java.lang.Object |
getFirstHit()
Returns the first hit or null if there are no hits. |
Bend |
getHitBend()
Returns the first bend that was hit or null if none were hit. |
Edge |
getHitEdge()
Returns the first edge that was hit or null if none were hit. |
EdgeLabel |
getHitEdgeLabel()
Returns the first edge label that was hit or null
if none were hit. |
Node |
getHitNode()
Returns the first node that was hit or null if none were hit. |
NodeLabel |
getHitNodeLabel()
Returns the first node label that was hit or null
if none were hit. |
NodePort |
getHitNodePort()
Returns the first node port that was hit or null
if none were hit. |
Port |
getHitPort()
Returns the first port that was hit or null
if none were hit. |
boolean |
hasHitBends()
Whether or not a bend was hit. |
boolean |
hasHitEdgeLabels()
Whether or not an edge label was hit. |
boolean |
hasHitEdges()
Whether or not an edge was hit. |
boolean |
hasHitNodeLabels()
Whether or not a node label was hit. |
boolean |
hasHitNodePorts()
Whether or not a node port was hit. |
boolean |
hasHitNodes()
Whether or not a node was hit. |
boolean |
hasHitPorts()
Whether or not a port was hit. |
boolean |
hasHits()
Returns whether or not something was hit. |
boolean |
hasMultiHits()
Returns whether or not more than one element was hit. |
YCursor |
hitBends()
Returns a cursor that grants access to all hit bends. |
YCursor |
hitEdgeLabels()
Returns a cursor that grants access to all hit edge labels. |
YCursor |
hitEdges()
Returns a cursor that grants access to all hit edges. |
YCursor |
hitNodeLabels()
Returns a cursor that grants access to all hit node labels. |
YCursor |
hitNodePorts()
Returns a cursor that grants access to all hit node ports. |
YCursor |
hitNodes()
Returns a cursor that grants access to all hit nodes. |
YCursor |
hitPorts()
Returns a cursor that grants access to all hit ports |
boolean |
sameHits(HitInfo another)
Returns true if this hit info contains the same set of hits as another hit info. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int PORT
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field Valuespublic static final int BEND
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field Valuespublic static final int ELABEL
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field Valuespublic static final int EDGE
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field Valuespublic static final int NODE
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field Valuespublic static final int NLABEL
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field Valuespublic static final int NPORT
HitInfo(Graph2DView, double, double, boolean, int, int, int, int, int, int, int)
,
HitInfo(Graph2D, java.util.Iterator, double, double, boolean, int, int, int, int, int, int, int)
,
Constant Field ValuesConstructor Detail |
---|
public HitInfo(Graph2D graph, double x, double y, boolean firstHitOnly)
firstHitOnly
determines if
the hit test should stop or continue after one element has been hit.
In case firstHitOnly
is true, then it is important
to know the hit test ordering, which is
first ports, then nodes, then bends, then edge labels,
then edges, then nodes, then node labels.
public HitInfo(Graph2D graph, double x, double y, int type)
public HitInfo(Graph2D graph, double x, double y, int type, boolean firstHitOnly)
firstHitOnly
determines if
the hit test should stop or continue after one element has been hit.
public HitInfo(Graph2D graph, double x, double y, boolean firstHitOnly, int p1, int p2, int p3, int p4, int p5, int p6, int p7)
firstHitOnly
determines if
the hit test should stop or continue after one element was hit.
In case firstHitOnly
is true, then it is important
to know the hit test ordering, which can be specified by the
parameters p1 to p6 where p1 identifies the objects of highest precedence and p6
the objects of lowest precedence.
The parameters p1 to p6 must be a permutation of the type specifiers
PORT
, BEND
, ELABEL
,
EDGE
, NODE
, NLABEL
.
By default the precedence is first ports, then bends,
then edge labels, then edges, then nodes, then node labels.
public HitInfo(Graph2DView view, double x, double y, boolean firstHitOnly, int type)
HitInfo
for the graph elements associated to
the specified Graph2DView
. If the specified
Graph2DView
's associated Graph2DRenderer
is of type OrderRenderer
the
lastToFirst
method of the OrderRenderer
's currently appropriate painting
order is used to determine the test order of the graph elements.
view
- the Graph2DView
whose associated graph
elements are tested.x
- the x-coordinate of this hit test.y
- the y-coordinate of this hit test.firstHitOnly
- if true
, only the first element hit at
the specified coordinates is reported as a hit.type
- the element type to be tested.public HitInfo(Graph2DView view, double x, double y, boolean firstHitOnly, int p1, int p2, int p3, int p4, int p5, int p6, int p7)
HitInfo
for the graph elements associated to
the specified Graph2DView
. If the specified
Graph2DView
's associated Graph2DRenderer
is of type OrderRenderer
the
lastToFirst
method of the OrderRenderer
's currently appropriate painting
order is used to determine the test order of the graph elements.
view
- the Graph2DView
whose associated graph
elements are tested.x
- the x-coordinate of this hit test.y
- the y-coordinate of this hit test.firstHitOnly
- if true
, only the first element hit at
the specified coordinates is reported as a hit.p1
- element type with the highest precedence for this hit test.p2
- element type with the second highest precedence for this hit
test.p3
- element type with the third highest precedence for this hit
test.p4
- element type with the fourth highest precedence for this hit
test.p5
- element type with the third lowest precedence for this hit
test.p6
- element type with the second lowest precedence for this hit
test.p7
- element type with the lowest precedence for this hit test.public HitInfo(Graph2DView view, double x, double y, boolean firstHitOnly)
HitInfo
for the graph elements associated to
the specified Graph2DView
. If the specified
Graph2DView
's associated Graph2DRenderer
is of type OrderRenderer
the
lastToFirst
method of the OrderRenderer
's currently appropriate painting
order is used to determine the test order (and implicit precedence) of
the graph elements.
view
- the Graph2DView
whose associated graph
elements are tested.x
- the x-coordinate of this hit test.y
- the y-coordinate of this hit test.firstHitOnly
- if true
, only the first element hit at
the specified coordinates is reported as a hit.public HitInfo(Graph2D graph, java.util.Iterator elements, double x, double y, boolean firstHitOnly, int p1, int p2, int p3, int p4, int p5, int p6, int p7)
HitInfo
for the elements of the specified
Graph2D
. Which elements are tested and in which order is
determined by the specified Iterator
and the element type
precedence arguments p1
to p6
.
graph
- the Graph2D
whose elements are to be tested.elements
- the Iterator
used to traverse the graph
elements to be tested.x
- the x-coordinate of this hit test.y
- the y-coordinate of this hit test.firstHitOnly
- if true
, only the first element hit is
reported as a hit; otherwise all hits are reported.p1
- element type with the highest precedence for this hit test.p2
- element type with the second highest precedence for this hit
test.p3
- element type with the third highest precedence for this hit
test.p4
- element type with the fourth highest precedence for this hit
test.p5
- element type with the third lowest precedence for this hit
test.p6
- element type with the second lowest precedence for this hit
test.p7
- element type with the lowest precedence for this hit test.public HitInfo(Graph2D graph, java.util.Iterator elements, double x, double y, boolean firstHitOnly)
HitInfo
for the elements of the specified
Graph2D
. Which elements are tested and in which order is
determined by the specified Iterator
.
graph
- the Graph2D
whose elements are to be tested.elements
- the Iterator
used to traverse the graph
elements to be tested.x
- the x-coordinate of this hit test.y
- the y-coordinate of this hit test.firstHitOnly
- if true
, only the first element hit is
reported as a hit; otherwise all hits are reported.protected HitInfo()
HitInfo
with no associated hits.
protected HitInfo(HitInfo prototype)
HitInfo
as a copy of the specified prototype
hit data.
prototype
- the hit data to copy.Method Detail |
---|
protected void addHitBend(Bend bend)
Bend
as a confirmed hit for this
HitInfo
.
bend
- the confirmed hit.protected void addHitEdge(Edge edge)
Edge
as a confirmed hit for this
HitInfo
.
edge
- the confirmed hit.protected void addHitEdgeLabel(EdgeLabel label)
EdgeLabel
as a confirmed hit for this
HitInfo
.
label
- the confirmed hit.protected void addHitNode(Node node)
Node
as a confirmed hit for this
HitInfo
.
node
- the confirmed hit.protected void addHitNodeLabel(NodeLabel label)
NodeLabel
as a confirmed hit for this
HitInfo
.
label
- the confirmed hit.protected void addHitPort(Port port)
Port
as a confirmed hit for this
HitInfo
.
port
- the confirmed hit.protected void addHitNodePort(NodePort port)
NodePort
as a confirmed hit for this
HitInfo
.
port
- the confirmed hit.protected boolean checkHit(NodeRealizer nr, double x, double y)
NodeRealizer
.
nr
- the NodeRealizer
representing the node to be
checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the node represented by the specified
NodeRealizer
is hit; false
if it is not.protected boolean checkHit(NodeLabel nl, double x, double y)
NodeLabel
.
nl
- the NodeLabel
to be checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the specified NodeLabel
is hit;
false
if it is not.protected boolean checkHit(EdgeRealizer er, double x, double y)
edgeRealizer
.
er
- the edgeRealizer
representing the edge to be
checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the edge represented by the specified
EdgeRealizer
is hit; false
if it is not.protected boolean checkHit(EdgeLabel el, double x, double y)
EdgeLabel
.
el
- the EdgeLabel
to be checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the specified EdgeLabel
is hit;
false
if it is not.protected boolean checkHit(Bend bend, double x, double y)
Bend
.
bend
- the Bend
to be checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the specified Bend
is hit;
false
if it is not.protected boolean checkHit(Port port, double x, double y)
Port
.
port
- the Port
to be checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the specified Port
is hit;
false
if it is not.protected boolean checkHit(NodePort port, double x, double y)
NodePort
.
port
- the NodePort
to be checked.x
- the x-coordinate of the hit.y
- the y-coordinate of the hit.
true
if the specified Port
is hit;
false
if it is not.public boolean hasHits()
public boolean hasMultiHits()
public YCursor allHits()
public YCursor hitNodes()
public YCursor hitBends()
public YCursor hitEdges()
public YCursor hitPorts()
public YCursor hitNodeLabels()
public YCursor hitEdgeLabels()
public YCursor hitNodePorts()
public java.lang.Object getFirstHit()
null
if there are no hits.
public Node getHitNode()
null
if none were hit.
public Bend getHitBend()
null
if none were hit.
public Edge getHitEdge()
null
if none were hit.
public NodeLabel getHitNodeLabel()
null
if none were hit.
public EdgeLabel getHitEdgeLabel()
null
if none were hit.
public Port getHitPort()
null
if none were hit.
public NodePort getHitNodePort()
null
if none were hit.
public boolean hasHitNodePorts()
public boolean hasHitPorts()
public boolean hasHitEdgeLabels()
public boolean hasHitNodeLabels()
public boolean hasHitNodes()
public boolean hasHitEdges()
public boolean hasHitBends()
public HitInfo cycleHits(Graph2D graph, double x, double y)
allHits()
becomes the last element while all other elements retain their order.
public boolean sameHits(HitInfo another)
true
if this hit info contains the same set of hits as another hit info.
another
- another hit info
true
if this hit info contains the same set of hits as another hit info
|
© Copyright 2000-2022, yWorks GmbH. All rights reserved. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |