filter/uiconfig/ui/xmlfiltertabpagegeneral.ui | 124 +++++++++---------- filter/uiconfig/ui/xmlfiltertabpagetransformation.ui | 114 ++++++++--------- vcl/qt5/QtInstanceBuilder.cxx | 1 3 files changed, 120 insertions(+), 119 deletions(-)
New commits: commit 9d617f6fab45fd1330edb6baf751b10960d86554 Author: Michael Weghorn <m.wegh...@posteo.de> AuthorDate: Sat Feb 22 13:14:56 2025 +0100 Commit: Michael Weghorn <m.wegh...@posteo.de> CommitDate: Sun Feb 23 10:13:55 2025 +0100 tdf#130857 qt weld: Support "Test XML Filter" dialog This means that native Qt widgets are used for that dialog now when using the qt5 or qt6 VCL plugin and starting LO with environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set. The dialog can be triggered in Writer via "Tools" -> "XML Filter Settings" -> "Test XSLTs". Change-Id: I88853d2299cda220027033c2b7e75b7ae8bae4e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182032 Reviewed-by: Michael Weghorn <m.wegh...@posteo.de> Tested-by: Jenkins diff --git a/vcl/qt5/QtInstanceBuilder.cxx b/vcl/qt5/QtInstanceBuilder.cxx index ce06b4326f0e..6563e84d7d52 100644 --- a/vcl/qt5/QtInstanceBuilder.cxx +++ b/vcl/qt5/QtInstanceBuilder.cxx @@ -83,6 +83,7 @@ bool QtInstanceBuilder::IsUIFileSupported(const OUString& rUIFile) u"cui/ui/zoomdialog.ui"_ustr, u"dbaccess/ui/savedialog.ui"_ustr, u"dbaccess/ui/tabledesignsavemodifieddialog.ui"_ustr, + u"filter/ui/testxmlfilter.ui"_ustr, u"filter/ui/xmlfiltertabpagegeneral.ui"_ustr, u"filter/ui/xmlfiltertabpagetransformation.ui"_ustr, u"filter/ui/xsltfilterdialog.ui"_ustr, commit f358878e943631a236806b083287f7f33254dc56 Author: Michael Weghorn <m.wegh...@posteo.de> AuthorDate: Sat Feb 22 13:08:24 2025 +0100 Commit: Michael Weghorn <m.wegh...@posteo.de> CommitDate: Sun Feb 23 10:13:46 2025 +0100 tdf#130857 Define widgets in XML Filter dlg .ui files in order Switch the order in which the widgets in the .ui files 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 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 <m.wegh...@posteo.de> Date: Thu Oct 24 17:43:35 2024 +0200 tdf#130857 optnewdictionarydialog.ui: Define focusable widgets in order for more background. The dialog can be triggered in Writer via "Tools" -> "XML Filter Settings" -> "New". Change-Id: Icf1043da9d97efed6f1a5e1d3cb722d66f86921c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182031 Reviewed-by: Michael Weghorn <m.wegh...@posteo.de> Tested-by: Jenkins diff --git a/filter/uiconfig/ui/xmlfiltertabpagegeneral.ui b/filter/uiconfig/ui/xmlfiltertabpagegeneral.ui index 6b4b42edad4f..c0d08e35e6c1 100644 --- a/filter/uiconfig/ui/xmlfiltertabpagegeneral.ui +++ b/filter/uiconfig/ui/xmlfiltertabpagegeneral.ui @@ -31,64 +31,78 @@ </packing> </child> <child> - <object class="GtkLabel" id="label3"> + <object class="GtkEntry" id="filtername"> <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label3">_Application:</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">application</property> - <property name="xalign">1</property> + <property name="can-focus">True</property> + <property name="halign">start</property> + <property name="activates-default">True</property> + <property name="width-chars">38</property> + <property name="truncate-multiline">True</property> + <child internal-child="accessible"> + <object class="AtkObject" id="filtername-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|filtername">Enter the name that you want to display in the list box of the XML Filter Settings dialog.</property> + </object> + </child> </object> <packing> - <property name="left-attach">0</property> - <property name="top-attach">1</property> + <property name="left-attach">1</property> + <property name="top-attach">0</property> </packing> </child> <child> - <object class="GtkLabel" id="label4"> + <object class="GtkLabel" id="label3"> <property name="visible">True</property> <property name="can-focus">False</property> - <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label4">_Name of file type:</property> + <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label3">_Application:</property> <property name="use-underline">True</property> - <property name="mnemonic-widget">interfacename</property> + <property name="mnemonic-widget">application</property> <property name="xalign">1</property> </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="GtkLabel" id="label5"> + <object class="GtkComboBoxText" id="application"> <property name="visible">True</property> <property name="can-focus">False</property> - <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label5">File _extension:</property> - <property name="use-underline">True</property> - <property name="mnemonic-widget">extension</property> - <property name="xalign">1</property> + <property name="halign">start</property> + <property name="has-entry">True</property> + <child internal-child="entry"> + <object class="GtkEntry" id="comboboxtext-entry"> + <property name="can-focus">True</property> + <property name="activates-default">True</property> + <property name="truncate-multiline">True</property> + </object> + </child> + <child internal-child="accessible"> + <object class="AtkObject" id="application-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|application">Select the application that you want to use with the filter.</property> + </object> + </child> </object> <packing> - <property name="left-attach">0</property> - <property name="top-attach">3</property> + <property name="left-attach">1</property> + <property name="top-attach">1</property> </packing> </child> <child> - <object class="GtkLabel" id="label6"> + <object class="GtkLabel" id="label4"> <property name="visible">True</property> <property name="can-focus">False</property> - <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label6">Comment_s:</property> + <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label4">_Name of file type:</property> <property name="use-underline">True</property> - <property name="mnemonic-widget">description</property> + <property name="mnemonic-widget">interfacename</property> <property name="xalign">1</property> - <property name="yalign">0</property> </object> <packing> <property name="left-attach">0</property> - <property name="top-attach">4</property> + <property name="top-attach">2</property> </packing> </child> <child> - <object class="GtkEntry" id="filtername"> + <object class="GtkEntry" id="interfacename"> <property name="visible">True</property> <property name="can-focus">True</property> <property name="halign">start</property> @@ -96,76 +110,62 @@ <property name="width-chars">38</property> <property name="truncate-multiline">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="filtername-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|filtername">Enter the name that you want to display in the list box of the XML Filter Settings dialog.</property> + <object class="AtkObject" id="interfacename-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|interfacename">Enter the name that you want to display in the File type box in file dialogs.</property> </object> </child> </object> <packing> <property name="left-attach">1</property> - <property name="top-attach">0</property> + <property name="top-attach">2</property> </packing> </child> <child> - <object class="GtkEntry" id="extension"> + <object class="GtkLabel" id="label5"> <property name="visible">True</property> - <property name="can-focus">True</property> - <property name="halign">start</property> - <property name="activates-default">True</property> - <property name="width-chars">6</property> - <property name="truncate-multiline">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="extension-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|extension">Enter the file extension to use when you open a file without specifying a filter. The file extension is used to determine which filter to use.</property> - </object> - </child> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label5">File _extension:</property> + <property name="use-underline">True</property> + <property name="mnemonic-widget">extension</property> + <property name="xalign">1</property> </object> <packing> - <property name="left-attach">1</property> + <property name="left-attach">0</property> <property name="top-attach">3</property> </packing> </child> <child> - <object class="GtkEntry" id="interfacename"> + <object class="GtkEntry" id="extension"> <property name="visible">True</property> <property name="can-focus">True</property> <property name="halign">start</property> <property name="activates-default">True</property> - <property name="width-chars">38</property> + <property name="width-chars">6</property> <property name="truncate-multiline">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="interfacename-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|interfacename">Enter the name that you want to display in the File type box in file dialogs.</property> + <object class="AtkObject" id="extension-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|extension">Enter the file extension to use when you open a file without specifying a filter. The file extension is used to determine which filter to use.</property> </object> </child> </object> <packing> <property name="left-attach">1</property> - <property name="top-attach">2</property> + <property name="top-attach">3</property> </packing> </child> <child> - <object class="GtkComboBoxText" id="application"> + <object class="GtkLabel" id="label6"> <property name="visible">True</property> <property name="can-focus">False</property> - <property name="halign">start</property> - <property name="has-entry">True</property> - <child internal-child="entry"> - <object class="GtkEntry" id="comboboxtext-entry"> - <property name="can-focus">True</property> - <property name="activates-default">True</property> - <property name="truncate-multiline">True</property> - </object> - </child> - <child internal-child="accessible"> - <object class="AtkObject" id="application-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagegeneral|extended_tip|application">Select the application that you want to use with the filter.</property> - </object> - </child> + <property name="label" translatable="yes" context="xmlfiltertabpagegeneral|label6">Comment_s:</property> + <property name="use-underline">True</property> + <property name="mnemonic-widget">description</property> + <property name="xalign">1</property> + <property name="yalign">0</property> </object> <packing> - <property name="left-attach">1</property> - <property name="top-attach">1</property> + <property name="left-attach">0</property> + <property name="top-attach">4</property> </packing> </child> <child> diff --git a/filter/uiconfig/ui/xmlfiltertabpagetransformation.ui b/filter/uiconfig/ui/xmlfiltertabpagetransformation.ui index f816f90e7d93..53b2c54232e5 100644 --- a/filter/uiconfig/ui/xmlfiltertabpagetransformation.ui +++ b/filter/uiconfig/ui/xmlfiltertabpagetransformation.ui @@ -64,6 +64,29 @@ <property name="top-attach">1</property> </packing> </child> + <child> + <object class="GtkComboBoxText" id="xsltexport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="has-entry">True</property> + <child internal-child="entry"> + <object class="GtkEntry"> + <property name="can-focus">True</property> + <property name="truncate-multiline">True</property> + </object> + </child> + <child internal-child="accessible"> + <object class="AtkObject" id="xsltexport-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|xsltexport">If this is an export filter, enter the file name of the XSLT stylesheet that you want to use for exporting.</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> <child> <object class="GtkButton" id="browseexport"> <property name="label" translatable="yes" context="xmlfiltertabpagetransformation|browseexport">Brows_e...</property> @@ -96,6 +119,29 @@ <property name="top-attach">2</property> </packing> </child> + <child> + <object class="GtkComboBoxText" id="xsltimport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="has-entry">True</property> + <child internal-child="entry"> + <object class="GtkEntry"> + <property name="can-focus">True</property> + <property name="truncate-multiline">True</property> + </object> + </child> + <child internal-child="accessible"> + <object class="AtkObject" id="xsltimport-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|xsltimport">If this is an import filter, enter the file name of the XSLT stylesheet that you want to use for importing.</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> <child> <object class="GtkButton" id="browseimport"> <property name="label" translatable="yes" context="xmlfiltertabpagetransformation|browseimport">B_rowse...</property> @@ -129,47 +175,7 @@ </packing> </child> <child> - <object class="GtkButton" id="browsetemp"> - <property name="label" translatable="yes" context="xmlfiltertabpagetransformation|browsetemp">Browse...</property> - <property name="visible">True</property> - <property name="can-focus">True</property> - <property name="receives-default">True</property> - <child internal-child="accessible"> - <object class="AtkObject" id="browsetemp-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|browsetemp">Opens a file selection dialog.</property> - </object> - </child> - </object> - <packing> - <property name="left-attach">2</property> - <property name="top-attach">3</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="xsltexport"> - <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <property name="has-entry">True</property> - <child internal-child="entry"> - <object class="GtkEntry"> - <property name="can-focus">True</property> - <property name="truncate-multiline">True</property> - </object> - </child> - <child internal-child="accessible"> - <object class="AtkObject" id="xsltexport-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|xsltexport">If this is an export filter, enter the file name of the XSLT stylesheet that you want to use for exporting.</property> - </object> - </child> - </object> - <packing> - <property name="left-attach">1</property> - <property name="top-attach">1</property> - </packing> - </child> - <child> - <object class="GtkComboBoxText" id="xsltimport"> + <object class="GtkComboBoxText" id="tempimport"> <property name="visible">True</property> <property name="can-focus">False</property> <property name="hexpand">True</property> @@ -181,36 +187,30 @@ </object> </child> <child internal-child="accessible"> - <object class="AtkObject" id="xsltimport-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|xsltimport">If this is an import filter, enter the file name of the XSLT stylesheet that you want to use for importing.</property> + <object class="AtkObject" id="tempimport-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|tempimport">Enter the name of the template that you want to use for importing. In the template, styles are defined to display XML tags.</property> </object> </child> </object> <packing> <property name="left-attach">1</property> - <property name="top-attach">2</property> + <property name="top-attach">3</property> </packing> </child> <child> - <object class="GtkComboBoxText" id="tempimport"> + <object class="GtkButton" id="browsetemp"> + <property name="label" translatable="yes" context="xmlfiltertabpagetransformation|browsetemp">Browse...</property> <property name="visible">True</property> - <property name="can-focus">False</property> - <property name="hexpand">True</property> - <property name="has-entry">True</property> - <child internal-child="entry"> - <object class="GtkEntry"> - <property name="can-focus">True</property> - <property name="truncate-multiline">True</property> - </object> - </child> + <property name="can-focus">True</property> + <property name="receives-default">True</property> <child internal-child="accessible"> - <object class="AtkObject" id="tempimport-atkobject"> - <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|tempimport">Enter the name of the template that you want to use for importing. In the template, styles are defined to display XML tags.</property> + <object class="AtkObject" id="browsetemp-atkobject"> + <property name="AtkObject::accessible-description" translatable="yes" context="xmlfiltertabpagetransformation|extended_tip|browsetemp">Opens a file selection dialog.</property> </object> </child> </object> <packing> - <property name="left-attach">1</property> + <property name="left-attach">2</property> <property name="top-attach">3</property> </packing> </child>