sd/source/ui/sidebar/SlideBackground.cxx | 2 sd/source/ui/view/ViewShellBase.cxx | 86 ++++++++++--------------------- 2 files changed, 31 insertions(+), 57 deletions(-)
New commits: commit a19c48d1cc617681f5b788edccee0c557cf3e059 Author: David Tardon <dtar...@redhat.com> Date: Thu Jun 16 16:11:17 2016 +0200 sort the array Change-Id: Iab15a4344d2174db2763603d0107bc9ec372e4fb (cherry picked from commit 90fa0d8f1a00c690d5199129d26fbe6ee4762972) Signed-off-by: David Tardon <dtar...@redhat.com> diff --git a/sd/source/ui/sidebar/SlideBackground.cxx b/sd/source/ui/sidebar/SlideBackground.cxx index ff5f84c..087e172 100644 --- a/sd/source/ui/sidebar/SlideBackground.cxx +++ b/sd/source/ui/sidebar/SlideBackground.cxx @@ -342,9 +342,9 @@ IMPL_LINK_TYPED(SlideBackground, EventMultiplexerListener, { static sal_uInt16 SidArray[] = { SID_ATTR_PAGE_COLOR, + SID_ATTR_PAGE_GRADIENT, SID_ATTR_PAGE_HATCH, SID_ATTR_PAGE_BITMAP, - SID_ATTR_PAGE_GRADIENT, SID_ATTR_PAGE_FILLSTYLE, SID_DISPLAY_MASTER_BACKGROUND, SID_DISPLAY_MASTER_OBJECTS, commit e5eee24b3db998f9375abf6c0e280eaf5d8f94a5 Author: David Tardon <dtar...@redhat.com> Date: Wed Jun 15 16:52:26 2016 +0200 rhbz#1343752 fix view status in menu ... after commit 229fc164dc1773484b74eca016863cf68860e81b . Change-Id: Ibfbbb86c81527f008b8e1cbe9d8ca3174a944931 (cherry picked from commit c4c7fe98b0f05329edf7930ff92b44892d4724e6) Signed-off-by: David Tardon <dtar...@redhat.com> diff --git a/sd/source/ui/view/ViewShellBase.cxx b/sd/source/ui/view/ViewShellBase.cxx index 72b3f3b..ae01eb9 100644 --- a/sd/source/ui/view/ViewShellBase.cxx +++ b/sd/source/ui/view/ViewShellBase.cxx @@ -1221,13 +1221,13 @@ void ViewShellBase::Implementation::GetSlotState (SfxItemSet& rSet) SfxWhichIter aSetIterator (rSet); sal_uInt16 nItemId (aSetIterator.FirstWhich()); - FrameView *pFrameView; while (nItemId > 0) { bool bState (false); Reference<XResourceId> xResourceId; try { + // Check if the right view is active switch (nItemId) { case SID_LEFT_PANE_IMPRESS: @@ -1242,22 +1242,13 @@ void ViewShellBase::Implementation::GetSlotState (SfxItemSet& rSet) bState = xConfiguration->hasResource(xResourceId); break; + case SID_DRAWINGMODE: case SID_NORMAL_MULTI_PANE_GUI: - if (ViewShell* pViewShell = mrBase.GetMainViewShell().get()) - { - pFrameView = pViewShell->GetFrameView(); - bState = pFrameView->GetViewShEditMode() == EM_PAGE - && pFrameView->GetPageKind() == PK_STANDARD; - } - break; - case SID_SLIDE_MASTER_MODE: - if (ViewShell* pViewShell = mrBase.GetMainViewShell().get()) - { - pFrameView = pViewShell->GetFrameView(); - bState = pFrameView->GetViewShEditMode() == EM_MASTERPAGE - && pFrameView->GetPageKind() == PK_STANDARD; - } + xResourceId = ResourceId::createWithAnchorURL( + xContext, FrameworkHelper::msImpressViewURL, + FrameworkHelper::msCenterPaneURL); + bState = xConfiguration->hasResource(xResourceId); break; case SID_SLIDE_SORTER_MULTI_PANE_GUI: @@ -1278,30 +1269,18 @@ void ViewShellBase::Implementation::GetSlotState (SfxItemSet& rSet) break; case SID_HANDOUT_MASTER_MODE: - if (ViewShell* pViewShell = mrBase.GetMainViewShell().get()) - { - pFrameView = pViewShell->GetFrameView(); - bState = pFrameView->GetViewShEditMode() == EM_MASTERPAGE - && pFrameView->GetPageKind() == PK_HANDOUT; - } + xResourceId = ResourceId::createWithAnchorURL( + xContext, FrameworkHelper::msHandoutViewURL, + FrameworkHelper::msCenterPaneURL); + bState = xConfiguration->hasResource(xResourceId); break; case SID_NOTES_MODE: - if (ViewShell* pViewShell = mrBase.GetMainViewShell().get()) - { - pFrameView = pViewShell->GetFrameView(); - bState = pFrameView->GetViewShEditMode() == EM_PAGE - && pFrameView->GetPageKind() == PK_NOTES; - } - break; - case SID_NOTES_MASTER_MODE: - if (ViewShell* pViewShell = mrBase.GetMainViewShell().get()) - { - pFrameView = pViewShell->GetFrameView(); - bState = pFrameView->GetViewShEditMode() == EM_MASTERPAGE - && pFrameView->GetPageKind() == PK_NOTES; - } + xResourceId = ResourceId::createWithAnchorURL( + xContext, FrameworkHelper::msNotesViewURL, + FrameworkHelper::msCenterPaneURL); + bState = xConfiguration->hasResource(xResourceId); break; case SID_TOGGLE_TABBAR_VISIBILITY: @@ -1318,32 +1297,27 @@ void ViewShellBase::Implementation::GetSlotState (SfxItemSet& rSet) { } - // Take the master page mode into account. - switch (nItemId) + // Check if edit mode fits too + if (bState) { - case SID_NORMAL_MULTI_PANE_GUI: - case SID_NOTES_MODE: + ViewShell* const pCenterViewShell = FrameworkHelper::Instance(mrBase)->GetViewShell( + FrameworkHelper::msCenterPaneURL).get(); + DrawViewShell* const pShell = dynamic_cast<DrawViewShell*>(pCenterViewShell); + if (pShell) { - // Determine the master page mode. - ViewShell* pCenterViewShell = FrameworkHelper::Instance(mrBase)->GetViewShell( - FrameworkHelper::msCenterPaneURL).get(); - bool bMasterPageMode (false); - if (DrawViewShell* pShell = dynamic_cast<DrawViewShell*>(pCenterViewShell)) + switch (nItemId) { - if (pShell->GetEditMode() == EM_MASTERPAGE) - { - bMasterPageMode = true; - } + case SID_DRAWINGMODE: + case SID_NORMAL_MULTI_PANE_GUI: + case SID_NOTES_MODE: + bState = pShell->GetEditMode() == EM_PAGE; + break; + case SID_SLIDE_MASTER_MODE: + case SID_NOTES_MASTER_MODE: + bState = pShell->GetEditMode() == EM_MASTERPAGE; + break; } - - bState &= !bMasterPageMode; - break; } - - case SID_HANDOUT_MASTER_MODE: - // There is only the master page mode for the handout - // view so ignore the master page flag. - break; } // And finally set the state. _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits