Tag: cws_dev300_odbmacros3
User: fs      
Date: 2008-07-29 20:21:28+0000
Modified:
   dba/dbaccess/source/ui/app/AppController.cxx

Log:
 #i76128# notifyOnPrepareViewClosing event

File Changes:

Directory: /dba/dbaccess/source/ui/app/
=======================================

File [changed]: AppController.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/app/AppController.cxx?r1=1.56.6.8&r2=1.56.6.9
Delta lines:  +14 -1
--------------------
--- AppController.cxx   2008-07-28 06:28:07+0000        1.56.6.8
+++ AppController.cxx   2008-07-29 20:21:25+0000        1.56.6.9
@@ -7,7 +7,7 @@
  * OpenOffice.org - a multi-platform office productivity suite
  *
  * $RCSfile: AppController.cxx,v $
- * $Revision: 1.56.6.8 $
+ * $Revision: 1.56.6.9 $
  *
  * This file is part of OpenOffice.org.
  *
@@ -76,6 +76,7 @@
 #include <com/sun/star/task/XInteractionHandler.hpp>
 #include <com/sun/star/sdb/application/DatabaseObject.hpp>
 #include <com/sun/star/sdb/application/DatabaseObjectContainer.hpp>
+#include <com/sun/star/document/XDocumentEventBroadcaster.hpp>
 /** === end UNO includes === **/
 
 #ifndef _TOOLS_DEBUG_HXX
@@ -263,6 +264,7 @@
 using namespace ::com::sun::star::ui::dialogs;
 using namespace ::com::sun::star::task;
 using ::com::sun::star::document::XEmbeddedScripts;
+using ::com::sun::star::document::XDocumentEventBroadcaster;
 using ::com::sun::star::sdb::application::NamedDatabaseObject;
 
 namespace DatabaseObject = ::com::sun::star::sdb::application::DatabaseObject;
@@ -642,6 +644,17 @@
 //--------------------------------------------------------------------
 sal_Bool SAL_CALL OApplicationController::suspend(sal_Bool bSuspend) throw( 
RuntimeException )
 {
+    // notify the OnPrepareViewClosing event (before locking any mutex)
+    Reference< XDocumentEventBroadcaster > xBroadcaster( m_xModel, UNO_QUERY );
+    if ( xBroadcaster.is() )
+    {
+        xBroadcaster->notifyDocumentEvent(
+            ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( 
"OnPrepareViewClosing" ) ),
+            this,
+            Any()
+        );
+    }
+
     ::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
     ::osl::MutexGuard aGuard(m_aMutex);
 




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to