From bbef3ea39fc3fe0bed5bc6307e396fd434e02296 Mon Sep 17 00:00:00 2001 From: Oliver Bolte Date: Thu, 12 Feb 2009 10:27:21 +0000 Subject: CWS-TOOLING: integrate CWS mav44 2009-01-18 22:39:43 +0100 mav r266467 : #i97073# the soffice file should be a shell script, adjust the plugin 2009-01-18 22:35:15 +0100 mav r266466 : #i97073# the soffice file should be a shell script, integrate fix from hro41 cws 2009-01-16 15:32:10 +0100 mav r266426 : #i96456# fix link resolving 2009-01-16 12:21:39 +0100 mav r266413 : #i97073# the soffice file is no more a shell script 2009-01-16 09:58:05 +0100 mav r266402 : #i95409# add complex test using unicode names 2009-01-15 20:27:03 +0100 mav r266392 : #i95408# fix include list 2009-01-15 20:09:28 +0100 mav r266390 : #i95408# deliver new header 2009-01-15 16:16:33 +0100 mav r266382 : #i95408# rebase to m38 2009-01-15 16:11:16 +0100 mav r266380 : #i95408# rebase to m38 2009-01-15 15:38:16 +0100 mav r266376 : CWS-TOOLING: rebase CWS mav44 to trunk@265758 (milestone: DEV300:m38) 2009-01-14 13:23:55 +0100 mav r266294 : #i97073# let the presentation slideshow be started in window mode in plugin 2009-01-13 17:27:52 +0100 mav r266241 : #i95409#,#i95408# support UTF8 encoding for entry names, check the validity of the entries 2009-01-13 16:35:39 +0100 mav r266236 : #i95408# function to check whether a zip entry name is acceptable 2009-01-13 12:00:18 +0100 mav r266205 : #i94003# a readonly document can not be modified 2009-01-09 13:24:49 +0100 mav r266078 : #i95951# let the title be changed 2009-01-09 11:34:49 +0100 mav r266068 : #i80862# close the link only if was closed by the container, othewise leave it open 2009-01-08 11:30:13 +0100 mav r265989 : #i97071# disable Toolbars during window-based slide show in ActiveX control 2009-01-08 08:23:23 +0100 mav r265983 : #i97071# setVisible does not trigger layout in case there is not MenuBar 2009-01-06 12:39:39 +0100 mav r265908 : #i96185# let the MediaDescriptor get the target URL 2009-01-05 08:46:45 +0100 mav r265856 : #i93473# integrate the patch 2009-01-02 17:45:17 +0100 mav r265845 : #i94468#,#i96456# try to follow links 2009-01-02 16:53:41 +0100 mav r265841 : #i94468#,#i96456# use the same parsing mechanics in sharing control file and document lock file 2009-01-02 16:51:24 +0100 mav r265839 : #i94468#,#i96456# use the same parsing mechanics in sharing control file and document lock file --- embedserv/source/embed/docholder.cxx | 8 +++++++- embedserv/source/embed/ed_ipersiststr.cxx | 13 +++++++++++-- embedserv/source/inc/docholder.hxx | 3 ++- 3 files changed, 20 insertions(+), 4 deletions(-) (limited to 'embedserv/source') diff --git a/embedserv/source/embed/docholder.cxx b/embedserv/source/embed/docholder.cxx index 6b856be92e34..1f7fe0a0500e 100644 --- a/embedserv/source/embed/docholder.cxx +++ b/embedserv/source/embed/docholder.cxx @@ -676,7 +676,7 @@ void DocumentHolder::FreeOffice() } } -void DocumentHolder::DisconnectFrameDocument() +void DocumentHolder::DisconnectFrameDocument( sal_Bool bComplete ) { try { @@ -704,6 +704,12 @@ void DocumentHolder::DisconnectFrameDocument() catch( uno::Exception& ) {} + if ( bComplete ) + { + m_xFrame = uno::Reference< frame::XFrame>(); + m_pIDispatch = NULL; + m_xDocument = uno::Reference< frame::XModel >(); + } } void DocumentHolder::CloseDocument() diff --git a/embedserv/source/embed/ed_ipersiststr.cxx b/embedserv/source/embed/ed_ipersiststr.cxx index 4c2fa098cbbc..d0df506cf902 100755 --- a/embedserv/source/embed/ed_ipersiststr.cxx +++ b/embedserv/source/embed/ed_ipersiststr.cxx @@ -193,8 +193,17 @@ EmbedDocument_Impl::EmbedDocument_Impl( const uno::Reference< lang::XMultiServic EmbedDocument_Impl::~EmbedDocument_Impl() { m_pDocHolder->FreeOffice(); - m_pDocHolder->CloseDocument(); - m_pDocHolder->CloseFrame(); + + if ( m_pDocHolder->HasFrame() && m_pDocHolder->IsLink() ) + { + // a link with frame should be only disconnected, not closed + m_pDocHolder->DisconnectFrameDocument( sal_True ); + } + else + { + m_pDocHolder->CloseDocument(); + m_pDocHolder->CloseFrame(); + } m_pDocHolder->release(); } diff --git a/embedserv/source/inc/docholder.hxx b/embedserv/source/inc/docholder.hxx index e2c627ecc844..83aad107502a 100644 --- a/embedserv/source/inc/docholder.hxx +++ b/embedserv/source/inc/docholder.hxx @@ -168,7 +168,7 @@ public: sal_Bool ExecuteSuspendCloseFrame(); - void DisconnectFrameDocument(); + void DisconnectFrameDocument( sal_Bool bComplete = sal_False ); void CloseDocument(); void CloseFrame(); void ClearInterceptor(); @@ -185,6 +185,7 @@ public: void show(); sal_Bool HasFrame() { return m_xFrame.is(); } + sal_Bool IsLink() { return m_bLink; } /** hides the document window, even in case of an external container * side managed window. -- cgit v1.2.3