summaryrefslogtreecommitdiff
path: root/sd/source/ui/toolpanel/TaskPaneShellManager.cxx
diff options
context:
space:
mode:
authorFrank Schoenheit [fs] <frank.schoenheit@sun.com>2010-04-09 09:37:17 +0200
committerFrank Schoenheit [fs] <frank.schoenheit@sun.com>2010-04-09 09:37:17 +0200
commit9c32c9129e18505a6ecc78c6880d96136d101129 (patch)
treee0156f7148a3f1837dc75d49219f5e4bafe88603 /sd/source/ui/toolpanel/TaskPaneShellManager.cxx
parente725e315399f527e63f919a9a6861066b1f41512 (diff)
parent17d7bf8f871c2b2e04a14c3d9cca27e7e6c84cac (diff)
slidecopy: merge CWS wth MWS-m76
Diffstat (limited to 'sd/source/ui/toolpanel/TaskPaneShellManager.cxx')
-rw-r--r--sd/source/ui/toolpanel/TaskPaneShellManager.cxx17
1 files changed, 16 insertions, 1 deletions
diff --git a/sd/source/ui/toolpanel/TaskPaneShellManager.cxx b/sd/source/ui/toolpanel/TaskPaneShellManager.cxx
index 5a4875340840..52054c43fe8b 100644
--- a/sd/source/ui/toolpanel/TaskPaneShellManager.cxx
+++ b/sd/source/ui/toolpanel/TaskPaneShellManager.cxx
@@ -31,7 +31,7 @@
#include "TaskPaneShellManager.hxx"
#include "ViewShellManager.hxx"
-#include <osl/diagnose.h>
+#include <tools/diagnose_ex.h>
#include <vcl/window.hxx>
#include <algorithm>
@@ -111,6 +111,21 @@ void TaskPaneShellManager::AddSubShell (
+void TaskPaneShellManager::RemoveSubShell (const ShellId i_nShellId)
+{
+ SubShells::iterator pos = maSubShells.find( i_nShellId );
+ ENSURE_OR_RETURN_VOID( pos != maSubShells.end(), "no shell for this ID" );
+ if ( pos->second.mpWindow != NULL )
+ {
+ pos->second.mpWindow->RemoveEventListener( LINK( this, TaskPaneShellManager, WindowCallback ) );
+ }
+ mpViewShellManager->DeactivateSubShell( mrViewShell, pos->first );
+ maSubShells.erase( pos );
+}
+
+
+
+
void TaskPaneShellManager::RemoveSubShell (const SfxShell* pShell)
{
if (pShell != NULL)