Guiliani  Version 2.4 revision 5970 (build 3)
CGUICenterFocusContainer Class Reference

Container object which automatically centers on the currently focused child object. More...

#include <GUICenterFocusContainer.h>

Inheritance diagram for CGUICenterFocusContainer:

Public Member Functions

 CGUICenterFocusContainer (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const eC_Value &vCenterX, const eC_Value &vCenterY, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUICenterFocusContainer ()
 
virtual void DoAnimate (const eC_Value &vTimes=eC_FromInt(1))
 
virtual eC_Bool DoDrag (const eC_Value &vDeltaX, const eC_Value &vDeltaY, const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoDragEnd (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
CGUIObjectGetCenterObject () const
 
void GetFocus ()
 
eC_Value GetFocusCenterCurrentAbsX () const
 
eC_Value GetFocusCenterCurrentAbsY () const
 
eC_Value GetFocusCenterRelX () const
 
eC_Value GetFocusCenterRelY () const
 
void Init ()
 Helper function for initialization.
 
void JumpToCenterObject ()
 
virtual void ReadFromStream ()
 
void SetCenterObject (CGUIObject *const pObject)
 
void SetCenterOnImmediateChildrenOnly (eC_Bool bCenterOnImmediateChildrenOnly)
 
void SetDragSensitivity (eC_UInt uiHorizontalSensitivity, eC_UInt uiVerticalSensitivity)
 
void SetFocusCenter (eC_Value vCenterX, eC_Value vCenterY)
 
void SetInertia (eC_Value vInertiaX, eC_Value vInertiaY)
 
virtual void WriteToStream (const eC_Bool bWriteClassID=false)
 
- Public Member Functions inherited from CGUICompositeObject
 CGUICompositeObject ()
 
 CGUICompositeObject (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUICompositeObject (CGUICompositeObject *const pParent, const CGUIRect &kRect, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUICompositeObject (const CGUICompositeObject &kSource)
 
virtual ~CGUICompositeObject ()
 This destructor is automatically virtual, as the base class destructor is virtual.
 
virtual eC_Bool AddObject (CGUIObject *pkObject)
 
eC_Bool BringToFront (const CGUIObject *pkObject)
 
eC_Bool CanBeCyclicFocussed () const
 
virtual eC_Bool DoPostDraw ()
 
void DrawOnTop (CGUIObject *pkObject)
 
void DrawOnTopOf (CGUIObject *const pkObject, CGUIObject *const pDrawOnTopOf)
 
virtual CGUIObjectFindObject (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
void Flip (const eC_Bool &rbVertical)
 
eC_Bool FocusAny ()
 
virtual eC_Bool FocusNext (CGUIObject *const pRefObj=NULL, const eC_Bool &bSubTreeOfRefObjDone=false)
 
virtual eC_Bool FocusPrevious (CGUIObject *const pRefObj=NULL, const eC_Bool &bSubTreeOfRefObjDone=false)
 
const CGUIObjectGetAndCheckObjectByID (ObjectHandle_t eObjID, const eC_String &kObjectName) const
 
CGUIObjectGetAndCheckObjectByID (ObjectHandle_t eObjID, const eC_String &kObjectName)
 
CGUIObjectGetChild (const eC_UInt uIndex) const
 
CGUIObjectGetChild (const eC_UInt uIndex)
 
const ObjectPtrListGetChildObjectsList () const
 
const ObjectPtrListGetDrawOrderList () const
 
eC_Int GetIndexOfChild (const CGUIObject *pkObject) const
 
eC_UInt GetNumberOfChildren () const
 
CGUIObjectGetObjectByID (const ObjectHandle_t &eID, const eC_Bool &bOnlyVisible=false)
 
const CGUIObjectGetObjectByID (const ObjectHandle_t &eID, const eC_Bool &bOnlyVisible=false) const
 
eC_Bool InsertChildAt (const eC_UInt cuiIndex, CGUIObject *pkChild)
 
void InvalidateChildren ()
 Invalidates all chidren, but not this parent.
 
eC_Bool IsAncestorOf (const CGUIObject *pkObject) const
 
virtual eC_Bool IsCompositeObject () const
 
eC_Bool LowerOneLevel (const CGUIObject *pkObject)
 
CGUICompositeObjectoperator= (const CGUICompositeObject &kSource)
 
eC_Bool RaiseOneLevel (const CGUIObject *pkObject)
 
virtual void RefreshLayout (CGUILayouter::eMovedEdges_t eMovedEdges) const
 
void RemoveAllChildren ()
 
virtual void RemoveObject (CGUIObject *pkObject)
 
void Rotate (const eC_UInt &ruiDegrees, const eC_Bool &rbFirst=false)
 
eC_Bool SendToBack (const CGUIObject *pkObject)
 
virtual void SetClickThrough (const eC_Bool &bClickThrough)
 
virtual void SetClickThrough (const eC_Bool &bClickThrough, const eC_Bool &bChildrenClickThrough)
 
void SetCyclicFocus (const eC_Bool &bCyclicFocus)
 
virtual void SetDisabled (const eC_Bool &bDisabled)
 
virtual void SetDisabled (const eC_Bool &bDisabled, const eC_Bool &bChildrenDisabled)
 
virtual void SetFocussable (const eC_Bool &bFocussable)
 
virtual void SetFocussable (const eC_Bool &bFocussable, const eC_Bool &bChildrenFocussable)
 
virtual void SetGrayedOut (const eC_Bool &bGrayedOut)
 
virtual void SetGrayedOut (const eC_Bool &bGrayedOut, const eC_Bool &bChildrenGrayedOut)
 
virtual void SetHeight (const eC_Value &vY)
 
virtual void SetInvisible (const eC_Bool &bInvisible)
 
virtual void SetInvisible (const eC_Bool &bInvisible, const eC_Bool &bChildrenInvisible)
 
virtual void SetWidth (const eC_Value &vX)
 
- Public Member Functions inherited from CGUIObject
 CGUIObject (CGUICompositeObject *const pParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIObject (CGUICompositeObject *const pParent, const CGUIRect &kRect, const ObjectHandle_t &eID=NO_HANDLE)
 
 CGUIObject ()
 
 CGUIObject (const CGUIObject &kSource)
 
virtual ~CGUIObject ()
 
void AddValueObserver (CGUIObserver *pObserver)
 
eC_Bool CalculateInvalidatedRect (CGUIRect &rRect) const
 
virtual eC_Bool ClaimFocus ()
 
virtual void CreateSnapshot (eC_UInt uiBackColor=0x00)
 
eC_Bool DataPoolConnectorExists () const
 
void DeleteSnapshot ()
 
virtual void DisableSnapshotDrawing (eC_Bool bDeleteSnapshot=true)
 
virtual eC_Bool DoDraw ()
 
virtual eC_Bool DoDrawSnapshot ()
 
virtual void EnableSnapshotDrawing ()
 
CGUIRect GetAbsRect () const
 
eC_Value GetAbsXPos () const
 
eC_Value GetAbsXPosCenter () const
 
eC_Value GetAbsXPosREdge () const
 
eC_Value GetAbsYPos () const
 
eC_Value GetAbsYPosBEdge () const
 
eC_Value GetAbsYPosCenter () const
 
eC_UByte GetAlpha () const
 
CGUIBehaviourDecoratorGetBehaviour ()
 
const CGUIBehaviourDecoratorGetBehaviour () const
 
GUIBitmapPlaneID_t GetBitmapID () const
 
CGUIBitmapPlaneGetBitmapPlane () const
 
CGUIRect GetCurrentAbsRect () const
 
eC_Value GetCurrentAbsXPos () const
 
eC_Value GetCurrentAbsXPosCenter () const
 
eC_Value GetCurrentAbsXPosREdge () const
 
eC_Value GetCurrentAbsYPos () const
 
eC_Value GetCurrentAbsYPosBEdge () const
 
eC_Value GetCurrentAbsYPosCenter () const
 
CDataPoolConnectorGetDataPoolConnector ()
 
eC_Value GetDistanceBottom () const
 
eC_Value GetDistanceRight () const
 
eC_Value GetHalfHeight () const
 
eC_Value GetHalfWidth () const
 
eC_Value GetHeight () const
 
ObjectHandle_t GetID () const
 
CGUILayouterGetLayouter ()
 
const CGUILayouterGetLayouter () const
 
ObjectHandle_t GetNeighborBottomID () const
 
ObjectHandle_t GetNeighborLeftID () const
 
ObjectHandle_t GetNeighborRightID () const
 
ObjectHandle_t GetNeighborTopID () const
 
CGUIObjectGetObjectByID (const ObjectHandle_t &eID, const eC_Bool &bOnlyVisible=false)
 
const CGUIObjectGetObjectByID (const ObjectHandle_t &eID, const eC_Bool &bOnlyVisible=false) const
 
CGUIRect GetOriginRect () const
 
CGUICompositeObjectGetParent ()
 
const CGUICompositeObjectGetParent () const
 
CGUIRect GetRelRect () const
 
eC_Value GetRelXPos () const
 
eC_Value GetRelXPosCenter () const
 
eC_Value GetRelXPosREdge () const
 
eC_Value GetRelYPos () const
 
eC_Value GetRelYPosBEdge () const
 
eC_Value GetRelYPosCenter () const
 
eC_Value GetWidth () const
 
void InvalidateArea ()
 
eC_Bool IsClickable () const
 
eC_Bool IsClickThrough () const
 
eC_Bool IsDescendantOf (const CGUIObject *const pAncestor) const
 
eC_Bool IsDisabled () const
 
eC_Bool IsDragable () const
 
eC_Bool IsDragged () const
 
eC_Bool IsDrawingSnapshot () const
 
eC_Bool IsFocussable () const
 
eC_Bool IsFocussed () const
 
eC_Bool IsGrayedOut () const
 
virtual eC_Bool IsHighlightable () const
 
eC_Bool IsHighlighted () const
 
eC_Bool IsInvisible () const
 
eC_Bool IsPressed () const
 
eC_Bool IsStopFocus () const
 
void NotifyValueObservers (const CGUIValue &kValue, const eC_UInt uiX=0, const eC_UInt uiY=0)
 
CGUIObjectoperator= (const CGUIObject &kSource)
 
void RemoveValueObserver (CGUIObserver *pObserver)
 
void RenderToBitmap (eC_UInt uiBitmapID, eC_Value vXOffset=eC_FromInt(0), eC_Value vYOffset=eC_FromInt(0))
 
eC_Bool RequestFocus ()
 
void SetAlpha (eC_UByte ubAlpha)
 
void SetBehaviour (CGUIBehaviourDecorator *pBehaviour)
 
void SetClickThrough (const eC_Bool &bClickThrough)
 
void SetID (const ObjectHandle_t &eID)
 
void SetLayouter (CGUILayouter *pLayouter)
 
void SetNeighborBottomID (const ObjectHandle_t eNewNeighborBottomID)
 
void SetNeighborIDs (const ObjectHandle_t eNewNeighborLeftID, const ObjectHandle_t eNewNeighborRightID, const ObjectHandle_t eNewNeighborTopID, const ObjectHandle_t eNewNeighborBottomID)
 
void SetNeighborLeftID (const ObjectHandle_t eNewNeighborLeftID)
 
void SetNeighborRightID (const ObjectHandle_t eNewNeighborRightID)
 
void SetNeighborTopID (const ObjectHandle_t eNewNeighborTopID)
 
virtual void SetParent (CGUICompositeObject *const pParent)
 
void SetRelRect (const CGUIRect &kNewRect)
 
virtual void SetRelXPos (const eC_Value &vX)
 
void SetRelXPosCenter (const eC_Value &vXCenter)
 
void SetRelXPosREdge (const eC_Value &vX)
 
virtual void SetRelYPos (const eC_Value &vY)
 
void SetRelYPosBEdge (const eC_Value &vY)
 
void SetRelYPosCenter (const eC_Value &vYCenter)
 
void SetStopFocus (const eC_Bool &bDontFocusToParent)
 
virtual eC_Bool SetValue (const CGUIValue &rkValue)
 
virtual eC_Bool SetValue (CDataPoolEntry &rkValue)
 
- Public Member Functions inherited from CGUIBehaviour
virtual eC_Bool DoUserEvent (CGUIEvent *const pEvent)
 
virtual void OnCreate ()
 
virtual void OnDelete ()
 
virtual void OnHide ()
 
virtual void OnShow ()
 
virtual eC_Bool DoClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoLongClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoDoubleClick (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoButtonDown (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoButtonUp (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseEnter (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseLeave (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual eC_Bool DoMouseMove (const eC_Value &vAbsX=eC_FromInt(-1), const eC_Value &vAbsY=eC_FromInt(-1))
 
virtual void LoseFocus ()
 
virtual eC_Bool Decrease ()
 
virtual eC_Bool Increase ()
 
virtual eC_Bool DoKeyDown (const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoKeyUp (const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoChar (const eC_UInt &uiKey, const GUIKeyIdentifier_t &eKeyIdentifier, const eC_UInt &uiModifiers)
 
virtual eC_Bool DoScrollUp (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollDown (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollLeft (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
virtual eC_Bool DoScrollRight (const eC_Value &vAbsX, const eC_Value &vAbsY)
 
- Public Member Functions inherited from CGUIStreamableObject
const eC_String & GetXMLTag () const
 
void SetXMLTag (const eC_String &kXMLTag)
 
- Public Member Functions inherited from CGUIAnimatable
virtual ~CGUIAnimatable ()
 Destructor. Removes all existing animation callbacks.
 
virtual eC_Bool IsAnimating () const
 
virtual void StartAnimation ()
 
virtual void StopAnimation ()
 

Additional Inherited Members

- Public Types inherited from CGUIObject
enum  FourWayFocus_t { FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUS_DOWN }
 
- Static Public Attributes inherited from CGUICompositeObject
static const eC_Char XMLTAG_CHILDREN [] = "Children"
 XML comment tag to be used before writing children to a stream.
 
static const eC_Char XMLTAG_ENDCHILDREN [] = "/Children"
 XML comment tag to be used after writing children to a stream.
 
- Static Public Attributes inherited from CGUIObject
static const eC_Char XMLTAG_ALPHA [] = "Alpha"
 XML tag to be used writing alpha-value into a stream.
 
static const eC_Char XMLTAG_CLICKTHROUGH [] = "ClickThrough"
 XML tag to be used writing clickthrough-state into a stream.
 
static const eC_Char XMLTAG_CONTROLCLASSID [] = "ControlClassID"
 XML tag to be used when writing a control class ID into a stream.
 
static const eC_Char XMLTAG_DISABLED [] = "Disabled"
 XML tag to be used writing disabled-state into a stream.
 
static const eC_Char XMLTAG_FOCUSSABLE [] = "Focussable"
 XML tag to be used writing focussable-state into a stream.
 
static const eC_Char XMLTAG_GRAYEDOUT [] = "GrayedOut"
 XML tag to be used writing grayedout-state into a stream.
 
static const eC_Char XMLTAG_HEIGHT [] = "Height"
 XML tag to be used writing height into a stream.
 
static const eC_Char XMLTAG_INVISIBLE [] = "Invisible"
 XML tag to be used writing invisible-state into a stream.
 
static const eC_Char XMLTAG_OBJECTID [] = "ObjectID"
 XML tag to be used writing object id into a stream.
 
static const eC_Char XMLTAG_OVERRIDDENNEIGHBORS [] = "OverriddenNeighbors"
 XML tag to be used writing overridden neighbors into a stream.
 
static const eC_Char XMLTAG_WIDTH [] = "Width"
 XML tag to be used writing width into a stream.
 
static const eC_Char XMLTAG_XPOS [] = "XPos"
 XML tag to be used writing x-position into a stream.
 
static const eC_Char XMLTAG_YPOS [] = "YPos"
 XML tag to be used writing y-position into a stream.
 
- Static Public Attributes inherited from CGUIBehaviour
static const eC_Char XMLTAG_BEHAVIOURCLASSID [] = "BehaviourClassID"
 XML tag to be used when writing a behaviour class ID into a stream.
 
- Static Public Attributes inherited from CGUIStreamableObject
static const eC_Char XMLTAG_CLASSVERSION [] = "ClassVersion"
 
- Protected Member Functions inherited from CGUICompositeObject
virtual eC_Bool FourWayNext (FourWayFocus_t eFocusDirection)
 
ObjectPtrListGetChildObjectsList ()
 
virtual void HandleDraw (const CGUIRect &ClipRect)
 
- Protected Member Functions inherited from CGUIObject
virtual eC_Bool CreateBitmapPlane ()
 
- Protected Member Functions inherited from CGUIStreamableObject
eC_UInt ReadStreamingHeader (const eC_UInt &uiClassVersion, const eC_UInt &uiClassMinVersion=0) const
 
void WriteStreamingFooter (const eC_Bool &bWriteClassID) const
 
void WriteStreamingHeader (const eC_Bool &bWriteClassID, const eC_Char *const pkClassIDTag, const eC_Int &iClassID, const eC_UInt &uiClassVersion) const
 

Detailed Description

Container object which automatically centers on the currently focused child object.

center_focus_container.png
The "center focus" control is a container that serves as a container which automatically centers the currently focused control at the supplied position. This centering can be animated with effects like speed-up or slow-down (Class: CGUICenterFocusContainer).

The CGUICenterFocusContainer serves as a container-object which automatically centers the currently focused object on the supplied position, if it is a descendant in the GUI-hierarchy. It does so by moving itself (and therefore all children) to the new position.

Example:

// Create a Container.
CGUICenterFocusContainer* pkCenterFocusContainer = new CGUICenterFocusContainer(this,
eC_FromInt(0), eC_FromInt(0), eC_FromInt(150), eC_FromInt(150),
eC_FromInt(50), eC_FromInt(50),
OBJ_CONTAINER);
// Get the X position (in relative coordinates) of the center point.
eC_Value vXPos = pkCenterFocusContainer->GetFocusCenterRelX();
// Get the Y position (in relative coordinates) of the center point.
eC_Value vYPos = pkCenterFocusContainer->GetFocusCenterRelY();
// Calling this method will center the given object
// on the supplied center position - even when it is currently not focused.
CGUIObject* pObject = new CGUIObject(pkCenterFocusContainer,
eC_FromInt(0), eC_FromInt(0),
eC_FromInt(50), eC_FromInt(50),
NO_HANDLE);
pkCenterFocusContainer->SetCenterObject(pObject);

Constructor & Destructor Documentation

◆ CGUICenterFocusContainer() [1/2]

CGUICenterFocusContainer::CGUICenterFocusContainer ( CGUICompositeObject *const  pParent,
const eC_Value &  vX,
const eC_Value &  vY,
const eC_Value &  vWidth,
const eC_Value &  vHeight,
const eC_Value &  vCenterX,
const eC_Value &  vCenterY,
const ObjectHandle_t eID = NO_HANDLE 
)

CGUICompositeObject constructor.

Parameters
vXX-position relative to its parent object
vYY-position relative to its parent object
vWidthWidth of the composite object
vHeightHeight of the composite object
vCenterXHorizontal center position in relative coordinates, on which to center the focused object
vCenterYVertical center position in relative coordinates, on which to center the focused object
pParentPointer to the designated parent object
eIDObject Identifier of this composite object (choose NO_HANDLE if none is required)

◆ CGUICenterFocusContainer() [2/2]

CGUICenterFocusContainer::CGUICenterFocusContainer ( )

Standard constructor

See also
CGUIObject().

Member Function Documentation

◆ DoAnimate()

void CGUICenterFocusContainer::DoAnimate ( const eC_Value &  vTimes = eC_FromInt(1))
virtual

The animation-implementation will interpolate the container's position so that the focused object gets centered on the defined center position

Parameters
vTimesCorrection factor

Reimplemented from CGUIAnimatable.

◆ DoDrag()

eC_Bool CGUICenterFocusContainer::DoDrag ( const eC_Value &  vDeltaX,
const eC_Value &  vDeltaY,
const eC_Value &  vAbsX,
const eC_Value &  vAbsY 
)
virtual

Called when the object receives a Drag event. Drags are typically created if the mouse is being used while a mouse-button is being pressed, or if the user moves his finger over a touchscreen.

Parameters
vDeltaXrelative movement in x-direction since the last call of DoDrag/ButtonDown
vDeltaYrelative movement in y-direction since the last call of DoDrag/ButtonDown
vAbsXcurrent X-position in screen coordinates of the mouse
vAbsYcurrent Y-position in screen coordinates of the mouse
Returns
True If the event has been handled.
false Else.

Reimplemented from CGUIBehaviour.

◆ DoDragEnd()

eC_Bool CGUICenterFocusContainer::DoDragEnd ( const eC_Value &  vAbsX,
const eC_Value &  vAbsY 
)
virtual

Called on the dragged object (=the object on which the initial ButtonDown-event occurred) when the mouse button is released after a drag event.

Parameters
vAbsXcurrent X-position in screen coordinates of the mouse
vAbsYcurrent Y-position in screen coordinates of the mouse
Returns
True If the event has been handled.
false Else.

Reimplemented from CGUIBehaviour.

◆ GetCenterObject()

CGUIObject* CGUICenterFocusContainer::GetCenterObject ( ) const
inline

Returns the current center object.

Returns
Object on which the CGUICenterFocusContainer is currently focused

◆ GetFocus()

void CGUICenterFocusContainer::GetFocus ( )
virtual

This is being called when an object, which is a descendant of the CGUICenterFocusContainer, receives the focus In case SetCenterOnImmediateChildrenOnly() has been set to false (which is the default), the CGUICenterFocusContainer will move if any object within its tree of children receives the focus, regardless of whether it is a direct descendant or one which lies deeper within the object tree. If SetCenterOnImmediateChildrenOnly() is set to true, the container will only center on immediate children - in other words children whose direct parent it is.

Reimplemented from CGUIBehaviour.

◆ GetFocusCenterCurrentAbsX()

eC_Value CGUICenterFocusContainer::GetFocusCenterCurrentAbsX ( ) const

Returns the current X position (in absolute coordinates) of the center point.

Returns
absolute x coordinate of the center point

◆ GetFocusCenterCurrentAbsY()

eC_Value CGUICenterFocusContainer::GetFocusCenterCurrentAbsY ( ) const

Retrieves the current Y position (in absolute coordinates) of the center point.

Returns
absolute y coordinate of the center point

◆ GetFocusCenterRelX()

eC_Value CGUICenterFocusContainer::GetFocusCenterRelX ( ) const

Retrieves the current X position (in relative coordinates) of the center point, relative to the parent of this container.

Returns
The X position

◆ GetFocusCenterRelY()

eC_Value CGUICenterFocusContainer::GetFocusCenterRelY ( ) const

Retrieves the current Y position (in relative coordinates) of the center point, relative to the parent of this container.

Returns
The Y position

◆ JumpToCenterObject()

void CGUICenterFocusContainer::JumpToCenterObject ( )

Immediately centers the current center object on the given center-position without animation.

Be aware that if relative coordinates of any object on the path to the root object of the center object are changed after calling this function, then most probably the center object will be positioned incorrectly because the positioning of JumpToCenterObject() is based on the current absolute position. The absolute position during redraw is the sum of relative positions of the parents on the path to the root object so it depends on such relative positions.

◆ ReadFromStream()

void CGUICenterFocusContainer::ReadFromStream ( )
virtual

Reads composite object attributes and children from stream. Reads attributes from the streaming file. Only for use with GUIFactoryManager.

See also
CGUIObject::ReadFromStream()
Exceptions
CGUIStreamingControlExceptionWhen catching a CGUIStreamingControlException from a child, this method adds the object from the exception, resets the object pointer to 'this', then re-throws.

Reimplemented from CGUICompositeObject.

◆ SetCenterObject()

void CGUICenterFocusContainer::SetCenterObject ( CGUIObject *const  pObject)

Calling this method will center the given object on the supplied center position - even when it is currently not focused.

Parameters
pObjectPointer to a child object of this container. The container will move to center pObject on the given center position.

◆ SetCenterOnImmediateChildrenOnly()

void CGUICenterFocusContainer::SetCenterOnImmediateChildrenOnly ( eC_Bool  bCenterOnImmediateChildrenOnly)

This specifies whether only immediate children (i.e. children whose parent is the CGUICenterFocusContainer itself) will be centered on the center-position once they receive the focus, or if child objects which are descendants of the container deeper in the object-tree will also be centered.

Parameters
bCenterOnImmediateChildrenOnlyTRUE will only center immediate children, FALSE will center any descendant.

◆ SetDragSensitivity()

void CGUICenterFocusContainer::SetDragSensitivity ( eC_UInt  uiHorizontalSensitivity,
eC_UInt  uiVerticalSensitivity 
)
inline

Sets the sensitivity of the CenterFocusContainer for drag events. The user can scroll through the child objects of the center focus container with the mouse/finger by dragging them. When dragging, the sensitivity values specify after which pixel distance the CenterFocusContainer will move the focus to the next child object. E.g., a vertical drag sensitivity of 50 will move the focus to the next child if the user moves the mouse/finger at least 50 pixels in vertical direction. You can disable dragging in either vertical or horizontal direction by setting the corresponding sensitivity to 0.

Parameters
uiHorizontalSensitivityhorizontal pixel distance after which the focus is moved to the next child
uiVerticalSensitivityvertical pixel distance after which the focus is moved to the next child

◆ SetFocusCenter()

void CGUICenterFocusContainer::SetFocusCenter ( eC_Value  vCenterX,
eC_Value  vCenterY 
)

Sets the coordinates of the center point. This is the position (in coordinates relative to the CenterFocusContainer's parent) on which focused child objects will be centered.

Parameters
vCenterXX position (in relative coordinates) of the center point.
vCenterYY position (in relative coordinates) of the center point.

◆ SetInertia()

void CGUICenterFocusContainer::SetInertia ( eC_Value  vInertiaX,
eC_Value  vInertiaY 
)
inline

The inertia value specifies how quick the container will move to a new position. Supplying bigger inertia values will slow down the speed.

Parameters
vInertiaXInertia value in horizontal direction (no animation in X axis if <= 0)
vInertiaYInertia value in vertical direction (no animation in Y axis if <= 0)

◆ WriteToStream()

void CGUICenterFocusContainer::WriteToStream ( const eC_Bool  bWriteClassID = false)
virtual

Writes all object attributes to the streaming file. StreamWriter has to be initialized. Only for use with GUIStreamWriter.

Parameters
bWriteClassIDThis flag is used to select if writing of ControlID, leading and trailing tags is performed. Only GUIStreamWriter and GUICompositeObject have to set this flag true.
See also
CGUIStreamWriter

Reimplemented from CGUICompositeObject.


The documentation for this class was generated from the following files: