sd/uiconfig/simpress/ui/presentationdialog.ui | 545 +++++++++++++------------- vcl/qt5/QtInstanceWidget.cxx | 93 +--- 2 files changed, 312 insertions(+), 326 deletions(-)
New commits: commit 33c9641db65d16f4ecf86709de008f0afa42a7d4 Author: Michael Weghorn <[email protected]> AuthorDate: Thu Feb 20 21:31:21 2025 +0100 Commit: Michael Weghorn <[email protected]> CommitDate: Fri Feb 21 08:42:57 2025 +0100 tdf#130857: sd presentationsdialog.ui: Define widgets in order Switch the order in which the widgets in the dialog's .ui file are defined so that the order matches the visual appearance (and "left-attach"/"top-attach" properties order), which makes sure that tab focus order with the Qt-based VCL plugins is correct as well in that dialog when using native Qt widgets (SAL_VCL_QT_USE_WELDED_WIDGETS=1), where focus order is (by default) based on widget creation order. See commit 02692566ad9fc7c3484f8581ffa0004cd4e43987 Author: Michael Weghorn <[email protected]> Date: Thu Oct 24 17:43:35 2024 +0200 tdf#130857 optnewdictionarydialog.ui: Define focusable widgets in order for more background. This is the Impress "Slide Show" -> "Slide Show Settings" dialog. Change-Id: I1324e5e5a410c49859eec14d6d4681a5a3339a65 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181969 Tested-by: Jenkins Reviewed-by: Michael Weghorn <[email protected]> diff --git a/sd/uiconfig/simpress/ui/presentationdialog.ui b/sd/uiconfig/simpress/ui/presentationdialog.ui index 95c501e0710a..7cbd5eb15ec3 100644 --- a/sd/uiconfig/simpress/ui/presentationdialog.ui +++ b/sd/uiconfig/simpress/ui/presentationdialog.ui @@ -103,6 +103,26 @@ <property name="margin-start">12</property> <property name="margin-top">6</property> <property name="row-spacing">6</property> + <child> + <object class="GtkRadioButton" id="allslides"> + <property name="label" translatable="yes" context="presentationdialog|allslides">All _slides</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="use-underline">True</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + <child internal-child="accessible"> + <object class="AtkObject" id="allslides-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|allslides">Includes all of the slides in your slide show.</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> <child> <!-- n-columns=2 n-rows=1 --> <object class="GtkGrid" id="grid6"> @@ -158,26 +178,6 @@ <property name="top-attach">1</property> </packing> </child> - <child> - <object class="GtkRadioButton" id="allslides"> - <property name="label" translatable="yes" context="presentationdialog|allslides">All _slides</property> - <property name="visible">True</property> - <property name="can-focus">True</property> - <property name="receives-default">False</property> - <property name="use-underline">True</property> - <property name="active">True</property> - <property name="draw-indicator">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="allslides-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|allslides">Includes all of the slides in your slide show.</property> - </object> - </child> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">0</property> - </packing> - </child> <child> <!-- n-columns=2 n-rows=1 --> <object class="GtkGrid" id="grid"> @@ -250,218 +250,6 @@ <property name="top-attach">0</property> </packing> </child> - <child> - <object class="GtkFrame" id="frame3"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <property name="label-xalign">0</property> - <property name="shadow-type">none</property> - <child> - <!-- n-columns=1 n-rows=2 --> - <object class="GtkGrid" id="grid7"> - <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="hexpand">True</property> - <property name="vexpand">True</property> - <child> - <!-- n-columns=2 n-rows=4 --> - <object class="GtkGrid" id="grid8"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <property name="vexpand">True</property> - <property name="row-spacing">6</property> - <property name="column-spacing">12</property> - <child> - <object class="GtkComboBoxText" id="presdisplay_cb"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="presdisplay_cb-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|presdisplay_cb">Select a display to use for full screen slide show mode.</property> - </object> - </child> - </object> - <packing> - <property name="left-attach">1</property> - <property name="top-attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="presdisplay_label"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|presdisplay_label">P_resentation display:</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">presdisplay_cb</property> - <property name="xalign">0</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">0</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="console_cb"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <property name="active">0</property> - <items> - <item id="0" translatable="yes" context="presentationdialog|console_cb">Full screen</item> - <item id="1" translatable="yes" context="presentationdialog|console_cb">Windowed</item> - <item id="2" translatable="yes" context="presentationdialog|console_cb">Disabled</item> - </items> - </object> - <packing> - <property name="left-attach">1</property> - <property name="top-attach">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="console_label"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|console_label">Presenter console:</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">console_cb</property> - <property name="xalign">0</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">1</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="shownavigationbutton"> - <property name="label" translatable="yes" context="presentationdialog|shownavigationbutton">Show navigation bar</property> - <property name="visible">True</property> - <property name="can-focus">True</property> - <property name="receives-default">False</property> - <property name="tooltip-text" translatable="yes" context="presentationdialog|shownavigationbutton|tooltip_text">Show navigation bar at the bottom of the presentation</property> - <property name="use-underline">True</property> - <property name="draw-indicator">True</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">2</property> - <property name="width">2</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="navbar_btn_size_label"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="halign">start</property> - <property name="margin-start">24</property> - <property name="label" translatable="yes" context="presentationdialog|navbar_btn_size_label">Buttons size:</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">3</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="navigation_buttons_size_cb"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <items> - <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Automatic</item> - <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Small</item> - <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Large</item> - <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Extra Large</item> - </items> - <child internal-child="accessible"> - <object class="AtkObject" id="navigation_buttons_size_cb-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="extended_tip | iconsize">Specifies the display size of navigation bar icons.</property> - </object> - </child> - </object> - <packing> - <property name="left-attach">1</property> - <property name="top-attach">3</property> - </packing> - </child> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">0</property> - </packing> - </child> - <child> - <!-- n-columns=1 n-rows=4 --> - <object class="GtkGrid" id="grid9"> - <property name="can-focus">False</property> - <child> - <object class="GtkLabel" id="externalmonitor_str"> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|externalmonitor_str">Display %1 (external)</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="monitor_str"> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|monitor_str">Display %1</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="allmonitors_str"> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|allmonitors_str">All displays</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">2</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="external_str"> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|external_str">Auto External (Display %1)</property> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">3</property> - </packing> - </child> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">1</property> - </packing> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="presentationdialog|label3">Display</property> - <attributes> - <attribute name="weight" value="bold"/> - </attributes> - </object> - </child> - </object> - <packing> - <property name="left-attach">0</property> - <property name="top-attach">2</property> - </packing> - </child> <child> <!-- n-columns=2 n-rows=1 --> <object class="GtkGrid" id="grid2"> @@ -549,48 +337,48 @@ </packing> </child> <child> - <object class="GtkCheckButton" id="showlogo"> - <property name="label" translatable="yes" context="presentationdialog|showlogo">Show _logo during pause</property> + <object class="GtkSpinButton" id="pauseduration"> <property name="visible">True</property> + <property name="sensitive">False</property> <property name="can-focus">True</property> - <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes" context="presentationdialog|pauseduration|tooltip_text">Duration of pause</property> <property name="margin-start">12</property> - <property name="use-underline">True</property> - <property name="draw-indicator">True</property> + <property name="activates-default">True</property> + <property name="truncate-multiline">True</property> + <property name="adjustment">adjustment1</property> + <accessibility> + <relation type="labelled-by" target="auto"/> + </accessibility> <child internal-child="accessible"> - <object class="AtkObject" id="showlogo-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|showlogo">Displays the application logo on the pause slide.</property> + <object class="AtkObject" id="pauseduration-atkobject"> + <property name="AtkObject::accessible-name" translatable="yes" context="presentationdialog|pauseduration-atkobject">Pause Duration</property> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|pauseduration">Enter the duration of the pause before the slide show is repeated. If you enter zero, the show restarts immediately without showing a pause slide.</property> </object> </child> </object> <packing> <property name="left-attach">0</property> - <property name="top-attach">4</property> + <property name="top-attach">3</property> </packing> </child> <child> - <object class="GtkSpinButton" id="pauseduration"> + <object class="GtkCheckButton" id="showlogo"> + <property name="label" translatable="yes" context="presentationdialog|showlogo">Show _logo during pause</property> <property name="visible">True</property> - <property name="sensitive">False</property> <property name="can-focus">True</property> - <property name="tooltip-text" translatable="yes" context="presentationdialog|pauseduration|tooltip_text">Duration of pause</property> + <property name="receives-default">False</property> <property name="margin-start">12</property> - <property name="activates-default">True</property> - <property name="truncate-multiline">True</property> - <property name="adjustment">adjustment1</property> - <accessibility> - <relation type="labelled-by" target="auto"/> - </accessibility> + <property name="use-underline">True</property> + <property name="draw-indicator">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="pauseduration-atkobject"> - <property name="AtkObject::accessible-name" translatable="yes" context="presentationdialog|pauseduration-atkobject">Pause Duration</property> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|pauseduration">Enter the duration of the pause before the slide show is repeated. If you enter zero, the show restarts immediately without showing a pause slide.</property> + <object class="AtkObject" id="showlogo-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|showlogo">Displays the application logo on the pause slide.</property> </object> </child> </object> <packing> <property name="left-attach">0</property> - <property name="top-attach">3</property> + <property name="top-attach">4</property> </packing> </child> </object> @@ -649,60 +437,60 @@ </packing> </child> <child> - <object class="GtkCheckButton" id="pointervisible"> - <property name="label" translatable="yes" context="presentationdialog|pointervisible">Mouse pointer _visible</property> + <object class="GtkCheckButton" id="changeslidesbyclick"> + <property name="label" translatable="yes" context="presentationdialog|changeslidesbyclick">Change slides by clic_king on background</property> <property name="visible">True</property> <property name="can-focus">True</property> <property name="receives-default">False</property> <property name="use-underline">True</property> <property name="draw-indicator">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="pointervisible-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|pointervisible">Shows the mouse pointer during a slide show.</property> + <object class="AtkObject" id="changeslidesbyclick-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|changeslidesbyclick">Advances to the next slide when you click on the background of a slide.</property> </object> </child> </object> <packing> <property name="left-attach">0</property> - <property name="top-attach">2</property> + <property name="top-attach">1</property> </packing> </child> <child> - <object class="GtkCheckButton" id="pointeraspen"> - <property name="label" translatable="yes" context="presentationdialog|pointeraspen">Mouse pointer as _pen</property> + <object class="GtkCheckButton" id="pointervisible"> + <property name="label" translatable="yes" context="presentationdialog|pointervisible">Mouse pointer _visible</property> <property name="visible">True</property> <property name="can-focus">True</property> <property name="receives-default">False</property> <property name="use-underline">True</property> <property name="draw-indicator">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="pointeraspen-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|pointeraspen">Changes the mouse pointer to a pen which you can use to draw on slides during the presentation.</property> + <object class="AtkObject" id="pointervisible-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|pointervisible">Shows the mouse pointer during a slide show.</property> </object> </child> </object> <packing> <property name="left-attach">0</property> - <property name="top-attach">3</property> + <property name="top-attach">2</property> </packing> </child> <child> - <object class="GtkCheckButton" id="changeslidesbyclick"> - <property name="label" translatable="yes" context="presentationdialog|changeslidesbyclick">Change slides by clic_king on background</property> + <object class="GtkCheckButton" id="pointeraspen"> + <property name="label" translatable="yes" context="presentationdialog|pointeraspen">Mouse pointer as _pen</property> <property name="visible">True</property> <property name="can-focus">True</property> <property name="receives-default">False</property> <property name="use-underline">True</property> <property name="draw-indicator">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="changeslidesbyclick-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|changeslidesbyclick">Advances to the next slide when you click on the background of a slide.</property> + <object class="AtkObject" id="pointeraspen-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|pointeraspen">Changes the mouse pointer to a pen which you can use to draw on slides during the presentation.</property> </object> </child> </object> <packing> <property name="left-attach">0</property> - <property name="top-attach">1</property> + <property name="top-attach">3</property> </packing> </child> <child> @@ -786,6 +574,218 @@ <property name="top-attach">1</property> </packing> </child> + <child> + <object class="GtkFrame" id="frame3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <!-- n-columns=1 n-rows=2 --> + <object class="GtkGrid" id="grid7"> + <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="hexpand">True</property> + <property name="vexpand">True</property> + <child> + <!-- n-columns=2 n-rows=4 --> + <object class="GtkGrid" id="grid8"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="row-spacing">6</property> + <property name="column-spacing">12</property> + <child> + <object class="GtkComboBoxText" id="presdisplay_cb"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <child internal-child="accessible"> + <object class="AtkObject" id="presdisplay_cb-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="presentationdialog|extended_tip|presdisplay_cb">Select a display to use for full screen slide show mode.</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="presdisplay_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|presdisplay_label">P_resentation display:</property> + <property name="use-underline">True</property> + <property name="mnemonic-widget">presdisplay_cb</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="console_cb"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="active">0</property> + <items> + <item id="0" translatable="yes" context="presentationdialog|console_cb">Full screen</item> + <item id="1" translatable="yes" context="presentationdialog|console_cb">Windowed</item> + <item id="2" translatable="yes" context="presentationdialog|console_cb">Disabled</item> + </items> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="console_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|console_label">Presenter console:</property> + <property name="use-underline">True</property> + <property name="mnemonic-widget">console_cb</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="shownavigationbutton"> + <property name="label" translatable="yes" context="presentationdialog|shownavigationbutton">Show navigation bar</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes" context="presentationdialog|shownavigationbutton|tooltip_text">Show navigation bar at the bottom of the presentation</property> + <property name="use-underline">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="navbar_btn_size_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-start">24</property> + <property name="label" translatable="yes" context="presentationdialog|navbar_btn_size_label">Buttons size:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="navigation_buttons_size_cb"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <items> + <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Automatic</item> + <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Small</item> + <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Large</item> + <item translatable="yes" context="presentationdialog|navigation_buttons_size_cb">Extra Large</item> + </items> + <child internal-child="accessible"> + <object class="AtkObject" id="navigation_buttons_size_cb-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="extended_tip | iconsize">Specifies the display size of navigation bar icons.</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <!-- n-columns=1 n-rows=4 --> + <object class="GtkGrid" id="grid9"> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="externalmonitor_str"> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|externalmonitor_str">Display %1 (external)</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="monitor_str"> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|monitor_str">Display %1</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="allmonitors_str"> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|allmonitors_str">All displays</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="external_str"> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|external_str">Auto External (Display %1)</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="presentationdialog|label3">Display</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> <child> <object class="GtkFrame" id="frameremote"> <property name="visible">True</property> commit c516f6da693d9d5d5ea1d1bb2af2cf964694e86c Author: Michael Weghorn <[email protected]> AuthorDate: Thu Feb 20 21:16:56 2025 +0100 Commit: Michael Weghorn <[email protected]> CommitDate: Fri Feb 21 08:42:50 2025 +0100 sd: Resave presentationdialog.ui with glade 3.40 This is the Impress "Slide Show" -> "Slide Show Settings" dialog. Change-Id: Iad8aa7892c1cd41121df2fe0a489aed85bd0021b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181968 Tested-by: Jenkins Reviewed-by: Michael Weghorn <[email protected]> diff --git a/sd/uiconfig/simpress/ui/presentationdialog.ui b/sd/uiconfig/simpress/ui/presentationdialog.ui index 33bfc4f9d64a..95c501e0710a 100644 --- a/sd/uiconfig/simpress/ui/presentationdialog.ui +++ b/sd/uiconfig/simpress/ui/presentationdialog.ui @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.38.2 --> +<!-- Generated with glade 3.40.0 --> <interface domain="sd"> <requires lib="gtk+" version="3.20"/> <object class="GtkAdjustment" id="adjustment1"> @@ -849,6 +849,9 @@ <property name="top-attach">1</property> </packing> </child> + <child> + <placeholder/> + </child> </object> </child> <child type="label"> commit 6ca50428779b24e39e172efc5acaac7213f510be Author: Michael Weghorn <[email protected]> AuthorDate: Thu Feb 20 21:02:21 2025 +0100 Commit: Michael Weghorn <[email protected]> CommitDate: Fri Feb 21 08:42:44 2025 +0100 tdf#130857 qt weld: Use QSpinBox in SpinButton's weld::Widget methods In the implementation of the QtInstanceWidget methods, don't use the `m_pWidget` member directly, but instead call the virtual `getQWidget()` method to get the widget to work with. This ensures that the QSpinBox is used for QtInstanceSpinButton and QtInstanceFormattedSpinButton, which pass the QSpinBox's QLineEdit into the QtInstanceEntry base class ctor in order to be able to implement the weld::Entry interface, see commit 12fb40fd7bc771813b825806cb4151833d7cd789 Author: Michael Weghorn <[email protected]> Date: Wed Nov 27 23:40:16 2024 +0100 tdf#130857 qt weld: Let SpinButton derive from Entry Using the actual QSpinBox (i.e. the "main widget") e.g. makes disabling the spinbox in the Impress "Slide Show" -> "Slide Show Settings" dialog work as expected. (Without this commit in place, it wasn't possible to type into the "Loop and repeat after" SpinButton, but it was still possible to change the value using the "up/down" buttons of the SpinButton even if the checkbox was not checked. Change-Id: I561a662830203b20db4d247fcc90416c13950e7e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181967 Reviewed-by: Michael Weghorn <[email protected]> Tested-by: Jenkins diff --git a/vcl/qt5/QtInstanceWidget.cxx b/vcl/qt5/QtInstanceWidget.cxx index 7b4a1c79128e..9c4e60b29bff 100644 --- a/vcl/qt5/QtInstanceWidget.cxx +++ b/vcl/qt5/QtInstanceWidget.cxx @@ -36,8 +36,7 @@ void QtInstanceWidget::set_sensitive(bool bSensitive) return; } - assert(m_pWidget); - m_pWidget->setEnabled(bSensitive); + getQWidget()->setEnabled(bSensitive); } bool QtInstanceWidget::get_sensitive() const @@ -51,8 +50,7 @@ bool QtInstanceWidget::get_sensitive() const return bSensitive; } - assert(m_pWidget); - return m_pWidget->isEnabled(); + return getQWidget()->isEnabled(); } bool QtInstanceWidget::get_visible() const @@ -66,8 +64,7 @@ bool QtInstanceWidget::get_visible() const return bVisible; } - assert(m_pWidget); - return m_pWidget->isVisible(); + return getQWidget()->isVisible(); } bool QtInstanceWidget::is_visible() const @@ -81,11 +78,9 @@ bool QtInstanceWidget::is_visible() const return bVisible; } - assert(m_pWidget); - - QWidget* pTopLevel = m_pWidget->topLevelWidget(); + QWidget* pTopLevel = getQWidget()->topLevelWidget(); assert(pTopLevel); - return m_pWidget->isVisibleTo(pTopLevel) && pTopLevel->isVisible(); + return getQWidget()->isVisibleTo(pTopLevel) && pTopLevel->isVisible(); } void QtInstanceWidget::set_can_focus(bool bCanFocus) @@ -98,11 +93,10 @@ void QtInstanceWidget::set_can_focus(bool bCanFocus) return; } - assert(m_pWidget); if (bCanFocus) - m_pWidget->setFocusPolicy(Qt::FocusPolicy::StrongFocus); + getQWidget()->setFocusPolicy(Qt::FocusPolicy::StrongFocus); else - m_pWidget->setFocusPolicy(Qt::FocusPolicy::NoFocus); + getQWidget()->setFocusPolicy(Qt::FocusPolicy::NoFocus); } void QtInstanceWidget::grab_focus() @@ -115,8 +109,7 @@ void QtInstanceWidget::grab_focus() return; } - assert(m_pWidget); - m_pWidget->setFocus(); + getQWidget()->setFocus(); } bool QtInstanceWidget::has_focus() const @@ -130,8 +123,7 @@ bool QtInstanceWidget::has_focus() const return bFocus; } - assert(m_pWidget); - return m_pWidget->hasFocus(); + return getQWidget()->hasFocus(); } bool QtInstanceWidget::is_active() const { return has_focus(); } @@ -154,7 +146,7 @@ bool QtInstanceWidget::has_child_focus() const QWidget* pParent = pFocusWidget->parentWidget(); while (pParent) { - if (pParent == m_pWidget) + if (pParent == getQWidget()) return true; pParent = pParent->parentWidget(); } @@ -171,8 +163,7 @@ void QtInstanceWidget::show() return; } - assert(m_pWidget); - m_pWidget->show(); + getQWidget()->show(); } void QtInstanceWidget::hide() @@ -185,15 +176,14 @@ void QtInstanceWidget::hide() return; } - assert(m_pWidget); - m_pWidget->hide(); + getQWidget()->hide(); } void QtInstanceWidget::set_size_request(int nWidth, int nHeight) { SolarMutexGuard g; GetQtInstance().RunInMainThread( - [&] { m_pWidget->setMinimumSize(std::max(0, nWidth), std::max(0, nHeight)); }); + [&] { getQWidget()->setMinimumSize(std::max(0, nWidth), std::max(0, nHeight)); }); } Size QtInstanceWidget::get_size_request() const @@ -201,7 +191,7 @@ Size QtInstanceWidget::get_size_request() const SolarMutexGuard g; Size aSize; - GetQtInstance().RunInMainThread([&] { aSize = toSize(m_pWidget->minimumSize()); }); + GetQtInstance().RunInMainThread([&] { aSize = toSize(getQWidget()->minimumSize()); }); return aSize; } @@ -210,7 +200,7 @@ Size QtInstanceWidget::get_preferred_size() const SolarMutexGuard g; Size aPreferredSize; - GetQtInstance().RunInMainThread([&] { aPreferredSize = toSize(m_pWidget->sizeHint()); }); + GetQtInstance().RunInMainThread([&] { aPreferredSize = toSize(getQWidget()->sizeHint()); }); return aPreferredSize; } @@ -221,7 +211,7 @@ float QtInstanceWidget::get_approximate_digit_width() const float fWidth = 0; GetQtInstance().RunInMainThread( - [&] { fWidth = m_pWidget->fontMetrics().horizontalAdvance("0123456789") / 10.0; }); + [&] { fWidth = getQWidget()->fontMetrics().horizontalAdvance("0123456789") / 10.0; }); return fWidth; } @@ -230,7 +220,7 @@ int QtInstanceWidget::get_text_height() const SolarMutexGuard g; int nHeight = 0; - GetQtInstance().RunInMainThread([&] { nHeight = m_pWidget->fontMetrics().height(); }); + GetQtInstance().RunInMainThread([&] { nHeight = getQWidget()->fontMetrics().height(); }); return nHeight; } @@ -240,7 +230,7 @@ Size QtInstanceWidget::get_pixel_size(const OUString& rText) const Size aSize; GetQtInstance().RunInMainThread( - [&] { aSize = toSize(m_pWidget->fontMetrics().boundingRect(toQString(rText)).size()); }); + [&] { aSize = toSize(getQWidget()->fontMetrics().boundingRect(toQString(rText)).size()); }); return aSize; } @@ -262,7 +252,7 @@ void QtInstanceWidget::setHelpId(QWidget& rWidget, const OUString& rHelpId) [&] { rWidget.setProperty(PROPERTY_HELP_ID, toQString(rHelpId)); }); } -void QtInstanceWidget::set_help_id(const OUString& rHelpId) { setHelpId(*m_pWidget, rHelpId); } +void QtInstanceWidget::set_help_id(const OUString& rHelpId) { setHelpId(*getQWidget(), rHelpId); } OUString QtInstanceWidget::get_help_id() const { @@ -275,7 +265,7 @@ OUString QtInstanceWidget::get_help_id() const return sHelpId; } - const QVariant aHelpIdVariant = m_pWidget->property(PROPERTY_HELP_ID); + const QVariant aHelpIdVariant = getQWidget()->property(PROPERTY_HELP_ID); if (!aHelpIdVariant.isValid()) return OUString(); @@ -341,8 +331,7 @@ void QtInstanceWidget::set_accessible_name(const OUString& rName) return; } - assert(m_pWidget); - m_pWidget->setAccessibleName(toQString(rName)); + getQWidget()->setAccessibleName(toQString(rName)); } void QtInstanceWidget::set_accessible_description(const OUString& rDescription) @@ -355,8 +344,7 @@ void QtInstanceWidget::set_accessible_description(const OUString& rDescription) return; } - assert(m_pWidget); - m_pWidget->setAccessibleDescription(toQString(rDescription)); + getQWidget()->setAccessibleDescription(toQString(rDescription)); } OUString QtInstanceWidget::get_accessible_name() const @@ -370,8 +358,7 @@ OUString QtInstanceWidget::get_accessible_name() const return sName; } - assert(m_pWidget); - return toOUString(m_pWidget->accessibleName()); + return toOUString(getQWidget()->accessibleName()); } OUString QtInstanceWidget::get_accessible_description() const @@ -385,8 +372,7 @@ OUString QtInstanceWidget::get_accessible_description() const return sDescription; } - assert(m_pWidget); - return toOUString(m_pWidget->accessibleDescription()); + return toOUString(getQWidget()->accessibleDescription()); } OUString QtInstanceWidget::get_accessible_id() const @@ -400,9 +386,8 @@ OUString QtInstanceWidget::get_accessible_id() const return sId; } - assert(m_pWidget); #if QT_VERSION >= QT_VERSION_CHECK(6, 9, 0) - return toOUString(m_pWidget->accessibleIdentifier()); + return toOUString(getQWidget()->accessibleIdentifier()); #else return OUString(); #endif @@ -423,8 +408,7 @@ void QtInstanceWidget::set_tooltip_text(const OUString& rTip) return; } - assert(m_pWidget); - m_pWidget->setToolTip(toQString(rTip)); + getQWidget()->setToolTip(toQString(rTip)); } OUString QtInstanceWidget::get_tooltip_text() const @@ -438,8 +422,7 @@ OUString QtInstanceWidget::get_tooltip_text() const return sToolTipText; } - assert(m_pWidget); - return toOUString(m_pWidget->toolTip()); + return toOUString(getQWidget()->toolTip()); } void QtInstanceWidget::set_cursor_data(void*) { assert(false && "Not implemented yet"); } @@ -461,14 +444,14 @@ bool QtInstanceWidget::get_extents_relative_to(const Widget& rRelative, int& rX, bool bRet = false; GetQtInstance().RunInMainThread([&] { - QRect aGeometry = m_pWidget->geometry(); + QRect aGeometry = getQWidget()->geometry(); rWidth = aGeometry.width(); rHeight = aGeometry.height(); const QtInstanceWidget* pRelativeWidget = dynamic_cast<const QtInstanceWidget*>(&rRelative); if (!pRelativeWidget) return; - QPoint aRelativePos = m_pWidget->mapTo(pRelativeWidget->getQWidget(), QPoint(0, 0)); + QPoint aRelativePos = getQWidget()->mapTo(pRelativeWidget->getQWidget(), QPoint(0, 0)); rX = aRelativePos.x(); rY = aRelativePos.y(); bRet = true; @@ -483,7 +466,7 @@ bool QtInstanceWidget::get_direction() const bool bRTL = false; GetQtInstance().RunInMainThread( - [&] { bRTL = m_pWidget->layoutDirection() == Qt::LayoutDirection::RightToLeft; }); + [&] { bRTL = getQWidget()->layoutDirection() == Qt::LayoutDirection::RightToLeft; }); return bRTL; } @@ -492,8 +475,8 @@ void QtInstanceWidget::set_direction(bool bRTL) SolarMutexGuard g; GetQtInstance().RunInMainThread([&] { - m_pWidget->setLayoutDirection(bRTL ? Qt::LayoutDirection::RightToLeft - : Qt::LayoutDirection::LeftToRight); + getQWidget()->setLayoutDirection(bRTL ? Qt::LayoutDirection::RightToLeft + : Qt::LayoutDirection::LeftToRight); }); } @@ -513,15 +496,15 @@ void QtInstanceWidget::set_busy_cursor(bool bBusy) assert(m_nBusyCount >= 0); if (m_nBusyCount == 1) - m_pWidget->setCursor(Qt::BusyCursor); + getQWidget()->setCursor(Qt::BusyCursor); else if (m_nBusyCount == 0) - m_pWidget->unsetCursor(); + getQWidget()->unsetCursor(); }); } std::unique_ptr<weld::Container> QtInstanceWidget::weld_parent() const { - QWidget* pParentWidget = m_pWidget->parentWidget(); + QWidget* pParentWidget = getQWidget()->parentWidget(); if (!pParentWidget) return nullptr; @@ -532,7 +515,7 @@ void QtInstanceWidget::queue_resize() { SolarMutexGuard g; - GetQtInstance().RunInMainThread([&] { m_pWidget->adjustSize(); }); + GetQtInstance().RunInMainThread([&] { getQWidget()->adjustSize(); }); } void QtInstanceWidget::help_hierarchy_foreach(const std::function<bool(const OUString&)>&) @@ -622,9 +605,9 @@ void QtInstanceWidget::applicationFocusChanged(QWidget* pOldFocus, QWidget* pNew { SolarMutexGuard g; - if (pOldFocus == m_pWidget) + if (pOldFocus == getQWidget()) signal_focus_out(); - else if (pNewFocus == m_pWidget) + else if (pNewFocus == getQWidget()) signal_focus_in(); }
