jsynoptic.builtin
Class TextShape

java.lang.Object
  extended by simtools.shapes.AbstractShape
      extended by jsynoptic.builtin.Abstract1DShape
          extended by jsynoptic.builtin.Abstract2DShape
              extended by jsynoptic.builtin.TextShape
All Implemented Interfaces:
java.awt.Shape, java.io.Serializable, java.lang.Cloneable, ContextualActionProvider, DataSourceConsumer, Linkable, SelectionContextualActionProvider, AffineTransformData.Listener, DataSourceListener, EndNotificationListener, Resizable, MapperListener, NamedProperties
Direct Known Subclasses:
HistoryShape.HookedTextShape

public class TextShape
extends Abstract2DShape
implements SelectionContextualActionProvider, MapperListener, DataSourceConsumer

This shape displays some texts, and fits it to its dimensions.

See Also:
Serialized Form

Nested Class Summary
static class TextShape.TextShapePropertiesNames
           
 
Nested classes/interfaces inherited from class jsynoptic.builtin.Abstract2DShape
Abstract2DShape.Abstract2DShapePropertiesNames
 
Nested classes/interfaces inherited from class jsynoptic.builtin.Abstract1DShape
Abstract1DShape.Abstract1DShapePropertiesNames
 
Nested classes/interfaces inherited from class simtools.shapes.AbstractShape
AbstractShape.AbstractShapePropertiesNames
 
Field Summary
protected  int baseline
           
protected  boolean boldFont
           
protected  java.lang.Integer charNumber
          When frame is locked, number of charcter to dispay in frame
protected  java.awt.Font currentFont
           
static java.lang.String dateFormatPattern
           
protected  java.text.DateFormat dateTimeFormatter
           
protected  java.text.NumberFormat decimalFormatter
           
static boolean DEFAULT_DISPLAY_COMMENTS
           
static boolean DEFAULT_DISPLAY_NAME
           
static boolean DEFAULT_DISPLAY_UNIT
           
static boolean DEFAULT_DISPLAY_VALUE
           
static boolean DEFAULT_FIXED_FONT
           
static boolean DEFAULT_FIXED_FRAME
           
static int DEFAULT_FORMAT
           
static java.lang.String DEFAULT_TEXT_FONT
           
static int DEFAULT_TEXT_SIZE
           
static int DEFAUT_CHAR_NUMBER
           
protected  boolean dirtyColor
           
protected  boolean dirtyState
           
protected  boolean dirtyText
           
protected  java.lang.Boolean displayDsComments
           
protected  java.lang.Boolean displayDsName
           
protected  java.lang.Boolean displayDsUnit
           
protected  java.lang.Boolean displayDsValue
           
protected  java.lang.String displayPattern
          Deprecated. use printf format instead
protected  java.lang.String fontName
           
protected  int fontSize
           
protected  double fontYScaleFactor
          when the margin is not enabled, it is necessary to multiply the size of the font in Y to remove the line spacing, so that the text can be framed directly with the bounding box
protected  int format
           
static int FORMAT_BINARY
           
static int FORMAT_DATE
           
static int FORMAT_DATE_TIME
           
static int FORMAT_DECIMAL
           
static int FORMAT_HEXADECIMAL
           
static int FORMAT_MAPPER
           
static int FORMAT_OCTAL
           
static int FORMAT_PRINTF
           
static int FORMAT_SCIENTIFIC
           
static int FORMAT_STRING
           
static int FORMAT_TIME
           
static int FORMAT_USE_DATA_SOURCE
           
static boolean groupTextDigits
           
protected  boolean italicFont
           
protected  boolean lockedFont
          When the font is locked, the text never auto-adjusts to the size Default is true
protected  boolean lockedFrame
          When the frame is locked, - the text never auto-adjusts to the size - The frame is determinated according to a number of characters to display, and cannot be rezized Default is false
static java.lang.String longTimeFormatPattern
           
protected  TextMapper mapper
           
protected  boolean marginEnabled
          When margin is enabled, the text is not framed directly with the bounding box, but has margins with MARGINX and MARGINY values Default is true
static int MARGINX
           
static int MARGINY
           
static int MIN_HEIGHT
           
static int MIN_WIDTH
           
protected  java.lang.String printfFormat
           
protected  PrintfFormat printfFormater
           
protected  java.awt.Font referenceFont
           
protected  java.awt.FontMetrics referenceFontMetrics
           
protected static java.awt.Graphics referenceGraphics
           
