diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-01-29 21:27:22 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-01-30 14:01:55 +0000 |
commit | 9af8fe36148caf42954495fe059500fd26217a7c (patch) | |
tree | 8f272254d4c40df7bd9b376eabb3d8600b993930 /sfx2 | |
parent | 65975508832152a80bbaa4e9899f5497c2881b11 (diff) |
these checks for DockingWindows are all wrong
the type is WINDOW_DOCKINGWINDOW not RSC_DOCKINGWINDOW
maybe better drop the wrong paths ? But try and do what
the original intent might have been.
Change-Id: Ibbcf885d82e498d38c1c82b9b647ef3cdd8f146a
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/appl/childwin.cxx | 15 | ||||
-rw-r--r-- | sfx2/source/appl/workwin.cxx | 8 |
2 files changed, 11 insertions, 12 deletions
diff --git a/sfx2/source/appl/childwin.cxx b/sfx2/source/appl/childwin.cxx index b8c7d0dd1033..f744948f6eec 100644 --- a/sfx2/source/appl/childwin.cxx +++ b/sfx2/source/appl/childwin.cxx @@ -327,14 +327,11 @@ void SfxChildWindow::SaveStatus(const SfxChildWinInfo& rInfo) pImp->pFact->aInfo = rInfo; } - void SfxChildWindow::SetAlignment(SfxChildAlignment eAlign) { - eChildAlignment = eAlign; } - SfxChildWinInfo SfxChildWindow::GetInfo() const { @@ -348,14 +345,14 @@ SfxChildWinInfo SfxChildWindow::GetInfo() const nMask |= ( WINDOWSTATE_MASK_WIDTH | WINDOWSTATE_MASK_HEIGHT ); aInfo.aWinState = static_cast<SystemWindow*>(pWindow.get())->GetWindowState( nMask ); } - else if ( pWindow->GetType() == RSC_DOCKINGWINDOW ) + else if (DockingWindow* pDockingWindow = dynamic_cast<DockingWindow*>(pWindow.get())) { - if (static_cast<DockingWindow*>(pWindow.get())->GetFloatingWindow() ) - aInfo.aWinState = static_cast<DockingWindow*>(pWindow.get())->GetFloatingWindow()->GetWindowState(); - else + if (pDockingWindow->GetFloatingWindow()) + aInfo.aWinState = pDockingWindow->GetFloatingWindow()->GetWindowState(); + else if (SfxDockingWindow* pSfxDockingWindow = dynamic_cast<SfxDockingWindow*>(pDockingWindow)) { SfxChildWinInfo aTmpInfo; - static_cast<SfxDockingWindow*>(pWindow.get())->FillInfo( aTmpInfo ); + pSfxDockingWindow->FillInfo( aTmpInfo ); aInfo.aExtraString = aTmpInfo.aExtraString; } } @@ -365,13 +362,11 @@ SfxChildWinInfo SfxChildWindow::GetInfo() const return aInfo; } - sal_uInt16 SfxChildWindow::GetPosition() { return pImp->pFact->nPos; } - void SfxChildWindow::InitializeChildWinFactory_Impl(sal_uInt16 nId, SfxChildWinInfo& rInfo) { // load configuration diff --git a/sfx2/source/appl/workwin.cxx b/sfx2/source/appl/workwin.cxx index 17ecd21944e0..7f4d5bbb078c 100644 --- a/sfx2/source/appl/workwin.cxx +++ b/sfx2/source/appl/workwin.cxx @@ -1593,12 +1593,16 @@ void SfxWorkWindow::ConfigChild_Impl(SfxChildIdentifier eChild, { if ( pChild->GetType() == nId ) { - if ( pChild->GetWindow()->GetType() == RSC_DOCKINGWINDOW ) + if (SfxDockingWindow* pSfxDockingWindow = dynamic_cast<SfxDockingWindow*>(pChild->GetWindow())) + { // it's a DockingWindow - pDockWin = static_cast<SfxDockingWindow*>( pChild->GetWindow() ); + pDockWin = pSfxDockingWindow; + } else + { // FloatingWindow or ModelessDialog pWin = pChild->GetWindow(); + } break; } } |