diff options
author | Frank Schönheit <fs@openoffice.org> | 2001-10-16 15:19:02 +0000 |
---|---|---|
committer | Frank Schönheit <fs@openoffice.org> | 2001-10-16 15:19:02 +0000 |
commit | 164b4c656921b4d291145e42d471ea5240c323c1 (patch) | |
tree | 1267f3591d3db2bfc02bb0053e3d7c727ab713b5 /forms/source/component | |
parent | b963aaaa9790cfcef4709cf06941ca04580327a2 (diff) |
#92922# insert replaced by approveNewElement/implInsert (ensure that when inserting, the own mutex is released before doing any notifications)
Diffstat (limited to 'forms/source/component')
-rw-r--r-- | forms/source/component/Grid.cxx | 22 | ||||
-rw-r--r-- | forms/source/component/Grid.hxx | 7 |
2 files changed, 15 insertions, 14 deletions
diff --git a/forms/source/component/Grid.cxx b/forms/source/component/Grid.cxx index 06ddf09fbe2a..c20a4d003d7b 100644 --- a/forms/source/component/Grid.cxx +++ b/forms/source/component/Grid.cxx @@ -2,9 +2,9 @@ * * $RCSfile: Grid.cxx,v $ * - * $Revision: 1.21 $ + * $Revision: 1.22 $ * - * last change: $Author: vg $ $Date: 2001-09-12 16:58:34 $ + * last change: $Author: fs $ $Date: 2001-10-16 16:19:01 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -296,9 +296,10 @@ void OGridControlModel::disposing() // XEventListener //------------------------------------------------------------------------------ -void OGridControlModel::disposing(const EventObject& e) throw( RuntimeException ) +void OGridControlModel::disposing(const EventObject& _rEvent) throw( RuntimeException ) { - OControlModel::disposing(e); + OControlModel::disposing( _rEvent ); + OInterfaceContainer::disposing( _rEvent ); } // XSelectionSupplier @@ -1039,12 +1040,13 @@ void OGridControlModel::implReplaced(const InterfaceRef& _rxReplacedObject, cons } //------------------------------------------------------------------------------ -void OGridControlModel::insert(sal_Int32 _nIndex, const InterfaceRef& xElement, sal_Bool bEvents) throw( IllegalArgumentException ) +InterfaceRef OGridControlModel::approveNewElement( const InterfaceRef& _rxObject ) { - OGridColumn* pCol = getColumnImplementation(xElement); - if (!pCol) + OGridColumn* pCol = getColumnImplementation( _rxObject ); + if ( !pCol ) throw IllegalArgumentException(); - OInterfaceContainer::insert(_nIndex, xElement, bEvents); + + return OInterfaceContainer::approveNewElement( _rxObject ); } // XPersistObject @@ -1207,8 +1209,8 @@ void OGridControlModel::read(const Reference<XObjectInputStream>& _rxInStream) t xMark->deleteMark(nMark); } - if (xCol.is()) - insert(i, xCol, sal_False); + if ( xCol.is() ) + implInsert( i, xCol, sal_False, sal_False, sal_False ); } } diff --git a/forms/source/component/Grid.hxx b/forms/source/component/Grid.hxx index 25add8a87b00..1e140566e043 100644 --- a/forms/source/component/Grid.hxx +++ b/forms/source/component/Grid.hxx @@ -2,9 +2,9 @@ * * $RCSfile: Grid.hxx,v $ * - * $Revision: 1.11 $ + * $Revision: 1.12 $ * - * last change: $Author: vg $ $Date: 2001-09-12 16:46:19 $ + * last change: $Author: fs $ $Date: 2001-10-16 16:19:02 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -228,8 +228,7 @@ public: IMPLEMENT_INFO_SERVICE() protected: - virtual void insert(sal_Int32 _nIndex, const InterfaceRef& _Object, sal_Bool bEvents) - throw(::com::sun::star::lang::IllegalArgumentException); + virtual InterfaceRef approveNewElement( const InterfaceRef& _rxObject ); ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> createColumn(sal_Int32 nTypeId) const; |