sd/inc/strings.hrc | 2 ++ sd/source/ui/dlg/titledockwin.cxx | 6 ++++++ sd/source/ui/inc/titledockwin.hxx | 2 ++ sd/source/ui/view/drviews1.cxx | 21 +++++++++++++++++++++ 4 files changed, 31 insertions(+)
New commits: commit 25d09bdb9f48313c000cc8ec8df60b1bb8efe2e6 Author: Andreas Heinisch <andreas.heini...@yahoo.de> AuthorDate: Sun Oct 1 11:28:31 2023 +0200 Commit: Andreas Heinisch <andreas.heini...@yahoo.de> CommitDate: Mon Oct 2 10:21:26 2023 +0200 tdf#87638 - Modify slide pane title in Impress/Draw based on edit mode Change-Id: I0dd668324c32172144f29cf40c52e2b66e7895b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157444 Tested-by: Jenkins Reviewed-by: Andreas Heinisch <andreas.heini...@yahoo.de> diff --git a/sd/inc/strings.hrc b/sd/inc/strings.hrc index 8438a9262a95..e3f5c45a5fcd 100644 --- a/sd/inc/strings.hrc +++ b/sd/inc/strings.hrc @@ -234,7 +234,9 @@ #define STR_PLACEHOLDER_DESCRIPTION_NOTES NC_("STR_PLACEHOLDER_DESCRIPTION_NOTES", "Notes Area") #define STR_UNDO_HANGULHANJACONVERSION NC_("STR_UNDO_HANGULHANJACONVERSION", "Hangul/Hanja Conversion") #define STR_LEFT_PANE_IMPRESS_TITLE NC_("STR_LEFT_PANE_IMPRESS_TITLE", "Slides") +#define STR_LEFT_PANE_IMPRESS_TITLE_MASTER NC_("STR_LEFT_PANE_IMPRESS_TITLE_MASTER", "Master Slides") #define STR_LEFT_PANE_DRAW_TITLE NC_("STR_LEFT_PANE_DRAW_TITLE", "Pages") +#define STR_LEFT_PANE_DRAW_TITLE_MASTER NC_("STR_LEFT_PANE_DRAW_TITLE_MASTER", "Master Pages") #define STR_TASKPANEL_NOT_AVAILABLE_SUBSTITUTION NC_("STR_TASKPANEL_NOT_AVAILABLE_SUBSTITUTION", "Preview not available") #define STR_TASKPANEL_PREPARING_PREVIEW_SUBSTITUTION NC_("STR_TASKPANEL_PREPARING_PREVIEW_SUBSTITUTION", "Preparing preview") #define STR_TASKPANEL_LAYOUT_MENU_TITLE NC_("STR_TASKPANEL_LAYOUT_MENU_TITLE", "Layouts") diff --git a/sd/source/ui/dlg/titledockwin.cxx b/sd/source/ui/dlg/titledockwin.cxx index 0550f05d2f8b..d545170da688 100644 --- a/sd/source/ui/dlg/titledockwin.cxx +++ b/sd/source/ui/dlg/titledockwin.cxx @@ -68,6 +68,12 @@ namespace sd SfxDockingWindow::dispose(); } + void TitledDockingWindow::SetTitle(const OUString& i_rText) + { + m_sTitle = i_rText; + Invalidate(); + } + void TitledDockingWindow::SetText( const OUString& i_rText ) { SfxDockingWindow::SetText( i_rText ); diff --git a/sd/source/ui/inc/titledockwin.hxx b/sd/source/ui/inc/titledockwin.hxx index bdbd386ba62a..5a880e268739 100644 --- a/sd/source/ui/inc/titledockwin.hxx +++ b/sd/source/ui/inc/titledockwin.hxx @@ -76,6 +76,8 @@ namespace sd */ Orientation GetOrientation() const; + void SetTitle(const OUString& i_rText); + private: // Window overridables virtual void Paint(vcl::RenderContext& rRenderContext, const ::tools::Rectangle& i_rArea) override; diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx index f9378e1ec4fd..309a5d5ed3cc 100644 --- a/sd/source/ui/view/drviews1.cxx +++ b/sd/source/ui/view/drviews1.cxx @@ -71,6 +71,9 @@ #include <LibreOfficeKit/LibreOfficeKitEnums.h> #include <vcl/uitest/logger.hxx> #include <vcl/uitest/eventdescription.hxx> +#include <titledockwin.hxx> +#include <strings.hrc> +#include <sdresid.hxx> using namespace com::sun::star; @@ -393,6 +396,16 @@ void DrawViewShell::ChangeEditMode(EditMode eEMode, bool bIsLayerModeActive) ConfigureAppBackgroundColor(); + // tdf#87638 - change slide pane title according to the edit mode + auto setLeftPaneTitleIfPaneExists + = [pViewShell = GetViewFrame()](sal_uInt16 nId, TranslateId aId) + { + if (auto* pChildWindow = pViewShell->GetChildWindow(nId)) + if (auto* pTitledDockingWindow + = static_cast<TitledDockingWindow*>(pChildWindow->GetWindow())) + pTitledDockingWindow->SetTitle(SdResId(aId)); + }; + if (meEditMode == EditMode::Page) { /****************************************************************** @@ -401,6 +414,10 @@ void DrawViewShell::ChangeEditMode(EditMode eEMode, bool bIsLayerModeActive) maTabControl->Clear(); + // tdf#87638 - change slide pane title according to the edit mode + setLeftPaneTitleIfPaneExists(SID_LEFT_PANE_DRAW, STR_LEFT_PANE_DRAW_TITLE); + setLeftPaneTitleIfPaneExists(SID_LEFT_PANE_IMPRESS, STR_LEFT_PANE_IMPRESS_TITLE); + SdPage* pPage; sal_uInt16 nPageCnt = GetDoc()->GetSdPageCount(mePageKind); @@ -431,6 +448,10 @@ void DrawViewShell::ChangeEditMode(EditMode eEMode, bool bIsLayerModeActive) GetViewFrame()->SetChildWindow( AnimationChildWindow::GetChildWindowId(), false ); + // tdf#87638 - change slide pane title according to the edit mode + setLeftPaneTitleIfPaneExists(SID_LEFT_PANE_DRAW, STR_LEFT_PANE_DRAW_TITLE_MASTER); + setLeftPaneTitleIfPaneExists(SID_LEFT_PANE_IMPRESS, STR_LEFT_PANE_IMPRESS_TITLE_MASTER); + if (comphelper::LibreOfficeKit::isActive()) GetViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED, ".uno:SlideMasterPage=true");