Class StateIconAttributes
- java.lang.Object
-
- org.hippoecm.frontend.plugins.standards.list.resolvers.StateIconAttributes
-
- All Implemented Interfaces:
Serializable
,org.apache.wicket.model.IDetachable
,org.apache.wicket.util.io.IClusterable
,IObservable
public class StateIconAttributes extends Object implements IObservable, org.apache.wicket.model.IDetachable
Standard attributes of a hippostd:publishable document. Figures out what CSS classes, summary and icon should be used to represent the state. Can be used with handles, documents and (document) versions.
The org.hippoecm.frontend.plugins.cms.browse.list.DefaultListColumnProviderPlugin adds a
ListColumn
to display the documents in the "Document Area", that lists documents inside folders.This
ListColumn
in its turn:- allows attribute modifieds to be added, see
ListColumn.setAttributeModifier(AbstractListAttributeModifier)
- allows a
IListCellRenderer
to be set, seeListColumn.setRenderer(IListCellRenderer)
- adds
ListCell
's
The
StateIconAttributeModifier
using this class set the title attribute (tooltip in this case) and the css class.The
DocumentIconAndStateRenderer
usesgetIcons()
to add and update the icons.The handle, document or document revision is observed, see
IObservable
by the observers ofListCell
, so that any modification updates the css class, tooltip and icons.In case of a handle, the draft variant is observed if it exists. If the stateSummary or the retainable property changes, the icon and toolip are updated. If no draft variant exists the published or unpublished variant is observed.
If the
nodeModel
, see constructor argumentStateIconAttributes(JcrNodeModel)
refers to a revision, the frozen node of the revision is used.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static String
DRAFT_CHANGES
-
Constructor Summary
Constructors Constructor Description StateIconAttributes(JcrNodeModel nodeModel)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
detach()
String
getCssClass()
Icon[]
getIcons()
String
getSummary()
void
setObservationContext(IObservationContext<? extends IObservable> context)
Before observation is started on the observable, an observation context is injected by the observer registry.void
startObservation()
When the firstIObserver
of this observable is registered with the observer registry, observation is started.void
stopObservation()
When the lastIObserver
unregisters, observation is stopped.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hippoecm.frontend.model.event.IObservable
equals, hashCode
-
-
-
-
Field Detail
-
DRAFT_CHANGES
public static final String DRAFT_CHANGES
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
StateIconAttributes
public StateIconAttributes(JcrNodeModel nodeModel)
-
-
Method Detail
-
getSummary
public String getSummary()
-
getCssClass
public String getCssClass()
-
getIcons
public Icon[] getIcons()
-
detach
public void detach()
- Specified by:
detach
in interfaceorg.apache.wicket.model.IDetachable
-
setObservationContext
public void setObservationContext(IObservationContext<? extends IObservable> context)
Description copied from interface:IObservable
Before observation is started on the observable, an observation context is injected by the observer registry. This context can be used to notify listeners.- Specified by:
setObservationContext
in interfaceIObservable
-
startObservation
public void startObservation()
Description copied from interface:IObservable
When the firstIObserver
of this observable is registered with the observer registry, observation is started. Implementations must notify observers until observation is stopped.An implementation should register listeners with external data sources, when appropriate. It is possible for an observable to register as an observer for another observable.
- Specified by:
startObservation
in interfaceIObservable
-
stopObservation
public void stopObservation()
Description copied from interface:IObservable
When the lastIObserver
unregisters, observation is stopped. Any listeners or observers registered by the observable must be unregistered by the implementation.- Specified by:
stopObservation
in interfaceIObservable
-
-