Class 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 declared in class javax.swing.text.PlainView

metrics

Fields declared in class javax.swing.text.View

BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS

Fields declared in 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 Description
PasswordView​(Element elem)

Constructs a new view wrapped on an element.

Methods

Modifier and Type Method Description
protected float drawEchoCharacter​(Graphics2D g, float x, float y, char c)

Renders the echo character, or whatever graphic should be used to display the password characters.

protected int drawEchoCharacter​(Graphics g, int x, int y, char c)

Deprecated.

protected int drawSelectedText​(Graphics g, int x, int y, int p0, int p1)

Deprecated.

protected int drawUnselectedText​(Graphics g, int x, int y, int p0, int p1)

Deprecated.

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 declared in class javax.swing.text.FieldView

adjustAllocation, getFontMetrics, getResizeWeight, insertUpdate, paint, removeUpdate

Methods declared in class javax.swing.text.PlainView

changedUpdate, damageLineRange, drawLine, drawLine, drawSelectedText, drawUnselectedText, getLineBuffer, getTabSize, lineToRect, nextTabStop, setSize, updateDamage, updateMetrics

Methods declared in 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 declared in 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

@Deprecated(since="9")
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 class PlainView
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

@Deprecated(since="9")
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 class PlainView
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

@Deprecated(since="9")
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

drawEchoCharacter

protected float drawEchoCharacter(Graphics2D g,
                                  float x,
                                  float 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
Since:
9

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 class FieldView
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 class FieldView
Parameters:
fx - the X coordinate >= 0.0f
fy - the Y coordinate >= 0.0f
a - the allocated region to render into
bias - the returned bias
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 class FieldView
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/en/java/javase/11/docs/api/java.desktop/javax/swing/text/PasswordView.html