summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKurt Zenker <kz@openoffice.org>2007-05-10 08:58:43 +0000
committerKurt Zenker <kz@openoffice.org>2007-05-10 08:58:43 +0000
commitd9692941bcd1254890c33cd558353cf5c4fb1e3d (patch)
tree997a4b2ea994bf20eb226fbe563c099780db2868
parent696c1c141cfc730a3812f0d5626d561739fc28d2 (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.hxx43
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();
};
//==================================================================