javax.swing.text
public abstract class CompositeView extends View
View
s.
Constructor Summary | |
---|---|
CompositeView(Element element)
Creates a new CompositeView for the given
Element .
|
Method Summary | |
---|---|
protected abstract void | childAllocation(int index, Rectangle a)
Computes the allocation for a child View . |
protected boolean | flipEastAndWestAtEnds(int pos, Position.Bias bias)
Determines if the next view in horinzontal direction is located to
the east or west of the view at position pos . |
protected short | getBottomInset()
Returns the bottom inset of this CompositeView .
|
Shape | getChildAllocation(int index, Shape a)
Returns the allocation for the specified child View .
|
protected Rectangle | getInsideAllocation(Shape a)
Returns the allocation that is given to this CompositeView
minus this CompositeView 's insets.
|
protected short | getLeftInset()
Returns the left inset of this CompositeView .
|
protected int | getNextEastWestVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
Returns the next model location that is visible in east or west
direction.
|
protected int | getNextNorthSouthVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
Returns the next model location that is visible in north or south
direction.
|
int | getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
Returns the next model location that is visible in eiter north / south
direction or east / west direction. |
protected short | getRightInset()
Returns the right inset of this CompositeView .
|
protected short | getTopInset()
Returns the top inset of this CompositeView .
|
View | getView(int n)
Returns the child view at index n .
|
protected abstract View | getViewAtPoint(int x, int y, Rectangle r)
Returns the child View at the specified location.
|
protected View | getViewAtPosition(int pos, Rectangle a)
Returns the child View that contains the given model
position. |
int | getViewCount()
Returns the number of child views.
|
int | getViewIndex(int pos, Position.Bias b)
Returns the index of the child view that represents the specified
model location.
|
protected int | getViewIndexAtPosition(int pos)
Returns the index of the child View for the given model
position.
|
protected abstract boolean | isAfter(int x, int y, Rectangle r)
Returns true if the specified point lies after the
given Rectangle , false otherwise.
|
protected abstract boolean | isBefore(int x, int y, Rectangle r)
Returns true if the specified point lies before the
given Rectangle , false otherwise.
|
protected void | loadChildren(ViewFactory f)
Loads the child views of this CompositeView . |
Shape | modelToView(int pos, Shape a, Position.Bias bias)
Maps a position in the document into the coordinate space of the View.
|
Shape | modelToView(int p1, Position.Bias b1, int p2, Position.Bias b2, Shape a)
Maps a region in the document into the coordinate space of the View.
|
void | replace(int offset, int length, View[] views)
Replaces child views by some other child views. |
protected void | setInsets(short t, short l, short b, short r)
Sets the insets of this CompositeView .
|
protected void | setParagraphInsets(AttributeSet attributes)
Sets the insets defined by attributes in attributes . |
void | setParent(View parent)
Sets the parent of this View .
|
int | viewToModel(float x, float y, Shape a, Position.Bias[] b)
Maps coordinates from the View 's space into a position
in the document model.
|
CompositeView
for the given
Element
.
Parameters: element the element that is rendered by this CompositeView
View
. The parameter
a
stores the allocation of this CompositeView
and is then adjusted to hold the allocation of the child view.
Parameters: index the index of the child View
a the allocation of this CompositeView
before the
call, the allocation of the child on exit
pos
. Usually
the View
s are laid out from the east to the west, so
we unconditionally return false
here. Subclasses that
support bidirectional text may wish to override this method.
Parameters: pos the position in the document bias the bias to be applied to pos
Returns: true
if the next View
is located
to the EAST, false
otherwise
CompositeView
.
Returns: the bottom inset of this CompositeView
View
.
Parameters: index the index of the child view a the allocation for this view
Returns: the allocation for the specified child View
CompositeView
minus this CompositeView
's insets.
Also this translates from an immutable allocation to a mutable allocation
that is typically reused and further narrowed, like in
{@link #childAllocation}.
Parameters: a the allocation given to this CompositeView
Returns: the allocation that is given to this CompositeView
minus this CompositeView
's insets or
null
if a was null
CompositeView
.
Returns: the left inset of this CompositeView
Parameters: pos the model position to start search from b the bias for pos
a the allocated region for this view direction the direction from the current position, can be one of
the following:
biasRet the bias of the return value gets stored here
Returns: the position inside the model that represents the next visual location
Throws: BadLocationException if pos
is not a valid location
inside the document model IllegalArgumentException if direction
is invalid
Parameters: pos the model position to start search from b the bias for pos
a the allocated region for this view direction the direction from the current position, can be one of
the following:
biasRet the bias of the return value gets stored here
Returns: the position inside the model that represents the next visual location
Throws: BadLocationException if pos
is not a valid location
inside the document model IllegalArgumentException if direction
is invalid
Parameters: pos
the model position to start search from b
the bias for pos
a
the allocated region for this view direction
the direction from the current position, can be one of the
following:
biasRet
the bias of the return value gets stored here
Returns: the position inside the model that represents the next visual location
Throws: BadLocationException
if pos
is not a valid location inside the document
model IllegalArgumentException
if direction
is invalid
CompositeView
.
Returns: the right inset of this CompositeView
CompositeView
.
Returns: the top inset of this CompositeView
n
.
Parameters: n the index of the requested child view
Returns: the child view at index n
View
at the specified location.
Parameters: x the X coordinate y the Y coordinate r the inner allocation of this BoxView
on entry,
the allocation of the found child on exit
Returns: the child View
at the specified location
View
that contains the given model
position. The given Rectangle
gives the parent's allocation
and is changed to the child's allocation on exit.
Parameters: pos the model position to query the child View
for a the parent allocation on entry and the child allocation on exit
Returns: the child view at the given model position
Returns: the number of child views
Parameters: pos the model location for which to determine the child view index b the bias to be applied to pos
Returns: the index of the child view that represents the specified model location
View
for the given model
position.
Parameters: pos the model position for whicht the child View
is
queried
Returns: the index of the child View
for the given model
position
true
if the specified point lies after the
given Rectangle
, false
otherwise.
"After" is typically defined as being to the right or below.
Parameters: x the X coordinate of the point y the Y coordinate of the point r the rectangle to test the point against
Returns: true
if the specified point lies after the
given Rectangle
, false
otherwise
true
if the specified point lies before the
given Rectangle
, false
otherwise.
"Before" is typically defined as being to the left or above.
Parameters: x the X coordinate of the point y the Y coordinate of the point r the rectangle to test the point against
Returns: true
if the specified point lies before the
given Rectangle
, false
otherwise
CompositeView
. This method
is called from {@link #setParent} to initialize the child views of
this composite view.
Parameters: f the view factory to use for creating new child views
See Also: CompositeView
Parameters: pos the position of the character in the model a the area that is occupied by the view bias either {@link Position.Bias#Forward} or
{@link Position.Bias#Backward} depending on the preferred
direction bias. If null
this defaults to
Position.Bias.Forward
Returns: a rectangle that gives the location of the document position inside the view coordinate space
Throws: BadLocationException if pos
is invalid IllegalArgumentException if b is not one of the above listed
valid values
Parameters: p1 the beginning position inside the document b1 the direction bias for the beginning position p2 the end position inside the document b2 the direction bias for the end position a the area that is occupied by the view
Returns: a rectangle that gives the span of the document region inside the view coordinate space
Throws: BadLocationException if p1
or p2
are
invalid IllegalArgumentException if b1 or b2 is not one of the above
listed valid values
length == 0
), the result is a simple insert, if
there are no children to add (view == null
) the result
is a simple removal.
Parameters: offset the start offset from where to remove children length the number of children to remove views the views that replace the removed children
CompositeView
.
Parameters: t the top inset l the left inset b the bottom inset r the right inset
attributes
. This
queries the attribute keys {@link StyleConstants#SpaceAbove},
{@link StyleConstants#SpaceBelow}, {@link StyleConstants#LeftIndent} and
{@link StyleConstants#RightIndent} and calls {@link #setInsets} to
actually set the insets on this CompositeView
.
Parameters: attributes the attributes from which to query the insets
View
.
In addition to setting the parent, this calls {@link #loadChildren}, if
this View
does not already have its children initialized.
Parameters: parent the parent to set
View
's space into a position
in the document model.
Parameters: x the x coordinate in the view space, x >= 0 y the y coordinate in the view space, y >= 0 a the allocation of this View
b the bias to use
Returns: the position in the document that corresponds to the screen
coordinates x, y
>= 0