|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.umd.cs.piccolo.PNode
edu.umd.cs.piccolox.swt.PSWTText
public class PSWTText
PSWTText creates a visual component to support text. Multiple lines can be entered, and basic editing is supported. A caret is drawn, and can be repositioned with mouse clicks. The text object is positioned so that its upper-left corner is at the origin, though this can be changed with the translate methods.
Warning: Serialized and ZSerialized objects of this class will not be compatible with future Jazz releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Jazz. A future release of Jazz will provide support for long term persistence.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class edu.umd.cs.piccolo.PNode |
---|
PNode.PSceneGraphDelegate |
Field Summary | |
---|---|
protected static java.awt.Font |
DEFAULT_FONT
Default font for text. |
protected static java.lang.String |
DEFAULT_FONT_NAME
Default font name of text. |
protected static int |
DEFAULT_FONT_SIZE
Default font size for text. |
protected static int |
DEFAULT_FONT_STYLE
Default font style for text. |
protected static java.awt.Color |
DEFAULT_GREEK_COLOR
Default color of text rendered as 'greek'. |
protected static double |
DEFAULT_GREEK_THRESHOLD
Below this magnification render text as 'greek'. |
protected static int |
DEFAULT_PADDING
Default padding |
protected static java.awt.Color |
DEFAULT_PEN_COLOR
Default color for text. |
protected static java.lang.String |
DEFAULT_TEXT
Default text when new text area is created. |
protected java.awt.Font |
font
Current text font. |
protected java.awt.Color |
greekColor
Color for greek text. |
protected double |
greekThreshold
Below this magnification text is rendered as greek. |
protected java.util.ArrayList |
lines
Each vector element is one line of text. |
protected int |
padding
The amount of padding on each side of the text |
protected java.awt.Color |
penColor
Current pen color. |
protected double |
translateX
Translation offset X. |
protected double |
translateY
Translation offset Y. |
Fields inherited from interface java.awt.print.Printable |
---|
NO_SUCH_PAGE, PAGE_EXISTS |
Constructor Summary | |
---|---|
PSWTText()
Default constructor for PSWTTest. |
|
PSWTText(java.lang.String str)
PSWTTest constructor with initial text. |
|
PSWTText(java.lang.String str,
java.awt.Font font)
PSWTTest constructor with initial text and font. |
Method Summary | |
---|---|
java.awt.Color |
getBackgroundColor()
Returns the current background color. |
java.awt.Font |
getFont()
Returns the current font. |
double |
getGreekThreshold()
Returns the current greek threshold. |
java.awt.Color |
getPenColor()
Returns the current pen color. |
java.awt.Paint |
getPenPaint()
Returns the current pen paint. |
java.lang.String |
getText()
Return the text within this text component. |
double |
getTranslateX()
Get the X offset translation. |
double |
getTranslateY()
Get the Y offset translation. |
java.awt.geom.Point2D |
getTranslation()
Get the text translation offset. |
protected void |
internalUpdateBounds(double x,
double y,
double width,
double height)
Gives nodes a chance to update their internal structure before bounds changed notifications are sent. |
void |
paint(PPaintContext ppc)
Renders the text object. |
void |
paintAsGreek(PPaintContext ppc)
Paints this object as greek. |
void |
paintAsText(PPaintContext ppc)
Paints this object normally (show it's text). |
protected void |
recomputeBounds()
Notifies this object that it has changed and that it should update its notion of its bounding box. |
void |
setBackgroundColor(java.awt.Color color)
Sets the current background color. |
void |
setFont(java.awt.Font aFont)
Sets the font for the text. |
void |
setGreekThreshold(double threshold)
Sets the current greek threshold. |
void |
setPenColor(java.awt.Color color)
Sets the current pen color. |
void |
setPenPaint(java.awt.Paint aPaint)
Sets the current pen paint. |
void |
setText(java.lang.String str)
Sets the text of this visual component to str. |
void |
setTranslateX(double x)
Set text translation offset X. |
void |
setTranslateY(double y)
Set text translation offset Y. |
void |
setTranslation(double x,
double y)
Set the text translation offset to the specified position. |
void |
setTranslation(java.awt.geom.Point2D p)
Set the text translation offset to point p. |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static final double DEFAULT_GREEK_THRESHOLD
protected static final java.awt.Color DEFAULT_GREEK_COLOR
protected static final java.lang.String DEFAULT_FONT_NAME
protected static final int DEFAULT_FONT_STYLE
protected static final int DEFAULT_FONT_SIZE
protected static final java.awt.Font DEFAULT_FONT
protected static final java.awt.Color DEFAULT_PEN_COLOR
protected static final java.lang.String DEFAULT_TEXT
protected static final int DEFAULT_PADDING
protected double greekThreshold
protected java.awt.Color greekColor
protected java.awt.Color penColor
protected java.awt.Font font
protected int padding
protected java.util.ArrayList lines
protected double translateX
protected double translateY
Constructor Detail |
---|
public PSWTText()
public PSWTText(java.lang.String str)
str
- The initial text.public PSWTText(java.lang.String str, java.awt.Font font)
str
- The initial text.font
- The font for this PSWTText component.Method Detail |
---|
public java.awt.Color getPenColor()
public void setPenColor(java.awt.Color color)
color
- use this color.public java.awt.Paint getPenPaint()
public void setPenPaint(java.awt.Paint aPaint)
aPaint
- use this paint.public java.awt.Color getBackgroundColor()
public void setBackgroundColor(java.awt.Color color)
color
- use this color.public double getGreekThreshold()
public void setGreekThreshold(double threshold)
threshold
- compared to renderContext magnification.public java.awt.Font getFont()
public java.lang.String getText()
public void setFont(java.awt.Font aFont)
Warning: Java has a serious bug in that it does not support very small fonts. In particular, fonts that are less than about a pixel high just don't work. Since in Jazz, it is common to create objects of arbitrary sizes, and then scale them, an application can easily create a text object with a very small font by accident. The workaround for this bug is to create a larger font for the text object, and then scale the node down correspondingly.
aFont
- use this font.public void setText(java.lang.String str)
str
- use this string.public void setTranslateX(double x)
x
- the X translation.public double getTranslateX()
public void setTranslateY(double y)
y
- the Y translation.public double getTranslateY()
public void setTranslation(double x, double y)
x
- the X-coord of translationy
- the Y-coord of translationpublic void setTranslation(java.awt.geom.Point2D p)
p
- The translation offset.public java.awt.geom.Point2D getTranslation()
public void paint(PPaintContext ppc)
The transform, clip, and composite will be set appropriately when this object is rendered. It is up to this object to restore the transform, clip, and composite of the Graphics2D if this node changes any of them. However, the color, font, and stroke are unspecified by Jazz. This object should set those things if they are used, but they do not need to be restored.
paint
in class PNode
ppc
- Contains information about current render.public void paintAsGreek(PPaintContext ppc)
ppc
- The graphics context to paint into.public void paintAsText(PPaintContext ppc)
ppc
- The graphics context to paint into.protected void recomputeBounds()
protected void internalUpdateBounds(double x, double y, double width, double height)
PNode
internalUpdateBounds
in class PNode
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |