public class TLcdSLDFeatureTypeStylePainter extends ALcdSLDFeatureTypeStylePainter implements ILcdGXYLabelPainter2, ILcdGXYEditor
ALcdSLDFeatureTypeStylePainter
that
ILcdGXYPainter
functionalities (paint, isTouched, boundsSFCT, ...),
ILcdGXYLabelPainter
functionalities (paintLabel, labelBoundsSFCT, ...).
BODY, CREATING, HANDLES, RESHAPING, SNAPS, TRANSLATING
DEFAULT, SELECTED
CREATING, END_CREATION, RESHAPED, START_CREATION, TRANSLATED
BODY, CREATING, DEFAULT, HANDLES, RESHAPING, SELECTED, SNAPS, TRANSLATING
Constructor and Description |
---|
TLcdSLDFeatureTypeStylePainter(String aFeatureTypeName,
ALcdSLDRulePainter[] aRulePainters) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
accept(Object aObject)
Checks whether the feature type style in this painter should be applied to the given object.
|
boolean |
acceptSnapTarget(Graphics aGraphics,
ILcdGXYContext aGXYContext)
Returns whether the object set to the editor can be edited so that (part of) the object snaps to the object passed
as snap target in the context.
|
void |
addPropertyChangeListener(PropertyChangeListener aPropertyChangeListener)
Feature type style painters do not support property change events.
|
void |
anchorPointSFCT(Graphics aGraphics,
int aPainterMode,
ILcdGXYContext aGXYContext,
Point aPoint)
Delegates computation of the anchor point to the first of its rule painters that is valid in the given scale,
accepts the object and does not throw a TLcdNoBoundsException.
|
void |
boundsSFCT(Graphics aGraphics,
int aPaintMode,
ILcdGXYContext aGXYContext,
ILcd2DEditableBounds a2DEditableBounds)
Delegates computation of the bounds to all rule painters that accept the object and
for the which the views scale is in range.
|
Object |
clone()
Calls super.clone and makes a deep clone of the collection of rule painters.
|
boolean |
edit(Graphics aGraphics,
int aMode,
ILcdGXYContext aGXYContext)
Defines how an object shall be edited by this editor, taking into account the mode and the
context passed.
|
int |
getCreationClickCount()
Returns the number user interactions required to complete the initialization of an object set to this editor.
|
Cursor |
getCursor(Graphics aGraphics,
int aPainterMode,
ILcdGXYContext aGXYContext)
Feature type style painters do not provide cursors.
|
String |
getDisplayName()
Always returns "Feature Type Style Painter".
|
ILcdGXYLabelPainter |
getGXYLabelPainter(Object aObject)
Always returns this as label painter.
|
ILcdGXYPainter |
getGXYPainter(Object aObject)
Always returns this as painter.
|
int |
getLabelCount(Graphics aGraphics,
ILcdGXYContext aGXYContext)
Returns the number of labels for the object set to this label painter.
|
Cursor |
getLabelCursor(Graphics aGraphics,
int aMode,
ILcdGXYContext aGXYContext)
Returns a
Cursor to indicate the type of editing aMode and
aGXYContext . |
int |
getLabelIndex()
Returns the index of the label that is currently painted or scheduled to paint.
|
TLcdLabelLocation |
getLabelLocation()
Returns the
TLcdLabelLocation that was previously set that contains the
information on the whereabouts of the label. |
int |
getLocationIndex()
Retrieves a location index, based on the location indices of all the rules that could
accept the object, regardless of the scale.
|
Object |
getObject()
Returns the object set to this painter.
|
int |
getPossibleLocationCount(Graphics aGraphics)
Returns the result of the multiplication of the possible location count for all applicable rules.
|
int |
getSubLabelCount(int aLabelIndex)
Return the number of sublabels in a label.
|
int |
getSubLabelIndex()
Returns the index of the sublabel to paint.
|
boolean |
isEditTouchedOnly()
Returns whether only the touched geometries objects should be edited or all of them.
|
boolean |
isLabelTouched(Graphics aGraphics,
int aMode,
ILcdGXYContext aGXYContext)
Tests if the label specified by
setObject , setLabelIndex and
setSubLabelIndex is touched at view location (specified by
aGXYContext.getX() and aGXYContext.getY() ), considering the mode and the
ILcdGXYContext instance. |
boolean |
isScaleValid(ILcdGXYView aView)
Checks whether one of the rule painters accepts the scale in the view passed.
|
boolean |
isTouched(Graphics aGraphics,
int aPainterMode,
ILcdGXYContext aGXYContext)
Delegates to the rule painters which accept this object and for which the views scale is in range.
|
void |
labelAnchorPointSFCT(Graphics aGraphics,
int aMode,
ILcdGXYContext aGXYContext,
Point aPointSFCT)
Sets
aPointSFCT to the anchor point of the label specified by
setObject , setLabelIndex and setSubLabelIndex . |
double |
labelBoundsSFCT(Graphics aGraphics,
int aLabelPainterMode,
ILcdGXYContext aGXYContext,
Rectangle aRectangle)
Delegates computation of the label bounds to the rule painters which accept the object set and for which
the view in the context is in scale range.
|
Object |
labelSnapTarget(Graphics aGraphics,
ILcdGXYContext aGXYContext)
Returns an
Object that can be used as snapping target when graphically editing
another Object or label than the one this ILcdGXYLabelPainter2 represents. |
void |
paint(Graphics aGraphics,
int aPainterMode,
ILcdGXYContext aGXYContext)
Delegates the painting to the rule painters that accept the object and for which the views scale
is in range.
|
void |
paintLabel(Graphics aGraphics,
int aLabelPainterMode,
ILcdGXYContext aGXYContext)
Delegates the label painting to the rule painters that accept the object and for which the views scale
is in range.
|
void |
removePropertyChangeListener(PropertyChangeListener aPropertyChangeListener)
Feature type style painters do not support property change events.
|
void |
setEditTouchedOnly(boolean aEditTouchedOnly)
Determines whether only the geometries that touched are edited or whether all geometries should
be edited.
|
void |
setLabelIndex(int aLabelIndex)
Sets the label.
|
void |
setLabelLocation(TLcdLabelLocation aLabelLocation)
Sets the label location of the label.
|
void |
setLocationIndex(int aLocationIndex)
Sets a location index to all rules which accept the object, regardless of the scale of the view.
|
void |
setObject(Object aObject)
Sets the object to all of the rule painters that accept this object.
|
void |
setSubLabelIndex(int aSubLabelIndex)
Sets the sublabel index.
|
Object |
snapTarget(Graphics aGraphics,
ILcdGXYContext aGXYContext)
Delegates to the first rule painter which accepts the object, for which the view is in scale range and which
returns a non null snap target.
|
boolean |
supportLabelSnap(Graphics aGraphics,
ILcdGXYContext aGXYContext)
Returns whether this label painter supports snapping for the label specified by
setObject , setLabelIndex and setSubLabelIndex ,
considering the given ILcdGXYContext instance. |
boolean |
supportSnap(Graphics aGraphics,
ILcdGXYContext aGXYContext)
Delegates to the rule painters which accept the object and for which the view is in scale range.
|
getFeatureTypeName, getRulePainter, getRulePainterCount
public TLcdSLDFeatureTypeStylePainter(String aFeatureTypeName, ALcdSLDRulePainter[] aRulePainters)
public boolean isScaleValid(ILcdGXYView aView)
aView
- the view the scale is derived from.public void setObject(Object aObject)
setObject
in interface ILcdGXYEditor
setObject
in interface ILcdGXYLabelPainter
setObject
in interface ILcdGXYLabelPainter2
setObject
in interface ILcdGXYPainter
aObject
- the object to be rendered.ILcdGXYLabelPainter.getObject()
protected boolean accept(Object aObject)
accept
in class ALcdSLDFeatureTypeStylePainter
aObject
- the object to check the feature type name for.public Object getObject()
getObject
in interface ILcdGXYEditor
getObject
in interface ILcdGXYLabelPainter
getObject
in interface ILcdGXYPainter
setObject(java.lang.Object)
public final void setEditTouchedOnly(boolean aEditTouchedOnly)
false
.aEditTouchedOnly
- a flag indicating whether only the touched geometries are edited or all
geometries.isEditTouchedOnly()
,
isTouched(Graphics, int, ILcdGXYContext)
public final boolean isEditTouchedOnly()
setEditTouchedOnly(boolean)
public boolean edit(Graphics aGraphics, int aMode, ILcdGXYContext aGXYContext)
ILcdGXYEditor
The mode passed indicates how the interaction should be interpreted. It can be one of the following:
TRANSLATED
RESHAPED
START_CREATION
CREATING
END_CREATION
The first two modes designate that the object should be modified, the last three modes are passed
when initializing an object. From an implementation point of view there is no difference between TRANSLATED and
RESHAPED. These constants only differ in semantics. For ILcdShape
objects TRANSLATED can be seen
as the mode that will be passed when the shape as a whole is moved. RESHAPED is used more often for moving part of
a shape.
The context contains information on the user interaction at hand. The methods
getX
and
getY
contain the location(s) of the user interaction. The methods
getDeltaX
and
getDeltaY
contain the distance(s) over which the user interaction is taking place. For example, getX
and
getY
may contain the current mouse location while getDeltaX
and getDeltaY
contain the distance over which the mouse has been dragged. The editing behavior can take into
account multiple locations, to respond to, for example, multi-touch input.
When a snap target is accepted, the implementation of this method should take that fact into account when editing or initializing an object.
edit
in interface ILcdGXYEditor
aGraphics
- the Graphics on which the representation of the object is paintedaMode
- indicates how the user interaction should be interpreted. Is one of the following:
TRANSLATED
,
RESHAPED
,
START_CREATION
,
CREATING
,
END_CREATION
.
aGXYContext
- contains information on the user interaction and
the transformations to transform from view space to the object model space.ILcdGXYContext
,
acceptSnapTarget
public int getCreationClickCount()
ILcdGXYEditor
getCreationClickCount
in interface ILcdGXYEditor
public boolean acceptSnapTarget(Graphics aGraphics, ILcdGXYContext aGXYContext)
ILcdGXYEditor
edit
method with this
context passed should edit the object so that (part of) the object snaps to the object passed
as snap target in the context.
The context contains information on the user interaction at hand: the current location of the
user interaction, given by its
X
and
Y
coordinates, and
the
distance in X direction
and
distance in Y direction
over which the user interaction is taking place.
For example, getX
and
getY
may contain the current mouse location while getDeltaX
and getDeltaY
contain the distance over which the mouse has been dragged.
The context also contains the candidate
snap target
and the
layer the snap target is contained in
.
acceptSnapTarget
in interface ILcdGXYEditor
aGraphics
- the Graphics on which the representation of the object is paintedaGXYContext
- the context containing the information on the user interaction and the snap target.ILcdGXYContext.getSnapTarget()
public void paint(Graphics aGraphics, int aPainterMode, ILcdGXYContext aGXYContext)
paint
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaPainterMode
- the mode the object is represented in (see class documentation).aGXYContext
- the ILcdGXYContext
the drawing depends on.public void boundsSFCT(Graphics aGraphics, int aPaintMode, ILcdGXYContext aGXYContext, ILcd2DEditableBounds a2DEditableBounds) throws TLcdNoBoundsException
boundsSFCT
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaPaintMode
- the mode the object is represented in (see class documentation). For example, an object may be
represented differently in SELECTED mode compared to DEFAULT mode. The returned bounds of the representation
must take this different representation into account.aGXYContext
- the context for which the representation of the object is painted. It contains amongst others
the transformations from model to world and world to view.a2DEditableBounds
- the bounds that must be adapted to encompass the representation of the object in the given
mode and context. These bounds must not be taken into account when the method has thrown an exception.TLcdNoBoundsException
- when no rule painter accepted this object and was in range or when the
rule painters will render nothing for the given object.isTouched
public boolean isTouched(Graphics aGraphics, int aPainterMode, ILcdGXYContext aGXYContext)
isTouched
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaPainterMode
- the mode the object is represented inaGXYContext
- contains the location of the interaction and the transformations to convert this location into
model coordinatesboundsSFCT
public void anchorPointSFCT(Graphics aGraphics, int aPainterMode, ILcdGXYContext aGXYContext, Point aPoint) throws TLcdNoBoundsException
anchorPointSFCT
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaPainterMode
- the mode the object is painted in (see class documentation)aGXYContext
- the context for which the representation of the object is painted. It contains amongst others
the transformations from model to world and world to view.aPoint
- the point that has to be moved to the location of the anchor point of the representation of
the object. This point must not be taken into account when the method has thrown a TLcdNoBoundsException.TLcdNoBoundsException
- when no rule painters are valid in the given context, or when all rule painters
which are in scale throw a TLcdNoBoundsException.paint
public String getDisplayName()
getDisplayName
in interface ILcdGXYEditor
getDisplayName
in interface ILcdGXYLabelPainter2
getDisplayName
in interface ILcdGXYPainter
public void setLocationIndex(int aLocationIndex)
setLocationIndex
in interface ILcdGXYLabelPainter
aLocationIndex
- ILcdGXYLabelPainter.getLocationIndex()
public int getLocationIndex()
getLocationIndex
in interface ILcdGXYLabelPainter
ILcdGXYLabelPainter.setLocationIndex(int)
public void paintLabel(Graphics aGraphics, int aLabelPainterMode, ILcdGXYContext aGXYContext)
paintLabel
in interface ILcdGXYLabelPainter
paintLabel
in interface ILcdGXYLabelPainter2
aGraphics
- The graphics object to paint the label onaLabelPainterMode
- A bitwise combination of aGXYContext
- the drawing context for the labelILcdGXYLabelPainter.DEFAULT
,
ILcdGXYLabelPainter.SELECTED
public int getPossibleLocationCount(Graphics aGraphics)
getPossibleLocationCount
in interface ILcdGXYLabelPainter
aGraphics
- the Graphics to render labels on.ILcdGXYLabelPainter.setLocationIndex(int)
public double labelBoundsSFCT(Graphics aGraphics, int aLabelPainterMode, ILcdGXYContext aGXYContext, Rectangle aRectangle) throws TLcdNoBoundsException
labelBoundsSFCT
in interface ILcdGXYLabelPainter
labelBoundsSFCT
in interface ILcdGXYLabelPainter2
aGraphics
- the graphics the label will be rendered on.aLabelPainterMode
- the label painter mode, default or selected.aGXYContext
- the context in which the label should be rendered.aRectangle
- the rectangle to modify to store the result in.TLcdNoBoundsException
- when no rules apply, or when all rules that apply throw a
TLcdNoBoundsException.ILcdGXYViewLabelPainter
,
ILcdGXYLayerLabelPainter
,
ILcdGXYLabelPainter2.labelAnchorPointSFCT(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext, java.awt.Point)
public ILcdGXYLabelPainter getGXYLabelPainter(Object aObject)
getGXYLabelPainter
in interface ILcdGXYLabelPainterProvider
aObject
- the object to return a label painter for.public boolean supportSnap(Graphics aGraphics, ILcdGXYContext aGXYContext)
supportSnap
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaGXYContext
- the context in which this object is represented and in which the editing of an object occurs.public Object snapTarget(Graphics aGraphics, ILcdGXYContext aGXYContext)
snapTarget
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaGXYContext
- the context in which this object is represented and in which the editing of an object occurs.supportSnap
public Cursor getCursor(Graphics aGraphics, int aPainterMode, ILcdGXYContext aGXYContext)
getCursor
in interface ILcdGXYPainter
aGraphics
- the Graphics on which the representation of the object is paintedaPainterMode
- the rendering mode to return the cursor for.aGXYContext
- the context in which the rendering occurs.public void addPropertyChangeListener(PropertyChangeListener aPropertyChangeListener)
addPropertyChangeListener
in interface ILcdPropertyChangeSource
aPropertyChangeListener
- is ignored.ALcdWeakPropertyChangeListener
,
ILcdPropertyChangeSource.removePropertyChangeListener(java.beans.PropertyChangeListener)
public void removePropertyChangeListener(PropertyChangeListener aPropertyChangeListener)
removePropertyChangeListener
in interface ILcdPropertyChangeSource
aPropertyChangeListener
- is ignored.ILcdPropertyChangeSource.addPropertyChangeListener(java.beans.PropertyChangeListener)
public ILcdGXYPainter getGXYPainter(Object aObject)
getGXYPainter
in interface ILcdGXYPainterProvider
aObject
- the object to retrieve a painter for.public Object clone()
ALcdSLDFeatureTypeStylePainter
clone
in interface ILcdCloneable
clone
in interface ILcdGXYLabelPainter
clone
in interface ILcdGXYLabelPainter2
clone
in interface ILcdGXYLabelPainterProvider
clone
in interface ILcdGXYPainterProvider
clone
in class ALcdSLDFeatureTypeStylePainter
Object.clone()
public void setLabelIndex(int aLabelIndex)
ILcdGXYMultiLabelPainter
Sets the label. The results of any subsequent method calls to ILcdGXYLabelPainter.paintLabel(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext)
and ILcdGXYLabelPainter.labelBoundsSFCT(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext, java.awt.Rectangle)
etc. will apply to the label and sublabel indicated by this label index.
setLabelIndex
in interface ILcdGXYMultiLabelPainter
aLabelIndex
- The label index. This should be larger than or equal to 0
and
less than the result ILcdGXYMultiLabelPainter.getLabelCount(java.awt.Graphics, com.luciad.view.gxy.ILcdGXYContext)
.ILcdGXYMultiLabelPainter.setSubLabelIndex(int)
public int getLabelIndex()
ILcdGXYMultiLabelPainter
getLabelIndex
in interface ILcdGXYMultiLabelPainter
ILcdGXYMultiLabelPainter.setLabelIndex(int)
public int getLabelCount(Graphics aGraphics, ILcdGXYContext aGXYContext)
ILcdGXYMultiLabelPainter
Returns the number of labels for the object set to this label painter.
Note: when returning multiple (moveable) labels for the same object, it might be useful to useTLcdGXYEditControllerModel2.EDIT_WHAT_FIRST_TOUCHED_LABEL
to avoid that a mouse drag moves them all together.getLabelCount
in interface ILcdGXYMultiLabelPainter
aGraphics
- The Graphics currently painting onaGXYContext
- The ILcdGXYContext currently validpublic int getSubLabelIndex()
ILcdGXYMultiLabelPainter
getSubLabelIndex
in interface ILcdGXYMultiLabelPainter
ILcdGXYMultiLabelPainter.setSubLabelIndex(int)
public void setSubLabelIndex(int aSubLabelIndex)
ILcdGXYMultiLabelPainter
ILcdGXYLabelPainter.paintLabel(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext)
and
ILcdGXYLabelPainter.labelBoundsSFCT(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext, java.awt.Rectangle)
etc. will apply to the label and sublabel indicated by this sublabel
index.setSubLabelIndex
in interface ILcdGXYMultiLabelPainter
aSubLabelIndex
- The sub label index. This should be larger than or equal to
0
and less than the result ILcdGXYMultiLabelPainter.getSubLabelCount(int)
.ILcdGXYMultiLabelPainter.setLabelIndex(int)
public int getSubLabelCount(int aLabelIndex)
ILcdGXYMultiLabelPainter
getSubLabelCount
in interface ILcdGXYMultiLabelPainter
aLabelIndex
- the index of the label.public void setLabelLocation(TLcdLabelLocation aLabelLocation)
ILcdGXYLabelPainter2
Sets the label location of the label. This label location will be used to determine what the bounds of the label are, where it must be painted, etc.
Note that aLabelLocation
also contains a label location index. This is
independent of the ILcdGXYLabelPainter.getLocationIndex()
of the super interface. Contrary to the location
index returned by getLocationIndex
, the location index in
aLabelLocation
can be less than 0
, in which case the labels are
freely placed.
This method has to be called after ILcdGXYLabelPainter2.setObject(java.lang.Object)
has been called, as calling
setObject
clears this label location.
setLabelLocation
in interface ILcdGXYLabelPainter2
aLabelLocation
- The TLcdLabelLocation
instance containing all the
information about the location of the label.ILcdGXYLabelPainter2.setObject(java.lang.Object)
public TLcdLabelLocation getLabelLocation()
ILcdGXYLabelPainter2
TLcdLabelLocation
that was previously set that contains the
information on the whereabouts of the label.getLabelLocation
in interface ILcdGXYLabelPainter2
ILcdGXYLabelPainter2.setLabelLocation(com.luciad.view.TLcdLabelLocation)
public boolean isLabelTouched(Graphics aGraphics, int aMode, ILcdGXYContext aGXYContext)
ILcdGXYLabelPainter2
setObject
, setLabelIndex
and
setSubLabelIndex
is touched at view location (specified by
aGXYContext.getX()
and aGXYContext.getY()
), considering the mode and the
ILcdGXYContext
instance.
Before calling this method, the domain object, the label index, the sublabel index and the location of the label should be set using the respective methods.
isLabelTouched
in interface ILcdGXYLabelPainter2
aGraphics
- The Graphics
instance on which the label is painted.aMode
- the mode to consider. This is a bitwise combinations of several constants.
See ILcdGXYLabelPainter2.paintLabel(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext)
for more information.aGXYContext
- the ILcdGXYContext
to consider.ILcdGXYContext
public void labelAnchorPointSFCT(Graphics aGraphics, int aMode, ILcdGXYContext aGXYContext, Point aPointSFCT) throws TLcdNoBoundsException
ILcdGXYLabelPainter2
Sets aPointSFCT
to the anchor point of the label specified by
setObject
, setLabelIndex
and setSubLabelIndex
.
If the location index is less than 0, the label anchor point is unambiguously determined by the
label location
. The actual label is to be painted somewhere around
this anchor point. This method is typically called to compare the result with
the label bounds, thus determining the exact relation between the label
and its location
.
Before calling this method, the domain object, the label index, the sublabel index and the location of the label should be set using the respective methods.
labelAnchorPointSFCT
in interface ILcdGXYLabelPainter2
aGraphics
- The Graphics
instance on which the label is painted.aMode
- The mode to consider. This can be a bitwise combination of several
constants. See ILcdGXYLabelPainter2.paintLabel(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext)
for more information.aGXYContext
- The ILcdGXYContext
that can be used to retrieve extra
information.aPointSFCT
- The point which will be updated to reflect the location of the anchor
point.TLcdNoBoundsException
- if the Object doesn't have any valid anchor point, e.g. if it is
always invisible in the current projection.ILcdGXYLabelPainter2.paintLabel(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext)
,
ILcdGXYLabelPainter2.getLabelLocation()
,
ILcdGXYLabelPainter2.labelBoundsSFCT(java.awt.Graphics, int, com.luciad.view.gxy.ILcdGXYContext, java.awt.Rectangle)
public boolean supportLabelSnap(Graphics aGraphics, ILcdGXYContext aGXYContext)
ILcdGXYLabelPainter2
Returns whether this label painter supports snapping for the label specified by
setObject
, setLabelIndex
and setSubLabelIndex
,
considering the given ILcdGXYContext
instance. When the label painter
supports snap for the specified label and context, it can return a snap target for
this label and context.
Before calling this method, the domain object, the label index, the sublabel index and the location of the label should be set using the respective methods.
supportLabelSnap
in interface ILcdGXYLabelPainter2
aGraphics
- the Graphics on which is worked.aGXYContext
- the ILcdGXYContext of the snapping.true
if this label painter supports snapping for the specified label.labelSnapTarget
public Object labelSnapTarget(Graphics aGraphics, ILcdGXYContext aGXYContext)
ILcdGXYLabelPainter2
Object
that can be used as snapping target when graphically editing
another Object
or label than the one this ILcdGXYLabelPainter2 represents. The
returned Object
can be the Object
this ILcdGXYLabelPainter2
represents or any other (e.g. an ILcdPoint
if getObject() is an
ILcdPointList
).labelSnapTarget
in interface ILcdGXYLabelPainter2
aGraphics
- the Graphics on which is worked.aGXYContext
- the ILcdGXYContext of the snapping.Object
that can be used as snapping target when graphically editing
another Object
or label than the one this ILcdGXYLabelPainter2 represents
(returned by getObject()). This object can be null
.public Cursor getLabelCursor(Graphics aGraphics, int aMode, ILcdGXYContext aGXYContext)
ILcdGXYLabelPainter2
Cursor
to indicate the type of editing aMode
and
aGXYContext
.getLabelCursor
in interface ILcdGXYLabelPainter2
aGraphics
- The Graphics
instance on which the label is painted.aMode
- The mode to consider. See ILcdGXYLabelPainter2.paintLabel(java.awt.Graphics, int,
ILcdGXYContext)
for more information.aGXYContext
- The ILcdGXYContext
containing extra information, such as the
layer, the view and the mouse position.Cursor
to indicate the type of editing aMode
and
aGXYContext
. Returns null
if no particular
Cursor
is required.