protected static java.lang.Object referenceMutex
           
static java.util.ResourceBundle resources
           
protected  java.text.NumberFormat scientificFormatter
           
static java.lang.String shortTimeFormatPattern
           
protected  DataSource source
           
protected  long sourceIndex
           
protected  java.lang.String text
           
protected  java.awt.Color textColor
           
protected  java.awt.Color textDynamicColor
           
protected  ColorMapper textMapper
           
protected  long textMapperIndex
           
protected  DataSource textMapperSource
           
static java.lang.String timeZone
           
 
Fields inherited from class jsynoptic.builtin.Abstract2DShape
dirtyFillColor, fillColor, fillDynamicColor, fillMapper, fillMapperIndex, fillMapperSource
 
Fields inherited from class jsynoptic.builtin.Abstract1DShape
allowResize, bounds2D, delegateEndNotificationListener, dirty, dirtyDrawColor, dirtyRectangle, drawColor, drawDynamicColor, drawMapper, drawMapperIndex, drawMapperSource, fixedRatio, link, MIN_SIZE, ratio, stroke, strokeParams, transform
 
Fields inherited from class simtools.shapes.AbstractShape
_h, _ox, _oy, _propertyNames, _w, _x, _y, ANTI_ALIASING, currentDialogBox, FONT_NAMES, listeners, REFRESH_PERIOD
 
Fields inherited from interface jsynoptic.base.ContextualActionProvider
EDITOR_CONTEXT, MOUSE_OUT_CONTEXT, MOUSE_OVER_CONTEXT, MOUSE_PRESSED_CONTEXT, SHAPELIST_CONTEXT, SOURCELIST_CONTEXT
 
Constructor Summary
TextShape(java.lang.String text, int width, int height)
           
TextShape(java.lang.String text, int x, int y, int width, int height)
           
 
Method Summary
 boolean addDataSource(DataSource d)
           
 boolean canAddDataSource(DataSource d)
           
protected  boolean canResize()
          Allow resize: it is possible to forbid shape resizing even the allow resize property has been set to true by user.
protected  AbstractShape cloneShape()
          Performs a copy of the shape This method has to be overriden to deal with concrete shapes
protected  void computeBaseLine()
          Compute base line used with a not scaled font
protected  void constructor()
           
 JPropertiesPanel createPanel()
           
 JPropertiesPanel createPanel(boolean showTransfrom)
           
 void DataSourceIndexRangeChanged(DataSource ds, long startIndex, long lastIndex)
          Called when the range of valid index changed
 void DataSourceReplaced(DataSource oldData, DataSource newData)
          Called when a data source is replaced by another one
 void DataSourceValueChanged(DataSource ds, long minIndex, long maxIndex)
          Called when at least a value changed in the data source.
 boolean doAction(double x, double y, java.lang.Object o, java.lang.String action, javax.swing.undo.CompoundEdit undoableEdit)
          Do one of the actions previously declared by getAction.
protected  void drawHook(java.awt.Graphics2D g, boolean shapeDrawn)
          For subclasses, called before restoring original graphics properties, after the delegate shape is drawn if shapeDrawn is true, or after saving the current context, before the delegate shape is drawn if shapeDrawn is false
 void fitBounds()
          Used to make the bounds best fit the current size text size
 void fitText()
          Used to make the text best fit the current size
 java.lang.String formatSourceValue(java.lang.Object o)
          Gets a new text value for this shape.
 java.lang.String[] getActions(double x, double y, java.lang.Object o, int context)
          Return list of possible actions the contect information may be used, or not.
 java.util.LinkedHashMap getCollectiveActions(DiagramSelection sel, double x, double y, java.lang.Object o, int context)
          Return list of possible collective actions
protected  java.awt.Shape getDelegateShape()
           
 java.lang.String[] getPropertyNames()
          Get the list of property names
 java.lang.Object getPropertyValue(java.lang.String name)
          Get the value of the property named name
protected  java.lang.Object getSourceValue()
           
 java.lang.String getText()
           
 java.awt.Color getTextColor()
           
 boolean isDirtyState()
           
 void mappingChanged(GenericMapper mapper)
          Called when the mapping of the specified mapper changed
 void notificationEnd(java.lang.Object referer)
          This callback is called after all notifications were processed.
protected  void notifyChange(java.awt.Rectangle changedArea)
           
 void resize(int dx, int dy)
          Resize uses an increment for width and height.
