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 HAVE_GCC_PRAGMA_DIAGNOSTIC_MODIFY && HAVE_GCC_PRAGMA_DIAGNOSTIC_SCOPE \
85 #pragma GCC diagnostic push
86 #pragma GCC diagnostic ignored "-Wnon-virtual-dtor"
89 public com::sun::star::beans::XPropertySet,
90 public com::sun::star::beans::XFastPropertySet,
91 public com::sun::star::beans::XPropertyAccess
104 IMPLEMENTS_PROPERTY_SET = 1,
111 IMPLEMENTS_FAST_PROPERTY_SET = 2,
118 IMPLEMENTS_PROPERTY_ACCESS = 4
267 throw (com::sun::star::uno::RuntimeException, std::exception)
SAL_OVERRIDE;
272 SAL_CALL getPropertySetInfo()
273 throw (
com::sun::star::uno::RuntimeException, std::exception)
SAL_OVERRIDE;
276 virtual
void SAL_CALL setPropertyValue(
277 rtl::OUString const & propertyName,
278 com::sun::star::uno::Any const & value)
280 com::sun::star::beans::UnknownPropertyException,
281 com::sun::star::beans::PropertyVetoException,
282 com::sun::star::lang::IllegalArgumentException,
283 com::sun::star::lang::WrappedTargetException,
284 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
287 virtual
com::sun::star::uno::Any SAL_CALL getPropertyValue(
288 rtl::OUString const & propertyName)
290 com::sun::star::beans::UnknownPropertyException,
291 com::sun::star::lang::WrappedTargetException,
292 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
303 virtual
void SAL_CALL addPropertyChangeListener(
304 rtl::OUString const & propertyName,
305 com::sun::star::uno::Reference<
306 com::sun::star::beans::XPropertyChangeListener > const & listener)
308 com::sun::star::beans::UnknownPropertyException,
309 com::sun::star::lang::WrappedTargetException,
310 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
313 virtual
void SAL_CALL removePropertyChangeListener(
314 rtl::OUString const & propertyName,
315 com::sun::star::uno::Reference<
316 com::sun::star::beans::XPropertyChangeListener > const & listener)
318 com::sun::star::beans::UnknownPropertyException,
319 com::sun::star::lang::WrappedTargetException,
320 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
331 virtual
void SAL_CALL addVetoableChangeListener(
332 rtl::OUString const & propertyName,
333 com::sun::star::uno::Reference<
334 com::sun::star::beans::XVetoableChangeListener > const & listener)
336 com::sun::star::beans::UnknownPropertyException,
337 com::sun::star::lang::WrappedTargetException,
338 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
341 virtual
void SAL_CALL removeVetoableChangeListener(
342 rtl::OUString const & propertyName,
343 com::sun::star::uno::Reference<
344 com::sun::star::beans::XVetoableChangeListener > const & listener)
346 com::sun::star::beans::UnknownPropertyException,
347 com::sun::star::lang::WrappedTargetException,
348 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
351 virtual
void SAL_CALL setFastPropertyValue(
352 sal_Int32 handle,
com::sun::star::uno::Any const & value)
354 com::sun::star::beans::UnknownPropertyException,
355 com::sun::star::beans::PropertyVetoException,
356 com::sun::star::lang::IllegalArgumentException,
357 com::sun::star::lang::WrappedTargetException,
358 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
361 virtual
com::sun::star::uno::Any SAL_CALL getFastPropertyValue(
364 com::sun::star::beans::UnknownPropertyException,
365 com::sun::star::lang::WrappedTargetException,
366 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
370 com::sun::star::uno::Sequence<
com::sun::star::beans::PropertyValue >
371 SAL_CALL getPropertyValues()
372 throw (
com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
375 virtual
void SAL_CALL setPropertyValues(
376 com::sun::star::uno::Sequence<
com::sun::star::beans::PropertyValue >
379 com::sun::star::beans::UnknownPropertyException,
380 com::sun::star::beans::PropertyVetoException,
381 com::sun::star::lang::IllegalArgumentException,
382 com::sun::star::lang::WrappedTargetException,
383 com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
387 void operator=( const PropertySetMixinImpl&);
389 PropertySetMixinImpl(
390 com::sun::star::uno::Reference<
com::sun::star::uno::XComponentContext >
393 com::sun::star::uno::Sequence<
rtl::OUString > const & absentOptional,
394 com::sun::star::uno::Type const & type);
402 ~PropertySetMixinImpl();
404 void checkUnknown(
rtl::OUString const & propertyName);
419 template< typename T > class PropertySetMixin: public PropertySetMixinImpl {
466 PropertySetMixinImpl(
467 context, implements, absentOptional, T::static_type())
478 PropertySetMixin(
const PropertySetMixin&);
479 void operator=(
const PropertySetMixin&);
481 #if HAVE_GCC_PRAGMA_DIAGNOSTIC_MODIFY && HAVE_GCC_PRAGMA_DIAGNOSTIC_SCOPE \
482 && !defined __clang__
483 #pragma GCC diagnostic pop
inline::com::sun::star::uno::Any queryInterface(const ::com::sun::star::uno::Type &rType, Interface1 *p1)
Compares demanded type to given template argument types.
Definition: queryinterface.hxx:39
C++ class representing an IDL meta type.
Definition: Type.h:55
Definition: bootstrap.hxx:24
A class used by subclasses of cppu::PropertySetMixin when implementing UNO interface type attribute s...
Definition: propertysetmixin.hxx:133
Template C++ class representing an IDL sequence.
Definition: unotype.hxx:33
#define SAL_OVERRIDE
C++11 "override" feature.
Definition: types.h:423
Definition: Enterable.hxx:26
C++ class representing an IDL any.
Definition: Any.h:46
Implements
Flags used by subclasses of cppu::PropertySetMixin to specify what UNO interface types shall be suppo...
Definition: propertysetmixin.hxx:99
Template reference class for interface type derived from BaseReference.
Definition: unotype.hxx:32
A helper mixin to implement certain UNO interfaces related to property set handling on top of the att...
Definition: propertysetmixin.hxx:57
#define CPPUHELPER_DLLPUBLIC
Definition: cppuhelperdllapi.h:28
~PropertySetMixin()
The destructor.
Definition: propertysetmixin.hxx:475
This String class provides base functionality for C++ like Unicode character array handling...
Definition: ustring.hxx:82
PropertySetMixin(com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext > const &context, Implements implements, com::sun::star::uno::Sequence< rtl::OUString > const &absentOptional)
The constructor.
Definition: propertysetmixin.hxx:461
A helper base class for cppu::PropertySetMixin.
Definition: propertysetmixin.hxx:88