gishur.x.gui
Class DisplayXSegment
java.lang.Object
|
+--gishur.gui2.DrawAtom
|
+--gishur.gui2.DrawObject
|
+--gishur.gui2.DisplayObject
|
+--gishur.gui2.DisplayInteractiveObject
|
+--gishur.gui2.DisplayInteractiveModel
|
+--gishur.x.gui.DisplayXObject
|
+--gishur.x.gui.DisplayXSegment
- public class DisplayXSegment
- extends DisplayXObject
This class is a simple visualization class for geometric segments, rays,
and straight lines represented by the XBaseline
class of the
x
package or the XRay
, XLine
and
XSegment
classes derived from XBaseline
.
The appearance of the segment is hibhly configurable by the use of
LineStyles
for the line of the segment and
point-Styles
like RoundPointStyle
or
FancyPointStyle
for the source- and target-point of this
XBaseline
. The Styles
must be stored in
the source-object's DrawProperties
. See below for an
explanation of the possible settings for this segment's
DrawProperties
.
Properties Summary |
Used Prefix |
Meaning |
xsegment |
Prefix for all properties used at this
class. |
xsegment.point |
Prefix for all properties of the PointPainter used
for (real) endpoints (see property point.style at this class). |
xsegment.onpoint |
Prefix for all properties of the PointPainter used
for open endpoints (see property onpoint.style at this class). |
xsegment.line |
Prefix for all properties of the LinePainter used
for the line segment (see property line.style at this class). |
Key |
Value Type |
Default value |
Meaning |
point.style |
Style |
None |
The Style which defines the shape of the endpoints
and which creates the Painters for them.
A point is an endpoint if the line really ends there, i.e. the
line must represent a segment or a ray. Otherwise the point
is an onpoint (see below). |
onpoint.style |
Style |
None |
The Style which defines the shape of the points on the line
and which creates the Painters for them. |
line.style |
LineStyle |
None |
The Style which defines the shape of the line
and which creates the Painter for it. |
Created Painters |
Painting order |
Name |
Type |
Tasks |
1 |
line |
LinePainter |
Recalculates and draws the line. |
2 |
source |
Painter |
Recalculates and redraws the source point of the line. |
3 |
target |
Painter |
Recalculates and redraws the target point of the line. |
- Version:
- 1.0
- Author:
- Christoph Sachse
Methods inherited from class gishur.gui2.DisplayInteractiveObject |
activate, activate, active, deactivate, elementTransform, refreshPropertyStatus, select, selected, setActiveElement, setSupportActivation, setSupportElementTransform, setSupportSelection, supportActivation, supportElementTransform, supportSelection, unselect |
Methods inherited from class gishur.gui2.DrawObject |
addDrawDependency, addPainter, blockRepaint, checkState, checkStateCleared, child, clear, clearCache, clearState, dependency, dirty, disableEvents, draw, draw, enableEvents, ensureRecalculate, findPainter, firstPainter, fullscreen, hide, hide, insert, levelMask, levelUsed, locate, makeDirty, makeDirty, next, nextPainter, prepeareRenderContext, prev, processEvent, propertyReader, recalculate, remove, removeDrawDependency, repaint, screenTransformation, setFullscreen, setPaintBeforeMembers, setScreenTransformation, setState, show, show, state, state, unblockRepaint, unblockRepaint, visible |
Methods inherited from class gishur.gui2.DrawAtom |
addProperties, collectHits, dispatchEvent, displayManager, drawComponent, getBounds, getLocalProperty, getProperty, getProperty, getRequiredProperty, preprocessEvent, processMessage, properties, removeProperty, sendEvent, sendMessage, setBounds, setPropertiesTo, setProperty, setProperty, setProperty, setProperty, toString, toString, toStringDetail, toTreeString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
DisplayXSegment
public DisplayXSegment(ModelController model)
- Constructs a new DisplayXSegment and connects it with the given
ModelController
(that must have a XSegment
object
as source object (model).
- Parameters:
model
- the ModelController
that controls the source.
DisplayXSegment
public DisplayXSegment(XBaseline source)
- Constructs a new DisplayXSegment and connects it with the given
XSegment
via the construction of a new ModelController
.
- Parameters:
source
- the source object.
recalculate
protected void recalculate(RenderContext context,
PropertyStatusReader properties)
- Forces the
DrawAtom
to recalculate its representation.
This method will only be called, if it became dirty via a call
to the DrawObject.makeDirty(boolean)
method or something has happened, that
causes all DrawAtoms
to recalculate their
representation.
This method should only be called by the render system.
- Overrides:
recalculate
in class DrawObject
- Parameters:
context
- the RenderContext
to useproperties
- the PropertyStatusReader
to use for
reading properties
checkActiveElement
protected void checkActiveElement(java.lang.String element)
- This method is called by
DisplayInteractiveObject.activate()
. It should check, which elements
should be set to which activation level if one does activate the element
with the given name. To specify the activated elements and their activation
levels, call DisplayInteractiveObject.setActiveElement(java.lang.String, byte)
for each element. Overwrite this
method in order to implement element activation correctly.
- Overrides:
checkActiveElement
in class DisplayInteractiveObject
- Parameters:
element
- the element name
createElementTransform
protected ElementTransform createElementTransform()
- Creates a new element transformation object. This method will be called
by
DisplayInteractiveObject.elementTransform()
and should be overwritten by subclasses
in order to support element transformation objects correctly.
- Overrides:
createElementTransform
in class DisplayInteractiveObject
- Returns:
- new element transformation object for
this
DisplayObject.