43 #include "UI/pageprovider.h"
44 #include "UI/widgetfactory.h"
45 #include "UI/uienumerations.h"
70 PagedContainer* Container;
73 friend class RenderableFactory;
76 Caption* ValueDisplay;
86 UI::SpinnerStyle SpinLayout;
87 Vector2 IncrementOffset;
88 Vector2 DecrementOffset;
89 Vector2 ValueDisplayOffset;
91 virtual void CreateHorizontalSpinner(const Vector2& Position, const Vector2& Size, const Real& GlyphHeight);
93 virtual void CreateVerticalSpinner(const Vector2& Position, const Vector2& Size, const Real& GlyphHeight);
95 virtual void CreateBoxSpinner(const Vector2& Position, const Vector2& Size, const Real& GlyphHeight);
97 virtual void CalculateOffsets(const Vector2& Size);
99 virtual void SetLocation(const Vector2& Position);
101 virtual void SetArea(const Vector2& Size);
103 virtual void CheckValueLimits();
105 virtual String GetValueAsText();
107 virtual void UpdateImpl(bool Force = false);
109 virtual void SetVisibleImpl(bool visible);
111 virtual bool CheckMouseHoverImpl();
113 virtual void ProcessCapturedInputs();
121 Spinner(const String& name, const Rect& RendRect, const UI::SpinnerStyle& SStyle, const Real& GlyphHeight, Screen* parent);
127 virtual void SetSpinnerValue(const int& ValueToSet);
130 virtual int GetSpinnerValue();
135 virtual void SetValueLimits(const int& Lower, const int& Upper);
138 virtual void SetEditable(bool Edit);
141 virtual bool GetEditable();
146 virtual void EnableDecimalDisplay(bool Enable, const Whole& Places = 1);
150 virtual void SetPosition(const Vector2& Position);
153 virtual void SetActualPosition(const Vector2& Position);
157 virtual void SetSize(const Vector2& Size);
160 virtual void SetActualSize(const Vector2& Size);
163 virtual void UpdateDimensions();
166 virtual Button* GetIncrement();
169 virtual Button* GetDecrement();
172 virtual Caption* GetValueDisplay();
175 // PageProvider Methods
178 virtual Real GetMaxXPages() const;
180 virtual Real GetMaxYPages() const;
183 virtual Real GetCurrentXPage() const;
185 virtual Real GetCurrentYPage() const;
189 virtual void SetOrdering(const UI::OrderingPriority Order);
192 virtual UI::OrderingPriority GetOrdering() const;
198 virtual void ProtoSerializePageData(XML::Node& SelfRoot) const;
200 virtual void ProtoDeSerializePageData(const XML::Node& SelfRoot);
206 virtual void _SetContainer(PagedContainer* ToUpdate);
208 virtual void _NotifyContainerUpdated();//*/