public class TLspCustomizableStyler extends ALspCustomizableStyler
Default implementation of ILspCustomizableStyler
. When asked to specify styling
for any object, it will use all the enabled styles contained in getStyles()
.
TLspCustomizableStyle
Constructor and Description |
---|
TLspCustomizableStyler(ALspStyle... aStyles)
Create an
ILspStyler which will set all instances in aStyles as
style to every object passed in its ILspStyler#style method. |
TLspCustomizableStyler(Map<? extends ALspStyleTargetProvider,? extends Collection<TLspCustomizableStyle>> aCustomizableStyles)
Create an
ILspStyler which will set all style instances and
the corresponding ALspStyleTargetProvider in
aCustomizableStyles as style to every object passed in its
ILspStyler#style method. |
TLspCustomizableStyler(TLspCustomizableStyle... aCustomizableStyles)
Create an
ILspStyler which will set all style instances in
aCustomizableStyles as style to every object passed in its ILspStyler#style method. |
Modifier and Type | Method and Description |
---|---|
Collection<TLspCustomizableStyle> |
getStyles()
Returns the styler's customizable styles.
|
void |
style(Collection<?> aObjects,
ALspStyleCollector aStyleCollector,
TLspContext aContext)
Styles the objects or labels contained in
aObjects using the methods provided
by ALspStyleCollector . |
addStyleChangeListener, fireStyleChangeEvent, fireStyleChangeEvent, removeStyleChangeListener
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addStyleChangeListener, removeStyleChangeListener
public TLspCustomizableStyler(ALspStyle... aStyles)
Create an ILspStyler
which will set all instances in aStyles
as
style to every object passed in its ILspStyler#style method.
aStyles
- The styles to use. Can be customized later on by using the getStyles()
method.public TLspCustomizableStyler(TLspCustomizableStyle... aCustomizableStyles)
Create an ILspStyler
which will set all style instances in
aCustomizableStyles
as style to every object passed in its ILspStyler#style
method.
aCustomizableStyles
- The styles to use.public TLspCustomizableStyler(Map<? extends ALspStyleTargetProvider,? extends Collection<TLspCustomizableStyle>> aCustomizableStyles)
Create an ILspStyler
which will set all style instances and
the corresponding ALspStyleTargetProvider
in
aCustomizableStyles
as style to every object passed in its
ILspStyler#style
method.
aCustomizableStyles
- A map of style target providers and the corresponding styles to use.public void style(Collection<?> aObjects, ALspStyleCollector aStyleCollector, TLspContext aContext)
ILspStyler
Styles the objects or labels contained in aObjects
using the methods provided
by ALspStyleCollector
.
Example usages for object styling:
// Same style for all objects:
aStyleCollector.objects(aObjects).style(myStyle).submit();
// Object specific styling:
aStyleCollector.object(myObject1).style(myStyle1).submit();
aStyleCollector.object(myObject2).style(myStyle2).submit();
Example usages for label styling:
if (aStyleCollector instanceof ALspLabelStyleCollector) {
ALspLabelStyleCollector labelStyleCollector = (ALspLabelStyleCollector)aStyleCollector;
// Specify a priority for all labels of all objects:
labelStyleCollector.objects(aDomainObjects).allLabels().priority(3).styles(...).submit();
// Specify an algorithm for a specific label:
labelStyleCollector.object(myObject1).label(123).algorithm(...).styles(...).submit();
}
The objects that are provided to aStyleCollector
must be objects that are contained in
aObjects
. Note that not all objects have to be styled. Objects that are not submitted in
aStyleCollector
will not be painted.
This method can be called very frequently, depending on the (amount of) data. If this method is not implemented efficiently, painting performance may be affected.
aObjects
- The objects to be styled.aStyleCollector
- A style collector to which all styling information
should be passed, this collector is only valid within this method
call, and can no longer be used afterwards.aContext
- Provides context information that may affect styling, such as view specific properties.public Collection<TLspCustomizableStyle> getStyles()
ILspCustomizableStyler
Returns the styler's customizable styles. When modifications are made to the styles, the styler will automatically inform its listeners about the change. The following changes can be made:
ALspStyle
in the TLspCustomizableStyle
may be replacedidentifier
of the
TLspCustomizableStyle
to recognize and order the styles.style
method