protected  void setCharNumber(java.lang.Integer charNumber)
           
 void setDelegateEndNotificationListener(EndNotificationListener denl)
          This is useful if this shape belongs to an array of multiple text shapes, in which cas it is better to register the delegate if is is notified only once at each notification end Note1 : take care of read Objects too Note2 : don't forget to use this shape default handler if necessary
 void setDimensions(int width, int height)
          Set dimensions and fits the text to the new dimensions.
 void setDirtyState(boolean dirtyState)
           
 boolean setFont(java.awt.Font f)
           
protected  void setFormat(int f)
           
 void setLockedFont(boolean lockedFont)
           
 void setLockedFrame(boolean lockedFrame)
           
 void setPrintfFormat(java.lang.String printfFormat)
           
 void setPropertyValue(java.lang.String name, java.lang.Object value)
          Assigns value to the property named name
 void setSource(DataSource ds)
           
 void setText(java.lang.String text)
          Set current text.
protected  void synchronizeFormat()
           
 void updateFont()
           
 boolean updateText()
          Updates the current text, by reading the data source value if connected to a data source Then, notify the system to update the display
 
Methods inherited from class jsynoptic.builtin.Abstract2DShape
createPanel, draw, fillHook, getFillColor
 
Methods inherited from class jsynoptic.builtin.Abstract1DShape
canDoAction, contains, contains, contains, contains, DataSourceInfoChanged, DataSourceOrderChanged, DataSourceValueRangeChanged, doCollectiveAction, getBounds, getBounds2D, getDelegateEndNotificationListener, getDrawColor, getDx, getDy, getLink, getPathIterator, getPathIterator, intersects, intersects, setAnchor, setLink, translate, updateBounds, updateTransform
 
Methods inherited from class simtools.shapes.AbstractShape
addListener, getAnchor, getInnerProperties, getMax, getMaxTranslated, getMin, notifyChange, refresh, removeListener, setAnchor, setProperties, wipeOff
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jsynoptic.base.SelectionContextualActionProvider
doCollectiveAction
 
Methods inherited from interface jsynoptic.base.ContextualActionProvider
canDoAction
 
Methods inherited from interface simtools.data.DataSourceListener
DataSourceInfoChanged, DataSourceOrderChanged, DataSourceValueRangeChanged
 

Field Detail

resources

public static java.util.ResourceBundle resources

FORMAT_STRING

public static final int FORMAT_STRING
See Also:
Constant Field Values

FORMAT_DECIMAL

public static final int FORMAT_DECIMAL
See Also:
Constant Field Values

FORMAT_SCIENTIFIC

public static final int FORMAT_SCIENTIFIC
See Also:
Constant Field Values

FORMAT_HEXADECIMAL

public static final int FORMAT_HEXADECIMAL
See Also:
Constant Field Values

FORMAT_OCTAL

public static final int FORMAT_OCTAL
See Also:
Constant Field Values

FORMAT_BINARY

public static final int FORMAT_BINARY
See Also:
Constant Field Values

FORMAT_MAPPER

public static final int FORMAT_MAPPER
See Also:
Constant Field Values

FORMAT_DATE

public static final int FORMAT_DATE
See Also:
Constant Field Values

FORMAT_TIME

public static final int FORMAT_TIME
See Also:
Constant Field Values

FORMAT_DATE_TIME

public static final int FORMAT_DATE_TIME
See Also:
Constant Field Values

FORMAT_PRINTF

public static final int FORMAT_PRINTF
See Also:
Constant Field Values

FORMAT_USE_DATA_SOURCE

public static final int FORMAT_USE_DATA_SOURCE
See Also:
Constant Field Values

MIN_WIDTH

public static final int MIN_WIDTH
See Also:
Constant Field Values

MIN_HEIGHT

public static final int MIN_HEIGHT
See Also:
Constant Field Values

MARGINX

public static final int MARGINX
See Also:
Constant Field Values

MARGINY

public static final int MARGINY
See Also:
Constant Field Values

DEFAULT_FIXED_FONT

public static boolean DEFAULT_FIXED_FONT

DEFAULT_FIXED_FRAME

public static boolean DEFAULT_FIXED_FRAME

DEFAUT_CHAR_NUMBER

public static int DEFAUT_CHAR_NUMBER

DEFAULT_TEXT_SIZE

public static int DEFAULT_TEXT_SIZE

DEFAULT_TEXT_FONT

public static java.lang.String DEFAULT_TEXT_FONT

