|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectfacets.util.Tracer
facets.core.superficial.TargetCore
facets.core.superficial.app.IndexingTarget
facets.core.superficial.app.SAreaTarget
public class SAreaTarget
Represents viewers and other surface areas to the targeter tree.
SAreaTarget manages updating and focus for trees of viewers
and other facets, being the target of a directly attached facet
which it represents within an area target tree.
Much key functionality is defined in the IndexingTarget superclass.
The IndexingTarget.indexableTargets() of an SAreaTarget must
comprise one of
SFrameTarget or ViewerTarget
SAreaTargets
A tree of SAreaTargets therefore terminates in SFrameTarget
or ViewerTarget leaves.
The facets attached to and represented in the application by
FacetedTarget (SAreaTarget
and ViewerTarget) members of a tree generally form a containment hierarchy
of tabs/windows and panes.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface facets.core.superficial.STarget |
|---|
STarget.Targeted |
| Nested classes/interfaces inherited from interface facets.core.superficial.Notifying |
|---|
Notifying.Impact |
| Field Summary | |
|---|---|
static int |
AREA_LOWEST
|
static STarget[] |
EMPTY_AREA_CHILDREN
|
| Fields inherited from class facets.core.superficial.TargetCore |
|---|
targets |
| Fields inherited from interface facets.core.superficial.STarget |
|---|
NONE |
| Constructor Summary | |
|---|---|
SAreaTarget(java.lang.String title,
SIndexing children)
Core constructor which sets indexing. |
|
SAreaTarget(java.lang.String title,
STarget... indexableChildren)
Convenience constructor setting indexable children. |
|
| Method Summary | |
|---|---|
SFrameTarget |
activeContent()
The SFrameTarget framing the content exposed by
the active facet. |
FacetedTarget |
activeFacet()
The FacetedTarget representing the contained viewer or area facet
that should have the focus. |
SAreaTarget |
areaParent()
The parent in the area target tree. |
SFacet |
attachedFacet()
The SFacet attached with FacetedTarget.attachFacet(SFacet). |
void |
attachFacet(SFacet facet)
Attach an immutable facet. |
void |
attachThenFacets(SAreaTarget rootThen)
Attaches existing facet to a new area tree. |
protected boolean |
blockNotification()
Enables notification to be restricted to this member of the tree. |
STarget[] |
descendants()
Depth-first traversal of this area tree, including the root. |
void |
ensureActive(boolean notify)
Ensure that the targeter tree treats the faceted as having the GUI focus. |
STarget[] |
facetTargets()
Convenience method. |
java.lang.Object |
identity()
Return an object that is as far as possible unique for the implementation. |
Notifying.Impact |
impact()
Allows this Notifying to specify a default Notifying.Impact. |
boolean |
isActive()
Should the targeter tree treat the facet as having the GUI focus? |
Notifiable |
monitor()
The current Notifiable in the notification tree,
as set with setMonitor. |
protected TypedNode[] |
newDebugChildren()
Create a TypedNode[] representation of this Notifying
for debug purposes. |
protected static TypedNode |
newDebugContentNode(java.lang.String title,
java.lang.Object source)
|
protected static TypedNode |
newDebugContentNode(java.lang.String title,
java.lang.Object[] source)
|
protected static TypedNode |
newDebugMonitorNode(Notifiable monitor)
|
TypedNode |
newGraphNode()
Returns a descriptive node for use in debug object graph. |
STargeter |
newTargeter()
Must return an AreaTargeter. |
static SAreaTarget |
newViewerArea(ViewerTarget viewerTarget)
Convenience method to a wrap single viewer in area. |
void |
notify(Notice notice)
Respond to the Notice passed. |
void |
notifyMonitor(Notifying.Impact impact)
Call notify on the parent monitor in the notification tree,
typically with itself as parameter to the Notice passed. |
void |
retargetFacets(Notifying.Impact impact)
Implements interface method. |
void |
setIndexing(SIndexing children)
Overrides superclass method. |
void |
setMonitor(Notifiable monitor)
Attach the Notifying to a Notifiable parent
in the notification tree. |
| Methods inherited from class facets.core.superficial.app.IndexingTarget |
|---|
indexableTargets, indexedTarget, indexing, notifiesTargeter, parent, setLive, toString |
| Methods inherited from class facets.core.superficial.TargetCore |
|---|
elements, findMonitorOfType, isLive, join, lazyElements, setElements, title, wantsFocus |
| Methods inherited from class facets.util.Tracer |
|---|
trace, trace, trace, trace, trace, traceDebug, traceDebug, traceObjectText, traceOutput, traceOutputWithClass |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface facets.core.superficial.STarget |
|---|
elements, isLive, setLive, wantsFocus |
| Methods inherited from interface facets.util.Titled |
|---|
title |
| Methods inherited from interface facets.core.superficial.Notifying |
|---|
impact, monitor, notifyMonitor, setMonitor |
| Methods inherited from interface facets.core.superficial.Notifiable |
|---|
notify |
| Field Detail |
|---|
public static final int AREA_LOWEST
public static final STarget[] EMPTY_AREA_CHILDREN
| Constructor Detail |
|---|
public SAreaTarget(java.lang.String title,
SIndexing children)
title - passed to superclasschildren - passed to superclass
public SAreaTarget(java.lang.String title,
STarget... indexableChildren)
title - passed to the core constructorindexableChildren - passed to the core constructor in an
SIndexing with a default coupler.| Method Detail |
|---|
public final void setIndexing(SIndexing children)
setIndexing in class IndexingTargetchildren - must return
as its indexables a non-empty STarget[]
which is either
STarget[] containing either
a ViewerTarget or a SFrameTargetAreaTarget[] public STargeter newTargeter()
AreaTargeter.
newTargeter in class IndexingTargetpublic final void attachFacet(SFacet facet)
FacetedTargetAs a STarget representing its FacetedTarget.attachedFacet(),
FacetedTarget can only attach a single viewer or area facet;
it should complain if any attempt is made to attach another.
attachFacet in interface FacetableattachFacet in interface FacetedTargetfacet - will be applied during each retargeting sequencepublic final SFacet attachedFacet()
FacetedTargetSFacet attached with FacetedTarget.attachFacet(SFacet).
Return the facet attached to this FacetedTarget,
complaining if none yet attached.
attachedFacet in interface FacetedTargetpublic final void retargetFacets(Notifying.Impact impact)
In addition to to retargeting any attachedFacet(), calls
Facetable.retargetFacets(Notifying.Impact) in all IndexingTarget.indexableTargets(),
starting with IndexingTarget.indexedTarget() to minimise apparent latency.
retargetFacets in interface Facetablepublic final boolean isActive()
FacetedTarget
isActive in interface FacetedTargetpublic final void ensureActive(boolean notify)
FacetedTarget
ensureActive in interface FacetedTargetnotify - if true, also trigger a retargetingNotifyingpublic final STarget[] facetTargets()
STarget.Targeted.targets() in
attachedFacet()public final FacetedTarget activeFacet()
FacetedTarget representing the contained viewer or area facet
that should have the focus.
Checks the IndexingTarget.indexedTarget() of this SAreaTarget
and its descendents until it finds the last that is a FacetedTarget.
public final SFrameTarget activeContent()
SFrameTarget framing the content exposed by
the active facet.
Checks the IndexingTarget.indexedTarget() of this SAreaTarget
and its descendents until it finds one that is not an SAreaTarget;
returns this if not a ViewerTarget, otherwise its
ViewerTargetCore.viewable.
public final STarget[] descendants()
public final void attachThenFacets(SAreaTarget rootThen)
Also applies the old area path to the new tree.
rootThen - heads the area tree to which the existing facet are attachedpublic static final SAreaTarget newViewerArea(ViewerTarget viewerTarget)
Passes to core constructor the title of viewerFrame,
which is wrapped in an SIndexing of the same title.
protected TypedNode[] newDebugChildren()
TypedNode[] representation of this Notifying
for debug purposes.
newDebugChildren in class IndexingTargetpublic final SAreaTarget areaParent()
FacetedTarget
areaParent in interface FacetedTarget
protected static final TypedNode newDebugContentNode(java.lang.String title,
java.lang.Object source)
protected static final TypedNode newDebugContentNode(java.lang.String title,
java.lang.Object[] source)
protected static final TypedNode newDebugMonitorNode(Notifiable monitor)
public final TypedNode newGraphNode()
public Notifying.Impact impact()
NotifyingNotifying to specify a default Notifying.Impact.
impact in interface NotifyingNotifying.Impact.DEFAULTpublic java.lang.Object identity()
IdentifiedThis will usually be a class instance counter.
identity in interface Identifiedpublic final Notifiable monitor()
Notifiable in the notification tree,
as set with setMonitor.
Complains if no parent has been set.
monitor in interface Notifyingpublic void notify(Notice notice)
NotifiableNotice passed.
When this method is called, the Notifiable should
respond based on
Notice passed.
notify in interface Notifiablepublic final void notifyMonitor(Notifying.Impact impact)
Notifyingnotify on the parent monitor in the notification tree,
typically with itself as parameter to the Notice passed.
Has no effect if no monitor has been set.
This is the usual means to trigger a surface retargeting, being called
by an exposing SFacet on its target.
notifyMonitor in interface Notifyingimpact - suggests the level of retargeting requiredprotected boolean blockNotification()
Checked by notify(Notice); default returns false.
public final void setMonitor(Notifiable monitor)
NotifyingNotifying to a Notifiable parent
in the notification tree.
setMonitor in interface Notifying
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||