public class FieldView extends PlainView
Extends the multi-line plain text view to be suitable for a single-line editor view. If the view is allocated extra space, the field must adjust for it. If the hosting component is a JTextField, this view will manage the ranges of the associated BoundedRangeModel and will adjust the horizontal allocation to match the current visibility settings of the JTextField.
View
metrics
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
public FieldView(Element elem)
Constructs a new FieldView wrapped on an element.
elem
- the elementprotected FontMetrics getFontMetrics()
Fetches the font metrics associated with the component hosting this view.
protected Shape adjustAllocation(Shape a)
Adjusts the allocation given to the view to be a suitable allocation for a text field. If the view has been allocated more than the preferred span vertically, the allocation is changed to be centered vertically. Horizontally the view is adjusted according to the horizontal alignment property set on the associated JTextField (if that is the type of the hosting component).
a
- the allocation given to the view, which may need to be adjusted.public void paint(Graphics g, Shape a)
Renders using the given rendering surface and area on that surface. The view may need to do layout and create child views to enable itself to render into the given allocation.
paint
in class PlainView
g
- the rendering surface to usea
- the allocated region to render intoView.paint(java.awt.Graphics, java.awt.Shape)
public float getPreferredSpan(int axis)
Determines the preferred span for this view along an axis.
getPreferredSpan
in class PlainView
axis
- may be either View.X_AXIS or View.Y_AXISView.getPreferredSpan(int)
public int getResizeWeight(int axis)
Determines the resizability of the view along the given axis. A value of 0 or less is not resizable.
getResizeWeight
in class View
axis
- View.X_AXIS or View.Y_AXISpublic Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException
Provides a mapping from the document model coordinate space to the coordinate space of the view mapped to it.
modelToView
in class PlainView
pos
- the position to convert >= 0a
- the allocated region to render intob
- the bias toward the previous character or the next character represented by the offset, in case the position is a boundary of two views; b
will have one of these values: Position.Bias.Forward
Position.Bias.Backward
BadLocationException
- if the given position does not represent a valid location in the associated documentView.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)
public int viewToModel(float fx, float fy, Shape a, Position.Bias[] bias)
Provides a mapping from the view coordinate space to the logical coordinate space of the model.
viewToModel
in class PlainView
fx
- the X coordinate >= 0.0ffy
- the Y coordinate >= 0.0fa
- the allocated region to render intoView.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
public void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Gives notification that something was inserted into the document in a location that this view is responsible for.
insertUpdate
in class PlainView
changes
- the change information from the associated documenta
- the current allocation of the viewf
- the factory to use to rebuild if the view has childrenView.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
public void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Gives notification that something was removed from the document in a location that this view is responsible for.
removeUpdate
in class PlainView
changes
- the change information from the associated documenta
- the current allocation of the viewf
- the factory to use to rebuild if the view has childrenView.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.