10#ifndef GUICAROUSEL__H_
11#define GUICAROUSEL__H_
14#include "GUICompositeObject.h"
110 const eC_Value& vX,
const eC_Value& vY,
111 const eC_Value& vWidth,
const eC_Value& vHeight,
132 virtual void DoAnimate(
const eC_Value& vTimes = eC_FromInt(1));
197 vWidth = eC_FromInt(0);
198 vHeight = eC_FromInt(0);
216 const eC_UInt& uiModifiers);
219 const eC_Value& vDeltaX,
220 const eC_Value& vDeltaY,
221 const eC_Value& vAbsX,
222 const eC_Value& vAbsY);
225 const eC_Value& vAbsX,
226 const eC_Value& vAbsY);
261#ifdef GUILIANI_STREAM_GUI
266#ifdef GUILIANI_WRITE_GUI
GUIKeyIdentifier_t
Platform independent key identifiers.
Definition: GUIEventTypeResource.h:205
ObjectHandle_t
List of object resource ids.
Definition: GUIObjectHandleResource.h:55
This composite object arranges and animates its contained children in a "carousel" fashion.
Definition: GUICarousel.h:98
virtual eC_Bool DoKeyDown(const GUIKeyIdentifier_t &eKeyID, const eC_UInt &uiModifiers)
eC_Value GetDegreesPerChild()
virtual eC_Bool AddObject(CGUIObject *pkObject)
void RotateToObject(CGUIObject *pkObject)
static eC_Bool ms_bInvertInput
Inverts the direction of keyboard input for ALL carousels.
Definition: GUICarousel.h:336
eC_Bool m_bRotateByCursorKeys
Definition: GUICarousel.h:314
eC_Int GetSelectedIndex() const
Definition: GUICarousel.h:184
eC_Value m_vRotationAngle
Current rotation angle (in degrees) of carousel.
Definition: GUICarousel.h:305
void SetTiltAngle(const eC_Value vTiltAngle)
eC_Value m_vTiltAngle
Value by which the carousel is tilted around the X-Axis (internally stored in range 0-1)
Definition: GUICarousel.h:309
void SetPerspectiveFactor(const eC_Value vPerspectiveFactor)
Definition: GUICarousel.h:249
virtual void RemoveObject(CGUIObject *pkObject)
virtual void WriteToStream(const eC_Bool bWriteClassID=false)
CGUICarousel(CGUICompositeObject *const pkParent, const eC_Value &vX, const eC_Value &vY, const eC_Value &vWidth, const eC_Value &vHeight, const ObjectHandle_t &eID=NO_HANDLE)
eC_Value GetRadius() const
Definition: GUICarousel.h:147
eC_UInt m_uiNOFEntries
Definition: GUICarousel.h:328
virtual eC_Bool IsHighlightable() const
Definition: GUICarousel.h:137
virtual void DoAnimate(const eC_Value &vTimes=eC_FromInt(1))
virtual eC_Bool SetValue(const CGUIValue &rkValue)
Definition: GUICarousel.h:121
eC_Bool m_bFlowMode
Definition: GUICarousel.h:325
void EnforceFocusBehaviour()
Ensures that only the selected child object is focusable.
void GetOriginalSize(const eC_UInt uiIndex, eC_Value &vWidth, eC_Value &vHeight)
Definition: GUICarousel.h:195
void SetVertical(const eC_Bool bVertical)
Definition: GUICarousel.h:254
eC_Bool m_bKineticAnimation
Indicates if the current animation is "kinetic" as the result of a preceeding drag event.
Definition: GUICarousel.h:330
virtual eC_Bool DoDrag(const eC_Value &vDeltaX, const eC_Value &vDeltaY, const eC_Value &vAbsX, const eC_Value &vAbsY)
static void SetInvertInput(const eC_Bool bInvert)
Definition: GUICarousel.h:259
eC_Value GetTiltAngle() const
Definition: GUICarousel.h:155
eC_Value m_vPerspectiveFactor
Definition: GUICarousel.h:322
virtual void SetWidth(const eC_Value &vX)
void SetNumberOfFlowModeEntries(const eC_UInt uiNOFEntries)
Definition: GUICarousel.h:240
eC_Int m_iCarouselItemIndex
Index of currently focused child object within child list.
Definition: GUICarousel.h:311
CGUIObject * GetSelectedObject()
Definition: GUICarousel.h:180
virtual eC_Bool DoDragEnd(const eC_Value &vAbsX, const eC_Value &vAbsY)
eC_Value m_vDragSpeed
Speed of the last drag event. Relevant for setting the speed of a subsequent kinetic animation.
Definition: GUICarousel.h:332
void SetRadius(const eC_Value vRadius)
Definition: GUICarousel.h:142
virtual void ArrangeChildren()
Arranges the child objects in an elliptic shape.
void JumpToObject(CGUIObject *pkObject)
eC_Value m_vTargetAngle
Desired target angle (in degrees). This varies from the current rotation angle during rotation.
Definition: GUICarousel.h:307
eC_Value m_vRadius
Pixel radius of carousel.
Definition: GUICarousel.h:316
eC_Bool m_bVertical
Indicates if the carousel is arranged horizontally or vertically.
Definition: GUICarousel.h:334
virtual void SetHeight(const eC_Value &vX)
void SetSelectedObject(CGUIObject *pkObject)
void EnableFlowMode(const eC_Bool bEnable)
Definition: GUICarousel.h:235
eC_TListDoubleLinked< sSizeStorage > m_OriginalSizes
List of original object sizes (one entry per child object)
Definition: GUICarousel.h:303
eC_Bool m_bDragging
Internal flag indicating whether the carousel is currently being dragged.
Definition: GUICarousel.h:318
virtual void ReadFromStream()
This is the Guiliani base class for all composite objects.
Definition: GUICompositeObject.h:70
CGUIObject * GetChild(const eC_UInt uIndex) const
eC_UInt GetNumberOfChildren() const
Definition: GUICompositeObject.h:474
This is the Guiliani base class all controls are derived from.
Definition: GUIObject.h:79
virtual eC_Bool SetValue(const CGUIValue &rkValue)
Definition: GUIObject.h:1059
Helper class to supply a platform independent rectangle implementation.
Definition: GUIRect.h:63
eC_Value GetWidth() const
Definition: GUIRect.h:164
eC_Value GetHeight() const
Definition: GUIRect.h:175
CGUIValue stores a single value in one specific type.
Definition: GUIValue.h:25
Represents a double linked list template with header and tail node.
Definition: eC_TList_doubleLinked.h:67
Helper structure to store carousel items and their corresponding scaling factors for zordering.
Definition: GUICarousel.h:280
CGUIObject * pkObject
Pointer to object (key value)
Definition: GUICarousel.h:282
eC_Value vScaleFactor
Scaling factor (Larger values represent objects in the foreground)
Definition: GUICarousel.h:284
Helper structure to store original sizes (before any zooming) of child objects.
Definition: GUICarousel.h:272
CGUIRect kRect
rectangle with stored original size
Definition: GUICarousel.h:276
CGUIObject * pObj
Pointer to object (key value)
Definition: GUICarousel.h:274