MWsWindowTreeObserver Class Reference
class MWsWindowTreeObserver : public MWsObjectProvider |
An interface optionally provided by render stages, to observe changes in window tree structure, or changes to tree nodes.
Public Member Functions |
---|
void | AttributeChanged(const MWsWindowTreeNode &, TAttributes) |
void | ElementAdded(const MWsWindowTreeNode &, const MWsElement &) |
void | FadeAllChildren(const MWsWindowTreeNode &, TBool) |
void | FadeCountChanged(const MWsWindowTreeNode &, TInt) |
void | FlagChanged(const MWsWindowTreeNode &, TFlags, TBool) |
void | MovedToWindowGroup(const MWsWindowTreeNode &, const MWsWindowTreeNode &) |
void | NodeActivated(const MWsWindowTreeNode &) |
void | NodeCreated(const MWsWindowTreeNode &, const MWsWindowTreeNode *) |
void | NodeExtentChanged(const MWsWindowTreeNode &, const TRect &) |
void | NodeReleased(const MWsWindowTreeNode &) |
void | SiblingOrderChanged(const MWsWindowTreeNode &, TInt) |
void | TransparentRegionChanged(const MWsWindowTreeNode &, const TRegion &, const TRegion *) |
void | WindowGroupChainBrokenAfter(const MWsWindowTreeNode &) |
void | WindowGroupChained(const MWsWindowTreeNode &, const MWsWindowTreeNode &) |
Member Functions Documentation
AttributeChanged(const MWsWindowTreeNode &, TAttributes)
Callback to notify that a node has had one of its non-boolean attributes changed.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to identify the affected node and query the new value of the changed attribute. |
TAttributes aAttribute | The attribute that has changed. |
ElementAdded(const MWsWindowTreeNode &, const MWsElement &)
Callback to notify that a element has been added to this window. The render stages implementing this interface know when elements are added or removed through MWsElement interface. The purpose of the ElementAdded API is only to enable render stages to make an association between the element and the window.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been changed. |
const MWsElement & aElement | Use to query attributes of the new element. |
FadeAllChildren(const MWsWindowTreeNode &, TBool)
Callback to notify that all nodes below aWindowTreeNode should be drawn faded, unless they have the ENonFading flag set. This API is primarily used in conjunction with application frameworks that uses absolute fading rather than counting fade.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Typically a root window, for which all children should have their fade state set to aFaded. |
TBool aFaded | The new fade state to apply. ETrue means faded, EFalse not faded. |
FadeCountChanged(const MWsWindowTreeNode &, TInt)
Callback to notify that a window's fade count has been changed.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been changed. |
TInt aFadeCount | Zero means the window is not faded, an integer > 0 means faded if absolute fading is used, or the number of times SetFaded has been called if using counting fade. |
FlagChanged(const MWsWindowTreeNode &, TFlags, TBool)
Callback to notify that a node has had one of its boolean attributes changed.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been changed. |
TFlags aFlag | The attribute that has changed. |
TBool aNewValue | The new value for the attribute. |
MovedToWindowGroup(const MWsWindowTreeNode &, const MWsWindowTreeNode &)
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been moved. |
const MWsWindowTreeNode & aNewWindowGroupNode | The window group aWindowTreeNode has been moved to. |
NodeActivated(const MWsWindowTreeNode &)
Callback to notify that a node in the window tree has been activated. This event is only generated for windows which has a visual appearance (i.e. root windows and group windows are not activated). Before a node can be drawn it needs to be activated and visible and have a non-zero size.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of node that has been activated. |
NodeCreated(const MWsWindowTreeNode &, const MWsWindowTreeNode *)
Callback to notify that a MWsWindowTreeNode has just been created. Nodes are always added as the left-most sibling as this means they are added in front of exisitng nodes.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been created. Note that attributes such as e.g. the extent is not yet set by the client when this notification arrives. |
const MWsWindowTreeNode * aParent | The parent node which aWindowTreeNode has been attached to. Special cases: aParent will be set to NULL for root windows, and set to the root window for floating sprites. |
NodeExtentChanged(const MWsWindowTreeNode &, const TRect &)
Callback to notify that a node's extent has changed. It is guaranteed that there will be at least one NodeExtentChanged notification between the NodeCreated and NodeActivated notifications. Note that when a window has child-windows, those are always moving along with their parent but no NodeExtentChanged notifications will be generated for the child-windows.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been changed. |
const TRect & aRect | The new rectangle. |
NodeReleased(const MWsWindowTreeNode &)
Callback to notify that a node in the window tree is about to be destroyed.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of node that's about to be destroyed. |
SiblingOrderChanged(const MWsWindowTreeNode &, TInt)
Callback to notify that the ordinal position of a window has changed.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been changed.. |
TInt aNewPos | The new position of this node among its siblings. |
TransparentRegionChanged(const MWsWindowTreeNode &, const TRegion &, const TRegion *)
void | TransparentRegionChanged | ( | const MWsWindowTreeNode & | aWindowTreeNode, |
| const TRegion & | aNewTransparentRegion, |
| const TRegion * | aNewOpaqueRegion |
| ) | [pure virtual] |
Callback to notify that the user defined transparent region of a window has changed. This information is for optimisation purpose only, the rendering engine don't need to do a full back-to-front rendering behind the opaque region.
Parameters
const MWsWindowTreeNode & aWindowTreeNode | Use to query attributes of the node that has been changed. |
const TRegion & aNewTransparentRegion | The transparent region defined by the user. Coordinates are relative the window's origin. |
const TRegion * aNewOpaqueRegion | The inverse of aNewTransparentRegion. Coordinates are relative the window's origin. |
WindowGroupChainBrokenAfter(const MWsWindowTreeNode &)
void | WindowGroupChainBrokenAfter | ( | const MWsWindowTreeNode & | aWindowGroupNode | ) | [pure virtual] |
Callback to notify that a window group chain has been broken. Special case: Deleting a window group that is part of a chain will break all chaining after the deleted window group and a notification for each node being dequed will be sent.
Parameters
const MWsWindowTreeNode & aWindowGroupNode | The window group chain is broken directly after this window group. |
WindowGroupChained(const MWsWindowTreeNode &, const MWsWindowTreeNode &)
Callback to notify that a window group chain has been formed or extended.
Parameters
const MWsWindowTreeNode & aParent | The window group node to which a child has been attached. |
const MWsWindowTreeNode & aChild | The window group node that has been attached to aParent. |
Member Enumerations Documentation
Enum TFlags
Enumerators
EVisible = 1 |
For a window to be drawn, it needs to be activated and visible and have visible parents. Making a window invisible, implies that its children should be invisible as well. The default value for a window is true.
|
ENonFading |
Non-fading windows should not be drawn faded regardless of their fade-count. The default value is false.
|
EAlphaChannelTransparencyEnabled |
Windows with this attribute enabled uses alpha channel to control its transparency. The default value is false.
|
ECursorClipRectSet |
True if a clipping rect should be applied when drawing a standard text cursor, false otherwise. The default value is false.
|
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.