public abstract static class GlyphView.GlyphPainter extends Object
Constructor and Description |
---|
GlyphPainter() |
Modifier and Type | Method and Description |
---|---|
abstract float |
getAscent(GlyphView v) |
abstract int |
getBoundedPosition(GlyphView v,
int p0,
float x,
float len)
Determines the model location that represents the
maximum advance that fits within the given span.
|
abstract float |
getDescent(GlyphView v) |
abstract float |
getHeight(GlyphView v) |
int |
getNextVisualPositionFrom(GlyphView v,
int pos,
Position.Bias b,
Shape a,
int direction,
Position.Bias[] biasRet)
Provides a way to determine the next visually represented model
location that one might place a caret.
|
GlyphView.GlyphPainter |
getPainter(GlyphView v,
int p0,
int p1)
Create a painter to use for the given GlyphView.
|
abstract float |
getSpan(GlyphView v,
int p0,
int p1,
TabExpander e,
float x)
Determine the span the glyphs given a start location
(for tab expansion).
|
abstract Shape |
modelToView(GlyphView v,
int pos,
Position.Bias bias,
Shape a)
Provides a mapping from the document model coordinate space
to the coordinate space of the view mapped to it.
|
abstract void |
paint(GlyphView v,
Graphics g,
Shape a,
int p0,
int p1)
Paint the glyphs representing the given range.
|
abstract int |
viewToModel(GlyphView v,
float x,
float y,
Shape a,
Position.Bias[] biasReturn)
Provides a mapping from the view coordinate space to the logical
coordinate space of the model.
|
public abstract float getSpan(GlyphView v, int p0, int p1, TabExpander e, float x)
public abstract float getHeight(GlyphView v)
public abstract float getAscent(GlyphView v)
public abstract float getDescent(GlyphView v)
public abstract void paint(GlyphView v, Graphics g, Shape a, int p0, int p1)
public abstract Shape modelToView(GlyphView v, int pos, Position.Bias bias, Shape a) throws BadLocationException
v
- the GlyphView
containing the
destination coordinate spacepos
- the position to convertbias
- either Position.Bias.Forward
or Position.Bias.Backward
a
- Bounds of the ViewBadLocationException
- 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 abstract int viewToModel(GlyphView v, float x, float y, Shape a, Position.Bias[] biasReturn)
v
- the GlyphView
to provide a mapping forx
- the X coordinatey
- the Y coordinatea
- the allocated region to render intobiasReturn
- either Position.Bias.Forward
or Position.Bias.Backward
is returned as the zero-th element of this arrayView.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
public abstract int getBoundedPosition(GlyphView v, int p0, float x, float len)
v
- the view to find the model location to break at.p0
- the location in the model where the
fragment should start it's representation >= 0.x
- the graphic location along the axis that the
broken view would occupy >= 0. This may be useful for
things like tab calculations.len
- specifies the distance into the view
where a potential break is desired >= 0.View.breakView(int, int, float, float)
public GlyphView.GlyphPainter getPainter(GlyphView v, int p0, int p1)
v
- the GlyphView
to provide a painter forp0
- the starting document offset >= 0p1
- the ending document offset >= p0public int getNextVisualPositionFrom(GlyphView v, int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException
v
- the view to usepos
- the position to convert >= 0b
- either Position.Bias.Forward
or Position.Bias.Backward
a
- the allocated region to render intodirection
- the direction from the current position that can
be thought of as the arrow keys typically found on a keyboard.
This may be SwingConstants.WEST, SwingConstants.EAST,
SwingConstants.NORTH, or SwingConstants.SOUTH.biasRet
- either Position.Bias.Forward
or Position.Bias.Backward
is returned as the zero-th element of this arrayBadLocationException
IllegalArgumentException
- for an invalid direction Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.