Class PasswordView
- java.lang.Object
-
- javax.swing.text.View
-
- javax.swing.text.PlainView
-
- javax.swing.text.FieldView
-
- javax.swing.text.PasswordView
- All Implemented Interfaces:
- SwingConstants, TabExpander
public class PasswordView extends FieldView
Implements a View suitable for use in JPasswordField UI implementations. This is basically a field ui that renders its contents as the echo character specified in the associated component (if it can narrow the component to a JPasswordField).
- See Also:
View
Fields
Fields inherited from class javax.swing.text.PlainView
metrics
Fields inherited from class javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Constructors
Constructor and Description |
---|
PasswordView(Element elem) Constructs a new view wrapped on an element. |
Methods
Modifier and Type | Method and Description |
---|---|
protected int |
drawEchoCharacter(Graphics g,
int x,
int y,
char c) Renders the echo character, or whatever graphic should be used to display the password characters. |
protected int |
drawSelectedText(Graphics g,
int x,
int y,
int p0,
int p1) Renders the given range in the model as selected text. |
protected int |
drawUnselectedText(Graphics g,
int x,
int y,
int p0,
int p1) Renders the given range in the model as normal unselected text. |
float |
getPreferredSpan(int axis) Determines the preferred span for this view along an axis. |
Shape |
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. |
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. |
Methods inherited from class javax.swing.text.FieldView
adjustAllocation, getFontMetrics, getResizeWeight, insertUpdate, paint, removeUpdate
Methods inherited from class javax.swing.text.PlainView
changedUpdate, damageLineRange, drawLine, getLineBuffer, getTabSize, lineToRect, nextTabStop, setSize, updateDamage, updateMetrics
Methods inherited from class javax.swing.text.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, viewToModel
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructors
PasswordView
public PasswordView(Element elem)
Constructs a new view wrapped on an element.
- Parameters:
-
elem
- the element
Methods
drawUnselectedText
protected int drawUnselectedText(Graphics g, int x, int y, int p0, int p1) throws BadLocationException
Renders the given range in the model as normal unselected text. This sets the foreground color and echos the characters using the value returned by getEchoChar().
- Overrides:
-
drawUnselectedText
in classPlainView
- Parameters:
-
g
- the graphics context -
x
- the starting X coordinate >= 0 -
y
- the starting Y coordinate >= 0 -
p0
- the starting offset in the model >= 0 -
p1
- the ending offset in the model >= p0 - Returns:
- the X location of the end of the range >= 0
- Throws:
-
BadLocationException
- if p0 or p1 are out of range
drawSelectedText
protected int drawSelectedText(Graphics g, int x, int y, int p0, int p1) throws BadLocationException
Renders the given range in the model as selected text. This is implemented to render the text in the color specified in the hosting component. It assumes the highlighter will render the selected background. Uses the result of getEchoChar() to display the characters.
- Overrides:
-
drawSelectedText
in classPlainView
- Parameters:
-
g
- the graphics context -
x
- the starting X coordinate >= 0 -
y
- the starting Y coordinate >= 0 -
p0
- the starting offset in the model >= 0 -
p1
- the ending offset in the model >= p0 - Returns:
- the X location of the end of the range >= 0
- Throws:
-
BadLocationException
- if p0 or p1 are out of range
drawEchoCharacter
protected int drawEchoCharacter(Graphics g, int x, int y, char c)
Renders the echo character, or whatever graphic should be used to display the password characters. The color in the Graphics object is set to the appropriate foreground color for selected or unselected text.
- Parameters:
-
g
- the graphics context -
x
- the starting X coordinate >= 0 -
y
- the starting Y coordinate >= 0 -
c
- the echo character - Returns:
- the updated X position >= 0
modelToView
public 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.
- Overrides:
-
modelToView
in classFieldView
- Parameters:
-
pos
- the position to convert >= 0 -
a
- the allocated region to render into -
b
- 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
-
- 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:
View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)
viewToModel
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.
- Overrides:
-
viewToModel
in classFieldView
- Parameters:
-
fx
- the X coordinate >= 0.0f -
fy
- the Y coordinate >= 0.0f -
a
- the allocated region to render into - Returns:
- the location within the model that best represents the given point in the view
- See Also:
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
getPreferredSpan
public float getPreferredSpan(int axis)
Determines the preferred span for this view along an axis.
- Overrides:
-
getPreferredSpan
in classFieldView
- 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.
- See Also:
View.getPreferredSpan(int)
© 1993, 2020, 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.
https://docs.oracle.com/javase/8/docs/api/javax/swing/text/PasswordView.html