diff options
author | Kurt Zenker <kz@openoffice.org> | 2007-05-10 08:58:43 +0000 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2007-05-10 08:58:43 +0000 |
commit | d9692941bcd1254890c33cd558353cf5c4fb1e3d (patch) | |
tree | 997a4b2ea994bf20eb226fbe563c099780db2868 | |
parent | 696c1c141cfc730a3812f0d5626d561739fc28d2 (diff) |
INTEGRATION: CWS dba23a (1.14.18); FILE MERGED
2007/03/20 08:16:16 fs 1.14.18.3: RESYNC: (1.14-1.16); FILE MERGED
2007/03/14 14:44:51 fs 1.14.18.2: #i74087# outsourced the PropertyBag handling into an own class, which is now used by both OControlModel and ODatabaseForm
2007/03/14 12:33:13 fs 1.14.18.1: copying property-bag related changes from CWS hb02 to CWS dba23a - in preparation of some bug fixes
-rw-r--r-- | forms/source/inc/FormComponent.hxx | 43 |
1 files changed, 19 insertions, 24 deletions
diff --git a/forms/source/inc/FormComponent.hxx b/forms/source/inc/FormComponent.hxx index 048e9700a0c7..b358154e9cbc 100644 --- a/forms/source/inc/FormComponent.hxx +++ b/forms/source/inc/FormComponent.hxx @@ -4,9 +4,9 @@ * * $RCSfile: FormComponent.hxx,v $ * - * $Revision: 1.16 $ + * $Revision: 1.17 $ * - * last change: $Author: obo $ $Date: 2007-03-19 11:58:21 $ + * last change: $Author: kz $ $Date: 2007-05-10 09:58:43 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -173,6 +173,9 @@ #ifndef FORMS_WINDOWSTATEGUARD_HXX #include "windowstateguard.hxx" #endif +#ifndef FORMS_PROPERTYBAGHELPER_HXX +#include "propertybaghelper.hxx" +#endif #ifndef _COMPHELPER_PROPERTY_MULTIPLEX_HXX_ #include <comphelper/propmultiplex.hxx> @@ -371,6 +374,7 @@ protected: //= OControlModel //= model of a form layer control //================================================================== + typedef ::cppu::ImplHelper7 < ::com::sun::star::form::XFormComponent , ::com::sun::star::io::XPersistObject , ::com::sun::star::container::XNamed @@ -380,11 +384,11 @@ typedef ::cppu::ImplHelper7 < ::com::sun::star::form::XFormComponent , ::com::sun::star::beans::XPropertyAccess > OControlModel_BASE; - class OControlModel :public ::cppu::OComponentHelper ,public OPropertySetAggregationHelper ,public OControlModel_BASE ,public OCloneableAggregation + ,public IPropertyBagHelperContext { protected: @@ -394,12 +398,7 @@ protected: InterfaceRef m_xParent; // ParentComponent OImplementationIdsRef m_aHoldIdHelper; - ::comphelper::OPropertyArrayAggregationHelper* - m_pPropertyArrayHelper; - ::comphelper::PropertyBag - m_aDynamicProperties; - - static ConcretInfoService s_aPropInfos; + PropertyBagHelper m_aPropertyBagHelper; const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& getORB( ) const { return m_xServiceFactory; } @@ -516,8 +515,9 @@ public: // XPropertyAccess virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getPropertyValues( ) throw (::com::sun::star::uno::RuntimeException); virtual void SAL_CALL setPropertyValues( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aProps ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); - using OPropertySetAggregationHelper::setPropertyValues; + protected: + using OPropertySetAggregationHelper::setPropertyValues; using OPropertySetAggregationHelper::getPropertyValues; protected: @@ -530,17 +530,6 @@ protected: // OPropertySetHelper virtual cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper(); - /** returns the IPropertyArrayHelper instance used by |this| - */ - ::comphelper::OPropertyArrayAggregationHelper& impl_ts_getArrayHelper() const; - - /** finds a free property handle - @param _rPropertyName - the name of the property to find a handle for. If possible, the handle as determined by - our ConcretInfoService instance will be used - */ - sal_Int32 impl_findFreeHandle( const ::rtl::OUString& _rPropertyName ); - /** describes the properties provided by this class, or its respective derived class @@ -550,6 +539,15 @@ protected: ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& /* [out] */ _rProps ) const; + // IPropertyBagHelperContext + virtual ::osl::Mutex& getMutex(); + virtual void describeFixedAndAggregateProperties( + ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& _out_rFixedProperties, + ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& _out_rAggregateProperties + ) const; + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XMultiPropertySet > + getPropertiesInterface(); + /** describes the properties of our aggregate The default implementation simply asks m_xAggregateSet for its properties. @@ -560,9 +558,6 @@ protected: virtual void describeAggregateProperties( ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& /* [out] */ _rAggregateProps ) const; - -private: - void impl_invalidatePropertySetInfo(); }; //================================================================== |