DEFAULT_FORMAT

public static int DEFAULT_FORMAT

DEFAULT_DISPLAY_NAME

public static boolean DEFAULT_DISPLAY_NAME

DEFAULT_DISPLAY_VALUE

public static boolean DEFAULT_DISPLAY_VALUE

DEFAULT_DISPLAY_UNIT

public static boolean DEFAULT_DISPLAY_UNIT

DEFAULT_DISPLAY_COMMENTS

public static boolean DEFAULT_DISPLAY_COMMENTS

dateFormatPattern

public static java.lang.String dateFormatPattern

shortTimeFormatPattern

public static java.lang.String shortTimeFormatPattern

longTimeFormatPattern

public static java.lang.String longTimeFormatPattern

format

protected int format

printfFormat

protected java.lang.String printfFormat

printfFormater

protected transient PrintfFormat printfFormater

decimalFormatter

protected java.text.NumberFormat decimalFormatter

scientificFormatter

protected java.text.NumberFormat scientificFormatter

groupTextDigits

public static boolean groupTextDigits

dateTimeFormatter

protected java.text.DateFormat dateTimeFormatter

timeZone

public static java.lang.String timeZone

mapper

protected TextMapper mapper

displayPattern

protected java.lang.String displayPattern
Deprecated. use printf format instead

displayDsName

protected java.lang.Boolean displayDsName

displayDsValue

protected java.lang.Boolean displayDsValue

displayDsUnit

protected java.lang.Boolean displayDsUnit

displayDsComments

protected java.lang.Boolean displayDsComments

text

protected java.lang.String text

source

protected transient DataSource source

sourceIndex

protected transient long sourceIndex

textColor

protected java.awt.Color textColor

textDynamicColor

protected transient java.awt.Color textDynamicColor

textMapper

protected ColorMapper textMapper

textMapperSource

protected transient DataSource textMapperSource

textMapperIndex

protected transient long textMapperIndex

referenceMutex

protected static java.lang.Object referenceMutex

referenceGraphics

protected static java.awt.Graphics referenceGraphics

baseline

protected transient int baseline

currentFont

protected transient java.awt.Font currentFont

referenceFontMetrics

protected transient java.awt.FontMetrics referenceFontMetrics

referenceFont

protected transient java.awt.Font referenceFont

dirtyText

protected transient boolean dirtyText

dirtyColor

protected transient boolean dirtyColor

dirtyState

protected transient boolean dirtyState

fontName

protected java.lang.String fontName

fontSize

protected int fontSize

boldFont

protected boolean boldFont

italicFont

protected boolean italicFont

lockedFont

protected boolean lockedFont
When the font is locked, the text never auto-adjusts to the size Default is true


lockedFrame

protected boolean lockedFrame
When the frame is locked, - the text never auto-adjusts to the size - The frame is determinated according to a number of characters to display, and cannot be rezized Default is false


charNumber

protected java.lang.Integer charNumber
When frame is locked, number of charcter to dispay in frame


marginEnabled

protected boolean marginEnabled
When margin is enabled, the text is not framed directly with the bounding box, but has margins with MARGINX and MARGINY values Default is true


fontYScaleFactor

protected final transient double fontYScaleFactor
when the margin is not enabled, it is necessary to multiply the size of the font in Y to remove the line spacing, so that the text can be framed directly with the bounding box

See Also:
Constant Field Values
Constructor Detail

TextShape

public TextShape(java.lang.String text,
                 int width,
                 int height)

TextShape

public TextShape(java.lang.String text,
                 int x,
                 int y,
                 int width,
                 int height)
Method Detail

setPrintfFormat

public void setPrintfFormat(java.lang.String printfFormat)
Parameters:
printfFormat - the string value to apply to printf format

setFormat

protected void setFormat(int f)
Parameters:
format -

getText

public java.lang.String getText()
Returns:
the current text displayed by this shape

setText

public void setText(java.lang.String text)
Set current text. In case frame is locked, keep only specifed first characters

Parameters:
text -

getSourceValue

protected java.lang.Object getSourceValue()
                                   throws DataException
Throws:
DataException

formatSourceValue

public java.lang.String formatSourceValue(java.lang.Object o)
Gets a new text value for this shape. The current formatter will be used if the object is a Number

Parameters:
o. - Any object. If this is a Number, it will be formatted.Otherwise, toString() is used.
Returns:
the computed new text

getDelegateShape

