XII Release 0.1.0
Loading...
Searching...
No Matches
xiiQtVariantContainerWidget Class Reference
Inheritance diagram for xiiQtVariantContainerWidget:
[legend]

Public Member Functions

 xiiQtVariantContainerWidget (xiiVariantType::Enum variantType)
 *** xiiQtVariantContainerWidget ***
Public Member Functions inherited from xiiQtPropertyStandardTypeContainerWidget
 xiiQtPropertyStandardTypeContainerWidget ()
 *** xiiQtPropertyStandardTypeContainerWidget ***
Public Member Functions inherited from xiiQtPropertyContainerWidget
 xiiQtPropertyContainerWidget ()
 *** xiiQtPropertyContainerWidget ***
virtual bool HasLabel () const override
 If this returns true (default), a QLabel is created and the text that GetLabel() returns is displayed.
virtual void SetIsDefault (bool bIsDefault) override
 Whether the variable that the widget represents is currently set to the default value or has been modified.
Public Member Functions inherited from xiiQtPropertyWidget
 xiiQtPropertyWidget ()
 *** BASE ***
void Init (xiiQtPropertyGridWidget *pGrid, xiiObjectAccessorBase *pObjectAccessor, const xiiRTTI *pType, const xiiAbstractProperty *pProp)
const xiiAbstractProperty * GetProperty () const
const xiiHybridArray< xiiPropertySelection, 8 > & GetSelection () const
virtual const char * GetLabel (xiiStringBuilder &ref_sTmp) const
 The return value is used to display a label, if HasLabel() returns true.
virtual void ExtendContextMenu (QMenu &ref_menu)
bool GetCommonVariantSubType (const xiiHybridArray< xiiPropertySelection, 8 > &items, const xiiAbstractProperty *pProperty, xiiVariantType::Enum &out_type)
xiiVariant GetCommonValue (const xiiHybridArray< xiiPropertySelection, 8 > &items, const xiiAbstractProperty *pProperty)
void PrepareToDie ()
virtual void SetReadOnly (bool bReadOnly=true)
 By default disables the widget, but can be overridden to make a widget more interactable (for example to be able to copy text from it).

Protected Member Functions

virtual void OnInit () override
virtual void SetSelection (const xiiHybridArray< xiiPropertySelection, 8 > &items) override
virtual xiiPropertyCategory::Enum GetContainerCategory () const override
 Some containers like xiiVariant can be both a map or an array so we can't reply on the property type alone. For these containers, this method can be overwritten to retrieve the category from something other than m_pProp->GetCategory().
Protected Member Functions inherited from xiiQtPropertyStandardTypeContainerWidget
virtual xiiQtGroupBoxBase * CreateElement (QWidget *pParent) override
virtual xiiQtPropertyWidget * CreateWidget (xiiUInt32 index) override
virtual Element & AddElement (xiiUInt32 index) override
virtual void RemoveElement (xiiUInt32 index) override
virtual void UpdateElement (xiiUInt32 index) override
Protected Member Functions inherited from xiiQtPropertyContainerWidget
void UpdateElements ()
virtual void GetRequiredElements (xiiDynamicArray< xiiVariant > &out_keys) const
virtual void UpdatePropertyMetaState ()
void Clear ()
void DeleteItems (xiiHybridArray< xiiPropertySelection, 8 > &items)
void MoveItems (xiiHybridArray< xiiPropertySelection, 8 > &items, xiiInt32 iMove)
virtual void DoPrepareToDie () override
virtual void dragEnterEvent (QDragEnterEvent *event) override
virtual void dragMoveEvent (QDragMoveEvent *event) override
virtual void dragLeaveEvent (QDragLeaveEvent *event) override
virtual void dropEvent (QDropEvent *event) override
virtual void paintEvent (QPaintEvent *event) override
virtual void showEvent (QShowEvent *event) override
Protected Member Functions inherited from xiiQtPropertyWidget
void Broadcast (xiiPropertyEvent::Type type)
void PropertyChangedHandler (const xiiPropertyEvent &ed)
bool IsUndead () const
virtual bool eventFilter (QObject *pWatched, QEvent *pEvent) override

Additional Inherited Members

Public Slots inherited from xiiQtPropertyContainerWidget
void OnElementButtonClicked ()
void OnDragStarted (QMimeData &ref_mimeData)
void OnContainerContextMenu (const QPoint &pt)
void OnCustomElementContextMenu (const QPoint &pt)
Public Slots inherited from xiiQtPropertyWidget
void OnCustomContextMenu (const QPoint &pt)
Static Public Member Functions inherited from xiiQtPropertyWidget
static const xiiRTTI * GetCommonBaseType (const xiiHybridArray< xiiPropertySelection, 8 > &items)
static QColor SetPaletteBackgroundColor (xiiColorGammaUB inputColor, QPalette &ref_palette)
Protected Attributes inherited from xiiQtPropertyContainerWidget
QHBoxLayout * m_pLayout
xiiQtGroupBoxBase * m_pGroup
QVBoxLayout * m_pGroupLayout
xiiQtAddSubElementButton * m_pAddButton = nullptr
QPalette m_Pal
xiiHybridArray< xiiVariant, 16 > m_Keys
xiiDynamicArray< Element > m_Elements
xiiInt32 m_iDropSource = -1
xiiInt32 m_iDropTarget = -1
Protected Attributes inherited from xiiQtPropertyWidget
xiiQtPropertyGridWidget * m_pGrid = nullptr
xiiObjectAccessorBase * m_pObjectAccessor = nullptr
const xiiRTTI * m_pType = nullptr
const xiiAbstractProperty * m_pProp = nullptr
xiiHybridArray< xiiPropertySelection, 8 > m_Items
bool m_bIsDefault
 Whether the variable that the widget represents is currently set to the default value or has been modified.

Member Function Documentation

◆ GetContainerCategory()

xiiPropertyCategory::Enum xiiQtVariantContainerWidget::GetContainerCategory ( ) const
overrideprotectedvirtual

Some containers like xiiVariant can be both a map or an array so we can't reply on the property type alone. For these containers, this method can be overwritten to retrieve the category from something other than m_pProp->GetCategory().

Reimplemented from xiiQtPropertyContainerWidget.

◆ OnInit()

void xiiQtVariantContainerWidget::OnInit ( )
overrideprotectedvirtual

Reimplemented from xiiQtPropertyContainerWidget.

◆ SetSelection()

void xiiQtVariantContainerWidget::SetSelection ( const xiiHybridArray< xiiPropertySelection, 8 > & items)
overrideprotectedvirtual

This is called whenever the selection in the editor changes and thus the widget may need to display a different value.

If the array holds more than one element, the user selected multiple objects. In this case, the code should check whether the values differ across the selected objects and if so, the widget should display "multiple values".

Reimplemented from xiiQtPropertyContainerWidget.


The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Tools/Libs/GuiFoundation/PropertyGrid/PropertyBaseWidget.moc.h
  • /home/runner/work/XII/XII/Source/Tools/Libs/GuiFoundation/PropertyGrid/Implementation/PropertyBaseWidget.cpp