javax.swing.text
Class ComponentView
- SwingConstants
A
View
implementation that is able to render arbitrary
Component
s. This uses the attribute
StyleConstants.ComponentAttribute
to determine the
Component
that should be rendered. This
Component
becomes a direct child of the
JTextComponent
that contains
this
ComponentView
, so this view must not be shared between
multiple
JTextComponent
s.
BOTTOM , CENTER , EAST , HORIZONTAL , LEADING , LEFT , NEXT , NORTH , NORTH_EAST , NORTH_WEST , PREVIOUS , RIGHT , SOUTH , SOUTH_EAST , SOUTH_WEST , TOP , TRAILING , VERTICAL , WEST |
protected Component | createComponent() - Creates the
Component that this View is
rendering.
|
float | getAlignment(int axis) - Returns the alignment of this
View along the specified axis.
|
Component | getComponent() - Returns the
Component that is rendered by this
ComponentView .
|
float | getMaximumSpan(int axis) - Returns the maximum span of this
View along the specified
axis.
|
float | getMinimumSpan(int axis) - Returns the minimum span along the specified axis.
|
float | getPreferredSpan(int axis) - Returns the preferred span along the specified axis.
|
Shape | modelToView(int pos, Shape a, Position.Bias b) - Maps a position in the document into the coordinate space of the View.
|
void | paint(Graphics g, Shape a) - The real painting behavour is performed by normal component painting,
triggered by the text component that hosts this view.
|
void | setParent(View p) - This sets up the component when the view is added to its parent, or
cleans up the view when it is removed from its parent.
|
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.
|
append , breakView , changedUpdate , createFragment , dump , forwardUpdate , forwardUpdateToView , getAlignment , getAttributes , getBreakWeight , getChildAllocation , getContainer , getDocument , getElement , getEndOffset , getGraphics , getMaximumSpan , getMinimumSpan , getNextVisualPositionFrom , getParent , getPreferredSpan , getResizeWeight , getStartOffset , getToolTipText , getView , getViewCount , getViewFactory , getViewIndex , getViewIndex , insert , insertUpdate , isVisible , modelToView , modelToView , modelToView , paint , preferenceChanged , remove , removeAll , removeUpdate , replace , setParent , setSize , updateChildren , updateLayout , viewToModel , viewToModel |
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
ComponentView
public ComponentView(Element elem)
Creates a new instance of ComponentView
for the specified
Element
.
elem
- the element that this View
is rendering
getAlignment
public float getAlignment(int axis)
Returns the alignment of this View
along the specified axis.
- getAlignment in interface View
- the alignment of this
View
along the specified axis
getComponent
public final Component getComponent()
Returns the Component
that is rendered by this
ComponentView
.
- the
Component
that is rendered by this
ComponentView
getPreferredSpan
public float getPreferredSpan(int axis)
Returns the preferred span along the specified axis. Normally the view is
rendered with the span returned here if that is possible.
- getPreferredSpan in interface View
- the preferred span along the specified axis
modelToView
public Shape modelToView(int pos,
Shape a,
Position.Bias b)
throws BadLocationException
Maps a position in the document into the coordinate space of the View.
The output rectangle usually reflects the font height but has a width
of zero.
- modelToView in interface View
pos
- the position of the character in the modela
- the area that is occupied by the viewb
- either Position.Bias.Forward
or
Position.Bias.Backward
depending on the preferred
direction bias. If null
this defaults to
Position.Bias.Forward
- a rectangle that gives the location of the document position
inside the view coordinate space
paint
public void paint(Graphics g,
Shape a)
The real painting behavour is performed by normal component painting,
triggered by the text component that hosts this view. This method does
not paint by itself. However, it sets the size of the component according
to the allocation that is passed here.
- paint in interface View
g
- the graphics contexta
- the allocation of the child
setParent
public void setParent(View p)
This sets up the component when the view is added to its parent, or
cleans up the view when it is removed from its parent.
When this view is added to a parent view, the component of this view
is added to the container that hosts this view. When p
is
null
, then the view is removed from it's parent and we have
to also remove the component from it's parent container.
- setParent in interface View
p
- the parent view or null
if this view is removed
from it's parent
viewToModel
public 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.
- viewToModel in interface View
x
- the x coordinate in the view spacey
- the y coordinate in the view spacea
- the allocation of this View
b
- the bias to use
- the position in the document that corresponds to the screen
coordinates
x, y
ComponentView.java --
Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.