Overload  1.1
Game engine with editor
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
OvUI::Widgets::AWidget Class Referenceabstract

#include <AWidget.h>

Inheritance diagram for OvUI::Widgets::AWidget:
OvUI::API::IDrawable OvUI::Plugins::Pluginable OvUI::Widgets::Layout::Columns< 2 > OvUI::Widgets::Layout::Columns< 5 > OvUI::Widgets::DataWidget< bool > OvUI::Widgets::DataWidget< double > OvUI::Widgets::DataWidget< float > OvUI::Widgets::DataWidget< int > OvUI::Widgets::DataWidget< std::array< double, _Size > > OvUI::Widgets::DataWidget< std::array< float, _Size > > OvUI::Widgets::DataWidget< std::array< int, _Size > > OvUI::Widgets::DataWidget< std::array< T, _Size > > OvUI::Widgets::DataWidget< std::string > OvUI::Widgets::DataWidget< std::vector< float > > OvUI::Widgets::DataWidget< Types::Color > OvUI::Widgets::Buttons::AButton OvUI::Widgets::DataWidget< T > OvUI::Widgets::Layout::Columns< _Size > OvUI::Widgets::Layout::Dummy OvUI::Widgets::Layout::Group OvUI::Widgets::Layout::NewLine OvUI::Widgets::Layout::Spacing OvUI::Widgets::Visual::Bullet OvUI::Widgets::Visual::Image OvUI::Widgets::Visual::ProgressBar OvUI::Widgets::Visual::Separator

Public Member Functions

 AWidget ()
 
virtual void Draw () override
 
void LinkTo (const AWidget &p_widget)
 
void Destroy ()
 
bool IsDestroyed () const
 
void SetParent (Internal::WidgetContainer *p_parent)
 
bool HasParent () const
 
Internal::WidgetContainerGetParent ()
 
- Public Member Functions inherited from OvUI::Plugins::Pluginable
 ~Pluginable ()
 
template<typename T , typename... Args>
T & AddPlugin (Args &&... p_args)
 
template<typename T >
T * GetPlugin ()
 
void ExecutePlugins ()
 
void RemoveAllPlugins ()
 

Public Attributes

bool enabled = true
 
bool lineBreak = true
 

Protected Member Functions

virtual void _Draw_Impl ()=0
 

Protected Attributes

Internal::WidgetContainerm_parent
 
std::string m_widgetID = "?"
 
bool m_autoExecutePlugins = true
 

Detailed Description

A AWidget is the base class for any widget of OvUI. It is basically a visual element that can be placed into a panel. It is drawable and can receive plugins

Constructor & Destructor Documentation

◆ AWidget()

OvUI::Widgets::AWidget::AWidget ( )

Constructor

Member Function Documentation

◆ _Draw_Impl()

virtual void OvUI::Widgets::AWidget::_Draw_Impl ( )
protectedpure virtual

