40 #ifndef _uidropdownlist_h
41 #define _uidropdownlist_h
43 #include "UI/widget.h"
44 #include "uienumerations.h"
59 class MEZZ_LIB DropDownList : public Widget
62 friend class RenderableFactory;
65 UI::ListBox* SelectionList;
68 void ConstructDropDownList(const Rect& RendRect, const Whole& Glyph, const UI::ScrollbarStyle& ScrollStyle);
70 virtual void UpdateImpl(bool Force = false);
72 virtual void SetVisibleImpl(bool visible);
74 virtual bool CheckMouseHoverImpl();
82 DropDownList(const String& name, const Rect& RendRect, const Real& LineHeight, const UI::ScrollbarStyle& ScrollStyle, Screen* parent);
90 DropDownList(const String& name, const Rect& RendRect, const Whole& Glyph, const UI::ScrollbarStyle& ScrollStyle, Screen* parent);
92 virtual ~DropDownList();
96 virtual void SetSelection(Widget* ToBeSelected);
99 virtual void SetSelection(const String& ToBeSelected);
103 virtual void SetPosition(const Vector2& Position);
106 virtual void SetActualPosition(const Vector2& Position);
110 virtual void SetSize(const Vector2& Size);
113 virtual void SetActualSize(const Vector2& Size);
116 virtual void UpdateDimensions();
119 virtual Widget* GetSelection();
122 virtual Button* GetListToggle();
125 virtual ListBox* GetSelectionList();