As the weld::TreeView doc says, two special expander columns
for toggle buttons and images can be used that can be accessed
by index -1 in the weld::TreeView API:
/* Model column indexes are considered to begin at 0, but with special columns
before index 0. A expander image column (and an additional optional toggle
button column when enable_toggle_buttons is used). Column index -1 is
reserved to access those columns.
*/
class VCL_DLLPUBLIC TreeView : virtual public ItemView
While the vcl implementation in SalInstanceTreeView doesn't
currently take into account the .ui file at all, the gtk3
vcl implementation (GtkInstanceTreeView) does (and the
native Qt implementation in QtInstanceTreeView also does).
The vcl implementation always shows the toggle button/column
before the image/pixbuf one.
(See e.g. how SvTreeListBox::SetTabs calls
AddTab( nStartPos, TABFLAGS_CHECKBTN );
before
AddTab(nStartPos, TABFLAGS_CONTEXTBMP);
and how SalInstanceTreeView::do_insert also first
inserts an item if the SvTreeFlags::CHKBTN flag
is set before inserting a SvLBoxContextBmp for the
special bitmap/expander column.)
For consistency with the vcl implementation,
make sure the toggle renderer also comes first
in .ui files, which means it will be rendered
first when using gtk3 as well.
Ensure that by adding a rule to ui-rules-enforcer.
The two issues that the new rule detected were
already addressed in previous commits
Change-Id: I3a959d71cd91d5bfc20ba8abe50a3c7b1c189df3
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Thu Jun 18 17:58:49 2026 +0200
tdf#130857 dbaccess: Have special toggle before pixbuf col in dbtreelist.ui
and
Change-Id: Ie1bd0a96a79a9818f3aa573edb29e76363dbfe44
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Thu Jun 18 18:24:34 2026 +0200
tdf#130857 dbaccess: Show checkbox in front of icon in "Tables Filter" dlg
, so running
$ for a in `git ls-files "*.ui"`; do bin/ui-rules-enforcer.py $a; done
doesn't detect any additional issues right now, but can be used
to avoid/detect new issues in the future.
Change-Id: I1f7c8c6456ed2e8ba4d8018d69fb12b40204536a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206986
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Tools and Non-Build Scripts
Tools and scripts mostly not used during the build
This direction has a number of key pieces (?) that are used during the
build, or are simply generally useful. One example is bin/run.
This utility can be used to run the executables in this folder:
workdir/LinkTarget/Executable
Format of the usage is:
./bin/run application [parameters]|--list|--help
Use --list (same as -list or -l) to get the list of executables Use --help (same as -help or -h) to get this help
Another example is:
bin/find-german-comments <directory>
which will try to detect and extract all the German comments in a
given source code hierarchy / directory.
Please note that the associated issue tdf#39468 is now marked as RESOLVED/FIXED, so don't expect many German comments.