Implemented in OvUI::Widgets::Plots::APlot, OvUI::Widgets::Buttons::AButton, OvUI::Widgets::InputFields::InputMultipleScalars< T, _Size >, OvUI::Widgets::InputFields::InputMultipleScalars< float, _Size >, OvUI::Widgets::InputFields::InputMultipleScalars< int, _Size >, OvUI::Widgets::InputFields::InputMultipleScalars< double, _Size >, OvUI::Widgets::Drags::DragMultipleScalars< T, _Size >, OvUI::Widgets::Drags::DragMultipleScalars< float, _Size >, OvUI::Widgets::Drags::DragMultipleScalars< int, _Size >, OvUI::Widgets::Drags::DragMultipleScalars< double, _Size >, OvUI::Widgets::Selection::RadioButton, OvUI::Widgets::Sliders::SliderMultipleScalars< T, _Size >, OvUI::Widgets::Sliders::SliderSingleScalar< T >, OvUI::Widgets::Sliders::SliderMultipleScalars< float, _Size >, OvUI::Widgets::Sliders::SliderMultipleScalars< int, _Size >, OvUI::Widgets::Sliders::SliderMultipleScalars< double, _Size >, OvUI::Widgets::Sliders::SliderSingleScalar< double >, OvUI::Widgets::Sliders::SliderSingleScalar< float >, OvUI::Widgets::Sliders::SliderSingleScalar< int >, OvUI::Widgets::Drags::DragSingleScalar< T >, OvUI::Widgets::InputFields::InputSingleScalar< T >, OvUI::Widgets::Drags::DragSingleScalar< double >, OvUI::Widgets::Drags::DragSingleScalar< float >, OvUI::Widgets::Drags::DragSingleScalar< int >, OvUI::Widgets::InputFields::InputSingleScalar< double >, OvUI::Widgets::InputFields::InputSingleScalar< float >, OvUI::Widgets::InputFields::InputSingleScalar< int >, OvUI::Widgets::Plots::PlotHistogram, OvUI::Widgets::Layout::TreeNode, OvUI::Widgets::Plots::PlotLines, OvUI::Widgets::Selection::RadioButtonLinker, OvUI::Widgets::Buttons::ButtonColored, OvUI::Widgets::Buttons::Button, OvUI::Widgets::Buttons::ButtonImage, OvUI::Widgets::Layout::Columns< _Size >, OvUI::Widgets::Menu::MenuItem, OvUI::Widgets::Menu::MenuList, OvUI::Widgets::Texts::TextColored, OvUI::Widgets::Layout::Columns< 2 >, OvUI::Widgets::Layout::Columns< 5 >, OvUI::Widgets::Layout::GroupCollapsable, OvUI::Widgets::Selection::ColorEdit, OvUI::Widgets::Selection::ColorPicker, OvUI::Widgets::Selection::ComboBox, OvUI::Widgets::Texts::TextSelectable, OvUI::Widgets::Visual::Image, OvUI::Widgets::Visual::ProgressBar, OvUI::Widgets::Buttons::ButtonSmall, OvUI::Widgets::InputFields::InputText, OvUI::Widgets::Selection::CheckBox, OvUI::Widgets::Buttons::ButtonArrow, OvUI::Widgets::Layout::Dummy, OvUI::Widgets::Texts::TextClickable, OvUI::Widgets::Texts::Text, OvUI::Widgets::Texts::TextLabelled, OvUI::Widgets::Layout::Spacing, OvUI::Widgets::Texts::TextDisabled, OvUI::Widgets::Texts::TextWrapped, OvUI::Widgets::Layout::Group, OvUI::Widgets::Layout::NewLine, OvUI::Widgets::Visual::Bullet, and OvUI::Widgets::Visual::Separator.

◆ Destroy()

void OvUI::Widgets::AWidget::Destroy ( )

Mark the widget as destroyed. It will be removed from the owner panel by the garbage collector

◆ Draw()

void OvUI::Widgets::AWidget::Draw ( )
overridevirtual

◆ GetParent()

OvUI::Internal::WidgetContainer * OvUI::Widgets::AWidget::GetParent ( )

Returns the parent of the widget or nullptr if there is no parent

◆ HasParent()

bool OvUI::Widgets::AWidget::HasParent ( ) const

Returns true if the widget has a parent

◆ IsDestroyed()

bool OvUI::Widgets::AWidget::IsDestroyed ( ) const

Returns true if the widget is marked as destroyed

◆ LinkTo()

void OvUI::Widgets::AWidget::LinkTo ( const AWidget p_widget)

Link the widget to another one by making its id identical to the given widget

Parameters
p_widget

◆ SetParent()

void OvUI::Widgets::AWidget::SetParent ( Internal::WidgetContainer p_parent)

Defines the parent of this widget

Parameters
p_parent

Member Data Documentation

◆ enabled

bool OvUI::Widgets::AWidget::enabled = true

◆ lineBreak

bool OvUI::Widgets::AWidget::lineBreak = true

◆ m_autoExecutePlugins

bool OvUI::Widgets::AWidget::m_autoExecutePlugins = true
protected

◆ m_parent

Internal::WidgetContainer* OvUI::Widgets::AWidget::m_parent
protected

◆ m_widgetID

std::string OvUI::Widgets::AWidget::m_widgetID = "?"
protected

The documentation for this class was generated from the following files: