jsynoptic.builtin
Class EllipseShape

java.lang.Object
  extended by simtools.shapes.AbstractShape
      extended by jsynoptic.builtin.Abstract1DShape
          extended by jsynoptic.builtin.Abstract2DShape
              extended by jsynoptic.builtin.EllipseShape
All Implemented Interfaces:
java.awt.Shape, java.io.Serializable, java.lang.Cloneable, ContextualActionProvider, Linkable, SelectionContextualActionProvider, AffineTransformData.Listener, DataSourceListener, EndNotificationListener, Resizable, NamedProperties

public class EllipseShape
extends Abstract2DShape

The Ellipse shape handles ellipses (inc. circles) and arcs It delegates internally to a corresponding java shape

See Also:
Serialized Form

Nested Class Summary
static class EllipseShape.EllipseShapePropertiesNames
           
 
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
static int ANGLE_UNIT_DEGREE
           
static int ANGLE_UNIT_RADIAN
           
protected  boolean dirtyArc
           
protected  java.awt.Shape ellipse
           
protected  double end
           
protected  DataSource endAngleSource
           
protected  long endAngleSourceIndex
           
protected  int endUnit
           
static java.util.ResourceBundle resources
           
protected  double start
           
protected  DataSource startAngleSource
           
protected  long startAngleSourceIndex
           
protected  int startUnit
           
static int TYPE_CHORD
           
static int TYPE_FULL
           
static int TYPE_OPEN
           
static int TYPE_PIE
           
 
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
EllipseShape(int ox, int oy, int width, int height)
           
 
Method Summary
protected  AbstractShape cloneShape()
          Performs a copy of the shape This method has to be overriden to deal with concrete shapes
 JPropertiesPanel createPanel()
           
 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.
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
 void notificationEnd(java.lang.Object referer)
          This callback is called after all notifications were processed.
 void resize(int dx, int dy)
          Resize the component
 void setAnchor(int ox, int oy)
           
 void setPropertyValue(java.lang.String name, java.lang.Object value)
          Assigns value to the property named name
 void translate(int dx, int dy)
          Translates the shape
protected  boolean updateArc()
           
 
Methods inherited from class jsynoptic.builtin.Abstract2DShape
createPanel, draw, fillHook, getFillColor, setDelegateEndNotificationListener
 
Methods inherited from class jsynoptic.builtin.Abstract1DShape
canDoAction, canResize, contains, contains, contains, contains, DataSourceInfoChanged, DataSourceOrderChanged, DataSourceValueRangeChanged, doAction, doCollectiveAction, drawHook, getActions, getBounds, getBounds2D, getCollectiveActions, getDelegateEndNotificationListener, getDrawColor, getDx, getDy, getLink, getPathIterator, getPathIterator, intersects, intersects, setLink, updateBounds, updateTransform
 
Methods inherited from class simtools.shapes.AbstractShape
addListener, getAnchor, getInnerProperties, getMax, getMaxTranslated, getMin, notifyChange, 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 simtools.data.DataSourceListener
DataSourceInfoChanged, DataSourceOrderChanged, DataSourceValueRangeChanged
 

Field Detail

resources

public static java.util.ResourceBundle resources

ANGLE_UNIT_DEGREE

public static final int ANGLE_UNIT_DEGREE
See Also:
Constant Field Values

ANGLE_UNIT_RADIAN

public static final int ANGLE_UNIT_RADIAN
See Also:
Constant Field Values

TYPE_FULL

public static final int TYPE_FULL
See Also:
Constant Field Values

TYPE_PIE

public static final int TYPE_PIE
See Also:
Constant Field Values

TYPE_CHORD

public static final int TYPE_CHORD
See Also:
Constant Field Values

TYPE_OPEN

public static final int TYPE_OPEN
See Also:
Constant Field Values

startUnit

protected int startUnit

endUnit

protected int endUnit

start

protected transient double start

end

protected transient double end

ellipse

protected transient java.awt.Shape ellipse

startAngleSource

protected transient DataSource startAngleSource

endAngleSource

protected transient DataSource endAngleSource

startAngleSourceIndex

protected transient long startAngleSourceIndex

endAngleSourceIndex

protected transient long endAngleSourceIndex

dirtyArc

protected transient boolean dirtyArc
Constructor Detail

EllipseShape

public EllipseShape(int ox,
                    int oy,
                    int width,
                    int height)
Parameters:
ox -
oy -
width -
height -
Method Detail

getDelegateShape

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

translate

public void translate(int dx,
                      int dy)
Description copied from class: AbstractShape
Translates the shape

Overrides:
translate in class Abstract1DShape

setAnchor

public void setAnchor(int ox,
                      int oy)
Overrides:
setAnchor in class Abstract1DShape

resize

public void resize(int dx,
                   int dy)
Description copied from interface: Resizable
Resize the component

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

createPanel

public JPropertiesPanel createPanel()
Overrides:
createPanel in class Abstract1DShape

updateArc

protected boolean updateArc()

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

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

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

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

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)