protected java.awt.Shape getDelegateShape()
Specified by:
getDelegateShape in class Abstract1DShape

constructor

protected void constructor()

setFont

public boolean setFont(java.awt.Font f)

setLockedFont

public void setLockedFont(boolean lockedFont)

setLockedFrame

public void setLockedFrame(boolean lockedFrame)

setCharNumber

protected void setCharNumber(java.lang.Integer charNumber)

canResize

protected boolean canResize()
Description copied from class: Abstract1DShape
Allow resize: it is possible to forbid shape resizing even the allow resize property has been set to true by user. For instance, resizing is not allowed when a rotation has been applied to the shape Overload canResize method in sub classes if needed.

Overrides:
canResize in class Abstract1DShape
Returns:
true if shape can be resized.

updateFont

public void updateFont()

setDelegateEndNotificationListener

public void setDelegateEndNotificationListener(EndNotificationListener denl)
Description copied from class: Abstract1DShape
This is useful if this shape belongs to an array of multiple text shapes, in which cas it is better to register the delegate if is is notified only once at each notification end Note1 : take care of read Objects too Note2 : don't forget to use this shape default handler if necessary

Overrides:
setDelegateEndNotificationListener in class Abstract2DShape

drawHook

protected void drawHook(java.awt.Graphics2D g,
                        boolean shapeDrawn)
Description copied from class: Abstract1DShape
For subclasses, called before restoring original graphics properties, after the delegate shape is drawn if shapeDrawn is true, or after saving the current context, before the delegate shape is drawn if shapeDrawn is false

Overrides:
drawHook in class Abstract1DShape

setDimensions

public void setDimensions(int width,
                          int height)
Set dimensions and fits the text to the new dimensions.


resize

public void resize(int dx,
                   int dy)
Resize uses an increment for width and height. Public by side effect, do not call. Use setDimensions instead.

Specified by:
resize in interface Resizable
Overrides:
resize in class Abstract1DShape
Parameters:
dx - value on x axis
dy - value on y axis

fitBounds

public void fitBounds()
Used to make the bounds best fit the current size text size


computeBaseLine

protected void computeBaseLine()
Compute base line used with a not scaled font


fitText

public void fitText()
Used to make the text best fit the current size


updateText

public boolean updateText()
Updates the current text, by reading the data source value if connected to a data source Then, notify the system to update the display

Parameters:
readAgainFromSource - Can be set to false to prevent reading the text from the source

DataSourceValueChanged

public void DataSourceValueChanged(DataSource ds,
                                   long minIndex,
                                   long maxIndex)
Description copied from interface: DataSourceListener
Called when at least a value changed in the data source. The listener shall then get the values in the given range again, if it is interested by the values in that range.

Specified by:
DataSourceValueChanged in interface DataSourceListener
Overrides:
DataSourceValueChanged in class Abstract2DShape
Parameters:
ds - The data source that changed
minIndex - Lower bound of the range where values changed
maxIndex - Higher bound of the range where values changed

DataSourceIndexRangeChanged

public void DataSourceIndexRangeChanged(DataSource ds,
                                        long startIndex,
                                        long lastIndex)
Description copied from interface: DataSourceListener
Called when the range of valid index changed

Specified by:
DataSourceIndexRangeChanged in interface DataSourceListener
Overrides:
DataSourceIndexRangeChanged in class Abstract2DShape
Parameters:
ds - The data source that changed
startIndex - The new start Index
lastIndex - The new last index

DataSourceReplaced

public void DataSourceReplaced(DataSource oldData,
                               DataSource newData)
Description copied from interface: DataSourceListener
Called when a data source is replaced by another one

Specified by:
DataSourceReplaced in interface DataSourceListener
Overrides:
DataSourceReplaced in class Abstract2DShape

getTextColor

public java.awt.Color getTextColor()

notificationEnd

public void notificationEnd(java.lang.Object referer)
Description copied from interface: EndNotificationListener
This callback is called after all notifications were processed. The referer object is the one to decide what the end means. For example, it may be a single data source notifying both a range change and a value change. Or it could be a collection notifying all its sources.

Specified by:
notificationEnd in interface EndNotificationListener
Overrides:
notificationEnd in class Abstract2DShape

getActions

public java.lang.String[] getActions(double x,
                                     double y,
                                     java.lang.Object o,
                                     int context)
Description copied from interface: ContextualActionProvider
Return list of possible actions the contect information may be used, or not.

Specified by:
getActions in interface ContextualActionProvider
Overrides:
getActions in class Abstract1DShape
Parameters:
x - Coordinate, mouse position in the same unit as contains(x,y)
y - Coordinate, mouse position in the same unit as contains(x,y)
o - Object the actions should work on. Possibly null => default or all actions
context - one of the context defined in the ContextualActionProvider class
Returns:
The list of possible actions, possibly null or an empty array

setSource

public void setSource(DataSource ds)

getCollectiveActions

public java.util.LinkedHashMap getCollectiveActions(DiagramSelection sel,
                                                    double x,
                                                    double y,
                                                    java.lang.Object o,
                                                    int context)
Description copied from interface: SelectionContextualActionProvider
Return list of possible collective actions

Specified by:
getCollectiveActions in interface SelectionContextualActionProvider
Overrides:
getCollectiveActions in class Abstract1DShape
Parameters:
sel - the current selection
x - Coordinate, mouse position in the same unit as contains(x,y)
y - Coordinate, mouse position in the same unit as contains(x,y)
o - Object the collective actions should work on. Possibly null => default or all actions
context - one of the context defined in the ContextualActionProvider class
Returns:
The list of possible actions, possibly empty.The map values contains when applicable parent sub menus and icons

doAction

public boolean doAction(double x,
                        double y,
                        java.lang.Object o,
                        java.lang.String action,
                        javax.swing.undo.CompoundEdit undoableEdit)
Description copied from interface: ContextualActionProvider
Do one of the actions previously declared by getAction.

Specified by:
doAction in interface ContextualActionProvider
Overrides:
doAction in class Abstract1DShape
Parameters:
x - Coordinate, for example mouse position
y - Coordinate, for example mouse position
o - Object the action should work on.
action - An action returned by a previous getActions call with the same x, y, o parameters It may be null, in which case the default action is requested for this x,y,o.
undoableEdit - current edit for undo/redo operation If not null, this action is undoable.
Returns:
true if the action could be performed

createPanel

public JPropertiesPanel createPanel()
Overrides:
createPanel in class Abstract1DShape

createPanel

public JPropertiesPanel createPanel(boolean showTransfrom)
Returns:

synchronizeFormat

protected void synchronizeFormat()

cloneShape

protected AbstractShape cloneShape()
Description copied from class: Abstract2DShape
Performs a copy of the shape This method has to be overriden to deal with concrete shapes

Overrides:
cloneShape in class Abstract2DShape
Returns:
a copy of the shape

mappingChanged

public void mappingChanged(GenericMapper mapper)
Description copied from interface: MapperListener
Called when the mapping of the specified mapper changed

Specified by:
mappingChanged in interface MapperListener

notifyChange

protected void notifyChange(java.awt.Rectangle changedArea)
Overrides:
notifyChange in class AbstractShape

isDirtyState

public boolean isDirtyState()
Returns:
Returns the dirtyState.

setDirtyState

public void setDirtyState(boolean dirtyState)
Parameters:
dirtyState - The dirtyState to set.

addDataSource

public boolean addDataSource(DataSource d)
Specified by:
addDataSource in interface DataSourceConsumer
Parameters:
d - the data source to be added
Returns:
true if operation succeeds

canAddDataSource

public boolean canAddDataSource(DataSource d)
Specified by:
canAddDataSource in interface DataSourceConsumer
Parameters:
d - the data source to be added
Returns:
true if operation can be be performed

getPropertyValue

public java.lang.Object getPropertyValue(java.lang.String name)
Description copied from class: AbstractShape
Get the value of the property named name

Specified by:
getPropertyValue in interface NamedProperties
Overrides:
getPropertyValue in class Abstract2DShape
Parameters:
name - the name of the property to get
Returns:
the property value
See Also:
AbstractShape.getPropertyValue(String)

setPropertyValue

public void setPropertyValue(java.lang.String name,
                             java.lang.Object value)
Description copied from class: AbstractShape
Assigns value to the property named name

Specified by:
setPropertyValue in interface NamedProperties
Overrides:
setPropertyValue in class Abstract2DShape
Parameters:
name - the name of the property to get
value - its new value
See Also:
AbstractShape.setPropertyValue(String, Object)

getPropertyNames

public java.lang.String[] getPropertyNames()
Description copied from interface: NamedProperties
Get the list of property names

Specified by:
getPropertyNames in interface NamedProperties
Overrides:
getPropertyNames in class Abstract2DShape