diff options
author | Kurt Zenker <kz@openoffice.org> | 2008-08-14 11:09:06 +0000 |
---|---|---|
committer | Kurt Zenker <kz@openoffice.org> | 2008-08-14 11:09:06 +0000 |
commit | d9e20cf97456b499661663fe899632b38f2ca73b (patch) | |
tree | 881454c0585c4004d8ec988effd3e4c613e4fc1c /forms/source | |
parent | 6c55b75a8d00d1c192aca282bce8b140c80072b0 (diff) |
INTEGRATION: CWS dba30h_DEV300 (1.6.40); FILE MERGED
2008/07/28 07:33:12 fs 1.6.40.1: copying the fix for #i90914# herein, to try to get it for 3.0
Diffstat (limited to 'forms/source')
-rw-r--r-- | forms/source/runtime/formoperations.cxx | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/forms/source/runtime/formoperations.cxx b/forms/source/runtime/formoperations.cxx index 8e5b4f7d3cb0..123efe23b9bc 100644 --- a/forms/source/runtime/formoperations.cxx +++ b/forms/source/runtime/formoperations.cxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: formoperations.cxx,v $ - * $Revision: 1.6 $ + * $Revision: 1.7 $ * * This file is part of OpenOffice.org. * @@ -54,6 +54,7 @@ #include <com/sun/star/form/XReset.hpp> #include <com/sun/star/beans/XMultiPropertySet.hpp> #include <com/sun/star/ui/dialogs/XExecutableDialog.hpp> +#include <com/sun/star/util/XRefreshable.hpp> /** === end UNO includes === **/ #include <connectivity/dbtools.hxx> @@ -63,6 +64,7 @@ #include <vcl/msgbox.hxx> #include <vcl/waitobj.hxx> #include <tools/diagnose_ex.h> +#include <comphelper/container.hxx> #include <comphelper/property.hxx> #include <comphelper/namedvaluecollection.hxx> #include <cppuhelper/exc_hlp.hxx> @@ -120,6 +122,7 @@ namespace frm using ::com::sun::star::beans::PropertyValue; using ::com::sun::star::ui::dialogs::XExecutableDialog; using ::com::sun::star::beans::NamedValue; + using ::com::sun::star::util::XRefreshable; /** === end UNO using === **/ namespace FormFeature = ::com::sun::star::form::runtime::FormFeature; namespace RowChangeAction = ::com::sun::star::sdb::RowChangeAction; @@ -532,6 +535,18 @@ namespace frm { WaitObject aWO( NULL ); m_xLoadableForm->reload(); + + // refresh all controls in the form (and sub forms) which can be refreshed + // #i90914# / 2008-07-02 / frank.schoenheit@sun.com + ::comphelper::IndexAccessIterator aIter( m_xLoadableForm ); + Reference< XInterface > xElement( aIter.Next() ); + while ( xElement.is() ) + { + Reference< XRefreshable > xRefresh( xElement, UNO_QUERY ); + if ( xRefresh.is() ) + xRefresh->refresh(); + xElement = aIter.Next(); + } } break; |