|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbibliothek.gui.dock.station.split.SplitNode
bibliothek.gui.dock.station.split.Root
public class Root
The root of the tree that represents the internal structure of a
SplitDockStation
.
Field Summary |
---|
Fields inherited from class bibliothek.gui.dock.station.split.SplitNode |
---|
height, width, x, y |
Constructor Summary | |
---|---|
Root(SplitDockAccess access)
Creates a new root. |
Method Summary | ||
---|---|---|
void |
evolve(SplitDockTree.Key key,
boolean checkValidity)
Creates or replaces children according to the values found in key . |
|
SplitNode |
getChild()
Gets the child of this root. |
|
Node |
getDividerNode(int x,
int y)
Gets the Node whose divider area contains the point x/y. |
|
double |
getHeightFactor()
Gets the factor which has to be multiplied with a relative y coordinate or height to get their size in pixel. |
|
Insets |
getInsets()
Gets the insets which will be free from any Component . |
|
Leaf |
getLeaf(Dockable dockable)
Gets the leaf which represents dockable . |
|
Dimension |
getMinimumSize()
Gets the minimal size of this node. |
|
PutInfo |
getPut(int x,
int y,
Dockable drop)
Gets the preferred operation when dragging the Dockable
drop to the location x/y . |
|
PutInfo |
getPut(int x,
int y,
double factorW,
double factorH,
Dockable drop)
Determines where to drop the Dockable drop
if the mouse is at location x/y. |
|
protected Root |
getRoot()
Gets the root of the tree in which this node is |
|
double |
getWidthFactor()
Gets the factor which has to be multiplied with relative x coordinates and widths to get their size in pixel. |
|
boolean |
insert(SplitDockPathProperty property,
int depth,
Dockable dockable)
If there are elements left in property , then the next node
is to be read and the insert -method of the matching child
to be called.If there are no children, then dockable has to be inserted
as new child.Otherwise this element is to be replaced by a node containing this and the a leaf with dockable .Subclasses may wary this scheme in order to optimize or to find a better place for the dockable . |
|
boolean |
isInOverrideZone(int x,
int y)
Tells whether the location x/y is in the override zone. |
|
boolean |
isInOverrideZone(int x,
int y,
double factorW,
double factorH)
Tells whether the coordinates x/y lie inside the override-zone of the SplitDockStation or not. |
|
void |
replace(SplitNode old,
SplitNode child)
Replaces a child of this node by child . |
|
void |
setChild(SplitNode child)
Sets the child of this root. |
|
|
submit(SplitTreeFactory<N> factory)
Writes the contents of this node into a new tree create by factory . |
|
void |
updateBounds()
Updates all locations and sizes of the Components
which are in the structure of this tree. |
|
void |
updateBounds(double x,
double y,
double width,
double height,
double factorW,
double factorH)
Updates the bounds of this node. |
|
void |
visit(SplitNodeVisitor visitor)
Invokes one of the methods of the visitor for every
child in the subtree with this as root. |
Methods inherited from class bibliothek.gui.dock.station.split.SplitNode |
---|
above, create, create, getAccess, getBounds, getHeight, getParent, getSize, getWidth, getX, getY, intersection, relativeSidePut, setParent |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Root(SplitDockAccess access)
access
- the access to internal methods of the
SplitDockStation
, must not be null
Method Detail |
---|
public void setChild(SplitNode child)
child
- the child of the root, can be null
public void replace(SplitNode old, SplitNode child)
SplitNode
child
.
replace
in class SplitNode
old
- the old childchild
- the replacement for old
public SplitNode getChild()
null
setChild(SplitNode)
protected Root getRoot()
SplitNode
getRoot
in class SplitNode
public Dimension getMinimumSize()
SplitNode
getMinimumSize
in class SplitNode
public void updateBounds()
Components
which are in the structure of this tree.
public double getWidthFactor()
public double getHeightFactor()
public PutInfo getPut(int x, int y, Dockable drop)
Dockable
drop
to the location x/y
.
x
- the x-coordinate of the mousey
- the y-coordinate of the mousedrop
- the Dockable which will be dropped
null
public boolean isInOverrideZone(int x, int y)
x
- the x-coordinate of the mousey
- the y-coordinate of the mouse
true
if this station should have priority
over all other stations when the mouse is in x/y.public Insets getInsets()
Component
.
public void evolve(SplitDockTree.Key key, boolean checkValidity)
SplitNode
key
.
evolve
in class SplitNode
key
- the key to readcheckValidity
- whether to ensure that all new Dockable
s are
acceptable or not.public boolean insert(SplitDockPathProperty property, int depth, Dockable dockable)
SplitNode
property
, then the next node
is to be read and the insert
-method of the matching child
to be called.dockable
has to be inserted
as new child.this
and the a leaf with dockable
.dockable
.
insert
in class SplitNode
property
- a list of nodesdepth
- the index of the node that corresponds to thisdockable
- the element to insert
true
if the element was inserted, false
otherwisepublic <N> N submit(SplitTreeFactory<N> factory)
SplitNode
factory
.
submit
in class SplitNode
N
- the type of element the factory
will createfactory
- the factory transforming the elements of the tree into a
new form.
public void updateBounds(double x, double y, double width, double height, double factorW, double factorH)
SplitNode
Component
, then
the bounds of the component have to be updated as well.
updateBounds
in class SplitNode
x
- the relative x-coordinatey
- the relative y-coordinatewidth
- the relative width of the nodeheight
- the relative height of the nodefactorW
- a factor to be multiplied with x
and width
to get the size of the node in pixelfactorH
- a factor to be multiplied with y
and height
to get the size of the node in pixelpublic PutInfo getPut(int x, int y, double factorW, double factorH, Dockable drop)
SplitNode
Dockable
drop
if the mouse is at location x/y.
getPut
in class SplitNode
x
- the x-coordinate of the mousey
- the y-coordinate of the mousefactorW
- a factor to be multiplied with the relative
x
and width
to get the
size in pixel.factorH
- a factor to be multiplied with the relative
y
and height
to get the
size in pixel.drop
- the Dockable
which will be dropped
null
if
the dockable can't be droppedpublic boolean isInOverrideZone(int x, int y, double factorW, double factorH)
SplitNode
SplitDockStation
or not.
isInOverrideZone
in class SplitNode
x
- the x-coordinate of the mousey
- the y-coordinate of the mousefactorW
- a factor to be multiplied with the relative
x
and width
to get the
size in pixel.factorH
- a factor to be multiplied with the relative
y
and height
to get the
size in pixel.
true
if the station should not allow child-stations
to make a drop when the mouse is at x/ypublic Leaf getLeaf(Dockable dockable)
SplitNode
dockable
.
getLeaf
in class SplitNode
dockable
- the Dockable whose leaf is searched
null
if no leaf was foundpublic Node getDividerNode(int x, int y)
SplitNode
getDividerNode
in class SplitNode
x
- the x-coordinatey
- the y-coordinate
null
is returnedpublic void visit(SplitNodeVisitor visitor)
SplitNode
visitor
for every
child in the subtree with this as root.
visit
in class SplitNode
visitor
- the visitor
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |