20 #ifndef INCLUDED_CPPUHELPER_PROPERTYSETMIXIN_HXX
21 #define INCLUDED_CPPUHELPER_PROPERTYSETMIXIN_HXX
27 #include <com/sun/star/beans/PropertyVetoException.hpp>
28 #include <com/sun/star/beans/UnknownPropertyException.hpp>
29 #include <com/sun/star/beans/XFastPropertySet.hpp>
30 #include <com/sun/star/beans/XPropertyAccess.hpp>
31 #include <com/sun/star/beans/XPropertySet.hpp>
32 #include <com/sun/star/lang/IllegalArgumentException.hpp>
33 #include <com/sun/star/lang/WrappedTargetException.hpp>
35 #include <com/sun/star/uno/RuntimeException.hpp>
40 namespace com {
namespace sun {
namespace star {
42 class XPropertyChangeListener;
43 class XPropertySetInfo;
44 class XVetoableChangeListener;
50 class XComponentContext;
53 namespace rtl {
class OUString; }
62 #pragma warning(disable: 4265)
83 #if defined __GNUC__ && !defined __clang__
84 #pragma GCC diagnostic push
85 #pragma GCC diagnostic ignored "-Wnon-virtual-dtor"
88 public css::beans::XPropertySet,
89 public css::beans::XFastPropertySet,
90 public css::beans::XPropertyAccess
103 IMPLEMENTS_PROPERTY_SET = 1,
110 IMPLEMENTS_FAST_PROPERTY_SET = 2,
117 IMPLEMENTS_PROPERTY_ACCESS = 4
231 css::uno::Any
const & oldValue,
232 css::uno::Any
const & newValue,
265 css::uno::Type
const & type)
266 throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE;
269 virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo()
270 throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE;
273 virtual
void SAL_CALL setPropertyValue(
274 rtl::OUString const & propertyName,
275 css::uno::Any const & value)
277 css::beans::UnknownPropertyException,
278 css::beans::PropertyVetoException,
279 css::lang::IllegalArgumentException,
280 css::lang::WrappedTargetException,
281 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
284 virtual css::uno::Any SAL_CALL getPropertyValue(
285 rtl::OUString const & propertyName)
287 css::beans::UnknownPropertyException,
288 css::lang::WrappedTargetException,
289 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
300 virtual
void SAL_CALL addPropertyChangeListener(
301 rtl::OUString const & propertyName,
303 css::beans::XPropertyChangeListener > const & listener)
305 css::beans::UnknownPropertyException,
306 css::lang::WrappedTargetException,
307 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
310 virtual
void SAL_CALL removePropertyChangeListener(
311 rtl::OUString const & propertyName,
313 css::beans::XPropertyChangeListener > const & listener)
315 css::beans::UnknownPropertyException,
316 css::lang::WrappedTargetException,
317 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
328 virtual
void SAL_CALL addVetoableChangeListener(
329 rtl::OUString const & propertyName,
331 css::beans::XVetoableChangeListener > const & listener)
333 css::beans::UnknownPropertyException,
334 css::lang::WrappedTargetException,
335 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
338 virtual
void SAL_CALL removeVetoableChangeListener(
339 rtl::OUString const & propertyName,
341 css::beans::XVetoableChangeListener > const & listener)
343 css::beans::UnknownPropertyException,
344 css::lang::WrappedTargetException,
345 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
348 virtual
void SAL_CALL setFastPropertyValue(
349 sal_Int32 handle, css::uno::Any const & value)
351 css::beans::UnknownPropertyException,
352 css::beans::PropertyVetoException,
353 css::lang::IllegalArgumentException,
354 css::lang::WrappedTargetException,
355 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
358 virtual css::uno::Any SAL_CALL getFastPropertyValue(
361 css::beans::UnknownPropertyException,
362 css::lang::WrappedTargetException,
363 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
366 virtual css::uno::Sequence< css::beans::PropertyValue > SAL_CALL getPropertyValues()
367 throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
370 virtual
void SAL_CALL setPropertyValues(
371 css::uno::Sequence< css::beans::PropertyValue > const & props)
373 css::beans::UnknownPropertyException,
374 css::beans::PropertyVetoException,
375 css::lang::IllegalArgumentException,
376 css::lang::WrappedTargetException,
377 css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
384 css::uno::Reference< css::uno::XComponentContext > const & context,
386 css::uno::Sequence< rtl::OUString > const & absentOptional,
387 css::uno::Type const & type);
397 void checkUnknown(rtl::OUString const & propertyName);
455 css::uno::Reference< css::uno::XComponentContext >
const & context,
457 css::uno::Sequence< rtl::OUString >
const & absentOptional):
458 PropertySetMixinImpl(
459 context, implements, absentOptional, T::static_type())
470 PropertySetMixin(
const PropertySetMixin&) SAL_DELETED_FUNCTION;
471 void operator=( const PropertySetMixin&) SAL_DELETED_FUNCTION;
473 #if defined __GNUC__ && !defined __clang__
474 #pragma GCC diagnostic pop
A class used by subclasses of cppu::PropertySetMixin when implementing UNO interface type attribute s...
Definition: propertysetmixin.hxx:132
PropertySetMixin(css::uno::Reference< css::uno::XComponentContext > const &context, Implements implements, css::uno::Sequence< rtl::OUString > const &absentOptional)
The constructor.
Definition: propertysetmixin.hxx:454
#define SAL_DELETED_FUNCTION
short-circuit extra-verbose API namespaces
Definition: types.h:410
css::uno::Any queryInterface(const css::uno::Type &rType, Interface1 *p1)
Compares demanded type to given template argument types.
Definition: queryinterface.hxx:39
#define SAL_OVERRIDE
C++11 "override" feature.
Definition: types.h:423
Implements
Flags used by subclasses of cppu::PropertySetMixin to specify what UNO interface types shall be suppo...
Definition: propertysetmixin.hxx:98
~PropertySetMixin()
The destructor.
Definition: propertysetmixin.hxx:467
#define CPPUHELPER_DLLPUBLIC
Definition: cppuhelperdllapi.h:28
This String class provides base functionality for C++ like Unicode character array handling...
Definition: ustring.hxx:106
A helper base class for cppu::PropertySetMixin.
Definition: propertysetmixin.hxx:87
A helper mixin to implement certain UNO interfaces related to property set handling on top of the att...
Definition: propertysetmixin.hxx:57