Plasma Engine  2.0
Loading...
Searching...
No Matches
plQtStandardPropertyWidget Class Referenceabstract

Base class for most 'simple' property type widgets. Implements some of the standard functionality. More...

#include <PropertyBaseWidget.moc.h>

Inheritance diagram for plQtStandardPropertyWidget:

Public Member Functions

 plQtStandardPropertyWidget ()
 *** plQtStandardPropertyWidget ***
 
virtual void SetSelection (const plHybridArray< plPropertySelection, 8 > &items) override
 This is called whenever the selection in the editor changes and thus the widget may need to display a different value.
 
- Public Member Functions inherited from plQtPropertyWidget
 plQtPropertyWidget ()
 *** BASE ***
 
void Init (plQtPropertyGridWidget *pGrid, plObjectAccessorBase *pObjectAccessor, const plRTTI *pType, const plAbstractProperty *pProp)
 
const plAbstractPropertyGetProperty () const
 
const plHybridArray< plPropertySelection, 8 > & GetSelection () const
 
virtual bool HasLabel () const
 If this returns true (default), a QLabel is created and the text that GetLabel() returns is displayed.
 
virtual const char * GetLabel (plStringBuilder &ref_sTmp) const
 The return value is used to display a label, if HasLabel() returns true.
 
virtual void ExtendContextMenu (QMenu &ref_menu)
 
virtual void SetIsDefault (bool bIsDefault)
 Whether the variable that the widget represents is currently set to the default value or has been modified.
 
bool GetCommonVariantSubType (const plHybridArray< plPropertySelection, 8 > &items, const plAbstractProperty *pProperty, plVariantType::Enum &out_type)
 If the property is of type plVariant this function returns whether all items have the same type. If true is returned, out_Type contains the common type. Note that 'invalid' can be a common type.
 
plVariant GetCommonValue (const plHybridArray< plPropertySelection, 8 > &items, const plAbstractProperty *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

void BroadcastValueChanged (const plVariant &NewValue)
 
virtual void DoPrepareToDie () override
 
const plVariantGetOldValue () const
 
virtual void InternalSetValue (const plVariant &value)=0
 
- Protected Member Functions inherited from plQtPropertyWidget
void Broadcast (plPropertyEvent::Type type)
 
void PropertyChangedHandler (const plPropertyEvent &ed)
 
virtual void OnInit ()=0
 
bool IsUndead () const
 
virtual bool eventFilter (QObject *pWatched, QEvent *pEvent) override
 

Protected Attributes

plVariant m_OldValue
 
- Protected Attributes inherited from plQtPropertyWidget
plQtPropertyGridWidgetm_pGrid = nullptr
 
plObjectAccessorBasem_pObjectAccessor = nullptr
 
const plRTTIm_pType = nullptr
 
const plAbstractPropertym_pProp = nullptr
 
plHybridArray< plPropertySelection, 8 > m_Items
 
bool m_bIsDefault
 Whether the variable that the widget represents is currently set to the default value or has been modified.
 

Additional Inherited Members

- Public Slots inherited from plQtPropertyWidget
void OnCustomContextMenu (const QPoint &pt)
 
- Static Public Member Functions inherited from plQtPropertyWidget
static const plRTTIGetCommonBaseType (const plHybridArray< plPropertySelection, 8 > &items)
 
static QColor SetPaletteBackgroundColor (plColorGammaUB inputColor, QPalette &ref_palette)
 

Detailed Description

Base class for most 'simple' property type widgets. Implements some of the standard functionality.

Member Function Documentation

◆ DoPrepareToDie()

virtual void plQtStandardPropertyWidget::DoPrepareToDie ( )
inlineoverrideprotectedvirtual

Implements plQtPropertyWidget.

◆ SetSelection()

void plQtStandardPropertyWidget::SetSelection ( const plHybridArray< plPropertySelection, 8 > & items)
overridevirtual

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 plQtPropertyWidget.

Reimplemented in plQtExposedBoneWidget, and plQtVarianceTypeWidget.


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