Class FieldView
java.lang.Object
javax.swing.text.View
javax.swing.text.PlainView
javax.swing.text.FieldView
- All Implemented Interfaces:
SwingConstants, TabExpander
- Direct Known Subclasses:
PasswordView
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.
- See Also:
-
Field Summary
Fields declared in class PlainView
metricsFields declared in class View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXISModifier and TypeFieldDescriptionstatic final intThe weight to indicate a view is a bad break opportunity for the purpose of formatting.static final intThe weight to indicate a view supports breaking, and this represents a very attractive place to break.static final intThe weight to indicate a view supports breaking, and must be broken to be represented properly when placed in a view that formats its children by breaking them.static final intThe weight to indicate a view supports breaking, but better opportunities probably exist.static final intAxis for format/break operations.static final intAxis for format/break operations.Fields declared in interface SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WESTModifier and TypeFieldDescriptionstatic final intBox-orientation constant used to specify the bottom of a box.static final intThe central position in an area.static final intCompass-direction east (right).static final intHorizontal orientation.static final intIdentifies the leading edge of text for use with left-to-right and right-to-left languages.static final intBox-orientation constant used to specify the left side of a box.static final intIdentifies the next direction in a sequence.static final intCompass-direction North (up).static final intCompass-direction north-east (upper right).static final intCompass-direction north west (upper left).static final intIdentifies the previous direction in a sequence.static final intBox-orientation constant used to specify the right side of a box.static final intCompass-direction south (down).static final intCompass-direction south-east (lower right).static final intCompass-direction south-west (lower left).static final intBox-orientation constant used to specify the top of a box.static final intIdentifies the trailing edge of text for use with left-to-right and right-to-left languages.static final intVertical orientation.static final intCompass-direction west (left). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ShapeAdjusts the allocation given to the view to be a suitable allocation for a text field.protected FontMetricsFetches the font metrics associated with the component hosting this view.floatgetPreferredSpan(int axis) Determines the preferred span for this view along an axis.intgetResizeWeight(int axis) Determines the resizability of the view along the given axis.voidinsertUpdate(DocumentEvent changes, Shape a, ViewFactory f) Gives notification that something was inserted into the document in a location that this view is responsible for.modelToView(int pos, Shape a, Position.Bias b) Provides a mapping from the document model coordinate space to the coordinate space of the view mapped to it.voidRenders using the given rendering surface and area on that surface.voidremoveUpdate(DocumentEvent changes, Shape a, ViewFactory f) Gives notification that something was removed from the document in a location that this view is responsible for.intviewToModel(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.Methods declared in class PlainView
changedUpdate, damageLineRange, drawLine, drawLine, drawSelectedText, drawSelectedText, drawUnselectedText, drawUnselectedText, getLineBuffer, getTabSize, lineToRect, nextTabStop, setSize, updateDamage, updateMetricsModifier and TypeMethodDescriptionvoidchangedUpdate(DocumentEvent changes, Shape a, ViewFactory f) Gives notification from the document that attributes were changed in a location that this view is responsible for.protected voiddamageLineRange(int line0, int line1, Shape a, Component host) Repaint the given line range.protected voiddrawLine(int lineIndex, Graphics2D g, float x, float y) Renders a line of text, suppressing whitespace at the end and expanding any tabs.protected voidDeprecated.protected floatdrawSelectedText(Graphics2D g, float x, float y, int p0, int p1) Renders the given range in the model as selected text.protected intdrawSelectedText(Graphics g, int x, int y, int p0, int p1) Deprecated.protected floatdrawUnselectedText(Graphics2D g, float x, float y, int p0, int p1) Renders the given range in the model as normal unselected text.protected intdrawUnselectedText(Graphics g, int x, int y, int p0, int p1) Deprecated.protected final SegmentGives access to a buffer that can be used to fetch text from the associated document.protected intReturns the tab size set for the document, defaulting to 8.protected RectanglelineToRect(Shape a, int line) Determine the rectangle that represents the given line.floatnextTabStop(float x, int tabOffset) Returns the next tab stop position after a given reference position.voidsetSize(float width, float height) Sets the size of the view.protected voidupdateDamage(DocumentEvent changes, Shape a, ViewFactory f) Repaint the region of change covered by the given document event.protected voidChecks to see if the font metrics and longest line are up-to-date.Methods declared in class View
append, breakView, createFragment, forwardUpdate, forwardUpdateToView, getAlignment, getAttributes, getBreakWeight, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getGraphics, getMaximumSpan, getMinimumSpan, getNextVisualPositionFrom, getParent, getStartOffset, getToolTipText, getView, getViewCount, getViewFactory, getViewIndex, getViewIndex, insert, isVisible, modelToView, modelToView, preferenceChanged, remove, removeAll, replace, setParent, updateChildren, updateLayout, viewToModelModifier and TypeMethodDescriptionvoidAppends a single child view.breakView(int axis, int offset, float pos, float len) Tries to break this view on the given axis.createFragment(int p0, int p1) Creates a view that represents a portion of the element.protected voidForwards the givenDocumentEventto the child views that need to be notified of the change to the model.protected voidforwardUpdateToView(View v, DocumentEvent e, Shape a, ViewFactory f) Forwards theDocumentEventto the give child view.floatgetAlignment(int axis) Determines the desired alignment for this view along an axis.Fetches the attributes to use when rendering.intgetBreakWeight(int axis, float pos, float len) Determines how attractive a break opportunity in this view is.getChildAllocation(int index, Shape a) Fetches the allocation for the given child view.Fetches the container hosting the view.Fetches the model associated with the view.Fetches the structural portion of the subject that this view is mapped to.intFetches the portion of the model for which this view is responsible.Fetch aGraphicsfor rendering.floatgetMaximumSpan(int axis) Determines the maximum span for this view along an axis.floatgetMinimumSpan(int axis) Determines the minimum span for this view along an axis.intgetNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) Provides a way to determine the next visually represented model location at which one might place a caret.Returns the parent of the view.intFetches the portion of the model for which this view is responsible.getToolTipText(float x, float y, Shape allocation) Returns the tooltip text at the specified location.getView(int n) Gets the nth child view.intReturns the number of views in this view.Fetches theViewFactoryimplementation that is feeding the view hierarchy.intgetViewIndex(float x, float y, Shape allocation) Returns the child view index representing the given position in the view.intgetViewIndex(int pos, Position.Bias b) Returns the child view index representing the given position in the model.voidInserts a single child view.booleanReturns a boolean that indicates whether the view is visible or not.modelToView(int pos, Shape a) Deprecated.modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a) Provides a mapping, for a given region, from the document model coordinate space to the view coordinate space.voidpreferenceChanged(View child, boolean width, boolean height) Child views can call this on the parent to indicate that the preference has changed and should be reconsidered for layout.voidremove(int i) Removes one of the children at the given position.voidRemoves all of the children.voidReplaces child views.voidEstablishes the parent view for this view.protected booleanUpdates the child views in response to receiving notification that the model changed, and there is change record for the element this view is responsible for.protected voidUpdates the layout in response to receiving notification of change from the model.intviewToModel(float x, float y, Shape a) Deprecated.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Creates and returns a copy of this object.booleanIndicates whether some other object is "equal to" this one.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class<?> getClass()Returns the runtime class of thisObject.inthashCode()Returns a hash code value for this object.final voidnotify()Wakes up a single thread that is waiting on this object's monitor.final voidWakes up all threads that are waiting on this object's monitor.toString()Returns a string representation of the object.final voidwait()Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final voidwait(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final voidwait(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
-
Constructor Details
-
FieldView
Constructs a new FieldView wrapped on an element.- Parameters:
elem- the element
-
-
Method Details
-
getFontMetrics
Fetches the font metrics associated with the component hosting this view.- Returns:
- the metrics
-
adjustAllocation
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).- Parameters:
a- the allocation given to the view, which may need to be adjusted.- Returns:
- the allocation that the superclass should use.
-
paint
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. -
getPreferredSpan
public float getPreferredSpan(int axis) Determines the preferred span for this view along an axis.- Overrides:
getPreferredSpanin classPlainView- Parameters:
axis- may be either View.X_AXIS or View.Y_AXIS- Returns:
- the span the view would like to be rendered into >= 0. Typically the view is told to render into the span that is returned, although there is no guarantee. The parent may choose to resize or break the view.
-
getResizeWeight
public int getResizeWeight(int axis) Determines the resizability of the view along the given axis. A value of 0 or less is not resizable.- Overrides:
getResizeWeightin classView- Parameters:
axis- View.X_AXIS or View.Y_AXIS- Returns:
- the weight -> 1 for View.X_AXIS, else 0
-
modelToView
Provides a mapping from the document model coordinate space to the coordinate space of the view mapped to it.- Overrides:
modelToViewin classPlainView- Parameters:
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;bwill have one of these values:-
Position.Bias.Forward -
Position.Bias.Backward
-
- Returns:
- the bounding box of the given position
- Throws:
BadLocationException- if the given position does not represent a valid location in the associated document- See Also:
-
viewToModel
Provides a mapping from the view coordinate space to the logical coordinate space of the model.- Overrides:
viewToModelin classPlainView- Parameters:
fx- the X coordinate >= 0.0ffy- the Y coordinate >= 0.0fa- the allocated region to render intobias- the returned bias- Returns:
- the location within the model that best represents the given point in the view
- See Also:
-
insertUpdate
Gives notification that something was inserted into the document in a location that this view is responsible for.- Overrides:
insertUpdatein classPlainView- Parameters:
changes- the change information from the associated documenta- the current allocation of the viewf- the factory to use to rebuild if the view has children- See Also:
-
removeUpdate
Gives notification that something was removed from the document in a location that this view is responsible for.- Overrides:
removeUpdatein classPlainView- Parameters:
changes- the change information from the associated documenta- the current allocation of the viewf- the factory to use to rebuild if the view has children- See Also:
-
PlainView.drawLine(int, Graphics2D, float, float)