NDEVR
API Documentation
ResourceBase

A base class for templated resources. More...

Inherited by Resource< String >, Resource< uint02 >, Resource< TimeSpan >, Resource< uint08 >, Resource< PrivateKeyAlgorithm >, Resource< bool >, Resource< t_type >, Resource< TranslatedString >, Resource< PasswordString >, Resource< Buffer< String > >, Resource< Time >, Resource< ReleaseType >, Resource< UIMode >, Resource< ConstPointer< Unit > >, Resource< Vertex< 3, fltp08 > >, Resource< Vector< 3, Angle< fltp08 > > >, Resource< Vertex< 2, fltp08 > >, Resource< fltp08 >, Resource< ScreenshotRequest >, Resource< Vector< 2, Angle< fltp08 > > >, Resource< SelectionInfo >, Resource< fltp04 >, Resource< ViewportLayout >, Resource< RGBColor >, Resource< Buffer< RGBColor > >, Resource< UUID >, Resource< Angle< fltp08 > >, Resource< BitFlag >, Resource< Vector< 3, fltp08 > >, Resource< uint04 >, Resource< sint04 >, Resource< Model * >, Resource< GeometryCreateMode >, Resource< Angle< t_type > >, Resource< Matrix< fltp08, 4, 4 > >, Resource< ModelEditMode >, Resource< Buffer< UUID > >, Resource< MouseAction >, Resource< MouseSelectionMode >, Resource< ReferencePoint >, Resource< Vector< 2, bool > >, Resource< Buffer< NDEVRServerManager::OWLServer > >, Resource< NDEVRFileClient * >, Resource< Vector< 3, bool > >, Resource< File >, Resource< Angle< sint04 > >, Resource< IconThemeSettings * >, Resource< IconThemeSettings >, Resource< SnapPoint >, Resource< Vector< 2, fltp04 > >, Resource< Translator * >, Resource< ApplicationResource::ReleaseType >, Resource< ViewportLayoutTheme >, Resource< Bounds< 1, fltp08 > >, Resource< Vector< WidgetMode::e_size, bool > >, Resource< WidgetMode >, Resource< QWidget * >, Resource< LogPtr >, and Resource< T >.

Collaboration diagram for ResourceBase:
[legend]

Public Member Functions

 ResourceBase ()
 Constructs a default ResourceBase with no listeners.
 ResourceBase (const ResourceBase &value)
 Copy constructs a ResourceBase.
virtual ~ResourceBase ()
 Virtual destructor.
ResourceListeneraddListener (ResourceListener *listener) const
 Adds a listener that will be notified when this resource changes.
void addListener (ResourceListener *listener, bool silent_add) const
 Adds a listener with optional silent registration.
void refreshListeners ()
 Notifies all registered listeners that the resource value has changed.
void removeListener (ResourceListener *listener) const
 Removes a listener so it no longer receives update notifications.

Protected Attributes

Buffer< ResourceListener * > m_listeners
 The collection of listeners subscribed to this resource.

Detailed Description

A base class for templated resources.


Definition at line 42 of file ResourceListener.h.

Constructor & Destructor Documentation

◆ ResourceBase()

ResourceBase::ResourceBase ( const ResourceBase & value)
explicit

Copy constructs a ResourceBase.

Parameters
[in]valueThe ResourceBase to copy from. Listeners are not copied.

References ResourceBase().

◆ ~ResourceBase()

virtual ResourceBase::~ResourceBase ( )
virtual

Virtual destructor.

Cleans up listener references.

Member Function Documentation

◆ addListener() [1/2]

ResourceListener * ResourceBase::addListener ( ResourceListener * listener) const

Adds a listener that will be notified when this resource changes.

Parameters
[in]listenerThe listener to add.
Returns
The listener that was added.

Referenced by QCustomLineEdit::setup(), and QCustomComboBox::setupResource().

◆ addListener() [2/2]

void ResourceBase::addListener ( ResourceListener * listener,
bool silent_add ) const

Adds a listener with optional silent registration.

Parameters
[in]listenerThe listener to add.
[in]silent_addIf true, the listener is added without triggering an initial notification.

◆ removeListener()

void ResourceBase::removeListener ( ResourceListener * listener) const

Removes a listener so it no longer receives update notifications.

Parameters
[in]listenerThe listener to remove.

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