Control

AppCUI::Controls::Control (class)

class Control

Subclassed by AppCUI::Controls::Button, AppCUI::Controls::CanvasViewer, AppCUI::Controls::CharacterTable, AppCUI::Controls::CheckBox, AppCUI::Controls::ColorPicker, AppCUI::Controls::ColumnsHeaderView, AppCUI::Controls::ComboBox, AppCUI::Controls::Desktop, AppCUI::Controls::Grid, AppCUI::Controls::KeySelector, AppCUI::Controls::Label, AppCUI::Controls::NumericSelector, AppCUI::Controls::Panel, AppCUI::Controls::Password, AppCUI::Controls::PropertyList, AppCUI::Controls::RadioBox, AppCUI::Controls::Splitter, AppCUI::Controls::Tab, AppCUI::Controls::TabPage, AppCUI::Controls::TextArea, AppCUI::Controls::TextField, AppCUI::Controls::UserControl, AppCUI::Controls::Window

Public Functions

template<typename T>
inline Reference<T> AddControl(unique_ptr<T> control)
template<typename T, typename ...Arguments>
inline Reference<T> CreateChildControl(Arguments... args)
bool RemoveControl(Control *control)
template<typename T>
inline bool RemoveControl(Reference<T> &control)
bool IsInitialized()
int GetX() const
int GetY() const
int GetWidth() const
int GetHeight() const
Graphics::Size GetSize() const
Graphics::Size GetClientSize() const
Graphics::Point GetAbsolutePosition() const
Graphics::Rect GetAbsoluteRectangle() const
void MoveTo(int newX, int newY)
bool Resize(int newWidth, int newHeight)
void RecomputeLayout()
int GetGroup()
void SetGroup(int newGroupID)
void ClearGroup()
bool SetHotKey(char16 hotKey)
Input::Key GetHotKey()
uint32 GetHotKeyTextOffset()
void ClearHotKey()
void SetEnabled(const bool value)
void SetVisible(const bool value)
void SetChecked(const bool value)
bool IsEnabled() const
bool IsVisible() const
bool IsChecked() const
bool HasFocus() const
bool IsMouseOver() const
ControlState GetState(ControlStateFlags flags) const
Reference<Control> GetParent()
Control **GetChildrenList()
Reference<Control> GetChild(uint32 index)
Reference<Control> GetFocusedChild()
uint32 GetChildrenCount()
bool GetChildIndex(Reference<Control> control, uint32 &index)
bool HasDistantParent(Reference<Control> parent)
Reference<AppCUI::Application::Config> GetConfig()
void RaiseEvent(Event eventType)
void RaiseEvent(Event eventType, int ID)
bool SetFocus()
void SetControlID(int newID)
int GetControlID()
void ExpandView()
void PackView()
bool SetText(const ConstString &caption, bool updateHotKey = false)
bool SetText(const Graphics::CharacterBuffer &caption)
bool SetTextWithHotKey(const ConstString &caption, uint32 hotKeyTextOffset)
const Graphics::CharacterBuffer &GetText()
void UpdateHScrollBar(uint64 value, uint64 maxValue)
void UpdateVScrollBar(uint64 value, uint64 maxValue)
void SetVScrollBarTopMargin(uint32 space)
void SetHScrollBarLeftMarging(uint32 space)
virtual Handlers::Control *Handlers()
virtual void Paint(Graphics::Renderer &renderer)
virtual void OnStart()
virtual bool OnKeyEvent(Input::Key keyCode, char16 UnicodeChar)
virtual void OnHotKey()
virtual void OnHotKeyChanged()
virtual void OnFocusRequested(Reference<Control> control)
virtual void OnFocus()
virtual void OnLoseFocus()
virtual bool OnFrameUpdate()
virtual void OnMousePressed(int x, int y, Input::MouseButton button, Input::Key keyCode)
virtual void OnMouseReleased(int x, int y, Input::MouseButton button, Input::Key keyCode)
virtual bool OnMouseDrag(int x, int y, Input::MouseButton button, Input::Key keyCode)
virtual bool OnMouseEnter()
virtual bool OnMouseOver(int x, int y)
virtual bool OnMouseLeave()
virtual bool OnMouseWheel(int x, int y, Input::MouseWheel direction, Input::Key keyCode)
virtual bool OnEvent(Reference<Control> sender, Event eventType, int controlID)
virtual bool OnUpdateCommandBar(Application::CommandBar &commandBar)
virtual void OnUpdateScrollBars()
virtual bool OnBeforeResize(int newWidth, int newHeight)
virtual void OnAfterResize(int newWidth, int newHeight)
virtual bool OnBeforeAddControl(Reference<Control> ctrl)
virtual void OnAfterAddControl(Reference<Control> ctrl)
virtual void OnControlRemoved(Reference<Control> ctrl)
virtual bool OnBeforeSetText(const ConstString &text)
virtual void OnAfterSetText()
virtual void OnExpandView(Graphics::Clip &expandedClip)
virtual void OnPackView()
virtual ~Control()

Public Members

void *Context

Protected Functions

bool IsMouseInControl(int x, int y)
bool SetMargins(int left, int top, int right, int bottom)
bool ShowToolTip(const ConstString &caption)
bool ShowToolTip(const ConstString &caption, int x, int y)
void HideToolTip()
ControlState GetComponentState(ControlStateFlags flags, bool isHovered, bool isPressedOrSelected)
Reference<Control> AddChildControl(unique_ptr<Control> control)
Control(void *context, const ConstString &caption, string_view layout, bool computeHotKey)