16#include "GUINinePatch.h"
17#include "GUIColorPropertyObserver.h"
19#include "GUICommonEnums.h"
74 const eC_Value& vX,
const eC_Value& vY,
75 const eC_Value& vWidth,
const eC_Value& vHeight,
140 virtual void AddEntry(
const eC_String &kEntry, eC_Bool bSort =
false);
194 virtual void DoAnimate(
const eC_Value& vTimes = eC_FromInt(1));
195 virtual eC_Bool
DoClick(
const eC_Value& vAbsX,
const eC_Value& vAbsY);
196 virtual eC_Bool
DoButtonDown(
const eC_Value& vAbsX,
const eC_Value& vAbsY);
197 virtual eC_Bool
DoDrag(
const eC_Value& vDeltaX,
const eC_Value& vDeltaY,
const eC_Value& vAbsX,
const eC_Value& vAbsY);
198 virtual eC_Bool
DoDragEnd(
const eC_Value& vAbsX,
const eC_Value& vAbsY);
305#if defined(GUILIANI_STREAM_GUI)
313#if defined(GUILIANI_WRITE_GUI)
483 const eC_String &kNodeText,
484 eC_Value vXPos, eC_Value vYPos,
485 eC_Value vWidth, eC_Value vHeight) :
515 eC_Int iValueOther = 0;
517 eC_Bool bIsNumOther = kNode.
m_sNodeText.ToInt(iValueOther);
518 if (bIsNumMe && bIsNumOther)
520 return (iValueOther > iValueMe);
522 else if (!bIsNumMe && !bIsNumOther)
FontResource_t
List of font resource ids.
Definition: GUIFontResource.h:54
Helper Macros in Guiliani
ImageResource_t
Enumeration of image resource ids.
Definition: GUIImageResource.h:126
ObjectHandle_t
List of object resource ids.
Definition: GUIObjectHandleResource.h:55
GlobalProperty_t
List of property resource ids.
Definition: GUIPropertyResource.h:67
This observer provides the base-interface for controls when using color-properties.
Definition: GUIColorPropertyObserver.h:23
Orientation_t
orientation of controls
Definition: GUICommonEnums.h:57
This is the Guiliani base class for all composite objects.
Definition: GUICompositeObject.h:70
EasingType_t
The differnet easing types.
Definition: GUIEasing.h:50
Helper class to for storing Nine-Patch images.
Definition: GUINinePatch.h:41
This is the Guiliani base class all controls are derived from.
Definition: GUIObject.h:79
CGUIPoint class to hold two values (x, y) like a vector.
Definition: GUIPoint.h:18
Class for handling a text.
Definition: GUIText.h:103
virtual void SetFont(const FontResource_t &eFontID)
@ H_CENTERED
The text is horizontally centered.
Definition: GUIText.h:126
virtual void SetTextHeight(const eC_Value &vTextHeight)
@ V_CENTERED
The text is vertically centered in its area.
Definition: GUIText.h:118
void SetAligned(const VerAligned_t &eVerAligned=V_TOP, const HorAligned_t &eHorAligned=H_LEFT)
virtual void SetTextWidth(const eC_Value &vTextWidth)
CGUIValue stores a single value in one specific type.
Definition: GUIValue.h:25
Displays a wheel in the GUI.
Definition: GUIWheel.h:56
void SetFocussedEntryFont(const FontResource_t &eFontID)
FontResource_t GetFocussedEntryFont() const
eC_UInt m_uiDragStarted
Holds the time when the last drag was started. Used to calculate the drag speed.
Definition: GUIWheel.h:571
eC_Int m_iMinValue
Smallest generated entry.
Definition: GUIWheel.h:561
virtual eC_Bool IsHighlightable() const
Definition: GUIWheel.h:192
virtual NodeList::Iterator GetPreviousNodeCyclic(NodeList::Iterator kIter)
virtual void ReadFromStream()
CGUIEasing::EasingType_t m_eEasingTypeCurrent
EasingType used for kinetic animation.
Definition: GUIWheel.h:579
virtual eC_Value IndexCycleOffsetToPixel(eC_Int iIndex, eC_Int iCycle, eC_Value vOffset)
CGUIWheel()
Default constructor.
virtual void AdjustSize()
virtual const eC_String & GetCurrentValue()
virtual void CreateNodesFromRange()
eC_Int m_iStepSize
Step size used for entry generation.
Definition: GUIWheel.h:563
FontResource_t m_eFocussedEntryFont
Font of the focused entry.
Definition: GUIWheel.h:589
eC_Value m_vEasingDurationBack
Easing duration for non-cyclic wheel if dragged further then wheel size.
Definition: GUIWheel.h:586
virtual void ScrollToAnimated(eC_UInt uiNodeIndex)
eC_String m_kFocussedValue
Current focused value.
Definition: GUIWheel.h:590
eC_UInt GetNumberOfEntries()
void SetEntriesFont(const FontResource_t &eFontID)
CGUIWheel & operator=(const CGUIWheel &kSource)
virtual void ScrollToAnimated(const eC_String &kNodeText)
virtual void AdaptWheel()
void SetFocussedEntryColor(const GlobalProperty_t &eFocussedEntryColor)
CGUINinePatch & GetNinePatch()
Definition: GUIWheel.h:325
virtual eC_UInt GetCurrentIndex()
NodeList m_kNodes
List containing all nodes/entries.
Definition: GUIWheel.h:537
eC_Int GetStepSize() const
virtual void ScrollTo(const eC_String &kNodeText)
CGUIWheel(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_Bool m_bCyclic
True if wheel is cyclic. False if non-cyclic. The wheel then stops at begin/end of entries.
Definition: GUIWheel.h:559
ImageResource_t m_eBGImage
Used background image.
Definition: GUIWheel.h:574
virtual eC_Int SearchEntry(const eC_String &kNodeText)
eC_Value m_vAniTargetScrollPos
Animation target scrolling position.
Definition: GUIWheel.h:554
eC_UInt GetFocussedEntryColor() const
eC_Value m_vNodeX
Node horizontal feed rate for the gui text positions.
Definition: GUIWheel.h:591
eC_String m_kPostfixString
String will be place behind of entry. Can be used for example for units etc.
Definition: GUIWheel.h:567
eC_Bool m_bFillFromBegin
If true entries will be filled in front of entry, if false at end.
Definition: GUIWheel.h:568
virtual eC_Bool SetValue(const CGUIValue &rkValue)
eC_UInt m_CurrentNodeIndex
Index of current node.
Definition: GUIWheel.h:540
virtual eC_Value GetCurrentScrollPosForCurrentDirection()
eC_Int m_iAniStartNodeCycle
Animation start node cycle.
Definition: GUIWheel.h:549
virtual void SetCurrentNodeSafeIter(const NodeList::SafeIterator &kNodeSafeIter)
virtual eC_UInt GetCurrentNode()
void SetDirection(CGUICommonEnums::Orientation_t eDirection)
eC_String m_kPrefixString
String will be place in front of entry.
Definition: GUIWheel.h:566
eC_Value m_vAniStartScrollPos
Animation start scrolling position.
Definition: GUIWheel.h:550
eC_Bool IsUsingRange() const
virtual void DoAnimate(const eC_Value &vTimes=eC_FromInt(1))
eC_Int m_iMaxValue
Biggest generated entry.
Definition: GUIWheel.h:562
FontResource_t m_eEntriesFont
Font of all non focused entries.
Definition: GUIWheel.h:588
CGUICommonEnums::Orientation_t GetDirection() const
eC_Int m_iAniTargetNodeIndex
Animation target node.
Definition: GUIWheel.h:552
eC_Int m_iMinDigitNumber
Minimal number of digits.
Definition: GUIWheel.h:564
void SetPostfixString(const eC_String &kPostfixString)
eC_Value m_vEasingDurationCurrent
Duration of easing animation for kinetic scrolling.
Definition: GUIWheel.h:584
virtual void AdjustNodesRelativePositionsNotCyclic()
virtual eC_Bool DoDrag(const eC_Value &vDeltaX, const eC_Value &vDeltaY, const eC_Value &vAbsX, const eC_Value &vAbsY)
eC_Value m_vRemainingSpaceY
If the nodes are not fitting exactly this is the rest space.
Definition: GUIWheel.h:595
CGUIEasing::EasingType_t m_eEasingTypeBack
Easing for non-cyclic wheel if dragged further then wheel size.
Definition: GUIWheel.h:581
virtual void NormalizeEntry(eC_String &kEntry)
virtual eC_Bool DoClick(const eC_Value &vAbsX, const eC_Value &vAbsY)
CGUIWheel(const CGUIWheel &kToBeCopied)
eC_String m_kFillupString
String will be used to fill up missing digits.
Definition: GUIWheel.h:565
eC_Value m_vEasingDurationNormal
Easing duration used for all animations which will not go further then the wheel end.
Definition: GUIWheel.h:585
eC_Bool m_bUseRange
If true entries will be automatically generated with the use of below values.
Definition: GUIWheel.h:560
virtual eC_Bool DoDragEnd(const eC_Value &vAbsX, const eC_Value &vAbsY)
eC_Value m_vCurrentScrollPosY
Scrolling position of current node (offset in pixels (0-m_vNodeDefaultHeight)).
Definition: GUIWheel.h:542
CGUINinePatch m_kNinePatch
used ninepatch
Definition: GUIWheel.h:598
virtual void WriteToStream(const eC_Bool bWriteClassID=false)
eC_Value m_vNodeDefaultHeight
Entry height in pixels. Has to be > 0.
Definition: GUIWheel.h:557
virtual void PixelToIndexCycleOffset(eC_Value vPixel, eC_Int &iIndex, eC_Int &iCycle, eC_Value &vOffset)
void SetEntriesColor(const GlobalProperty_t &eEntriesColor)
virtual void StartScrollingAnimation()
eC_Bool GetAnimatedUpdate() const
virtual void DeleteAllEntries()
eC_Value m_vRemainingSpaceX
If the nodes are not fitting exactly this is the rest space.
Definition: GUIWheel.h:594
CGUICommonEnums::Orientation_t m_eDirection
Direction of the wheel. Either horizontal or vertical.
Definition: GUIWheel.h:576
eC_Bool m_bAnimatedUpdate
if updates should animate to value, rather than jump
Definition: GUIWheel.h:600
virtual void SetWidth(const eC_Value &vWidth)
virtual void AdjustCurrentScrollPosAndNode(eC_Value vDragDelta)
virtual void SetCurrentScrollPosForCurrentDirection(eC_Value vCurrentScrollPos)
virtual void SetCurrentNode(eC_UInt uiNodeIndex)
eC_TListDoubleLinked< NodeInfo > NodeList
Type used for the nodes.
Definition: GUIWheel.h:62
eC_Value m_vAdditionalSpace
Used for positioning in DoDraw.
Definition: GUIWheel.h:596
eC_Int m_iAniStartNodeIndex
Animation start node index.
Definition: GUIWheel.h:548
void SetStepSize(eC_Int iStepSize)
eC_UInt GetEntriesColor() const
eC_Value m_vCurrentScrollPosX
Scrolling position of current node (offset in pixels (0-m_vNodeDefaultWidth)).
Definition: GUIWheel.h:541
virtual void AdjustNodesRelativePositionsCyclic()
void SetMaxValue(eC_Int iMaxValue)
eC_UInt m_uiDragTimeStamp
Time at start of animation and Timestamp of last received DoDrag()-Event.
Definition: GUIWheel.h:570
virtual void SetHeight(const eC_Value &vHeight)
eC_Value m_vTargetPos
Target position in pixels for animation.
Definition: GUIWheel.h:544
virtual NodeList::Iterator GetNextNodeCyclic(NodeList::Iterator kIter)
eC_Int m_iAniTargetNodeCycle
Animation target node cycle.
Definition: GUIWheel.h:553
static const eC_UInt INDEX_COLOR_FOCUSSEDENTRY
index for focussed entry color
Definition: GUIWheel.h:535
CGUIPoint m_kDragStart
Holds the start point of a drag.
Definition: GUIWheel.h:572
void SetAnimatedUpdate(const eC_Bool &bAnimatedUpdate)
void SetEntriesColor(const eC_UInt &uiEntriesColor)
static const eC_UInt INDEX_COLOR_ENTRY
index for entry-color
Definition: GUIWheel.h:534
virtual eC_Value GetDefaultNodeSizeCurrentDirection()
FontResource_t GetEntriesFont() const
virtual void SetDefaultNodeSize(eC_Value vWidth, eC_Value vHeight)
void SetFocussedEntryColor(const eC_UInt &uiFocussedEntryColor)
virtual void OnColorPropertyChange()
eC_UInt m_uiNumOfVisibleNodes
Number of visible nodes of the wheel.
Definition: GUIWheel.h:593
NodeList::SafeIterator m_CurrentNodeSafeIter
Iterator pointing to the current node/entry.
Definition: GUIWheel.h:539
virtual void ScrollTo(eC_UInt uiNodeIndex)
CGUIEasing::EasingType_t m_eEasingTypeNormal
Easing used for all animations which will not go further then the wheel end.
Definition: GUIWheel.h:580
virtual void AddEntry(const eC_String &kEntry, eC_Bool bSort=false)
virtual void StopScrollingAnimation()
virtual void GetNodeIndexInRelPos(eC_Value vOffset, eC_Int &iIndex, eC_Int &iCycle, eC_Value &vScrollPos)
virtual void AdjustNodesRelativePositions()
virtual eC_UInt GetNodeIndexFromIter(const NodeList::Iterator &kNodeIter)
void SetUseRange(eC_Bool bUseRange)
virtual eC_Bool DoButtonDown(const eC_Value &vAbsX, const eC_Value &vAbsY)
virtual void DeleteEntry(const eC_String &kEntry)
eC_Value m_vNodeY
Node vertical feed rate for the gui text positions.
Definition: GUIWheel.h:592
eC_Value m_vNodeDefaultWidth
Entry width in pixels. Has to be > 0.
Definition: GUIWheel.h:556
void SetMinValue(eC_Int iMinValue)
void SetCyclic(eC_Bool bCyclic)
virtual NodeList::SafeIterator GetCurrentNodeSafeIter()
Contains information about one node.
Definition: GUIWheel.h:454
eC_String m_sNodeText
Value of entry displayed.
Definition: GUIWheel.h:455
CGUIText * m_pkGUIText
GUIText needed to display value.
Definition: GUIWheel.h:456
NodeInfo(const NodeInfo &kToBeCopied)
Definition: GUIWheel.h:460
bool operator==(const NodeInfo &kNode)
Definition: GUIWheel.h:504
NodeInfo(CGUIObject *pkParent, const eC_String &kNodeText, eC_Value vXPos, eC_Value vYPos, eC_Value vWidth, eC_Value vHeight)
Definition: GUIWheel.h:481
bool operator>(const NodeInfo &kNode)
Definition: GUIWheel.h:512
NodeInfo & operator=(const NodeInfo &kNode)
NodeInfo()
Default constructor.
Definition: GUIWheel.h:468