summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamás Zolnai <tamas.zolnai@collabora.com>2017-11-11 19:10:01 +0100
committerTamás Zolnai <tamas.zolnai@collabora.com>2017-11-11 22:05:28 +0100
commit4c656c82ccdaa47cf447dfff4147b339b44ea8c1 (patch)
tree299732d536e8f6e12a376b69cf9ebc0f5e29ae6e
parentd945bc4598f75e4cb1a1bf9df8942f14ef065d74 (diff)
tdf#111835: Hide Master slide / close master slide button in notes view
These buttons are designed for normal and master slide view. Change-Id: Ifc093a1da7e2336a1a83332e893dbc619519aaba Reviewed-on: https://gerrit.libreoffice.org/44635 Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com> Tested-by: Tamás Zolnai <tamas.zolnai@collabora.com>
-rw-r--r--sd/source/ui/sidebar/SlideBackground.cxx48
-rw-r--r--sd/source/ui/sidebar/SlideBackground.hxx1
2 files changed, 39 insertions, 10 deletions
diff --git a/sd/source/ui/sidebar/SlideBackground.cxx b/sd/source/ui/sidebar/SlideBackground.cxx
index 6ce4eaa39d13..72954fcf6582 100644
--- a/sd/source/ui/sidebar/SlideBackground.cxx
+++ b/sd/source/ui/sidebar/SlideBackground.cxx
@@ -121,6 +121,7 @@ SlideBackground::SlideBackground(
maImpressOtherContext(vcl::EnumContext::Application::Impress, vcl::EnumContext::Context::DrawPage),
maImpressMasterContext(vcl::EnumContext::Application::Impress, vcl::EnumContext::Context::MasterPage),
maImpressHandoutContext(vcl::EnumContext::Application::Impress, vcl::EnumContext::Context::HandoutPage),
+ maImpressNotesContext(vcl::EnumContext::Application::Impress, vcl::EnumContext::Context::NotesPage),
mbTitle(false),
mpPageLRMarginItem( new SvxLongLRSpaceItem( 0, 0, SID_ATTR_PAGE_LRSPACE ) ),
mpPageULMarginItem( new SvxLongULSpaceItem( 0, 0, SID_ATTR_PAGE_ULSPACE ) ),
@@ -182,7 +183,8 @@ bool SlideBackground::IsImpress()
{
return ( maContext == maImpressMasterContext ||
maContext == maImpressOtherContext ||
- maContext == maImpressHandoutContext );
+ maContext == maImpressHandoutContext ||
+ maContext == maImpressNotesContext );
}
void SlideBackground::Initialize()
@@ -253,16 +255,16 @@ void SlideBackground::HandleContextChange(
}
else if ( maContext == maImpressHandoutContext )
{
+ mpCloseMaster->Hide();
+ mpEditMaster->Hide();
+ mpMasterSlide->Disable();
+ mpDspMasterBackground->Disable();
+ mpDspMasterObjects->Disable();
mpFillStyle->Hide();
- mpFillLB->Hide();
- mpFillAttr->Hide();
- mpFillGrad->Hide();
mpBackgroundLabel->Hide();
mpInsertImage->Hide();
- mpEditMaster->Hide();
- mpCloseMaster->Hide();
}
- else if (maContext == maImpressOtherContext )
+ else if (maContext == maImpressOtherContext)
{
mpCloseMaster->Hide();
mpEditMaster->Show();
@@ -273,6 +275,17 @@ void SlideBackground::HandleContextChange(
mpBackgroundLabel->Show();
mpInsertImage->Show();
}
+ else if (maContext == maImpressNotesContext)
+ {
+ mpCloseMaster->Hide();
+ mpEditMaster->Hide();
+ mpMasterSlide->Disable();
+ mpDspMasterBackground->Disable();
+ mpDspMasterObjects->Disable();
+ mpFillStyle->Show();
+ mpBackgroundLabel->Show();
+ mpInsertImage->Hide();
+ }
// Need to do a relayouting, otherwise the panel size is not updated after show / hide controls
sfx2::sidebar::Panel* pPanel = dynamic_cast<sfx2::sidebar::Panel*>(GetParent());
if(pPanel)
@@ -286,7 +299,10 @@ void SlideBackground::HandleContextChange(
void SlideBackground::Update()
{
- const eFillStyle nPos = (eFillStyle)mpFillStyle->GetSelectedEntryPos();
+ eFillStyle nPos = (eFillStyle)mpFillStyle->GetSelectedEntryPos();
+
+ if(maContext == maImpressHandoutContext)
+ nPos = NONE;
SfxObjectShell* pSh = SfxObjectShell::Current();
if (!pSh)
@@ -305,8 +321,6 @@ void SlideBackground::Update()
{
mpFillAttr->Hide();
mpFillGrad->Hide();
- if (maContext != maImpressHandoutContext)
- mpFillLB->Show();
const Color aColor = GetColorSetOrDefault();
mpFillLB->SelectEntry(aColor);
}
@@ -541,6 +555,20 @@ IMPL_LINK(SlideBackground, EventMultiplexerListener,
else
SetPanelTitle(SdResId(STR_SLIDE_NAME));
}
+ else if ( maContext == maImpressNotesContext )
+ {
+ mpMasterLabel->SetText(SdResId(STR_MASTERSLIDE_NAME));
+ ViewShell* pMainViewShell = mrBase.GetMainViewShell().get();
+
+ if (pMainViewShell)
+ {
+ DrawViewShell* pDrawViewShell = static_cast<DrawViewShell*>(pMainViewShell);
+ if ( pDrawViewShell->GetEditMode() == EditMode::MasterPage)
+ SetPanelTitle(SdResId(STR_MASTERSLIDE_NAME));
+ else // EditMode::Page
+ SetPanelTitle(SdResId(STR_SLIDE_NAME));
+ }
+ }
mbTitle = true;
}
}
diff --git a/sd/source/ui/sidebar/SlideBackground.hxx b/sd/source/ui/sidebar/SlideBackground.hxx
index 3c7ff070f87c..8b7ad034b585 100644
--- a/sd/source/ui/sidebar/SlideBackground.hxx
+++ b/sd/source/ui/sidebar/SlideBackground.hxx
@@ -128,6 +128,7 @@ private:
vcl::EnumContext maImpressOtherContext;
vcl::EnumContext maImpressMasterContext;
vcl::EnumContext maImpressHandoutContext;
+ vcl::EnumContext maImpressNotesContext;
bool mbTitle;
std::unique_ptr<SvxLongLRSpaceItem> mpPageLRMarginItem;
std::unique_ptr<SvxLongULSpaceItem> mpPageULMarginItem;