LibreOffice Module svx (master)
1
|
helper class for notifying XPropertyChangeListeners More...
#include <shapepropertynotifier.hxx>
Public Member Functions | |
PropertyChangeNotifier (::cppu::OWeakObject &_rOwner,::osl::Mutex &_rMutex) | |
constructs a notifier instance More... | |
~PropertyChangeNotifier () | |
void | addPropertyChangeListener (const OUString &_rPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &_rxListener) |
void | removePropertyChangeListener (const OUString &_rPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &_rxListener) |
void | registerProvider (const ShapeProperty _eProperty, const std::shared_ptr< IPropertyValueProvider > &_rProvider) |
registers an IPropertyValueProvider More... | |
void | notifyPropertyChange (const ShapeProperty _eProperty) const |
notifies changes in the given property to all registered listeners More... | |
void | disposing () |
is called to dispose the instance More... | |
Private Member Functions | |
PropertyChangeNotifier (const PropertyChangeNotifier &)=delete | |
PropertyChangeNotifier & | operator= (const PropertyChangeNotifier &)=delete |
Private Attributes | |
std::unique_ptr< PropertyChangeNotifier_Data > | m_xData |
helper class for notifying XPropertyChangeListeners
The class is intended to be held as member of the class which does the property change broadcasting.
Definition at line 100 of file shapepropertynotifier.hxx.
PropertyChangeNotifier::PropertyChangeNotifier | ( | ::cppu::OWeakObject & | _rOwner, |
::osl::Mutex & | _rMutex | ||
) |
constructs a notifier instance
_rOwner | the owner instance of the notifier. Will be used as css.lang.EventObject.Source when notifying events. |
Definition at line 94 of file shapepropertynotifier.cxx.
PropertyChangeNotifier::~PropertyChangeNotifier | ( | ) |
Definition at line 99 of file shapepropertynotifier.cxx.
|
privatedelete |
void PropertyChangeNotifier::addPropertyChangeListener | ( | const OUString & | _rPropertyName, |
const css::uno::Reference< css::beans::XPropertyChangeListener > & | _rxListener | ||
) |
Definition at line 147 of file shapepropertynotifier.cxx.
References m_xData.
void PropertyChangeNotifier::disposing | ( | ) |
is called to dispose the instance
Definition at line 159 of file shapepropertynotifier.cxx.
void PropertyChangeNotifier::notifyPropertyChange | ( | const ShapeProperty | _eProperty | ) | const |
notifies changes in the given property to all registered listeners
If no property value provider for the given property ID is registered, this is worth an assertion in a non-product build, and otherwise ignored.
Definition at line 113 of file shapepropertynotifier.cxx.
References aEvent, DBG_UNHANDLED_EXCEPTION, Exception, m_xData, and cppu::OInterfaceContainerHelper::notifyEach().
Referenced by SdrObject::notifyShapePropertyChange().
|
privatedelete |
void PropertyChangeNotifier::registerProvider | ( | const ShapeProperty | _eProperty, |
const std::shared_ptr< IPropertyValueProvider > & | _rProvider | ||
) |
registers an IPropertyValueProvider
Definition at line 103 of file shapepropertynotifier.cxx.
References ENSURE_OR_THROW, and m_xData.
void PropertyChangeNotifier::removePropertyChangeListener | ( | const OUString & | _rPropertyName, |
const css::uno::Reference< css::beans::XPropertyChangeListener > & | _rxListener | ||
) |
Definition at line 153 of file shapepropertynotifier.cxx.
References m_xData.
|
private |
Definition at line 135 of file shapepropertynotifier.hxx.
Referenced by addPropertyChangeListener(), disposing(), notifyPropertyChange(), registerProvider(), and removePropertyChangeListener().