diff options
author | Balazs Varga <balazs.varga.extern@allotropia.de> | 2023-11-23 11:39:09 +0100 |
---|---|---|
committer | Balazs Varga <balazs.varga.extern@allotropia.de> | 2023-11-24 14:18:23 +0100 |
commit | b1a866caccb322ec6e88eac67710310160e72b58 (patch) | |
tree | 2015065b35655c45363bca01fa5b36adf092ddf6 /sd | |
parent | afd3517301d28145861aa7725fd5879a6666a881 (diff) |
tdf#158238 - UI: Part 40 - Unify lockdown behavior of Options dialog
for Impress - View Page.
Change-Id: Icc3c4fc9dd3800ef454cbddb06e569e03c08967a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159856
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/dlg/tpoption.cxx | 20 | ||||
-rw-r--r-- | sd/source/ui/inc/tpoption.hxx | 4 | ||||
-rw-r--r-- | sd/uiconfig/simpress/ui/sdviewpage.ui | 78 |
3 files changed, 87 insertions, 15 deletions
diff --git a/sd/source/ui/dlg/tpoption.cxx b/sd/source/ui/dlg/tpoption.cxx index b177c8e94064..fabf76255bd7 100644 --- a/sd/source/ui/dlg/tpoption.cxx +++ b/sd/source/ui/dlg/tpoption.cxx @@ -110,9 +110,13 @@ std::unique_ptr<SfxTabPage> SdTpOptionsSnap::Create( weld::Container* pPage, wel SdTpOptionsContents::SdTpOptionsContents(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet& rInAttrs) : SfxTabPage(pPage, pController, "modules/simpress/ui/sdviewpage.ui", "SdViewPage", &rInAttrs) , m_xCbxRuler(m_xBuilder->weld_check_button("ruler")) + , m_xCbxRulerImg(m_xBuilder->weld_widget("lockruler")) , m_xCbxDragStripes(m_xBuilder->weld_check_button("dragstripes")) + , m_xCbxDragStripesImg(m_xBuilder->weld_widget("lockdragstripes")) , m_xCbxHandlesBezier(m_xBuilder->weld_check_button("handlesbezier")) + , m_xCbxHandlesBezierImg(m_xBuilder->weld_widget("lockhandlesbezier")) , m_xCbxMoveOutline(m_xBuilder->weld_check_button("moveoutline")) + , m_xCbxMoveOutlineImg(m_xBuilder->weld_widget("lockmoveoutline")) { } @@ -173,6 +177,22 @@ void SdTpOptionsContents::Reset( const SfxItemSet* rAttrs ) m_xCbxDragStripes->set_active( aLayoutItem.GetOptionsLayout().IsDragStripes() ); m_xCbxHandlesBezier->set_active( aLayoutItem.GetOptionsLayout().IsHandlesBezier() ); + bool bReadOnly = officecfg::Office::Impress::Layout::Display::Ruler::isReadOnly(); + m_xCbxRuler->set_sensitive(!bReadOnly); + m_xCbxRulerImg->set_visible(bReadOnly); + + bReadOnly = officecfg::Office::Impress::Layout::Display::Contour::isReadOnly(); + m_xCbxMoveOutline->set_sensitive(!bReadOnly); + m_xCbxMoveOutlineImg->set_visible(bReadOnly); + + bReadOnly = officecfg::Office::Impress::Layout::Display::Guide::isReadOnly(); + m_xCbxDragStripes->set_sensitive(!bReadOnly); + m_xCbxDragStripesImg->set_visible(bReadOnly); + + bReadOnly = officecfg::Office::Impress::Layout::Display::Bezier::isReadOnly(); + m_xCbxHandlesBezier->set_sensitive(!bReadOnly); + m_xCbxHandlesBezierImg->set_visible(bReadOnly); + m_xCbxRuler->save_state(); m_xCbxMoveOutline->save_state(); m_xCbxDragStripes->save_state(); diff --git a/sd/source/ui/inc/tpoption.hxx b/sd/source/ui/inc/tpoption.hxx index 4184cd7400d5..79735e6a3f81 100644 --- a/sd/source/ui/inc/tpoption.hxx +++ b/sd/source/ui/inc/tpoption.hxx @@ -43,9 +43,13 @@ class SdTpOptionsContents final : public SfxTabPage { private: std::unique_ptr<weld::CheckButton> m_xCbxRuler; + std::unique_ptr<weld::Widget> m_xCbxRulerImg; std::unique_ptr<weld::CheckButton> m_xCbxDragStripes; + std::unique_ptr<weld::Widget> m_xCbxDragStripesImg; std::unique_ptr<weld::CheckButton> m_xCbxHandlesBezier; + std::unique_ptr<weld::Widget> m_xCbxHandlesBezierImg; std::unique_ptr<weld::CheckButton> m_xCbxMoveOutline; + std::unique_ptr<weld::Widget> m_xCbxMoveOutlineImg; public: SdTpOptionsContents(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet& rInAttrs); diff --git a/sd/uiconfig/simpress/ui/sdviewpage.ui b/sd/uiconfig/simpress/ui/sdviewpage.ui index 52193b075c1e..608114e88fa9 100644 --- a/sd/uiconfig/simpress/ui/sdviewpage.ui +++ b/sd/uiconfig/simpress/ui/sdviewpage.ui @@ -10,13 +10,13 @@ <property name="label-xalign">0</property> <property name="shadow-type">none</property> <child> - <object class="GtkBox" id="box1"> + <!-- n-columns=2 n-rows=4 --> + <object class="GtkGrid"> <property name="visible">True</property> <property name="can-focus">False</property> <property name="margin-start">12</property> <property name="margin-top">6</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> + <property name="row-spacing">6</property> <child> <object class="GtkCheckButton" id="ruler"> <property name="label" translatable="yes" context="sdviewpage|ruler">_Rulers visible</property> @@ -32,9 +32,8 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left-attach">1</property> + <property name="top-attach">0</property> </packing> </child> <child> @@ -52,9 +51,8 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left-attach">1</property> + <property name="top-attach">1</property> </packing> </child> <child> @@ -72,9 +70,8 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> + <property name="left-attach">1</property> + <property name="top-attach">2</property> </packing> </child> <child> @@ -92,9 +89,60 @@ </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">3</property> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkImage" id="lockruler"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="icon-name">res/lock.png</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkImage" id="lockdragstripes"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="icon-name">res/lock.png</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkImage" id="lockhandlesbezier"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="icon-name">res/lock.png</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkImage" id="lockmoveoutline"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="icon-name">res/lock.png</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> </packing> </child> </object> |