LibreOffice
LibreOffice 24.2 SDK C/C++ API Reference
Protected Member Functions | List of all members
cppu::PropertySetMixin< T > Class Template Reference

A helper mixin to implement certain UNO interfaces related to property set handling on top of the attributes of a given UNO interface type. More...

#include <propertysetmixin.hxx>

Inheritance diagram for cppu::PropertySetMixin< T >:
cppu::PropertySetMixinImpl

Protected Member Functions

 PropertySetMixin (css::uno::Reference< css::uno::XComponentContext > const &context, Implements implements, css::uno::Sequence< rtl::OUString > const &absentOptional)
 The constructor. More...
 
 ~PropertySetMixin ()
 The destructor. More...
 
- Protected Member Functions inherited from cppu::PropertySetMixinImpl
void prepareSet (rtl::OUString const &propertyName, css::uno::Any const &oldValue, css::uno::Any const &newValue, BoundListeners *boundListeners)
 A function used by subclasses of cppu::PropertySetMixin when implementing UNO interface type attribute setter functions. More...
 
void dispose ()
 Mark this instance as being disposed. More...
 
virtual css::uno::Any queryInterface (css::uno::Type const &type) SAL_OVERRIDE
 A function used by subclasses of cppu::PropertySetMixin when implementing css::uno::XInterface::queryInterface. More...
 
virtual css::uno::Reference< css::beans::XPropertySetInfo > getPropertySetInfo () SAL_OVERRIDE
 
virtual void setPropertyValue (rtl::OUString const &propertyName, css::uno::Any const &value) SAL_OVERRIDE
 
virtual css::uno::Any getPropertyValue (rtl::OUString const &propertyName) SAL_OVERRIDE
 
virtual void addPropertyChangeListener (rtl::OUString const &propertyName, css::uno::Reference< css::beans::XPropertyChangeListener > const &listener) SAL_OVERRIDE
 Adds a css::beans::XPropertyChangeListener. More...
 
virtual void removePropertyChangeListener (rtl::OUString const &propertyName, css::uno::Reference< css::beans::XPropertyChangeListener > const &listener) SAL_OVERRIDE
 
virtual void addVetoableChangeListener (rtl::OUString const &propertyName, css::uno::Reference< css::beans::XVetoableChangeListener > const &listener) SAL_OVERRIDE
 Adds a css::beans::XVetoableChangeListener. More...
 
virtual void removeVetoableChangeListener (rtl::OUString const &propertyName, css::uno::Reference< css::beans::XVetoableChangeListener > const &listener) SAL_OVERRIDE
 
virtual void setFastPropertyValue (sal_Int32 handle, css::uno::Any const &value) SAL_OVERRIDE
 
virtual css::uno::Any getFastPropertyValue (sal_Int32 handle) SAL_OVERRIDE
 
virtual css::uno::Sequence< css::beans::PropertyValue > getPropertyValues () SAL_OVERRIDE
 
virtual void setPropertyValues (css::uno::Sequence< css::beans::PropertyValue > const &props) SAL_OVERRIDE
 

Additional Inherited Members

- Protected Types inherited from cppu::PropertySetMixinImpl
enum  Implements { IMPLEMENTS_PROPERTY_SET = 1, IMPLEMENTS_FAST_PROPERTY_SET = 2, IMPLEMENTS_PROPERTY_ACCESS = 4 }
 Flags used by subclasses of cppu::PropertySetMixin to specify what UNO interface types shall be supported. More...
 

Detailed Description

template<typename T>
class cppu::PropertySetMixin< T >

A helper mixin to implement certain UNO interfaces related to property set handling on top of the attributes of a given UNO interface type.

The UNO interface type is specified by the type parameter T (which must correspond to a UNO interface type).

No specializations of this class template should be added by client code.

Since
UDK 3.2.1

Constructor & Destructor Documentation

◆ PropertySetMixin()

template<typename T >
cppu::PropertySetMixin< T >::PropertySetMixin ( css::uno::Reference< css::uno::XComponentContext > const &  context,
Implements  implements,
css::uno::Sequence< rtl::OUString > const &  absentOptional 
)
inlineprotected

The constructor.

May throw css::uno::RuntimeException and std::bad_alloc.

Parameters
contextthe component context used by this class template; must not be null, and must supply the com.sun.star.reflection.theCoreReflection and com.sun.star.reflection.theTypeDescriptionManager singletons
implementsa combination of zero or more flags specifying what UNO interface types shall be supported
absentOptionala list of optional properties that are not present, and should thus not be visible via css::beans::XPropertySet::getPropertySetInfo, css::beans::XPropertySet::addPropertyChangeListener, css::beans::XPropertySet::removePropertyChangeListener, css::beans::XPropertySet::addVetoableChangeListener, and css::beans::XPropertySet::removeVetoableChangeListener. For consistency reasons, the given absentOptional should only contain the names of attributes that represent optional properties that are not present (that is, the attribute getters and setters always throw a css::beans::UnknownPropertyException), and should contain each such name only once. If an optional property is not present (that is, the corresponding attribute getter and setter always throw a css::beans::UnknownPropertyException) but is not contained in the given absentOptional, then it will be visible via css::beans::XPropertySet::getPropertySetInfo as a css::beans::Property with a set css::beans::PropertyAttribute::OPTIONAL. If the given implements specifies that css::beans::XPropertySet is not supported, then the given absentOptional is effectively ignored and can be empty.

◆ ~PropertySetMixin()

template<typename T >
cppu::PropertySetMixin< T >::~PropertySetMixin ( )
inlineprotected

The destructor.

Does not throw.


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