jsynoptic.builtin
Class RectangleShape

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

public class RectangleShape
extends Abstract2DShape

The Rectangle shape handles rectangle with an optional variable fill area (progress bar)

See Also:
Serialized Form

Nested Class Summary
static class RectangleShape.RectangleShapePropertiesNames
           
 
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  boolean dirtyProgress
           
protected  java.awt.geom.Rectangle2D.Double fillrec
           
protected  double max
           
protected  double min
           
protected  DataSource progressSource
           
protected  long progressSourceIndex
           
protected  double progressValue
           
protected  java.awt.geom.Rectangle2D.Double rec
           
 
Fields inherited from class jsynoptic.builtin.Abstract2DShape
dirtyFillColor, fillColor, fillDynamicColor, fillMapper, fillMapperIndex, fillMapperSource, resources
 
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
RectangleShape(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
protected  double computeLength(double baseLength)
           
 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  void fillHook(java.awt.Graphics2D g)
          A hook to fill this Rectangle shape
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 updateProgress()
           
 
Methods inherited from class jsynoptic.builtin.Abstract2DShape
createPanel, draw, 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

rec

protected transient java.awt.geom.Rectangle2D.Double rec

fillrec

protected transient java.awt.geom.Rectangle2D.Double fillrec

min

protected double min

max

protected double max

progressSource

protected transient DataSource progressSource

progressSourceIndex

protected transient long progressSourceIndex

progressValue

protected transient double progressValue

dirtyProgress

protected transient boolean dirtyProgress
Constructor Detail

RectangleShape

public RectangleShape(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

fillHook

protected void fillHook(java.awt.Graphics2D g)
A hook to fill this Rectangle shape

Overrides:
fillHook in class Abstract2DShape
Parameters:
g - the graphics

computeLength

protected double computeLength(double baseLength)

createPanel

public JPropertiesPanel createPanel()
Overrides:
createPanel in class Abstract1DShape

updateProgress

protected boolean updateProgress()

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

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

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)

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)