summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:06:44 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:06:44 +0000
commited5640d8b587fbcfed7dd7967f3de04b37a76f26 (patch)
tree7a5f7c6c9d02226d7471cb3cc8fbbf631b415303 /bin
parentInitial commit. (diff)
downloadlibreoffice-cb75148ebd0135178ff46f89a30139c44f8d2040.tar.xz
libreoffice-cb75148ebd0135178ff46f89a30139c44f8d2040.zip
Adding upstream version 4:7.4.7.upstream/4%7.4.7upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--bin/README.md11
-rw-r--r--bin/attachment_mimetypes.py157
-rw-r--r--bin/bash-completion.in90
-rw-r--r--bin/benchmark-document-loading486
-rw-r--r--bin/bffvalidator.sh.in3
-rwxr-xr-xbin/check-elf-dynamic-objects271
-rwxr-xr-xbin/check-icon-sizes.py34
-rwxr-xr-xbin/check-implementer-notes.py31
-rwxr-xr-xbin/check-missing-export-asserts.py177
-rwxr-xr-xbin/check-missing-unittests.py228
-rwxr-xr-xbin/compare-crashreport-stats.py62
-rw-r--r--bin/convwatch.py464
-rwxr-xr-xbin/crashreportScraper.py205
-rwxr-xr-xbin/distro-install-clean-up92
-rwxr-xr-xbin/distro-install-desktop-integration188
-rwxr-xr-xbin/distro-install-file-lists517
-rwxr-xr-xbin/distro-install-sdk84
-rwxr-xr-xbin/dump-poolitems-values.py91
-rwxr-xr-xbin/extract-tooltip.py107
-rw-r--r--bin/fake_pom.xml6
-rw-r--r--bin/find-can-be-private-symbols.classes.results287
-rw-r--r--bin/find-can-be-private-symbols.functions.results23467
-rwxr-xr-xbin/find-can-be-private-symbols.py222
-rwxr-xr-xbin/find-clang-format.py67
-rwxr-xr-xbin/find-duplicated-files.py43
-rwxr-xr-xbin/find-duplicated-sids.py92
-rwxr-xr-xbin/find-files-not-referenced-by-makefile.py53
-rwxr-xr-xbin/find-german-comments401
-rwxr-xr-xbin/find-headers-to-move-inside-modules.py53
-rw-r--r--bin/find-mergedlib-can-be-private.classes.results423
-rwxr-xr-xbin/find-mergedlib-can-be-private.py151
-rwxr-xr-xbin/find-most-common-warn-messages.py39
-rwxr-xr-xbin/find-most-repeated-functions.py42
-rwxr-xr-xbin/find-undocumented-classes33
-rwxr-xr-xbin/find-unneeded-includes373
-rwxr-xr-xbin/find-unused-defines.py178
-rwxr-xr-xbin/find-unused-sid-commands.py53
-rwxr-xr-xbin/find-unused-typedefs.py36
-rwxr-xr-xbin/find-unusedheaders.py48
-rwxr-xr-xbin/fixincludeguards.sh85
-rw-r--r--bin/flat-odf-cleanup.py311
-rwxr-xr-xbin/fuzzfiles41
-rwxr-xr-xbin/gbuild-to-ide1919
-rwxr-xr-xbin/gen-boost-headers69
-rw-r--r--bin/gen-iwyu-dummy-lib.awk34
-rwxr-xr-xbin/generate-bash-completion.py162
-rwxr-xr-xbin/get-bugzilla-attachments-by-mimetype430
-rwxr-xr-xbin/get-forum-attachments.py167
-rw-r--r--bin/get_config_variables29
-rwxr-xr-xbin/git-ps152
-rwxr-xr-xbin/gla11y1481
-rwxr-xr-xbin/includebloat.awk51
-rwxr-xr-xbin/ios-mapfile-statistics78
-rw-r--r--bin/java-set-classpath.in53
-rwxr-xr-xbin/lint-ui.py229
-rwxr-xr-xbin/list-dispatch-commands.py421
-rwxr-xr-xbin/list-uitest.py80
-rwxr-xr-xbin/lo-all-static-libs133
-rwxr-xr-xbin/lo-commit-stat584
-rwxr-xr-xbin/lo-pack-sources485
-rwxr-xr-xbin/lo-xlate-lang213
-rwxr-xr-xbin/lolcat21
-rwxr-xr-xbin/merge-app-bundles143
-rwxr-xr-xbin/module-deps.pl584
-rwxr-xr-xbin/moveglobalheaders.sh43
-rw-r--r--bin/odfvalidator.sh.in2
-rw-r--r--bin/officeotron.sh.in2
-rwxr-xr-xbin/oss-fuzz-build.sh81
-rwxr-xr-xbin/oss-fuzz-setup.sh145
-rwxr-xr-xbin/parse-perfcheck.py258
-rwxr-xr-xbin/refcount_leak.py179
-rwxr-xr-xbin/removetooltip_markups.sh55
-rwxr-xr-xbin/rename-sw-abbreviations.sh43
-rwxr-xr-xbin/run76
-rw-r--r--bin/sanitize-excludelist.txt18
-rwxr-xr-xbin/sanitize-image-links38
-rwxr-xr-xbin/striplanguagetags.sh74
-rwxr-xr-xbin/stubify.pl262
-rwxr-xr-xbin/symbolstore.py668
-rwxr-xr-xbin/symstore.sh176
-rwxr-xr-xbin/test-hid-vs-ui.py188
-rw-r--r--bin/text_cat/COPYING504
-rw-r--r--bin/text_cat/Copyright21
-rw-r--r--bin/text_cat/LM/english.lm400
-rw-r--r--bin/text_cat/LM/german.lm400
-rwxr-xr-xbin/text_cat/text_cat242
-rw-r--r--bin/text_cat/version2
-rwxr-xr-xbin/ui-rules-enforcer.py657
-rwxr-xr-xbin/ui-translatable.sh22
-rwxr-xr-xbin/unpack-sources91
-rw-r--r--bin/update/common.sh222
-rw-r--r--bin/update/config.py28
-rwxr-xr-xbin/update/create_build_config.py60
-rwxr-xr-xbin/update/create_full_mar.py54
-rwxr-xr-xbin/update/create_full_mar_for_languages.py66
-rwxr-xr-xbin/update/create_partial_update.py160
-rwxr-xr-xbin/update/get_update_channel.py23
-rwxr-xr-xbin/update/make_full_update.sh122
-rwxr-xr-xbin/update/make_incremental_update.sh318
-rw-r--r--bin/update/path.py69
-rw-r--r--bin/update/signing.py12
-rw-r--r--bin/update/tools.py64
-rwxr-xr-xbin/update/uncompress_mar.py54
-rwxr-xr-xbin/update/upload_build_config.py42
-rwxr-xr-xbin/update/upload_builds.py32
-rwxr-xr-xbin/update_pch1322
-rwxr-xr-xbin/update_pch.sh70
-rwxr-xr-xbin/update_pch_autotune.sh229
-rwxr-xr-xbin/update_pch_bisect354
-rwxr-xr-xbin/upload_symbols.py57
-rwxr-xr-xbin/verify-custom-widgets-libs30
-rw-r--r--binaryurp/CppunitTest_binaryurp_test-cache.mk22
-rw-r--r--binaryurp/CppunitTest_binaryurp_test-unmarshal.mk33
-rw-r--r--binaryurp/IwyuFilter_binaryurp.yaml34
-rw-r--r--binaryurp/Library_binaryurp.mk40
-rw-r--r--binaryurp/Makefile7
-rw-r--r--binaryurp/Module_binaryurp.mk21
-rw-r--r--binaryurp/README.md8
-rw-r--r--binaryurp/qa/test-cache.cxx81
-rw-r--r--binaryurp/qa/test-unmarshal.cxx94
-rw-r--r--binaryurp/source/binaryany.cxx114
-rw-r--r--binaryurp/source/binaryany.hxx66
-rw-r--r--binaryurp/source/binaryurp.component26
-rw-r--r--binaryurp/source/bridge.cxx1054
-rw-r--r--binaryurp/source/bridge.hxx281
-rw-r--r--binaryurp/source/bridgefactory.cxx192
-rw-r--r--binaryurp/source/bridgefactory.hxx115
-rw-r--r--binaryurp/source/cache.hxx95
-rw-r--r--binaryurp/source/currentcontext.cxx55
-rw-r--r--binaryurp/source/currentcontext.hxx36
-rw-r--r--binaryurp/source/incomingreply.hxx52
-rw-r--r--binaryurp/source/incomingrequest.cxx286
-rw-r--r--binaryurp/source/incomingrequest.hxx79
-rw-r--r--binaryurp/source/lessoperators.cxx65
-rw-r--r--binaryurp/source/lessoperators.hxx39
-rw-r--r--binaryurp/source/marshal.cxx300
-rw-r--r--binaryurp/source/marshal.hxx88
-rw-r--r--binaryurp/source/outgoingrequest.hxx47
-rw-r--r--binaryurp/source/outgoingrequests.cxx67
-rw-r--r--binaryurp/source/outgoingrequests.hxx63
-rw-r--r--binaryurp/source/proxy.cxx239
-rw-r--r--binaryurp/source/proxy.hxx85
-rw-r--r--binaryurp/source/reader.cxx480
-rw-r--r--binaryurp/source/reader.hxx65
-rw-r--r--binaryurp/source/readerstate.hxx47
-rw-r--r--binaryurp/source/specialfunctionids.hxx40
-rw-r--r--binaryurp/source/unmarshal.cxx491
-rw-r--r--binaryurp/source/unmarshal.hxx93
-rw-r--r--binaryurp/source/writer.cxx455
-rw-r--r--binaryurp/source/writer.hxx150
-rw-r--r--binaryurp/source/writerstate.hxx49
151 files changed, 50909 insertions, 0 deletions
diff --git a/bin/README.md b/bin/README.md
new file mode 100644
index 000000000..b81d1f4d1
--- /dev/null
+++ b/bin/README.md
@@ -0,0 +1,11 @@
+# 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/find-german-comments <directory>
+
+which will try to detect and extract all the German comments in a
+given source code hierarchy `/` directory.
diff --git a/bin/attachment_mimetypes.py b/bin/attachment_mimetypes.py
new file mode 100644
index 000000000..ede5fcb39
--- /dev/null
+++ b/bin/attachment_mimetypes.py
@@ -0,0 +1,157 @@
+mimetypes = {
+# ODF
+ 'application/vnd.oasis.opendocument.base': 'odb',
+ 'application/vnd.oasis.opendocument.database': 'odb',
+ 'application/vnd.oasis.opendocument.chart': 'odc',
+ 'application/vnd.oasis.opendocument.chart-template': 'otc',
+ 'application/vnd.oasis.opendocument.formula': 'odf',
+ 'application/vnd.oasis.opendocument.formula-template': 'otf',
+ 'application/vnd.oasis.opendocument.graphics': 'odg',
+ 'application/vnd.oasis.opendocument.graphics-template': 'otg',
+ 'application/vnd.oasis.opendocument.graphics-flat-xml': 'fodg',
+ 'application/vnd.oasis.opendocument.presentation': 'odp',
+ 'application/vnd.oasis.opendocument.presentation-template': 'otp',
+ 'application/vnd.oasis.opendocument.presentation-flat-xml': 'fodp',
+ 'application/vnd.oasis.opendocument.spreadsheet': 'ods',
+ 'application/vnd.oasis.opendocument.spreadsheet-template': 'ots',
+ 'application/vnd.oasis.opendocument.spreadsheet-flat-xml': 'fods',
+ 'application/vnd.oasis.opendocument.text': 'odt',
+ 'application/vnd.oasis.opendocument.text-flat-xml': 'fodt',
+ 'application/vnd.oasis.opendocument.text-master': 'odm',
+ 'application/vnd.oasis.opendocument.text-template': 'ott',
+ 'application/vnd.oasis.opendocument.text-master-template': 'otm',
+ 'application/vnd.oasis.opendocument.text-web': 'oth',
+# OOo XML
+ 'application/vnd.sun.xml.base': 'odb',
+ 'application/vnd.sun.xml.calc': 'sxc',
+ 'application/vnd.sun.xml.calc.template': 'stc',
+ 'application/vnd.sun.xml.chart': 'sxs',
+ 'application/vnd.sun.xml.draw': 'sxd',
+ 'application/vnd.sun.xml.draw.template': 'std',
+ 'application/vnd.sun.xml.impress': 'sxi',
+ 'application/vnd.sun.xml.impress.template': 'sti',
+ 'application/vnd.sun.xml.math': 'sxm',
+ 'application/vnd.sun.xml.writer': 'sxw',
+ 'application/vnd.sun.xml.writer.global': 'sxg',
+ 'application/vnd.sun.xml.writer.template': 'stw',
+ 'application/vnd.sun.xml.writer.web': 'stw',
+# MSO
+ 'application/rtf': 'rtf',
+ 'text/rtf': 'rtf',
+ 'application/msword': 'doc',
+ 'application/vnd.ms-powerpoint': 'ppt',
+ 'application/vnd.ms-excel': 'xls',
+ 'application/vnd.ms-excel.sheet.binary.macroEnabled.12': 'xlsb',
+ 'application/vnd.ms-excel.sheet.macroEnabled.12': 'xlsm',
+ 'application/vnd.ms-excel.template.macroEnabled.12': 'xltm',
+ 'application/vnd.ms-powerpoint.presentation.macroEnabled.12': 'pptm',
+ 'application/vnd.ms-powerpoint.slide.macroEnabled.12': 'sldm',
+ 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12': 'ppsm',
+ 'application/vnd.ms-powerpoint.template.macroEnabled.12': 'potm',
+ 'application/vnd.ms-word.document.macroEnabled.12': 'docm',
+ 'application/vnd.ms-word.template.macroEnabled.12': 'dotm',
+ 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xlsx',
+ 'application/vnd.openxmlformats-officedocument.spreadsheetml.template': 'xltx',
+ 'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'pptx',
+ 'application/vnd.openxmlformats-officedocument.presentationml.template': 'potx',
+ 'application/vnd.openxmlformats-officedocument.presentationml.slideshow': 'ppsx',
+ 'application/vnd.openxmlformats-officedocument.presentationml.slide': 'sldx',
+ 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'docx',
+ 'application/vnd.openxmlformats-officedocument.wordprocessingml.template': 'dotx',
+ 'application/vnd.visio': 'vsd',
+ 'application/visio.drawing': 'vsd',
+ 'application/vnd.visio2013': 'vsdx',
+ 'application/vnd.visio.xml': 'vdx',
+ 'application/x-mspublisher': 'pub',
+#WPS Office
+ 'application/wps-office.doc': 'doc',
+ 'application/wps-office.docx': 'docx',
+ 'application/wps-office.xls': 'xls',
+ 'application/wps-office.xlsx': 'xlsx',
+ 'application/wps-office.ppt': 'ppt',
+ 'application/wps-office.pptx': 'pptx',
+# W3C
+ 'application/xhtml+xml': 'xhtml',
+ 'application/mathml+xml': 'mml',
+ 'text/html': 'html',
+ 'application/docbook+xml': 'docbook',
+# misc
+ 'text/csv': 'csv',
+ 'text/spreadsheet': 'slk',
+ 'application/x-qpro': 'qpro',
+ 'application/x-dbase': 'dbf',
+ 'application/vnd.corel-draw': 'cdr',
+ 'application/vnd.lotus-wordpro': 'lwp',
+ 'application/vnd.lotus-1-2-3': 'wks',
+ 'application/vnd.wordperfect': 'wpd',
+ 'application/wordperfect5.1': 'wpd',
+ 'application/vnd.ms-works': 'wps',
+ 'application/clarisworks' : 'cwk',
+ 'application/macwriteii' : 'mw',
+ 'application/vnd.apple.keynote': 'key',
+ 'application/vnd.apple.numbers': 'numbers',
+ 'application/vnd.apple.pages': 'pages',
+ 'application/x-iwork-keynote-sffkey': 'key',
+ 'application/x-iwork-numbers-sffnumbers': 'numbers',
+ 'application/x-iwork-pages-sffpages': 'pages',
+ 'application/x-hwp': 'hwp',
+ 'application/x-aportisdoc': 'pdb',
+ 'application/prs.plucker' : 'pdb_plucker',
+ 'application/vnd.palm' : 'pdb_palm',
+ 'application/x-sony-bbeb' : 'lrf',
+ 'application/x-pocket-word': 'psw',
+ 'application/x-t602': '602',
+ 'application/x-fictionbook+xml': 'fb2',
+ 'application/x-abiword': 'abw',
+ 'application/x-pagemaker': 'pmd',
+ 'application/x-gnumeric': 'gnumeric',
+ 'application/vnd.stardivision.calc': 'sdc',
+ 'application/vnd.stardivision.draw': 'sda',
+ 'application/vnd.stardivision.writer': 'sdw',
+ 'application/x-starcalc': 'sdc',
+ 'application/x-stardraw': 'sdd',
+ 'application/x-starwriter': 'sdw',
+# relatively uncommon image mimetypes
+ 'image/x-freehand': 'fh',
+ 'image/cgm': 'cgm',
+ 'image/tif': 'tiff',
+ 'image/tiff': 'tiff',
+ 'image/vnd.dxf': 'dxf',
+ 'image/emf': 'emf',
+ 'image/x-emf': 'emf',
+ 'image/x-targa': 'tga',
+ 'image/x-sgf': 'sgf',
+ 'image/x-svm': 'svm',
+ 'image/wmf': 'wmf',
+ 'image/x-wmf': 'wmf',
+ 'image/x-pict': 'pict',
+ 'image/x-cmx': 'cmx',
+ 'image/svg+xml': 'svg',
+ 'image/bmp': 'bmp',
+ 'image/x-ms-bmp': 'bmp',
+ 'image/x-MS-bmp': 'bmp',
+ 'image/x-wpg': 'wpg',
+ 'image/x-eps': 'eps',
+ 'image/x-met': 'met',
+ 'image/x-portable-bitmap': 'pbm',
+ 'image/x-photo-cd': 'pcd',
+ 'image/x-pcx': 'pcx',
+ 'image/x-portable-graymap': 'pgm',
+ 'image/x-portable-pixmap': 'ppm',
+ 'image/vnd.adobe.photoshop': 'psd',
+ 'image/x-cmu-raster': 'ras',
+ 'image/x-sun-raster': 'ras',
+ 'image/x-xbitmap': 'xbm',
+ 'image/x-xpixmap': 'xpm',
+}
+
+# disabled for now, this would download gigs of pngs/jpegs...
+common_noncore_mimetypes = {
+# graphics
+ 'image/gif': 'gif',
+ 'image/jpeg': 'jpeg',
+ 'image/png': 'png',
+# pdf, etc.
+ 'application/pdf': 'pdf',
+}
+
diff --git a/bin/bash-completion.in b/bin/bash-completion.in
new file mode 100644
index 000000000..77087c593
--- /dev/null
+++ b/bin/bash-completion.in
@@ -0,0 +1,90 @@
+# Programmable bash_completion file for the main office applications
+# It is based on /etc/profile.d/complete.bash from SUSE Linux 10.1
+
+_def=; _dir=; _file=; _nosp=
+if complete -o default _nullcommand &> /dev/null ; then
+ _def="-o default"
+ _dir="-o dirnames"
+ _file="-o filenames"
+fi
+_minusdd="-d ${_dir}"
+_minusdf="-d ${_file}"
+if complete -o nospace _nullcommand &> /dev/null ; then
+ _nosp="-o nospace"
+ _minusdd="${_nosp} ${_dir}"
+ _minusdf="${_nosp} ${_dir}"
+fi
+complete -r _nullcommand &> /dev/null
+
+# General expanding shell function
+@OFFICE_SHELL_FUNCTION@ ()
+{
+ # bash `complete' is broken because you can not combine
+ # -d, -f, and -X pattern without missing directories.
+ local c=${COMP_WORDS[COMP_CWORD]}
+ local a="${COMP_LINE}"
+ local e s g=0 cd dc t=""
+ local IFS
+
+ shopt -q extglob && g=1
+ test $g -eq 0 && shopt -s extglob
+ # Don't be fooled by the bash parser if extglob is off by default
+ cd='*-?(c)d*'
+ dc='*-d?(c)*'
+
+ case "${1##*/}" in
+@BASH_COMPLETION_SUFFIXES_CHECKS@
+ *) e='!*'
+ esac
+
+ case "$(complete -p ${1##*/} 2> /dev/null)" in
+ *-d*) ;;
+ *) s="-S/"
+ esac
+
+ IFS='
+'
+ case "$c" in
+ \$\(*\)) eval COMPREPLY=\(${c}\) ;;
+ \$\(*) COMPREPLY=($(compgen -c -P '$(' -S ')' -- ${c#??})) ;;
+ \`*\`) eval COMPREPLY=\(${c}\) ;;
+ \`*) COMPREPLY=($(compgen -c -P '\`' -S '\`' -- ${c#?})) ;;
+ \$\{*\}) eval COMPREPLY=\(${c}\) ;;
+ \$\{*) COMPREPLY=($(compgen -v -P '${' -S '}' -- ${c#??})) ;;
+ \$*) COMPREPLY=($(compgen -v -P '$' -- ${c#?})) ;;
+ \~*/*) COMPREPLY=($(compgen -f -X "$e" -- ${c})) ;;
+ \~*) COMPREPLY=($(compgen -u ${s} -- ${c})) ;;
+ *@*) COMPREPLY=($(compgen -A hostname -P '@' -S ':' -- ${c#*@})) ;;
+ *[*?[]*) COMPREPLY=($(compgen -G "${c}")) ;;
+ *[?*+\!@]\(*\)*)
+ if test $g -eq 0 ; then
+ COMPREPLY=($(compgen -f -X "$e" -- $c))
+ test $g -eq 0 && shopt -u extglob
+ return
+ fi
+ COMPREPLY=($(compgen -G "${c}")) ;;
+ *)
+ if test "$c" = ".." ; then
+ COMPREPLY=($(compgen -d -X "$e" -S / ${_nosp} -- $c))
+ else
+ for s in $(compgen -f -X "$e" -- $c) ; do
+ if test -d $s ; then
+ COMPREPLY=(${COMPREPLY[@]} $(compgen -f -X "$e" -S / -- $s))
+ elif test -z "$t" ; then
+ COMPREPLY=(${COMPREPLY[@]} $s)
+ else
+ case "$(file -b $s 2> /dev/null)" in
+ $t) COMPREPLY=(${COMPREPLY[@]} $s) ;;
+ esac
+ fi
+ done
+ fi ;;
+ esac
+ test $g -eq 0 && shopt -u extglob
+}
+
+
+complete -d -X '.[^./]*' -F @OFFICE_SHELL_FUNCTION@ ${_file} \
+@BASH_COMPLETION_OOO_APPS@
+
+unset _def _dir _file _nosp _minusdd _minusdf
diff --git a/bin/benchmark-document-loading b/bin/benchmark-document-loading
new file mode 100644
index 000000000..9ecf43baf
--- /dev/null
+++ b/bin/benchmark-document-loading
@@ -0,0 +1,486 @@
+#!/usr/bin/env python # -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2012 Red Hat, Inc., Michael Stahl <mstahl@redhat.com>
+# (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+# Simple script to load a bunch of documents and export them as Flat ODF
+#
+# Personally I run it like this:
+# ~/lo/master-suse/instdir/program/python ~/lo/master-suse/bin/benchmark-document-loading --soffice=path:/home/tml/lo/master-suse/instdir/program/soffice --outdir=file://$PWD/out --userdir=file:///tmp/test $PWD/docs
+#
+
+import argparse
+import datetime
+import os
+import subprocess
+import sys
+import threading
+import time
+import urllib
+try:
+ from urllib.parse import quote
+except ImportError:
+ from urllib import quote
+import uuid
+
+try:
+ import pyuno
+ import uno
+ import unohelper
+except ImportError:
+ print("pyuno not found: try to set PYTHONPATH and URE_BOOTSTRAP variables")
+ print("PYTHONPATH=/installation/opt/program")
+ print("URE_BOOTSTRAP=file:///installation/opt/program/fundamentalrc")
+ raise
+
+try:
+ from com.sun.star.beans import PropertyValue
+ from com.sun.star.document import XDocumentEventListener
+ from com.sun.star.io import IOException, XOutputStream
+except ImportError:
+ print("UNO API class not found: try to set URE_BOOTSTRAP variable")
+ print("URE_BOOTSTRAP=file:///installation/opt/program/fundamentalrc")
+ raise
+
+validCalcFileExtensions = [ ".xlsx", ".xls", ".ods", ".fods" ]
+validWriterFileExtensions = [ ".docx" , ".rtf", ".odt", ".fodt", ".doc" ]
+validImpressFileExtensions = [ ".ppt", ".pptx", ".odp", ".fodp" ]
+validDrawFileExtensions = [ ".odg", ".fodg" ]
+validReverseFileExtensions = [ ".vsd", ".vdx", ".cdr", ".pub", ".wpd" ]
+validFileExtensions = {"calc": validCalcFileExtensions,
+ "writer": validWriterFileExtensions,
+ "impress": validImpressFileExtensions,
+ "draw": validDrawFileExtensions,
+ "reverse": validReverseFileExtensions}
+flatODFTypes = {"calc": (".fods", "OpenDocument Spreadsheet Flat XML"),
+ "writer": (".fodt", "OpenDocument Text Flat XML"),
+ "impress": (".fodp", "OpenDocument Presentation Flat XML"),
+ "draw": (".fodg", "OpenDocument Drawing Flat XML")}
+
+outdir = ""
+
+def partition(list, pred):
+ left = []
+ right = []
+ for e in list:
+ if pred(e):
+ left.append(e)
+ else:
+ right.append(e)
+ return (left, right)
+
+def filelist(directory, suffix):
+ if not directory:
+ raise Exception("filelist: empty directory")
+ if directory[-1] != "/":
+ directory += "/"
+ files = [directory + f for f in os.listdir(directory)]
+# print(files)
+ return [f for f in files
+ if os.path.isfile(f) and os.path.splitext(f)[1] == suffix]
+
+def getFiles(dirs, suffix):
+# print( dirs )
+ files = []
+ for d in dirs:
+ files += filelist(d, suffix)
+ return files
+
+### UNO utilities ###
+
+class OutputStream( unohelper.Base, XOutputStream ):
+ def __init__( self ):
+ self.closed = 0
+
+ def closeOutput(self):
+ self.closed = 1
+
+ def writeBytes( self, seq ):
+ sys.stdout.write( seq.value )
+
+ def flush( self ):
+ pass
+
+class OfficeConnection:
+ def __init__(self, args):
+ self.args = args
+ self.soffice = None
+ self.socket = None
+ self.xContext = None
+ self.pro = None
+ def setUp(self):
+ (method, sep, rest) = self.args.soffice.partition(":")
+ if sep != ":":
+ raise Exception("soffice parameter does not specify method")
+ if method == "path":
+ socket = "pipe,name=pytest" + str(uuid.uuid1())
+ userdir = self.args.userdir
+ if not userdir:
+ raise Exception("'path' method requires --userdir")
+ if not userdir.startswith("file://"):
+ raise Exception("--userdir must be file URL")
+ self.soffice = self.bootstrap(rest, userdir, socket)
+ elif method == "connect":
+ socket = rest
+ else:
+ raise Exception("unsupported connection method: " + method)
+ self.xContext = self.connect(socket)
+
+ def bootstrap(self, soffice, userdir, socket):
+ argv = [ soffice, "--accept=" + socket + ";urp",
+ "-env:UserInstallation=" + userdir,
+ "--quickstart=no",
+ "--norestore", "--nologo", "--headless" ]
+ if self.args.valgrind:
+ argv.append("--valgrind")
+ os.putenv("SAL_LOG", "-INFO-WARN")
+ os.putenv("LIBO_ONEWAY_STABLE_ODF_EXPORT", "YES")
+ self.pro = subprocess.Popen(argv)
+# print(self.pro.pid)
+
+ def connect(self, socket):
+ xLocalContext = uno.getComponentContext()
+ xUnoResolver = xLocalContext.ServiceManager.createInstanceWithContext("com.sun.star.bridge.UnoUrlResolver", xLocalContext)
+ url = "uno:" + socket + ";urp;StarOffice.ComponentContext"
+# print("OfficeConnection: connecting to: " + url)
+ while True:
+ try:
+ xContext = xUnoResolver.resolve(url)
+ return xContext
+# except com.sun.star.connection.NoConnectException
+ except pyuno.getClass("com.sun.star.connection.NoConnectException"):
+# print("NoConnectException: sleeping...")
+ time.sleep(1)
+
+ def tearDown(self):
+ if self.soffice:
+ if self.xContext:
+ try:
+# print("tearDown: calling terminate()...")
+ xMgr = self.xContext.ServiceManager
+ xDesktop = xMgr.createInstanceWithContext("com.sun.star.frame.Desktop", self.xContext)
+ xDesktop.terminate()
+# print("...done")
+# except com.sun.star.lang.DisposedException:
+ except pyuno.getClass("com.sun.star.beans.UnknownPropertyException"):
+# print("caught UnknownPropertyException while TearDown")
+ pass # ignore, also means disposed
+ except pyuno.getClass("com.sun.star.lang.DisposedException"):
+# print("caught DisposedException while TearDown")
+ pass # ignore
+ else:
+ self.soffice.terminate()
+ ret = self.soffice.wait()
+ self.xContext = None
+ self.socket = None
+ self.soffice = None
+ if ret != 0:
+ raise Exception("Exit status indicates failure: " + str(ret))
+# return ret
+ def kill(self):
+ command = "kill " + str(self.pro.pid)
+ with open("killFile.log", "a") as killFile:
+ killFile.write(command + "\n")
+# print("kill")
+# print(command)
+ os.system(command)
+
+class PersistentConnection:
+ def __init__(self, args):
+ self.args = args
+ self.connection = None
+ def getContext(self):
+ return self.connection.xContext
+ def setUp(self):
+ assert(not self.connection)
+ conn = OfficeConnection(self.args)
+ conn.setUp()
+ self.connection = conn
+ def preTest(self):
+ assert(self.connection)
+ def postTest(self):
+ assert(self.connection)
+ def tearDown(self):
+ if self.connection:
+ try:
+ self.connection.tearDown()
+ finally:
+ self.connection = None
+ def kill(self):
+ if self.connection:
+ self.connection.kill()
+
+def simpleInvoke(connection, test):
+ try:
+ connection.preTest()
+ test.run(connection.getContext(), connection)
+ finally:
+ connection.postTest()
+
+def runConnectionTests(connection, invoker, tests):
+ try:
+ connection.setUp()
+ for test in tests:
+ invoker(connection, test)
+ finally:
+ pass
+ #connection.tearDown()
+
+class EventListener(XDocumentEventListener,unohelper.Base):
+ def __init__(self):
+ self.layoutFinished = False
+ def documentEventOccured(self, event):
+# print(str(event.EventName))
+ if event.EventName == "OnLayoutFinished":
+ self.layoutFinished = True
+ def disposing(event):
+ pass
+
+def mkPropertyValue(name, value):
+ return uno.createUnoStruct("com.sun.star.beans.PropertyValue",
+ name, 0, value, 0)
+
+### tests ###
+
+def logTimeSpent(url, startTime):
+ print(os.path.basename(urllib.parse.urlparse(url).path) + "\t" + str(time.time()-startTime))
+
+def loadFromURL(xContext, url, t, component):
+ xDesktop = xContext.ServiceManager.createInstanceWithContext("com.sun.star.frame.Desktop", xContext)
+ props = [("Hidden", True), ("ReadOnly", True)] # FilterName?
+ loadProps = tuple([mkPropertyValue(name, value) for (name, value) in props])
+ xListener = None
+ if component == "writer":
+ xListener = EventListener()
+ xGEB = xContext.getValueByName(
+ "/singletons/com.sun.star.frame.theGlobalEventBroadcaster")
+ xGEB.addDocumentEventListener(xListener)
+ try:
+ xDoc = None
+ startTime = time.time()
+ xDoc = xDesktop.loadComponentFromURL(url, "_blank", 0, loadProps)
+ if component == "calc":
+ try:
+ if xDoc:
+ xDoc.calculateAll()
+ except AttributeError:
+ pass
+ t.cancel()
+ logTimeSpent(url, startTime)
+ return xDoc
+ elif component == "writer":
+ time_ = 0
+ t.cancel()
+ while time_ < 30:
+ if xListener.layoutFinished:
+ logTimeSpent(url, startTime)
+ return xDoc
+# print("delaying...")
+ time_ += 1
+ time.sleep(1)
+ else:
+ t.cancel()
+ logTimeSpent(url, startTime)
+ return xDoc
+ with open("file.log", "a") as fh:
+ fh.write("layout did not finish\n")
+ return xDoc
+ except pyuno.getClass("com.sun.star.beans.UnknownPropertyException"):
+ xListener = None
+ raise # means crashed, handle it later
+ except pyuno.getClass("com.sun.star.lang.DisposedException"):
+ xListener = None
+ raise # means crashed, handle it later
+ except pyuno.getClass("com.sun.star.lang.IllegalArgumentException"):
+ pass # means could not open the file, ignore it
+ except:
+ if xDoc:
+# print("CLOSING")
+ xDoc.close(True)
+ raise
+ finally:
+ if xListener:
+ xGEB.removeDocumentEventListener(xListener)
+
+def exportToODF(xContext, xDoc, baseName, t, component):
+ exportFileName = outdir + "/" + os.path.splitext(baseName)[0] + flatODFTypes[component][0]
+ print("exportToODF " + baseName + " => " + exportFileName)
+ props = [("FilterName", flatODFTypes[component][1]),
+ ("Overwrite", True)]
+ storeProps = tuple([mkPropertyValue(name, value) for (name, value) in props])
+ xDoc.storeToURL(exportFileName, tuple(storeProps))
+
+def handleCrash(file, disposed):
+# print("File: " + file + " crashed")
+ with open("crashlog.txt", "a") as crashLog:
+ crashLog.write('Crash:' + file + ' ')
+ if disposed == 1:
+ crashLog.write('through disposed\n')
+# crashed_files.append(file)
+# add here the remaining handling code for crashed files
+
+def alarm_handler(args):
+ args.kill()
+
+class HandleFileTest:
+ def __init__(self, file, state, component):
+ self.file = file
+ self.state = state
+ self.component = component
+ def run(self, xContext, connection):
+# print("Loading document: " + self.file)
+ t = None
+ args = None
+ try:
+ url = "file://" + quote(self.file)
+ with open("file.log", "a") as fh:
+ fh.write(url + "\n")
+ xDoc = None
+ args = [connection]
+ t = threading.Timer(60, alarm_handler, args)
+ t.start()
+ xDoc = loadFromURL(xContext, url, t, self.component)
+ self.state.goodFiles.append(self.file)
+ exportToODF(xContext, xDoc, os.path.basename(urllib.parse.urlparse(url).path), t, self.component)
+ except pyuno.getClass("com.sun.star.beans.UnknownPropertyException"):
+# print("caught UnknownPropertyException " + self.file)
+ if not t.is_alive():
+# print("TIMEOUT!")
+ self.state.timeoutFiles.append(self.file)
+ else:
+ t.cancel()
+ handleCrash(self.file, 0)
+ self.state.badPropertyFiles.append(self.file)
+ connection.tearDown()
+ connection.setUp()
+ except pyuno.getClass("com.sun.star.lang.DisposedException"):
+# print("caught DisposedException " + self.file)
+ if not t.is_alive():
+# print("TIMEOUT!")
+ self.state.timeoutFiles.append(self.file)
+ else:
+ t.cancel()
+ handleCrash(self.file, 1)
+ self.state.badDisposedFiles.append(self.file)
+ connection.tearDown()
+ connection.setUp()
+ finally:
+ if t.is_alive():
+ t.cancel()
+ try:
+ if xDoc:
+ t = threading.Timer(10, alarm_handler, args)
+ t.start()
+ xDoc.close(True)
+ t.cancel()
+ except pyuno.getClass("com.sun.star.beans.UnknownPropertyException"):
+ print("caught UnknownPropertyException while closing")
+ self.state.badPropertyFiles.append(self.file)
+ connection.tearDown()
+ connection.setUp()
+ except pyuno.getClass("com.sun.star.lang.DisposedException"):
+ print("caught DisposedException while closing")
+ if t.is_alive():
+ t.cancel()
+ else:
+ self.state.badDisposedFiles.append(self.file)
+ connection.tearDown()
+ connection.setUp()
+# print("...done with: " + self.file)
+
+class State:
+ def __init__(self):
+ self.goodFiles = []
+ self.badDisposedFiles = []
+ self.badPropertyFiles = []
+ self.timeoutFiles = []
+
+
+def write_state_report(files_list, start_time, report_filename, description):
+ with open(report_filename, "w") as fh:
+ fh.write("%s:\n" % description)
+ fh.write("Starttime: %s\n" % start_time.isoformat())
+ for f in files_list:
+ fh.write("%s\n" % f)
+
+
+def writeReport(state, startTime):
+ write_state_report(state.goodFiles, startTime, "goodFiles.log",
+ "Files which loaded perfectly")
+ write_state_report(state.badDisposedFiles, startTime, "badDisposedFiles.log",
+ "Files which crashed with DisposedException")
+ write_state_report(state.badPropertyFiles, startTime, "badPropertyFiles.log",
+ "Files which crashed with UnknownPropertyException")
+ write_state_report(state.timeoutFiles, startTime, "timeoutFiles.log",
+ "Files which timed out")
+
+def runHandleFileTests(opts):
+ startTime = datetime.datetime.now()
+ connection = PersistentConnection(opts)
+ global outdir
+ outdir = os.path.join(opts.outdir, startTime.strftime('%Y%m%d.%H%M%S'))
+ try:
+ tests = []
+ state = State()
+# print("before map")
+ for component, validExtension in validFileExtensions.items():
+ files = []
+ for suffix in validExtension:
+ files.extend(getFiles(opts.dirs, suffix))
+ files.sort()
+ tests.extend( (HandleFileTest(file, state, component) for file in files) )
+ runConnectionTests(connection, simpleInvoke, tests)
+ finally:
+ connection.kill()
+ writeReport(state, startTime)
+
+def parseArgs(argv):
+ epilog = "'location' is a pathname, not a URL. 'outdir' and 'userdir' are URLs.\n" \
+ "The 'directory' parameters should be full absolute pathnames, not URLs."
+
+ parser = argparse.ArgumentParser(formatter_class=argparse.RawTextHelpFormatter,
+ epilog=epilog)
+ parser.add_argument('--soffice', metavar='method:location', required=True,
+ help="specify soffice instance to connect to\n"
+ "supported methods: 'path', 'connect'")
+ parser.add_argument('--outdir', metavar='URL', required=True,
+ help="specify the output directory for flat ODF exports")
+ parser.add_argument('--userdir', metavar='URL',
+ help="specify user installation directory for 'path' method")
+ parser.add_argument('--valgrind', action='store_true',
+ help="pass --valgrind to soffice for 'path' method")
+ parser.add_argument('dirs', metavar='directory', nargs='+')
+
+ args = parser.parse_args(argv[1:])
+
+ return args
+
+
+if __name__ == "__main__":
+ opts = parseArgs(sys.argv)
+ runHandleFileTests(opts)
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/bffvalidator.sh.in b/bin/bffvalidator.sh.in
new file mode 100644
index 000000000..e43522764
--- /dev/null
+++ b/bin/bffvalidator.sh.in
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+wine @BFFVALIDATOR_EXE@ `winepath -w $1`
diff --git a/bin/check-elf-dynamic-objects b/bin/check-elf-dynamic-objects
new file mode 100755
index 000000000..133f58d34
--- /dev/null
+++ b/bin/check-elf-dynamic-objects
@@ -0,0 +1,271 @@
+#!/usr/bin/env bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# verify that ELF NEEDED entries are known-good so hopefully builds run on
+# lots of different GNU/Linux distributions
+
+set -euo pipefail
+
+PARA=1
+check_path="${INSTDIR:-.}"
+
+help()
+{
+ cat << "EOF"
+ -d <dir> directory to check
+ -p run unbound parallel checks
+ -h help
+EOF
+ [ -z "${1:-}" ] && exit 0
+}
+
+die()
+{
+ echo "$1"
+ echo
+ help 1
+ exit 1
+}
+
+while [ "${1:-}" != "" ]; do
+ parm=${1%%=*}
+ arg=${1#*=}
+ has_arg=
+ if [ "${1}" != "${parm?}" ] ; then
+ has_arg=1
+ else
+ arg=""
+ fi
+
+ case "${parm}" in
+ --dir|-d)
+ if [ "$has_arg" ] ; then
+ check_path="$arg"
+ else
+ shift
+ check_path="$1"
+ fi
+ if [ ! -d "$check_path" ]; then
+ die "Invalid directory '$check_path'"
+ fi
+ ;;
+ -h)
+ help
+ ;;
+ -p)
+ # this sounds counter intuitive but the idea
+ # is to possibly support -p <n>
+ # in the meantime: 0 = nolimit and -p 1 would mean
+ # the current default: serialize
+ PARA=0
+ ;;
+ -*)
+ die "Invalid option $1"
+ ;;
+ *)
+ if [ "$DO_NEW" = 1 ] ; then
+ REPO="$1"
+ else
+ die "Invalid argument $1"
+ fi
+ ;;
+ esac
+ shift
+done
+
+
+files=$(find "${check_path}/program" "${check_path}/sdk/bin" -type f)
+# all RPATHs should point to ${INSTDIR}/program so that's the files they find
+programfiles=$(echo ${files} | grep -o '/program/[^/]* ' | xargs -n 1 basename)
+
+# allowlists should contain only system libraries that have a good reputation
+# of maintaining ABI stability
+# allow extending the allowlist using the environment variable to be able to work
+# on the installer stuff without the need for a baseline setup
+globalallowlist="ld-linux-x86-64.so.2 ld-linux.so.2 libc.so.6 libm.so.6 libdl.so.2 libpthread.so.0 librt.so.1 libutil.so.1 libnsl.so.1 libcrypt.so.1 libgcc_s.so.1 libstdc++.so.6 libz.so.1 libfontconfig.so.1 libfreetype.so.6 libxml2.so.2 libxslt.so.1 libexslt.so.0 libnspr4.so libnss3.so libnssutil3.so libplc4.so libplds4.so libsmime3.so libssl3.so ${LO_ELFCHECK_ALLOWLIST-}"
+x11allowlist="libX11.so.6 libX11-xcb.so.1 libXext.so.6 libSM.so.6 libICE.so.6 libXinerama.so.1 libXrender.so.1 libXrandr.so.2 libcairo.so.2"
+openglallowlist="libGL.so.1"
+gobjectallowlist="libgobject-2.0.so.0 libglib-2.0.so.0"
+gdbusallowlist="libdbus-glib-1.so.2 libdbus-1.so.3 libgmodule-2.0.so.0 libgthread-2.0.so.0 ${gobjectallowlist}"
+gioallowlist="libgio-2.0.so.0 ${gdbusallowlist}"
+gstreamerallowlist="libgsttag-1.0.so.0 libgstaudio-1.0.so.0 libgstpbutils-1.0.so.0 libgstvideo-1.0.so.0 libgstbase-1.0.so.0 libgstreamer-1.0.so.0 ${gobjectallowlist}"
+gtk3allowlist="libgtk-3.so.0 libgdk-3.so.0 libcairo-gobject.so.2 libpangocairo-1.0.so.0 libfribidi.so.0 libatk-1.0.so.0 libcairo.so.2 libpangoft2-1.0.so.0 libpango-1.0.so.0 libfontconfig.so.1 libfreetype.so.6 libgdk_pixbuf-2.0.so.0 libharfbuzz.so.0 ${gioallowlist}"
+gtk4allowlist="libgtk-4.so.1 libcairo-gobject.so.2 libpangocairo-1.0.so.0 libatk-1.0.so.0 libcairo.so.2 libpango-1.0.so.0 libgdk_pixbuf-2.0.so.0 libharfbuzz.so.0 libgraphene-1.0.so.0 ${gioallowlist}"
+qt5allowlist="libQt5Core.so.5 libQt5Gui.so.5 libQt5Network.so.5 libQt5Widgets.so.5 libQt5X11Extras.so.5 libcairo.so.2 libxcb.so.1 libxcb-icccm.so.4 ${gobjectallowlist}"
+kf5allowlist="libKF5ConfigCore.so.5 libKF5CoreAddons.so.5 libKF5I18n.so.5 libKF5KIOCore.so.5 libKF5KIOFileWidgets.so.5 libKF5KIOWidgets.so.5 libKF5WindowSystem.so.5"
+avahiallowlist="libavahi-common.so.3 libavahi-client.so.3 ${gdbusallowlist}"
+kerberosallowlist="libgssapi_krb5.so.2 libcom_err.so.2 libkrb5.so.3"
+dconfallowlist="libdconf.so.1 libgio-2.0.so.0 ${gobjectallowlist}"
+
+check_one_file()
+{
+local file="$1"
+
+ skip=0
+ allowlist="${globalallowlist}"
+ case "${file}" in
+ */sdk/docs/*)
+ # skip the majority of files, no ELF binaries here
+ skip=1
+ ;;
+ */_uuid.cpython-*.so)
+ allowlist="${allowlist} libuuid.so.1"
+ ;;
+ */libcairo.so.2)
+ allowlist="${allowlist} ${x11allowlist} libxcb-shm.so.0 libxcb.so.1 libxcb-render.so.0"
+ ;;
+ */libcairocanvaslo.so)
+ allowlist="${allowlist} libcairo.so.2"
+ ;;
+ */libucpgio1lo.so|*/liblosessioninstalllo.so|*/libevoablo.so)
+ allowlist="${allowlist} ${gioallowlist}"
+ ;;
+ */libavmediagst.so)
+ allowlist="${allowlist} ${gstreamerallowlist}"
+ ;;
+ */libavmediagtk.so)
+ allowlist="${allowlist} ${gtk4allowlist}"
+ ;;
+ */libvclplug_kf5lo.so|*/libkf5be1lo.so)
+ if [ "$ENABLE_KF5" = TRUE ]; then
+ allowlist="${allowlist} ${qt5allowlist} ${kf5allowlist}"
+ fi
+ ;;
+ */libvclplug_gtk3lo.so|*/updater)
+ allowlist="${allowlist} ${x11allowlist} ${gtk3allowlist}"
+ ;;
+ */libvclplug_gtk4lo.so)
+ allowlist="${allowlist} ${x11allowlist} ${gtk4allowlist}"
+ ;;
+ */libvclplug_qt5lo.so)
+ if [ "$ENABLE_QT5" = TRUE ]; then
+ allowlist="${allowlist} ${qt5allowlist}"
+ fi
+ ;;
+ */libvclplug_gtk3_kde5lo.so)
+ if [ "$ENABLE_GTK3_KDE5" = TRUE ]; then
+ allowlist="${allowlist} ${x11allowlist} ${gtk3allowlist} ${qt5allowlist} ${kf5allowlist}"
+ fi
+ ;;
+ */lo_kde5filepicker)
+ if [ "$ENABLE_GTK3_KDE5" = TRUE ]; then
+ allowlist="${allowlist} ${x11allowlist} ${gtk3allowlist} ${qt5allowlist} \
+ ${kf5allowlist}"
+ fi
+ ;;
+ */libdesktop_detectorlo.so|*/oosplash|*/gengal.bin)
+ allowlist="${allowlist} ${x11allowlist}"
+ ;;
+ */libvclplug_genlo.so|*/libchartcorelo.so|*/libavmediaogl.so|*/libOGLTranslo.so|*/liboglcanvaslo.so)
+ allowlist="${allowlist} ${x11allowlist} ${openglallowlist}"
+ ;;
+ */libvcllo.so)
+ allowlist="${allowlist} ${x11allowlist} ${openglallowlist} ${gioallowlist} libcups.so.2"
+ ;;
+ */libsofficeapp.so)
+ allowlist="${allowlist} ${x11allowlist} ${openglallowlist} ${gioallowlist} libcups.so.2"
+ ;;
+ */liblibreofficekitgtk.so)
+ allowlist="${allowlist} ${gtk3allowlist}"
+ ;;
+ */libsdlo.so)
+ allowlist="${allowlist} ${avahiallowlist}"
+ ;;
+ */libskialo.so)
+ allowlist="${allowlist} ${openglallowlist} ${x11allowlist}"
+ ;;
+ */libofficebean.so)
+ allowlist="${allowlist} libjawt.so"
+ ;;
+ */libpostgresql-sdbc-impllo.so)
+ allowlist="${allowlist} ${kerberosallowlist}"
+ ;;
+ */libconfigmgrlo.so)
+ if [ "$ENABLE_DCONF" = TRUE ]; then
+ allowlist="${allowlist} ${dconfallowlist}"
+ fi
+ ;;
+ */libmergedlo.so)
+ allowlist="${allowlist} ${x11allowlist} ${openglallowlist} ${gioallowlist} ${dconfallowlist} libcups.so.2 libcairo.so.2"
+ ;;
+ esac
+ if test "${skip}" = 0 && readelf -d "${file}" &> /dev/null ; then
+ rpath=$(readelf -d "${file}" | grep '(\(RPATH\|RUNPATH\))' || true)
+ neededs=$(readelf -d "${file}" | grep '(NEEDED)' | sed -e 's/.*\[\(.*\)\]$/\1/')
+ neededsinternal=
+ for needed in ${neededs}
+ do
+ if ! echo ${allowlist} | grep -q -w "${needed}" ; then
+ neededsinternal="${neededsinternal} ${needed}"
+ if ! echo ${programfiles} | grep -q -w "${needed}" ; then
+ echo "${file}" has suspicious NEEDED: "${needed}"
+ status=1
+ fi
+ fi
+ done
+ if test -z "${rpath}" ; then
+ case "${file}" in
+ */python-core-*/lib/lib-dynload/*)
+ # python modules don't have RPATH
+ ;;
+ */share/extensions/*)
+ # extension libraries don't have RPATH
+ ;;
+ *)
+ # no NEEDED from instdir, no RPATH needed
+ if test -n "${neededsinternal}" ; then
+ echo "${file}" has no RPATH
+ status=1
+ fi
+ ;;
+ esac
+ else
+ case "$file" in
+ */sdk/bin/*)
+ if echo "${rpath}" | grep -q -v '\[\$ORIGIN/../../program\]$' ; then
+ echo "${file}" has unexpected RPATH "${rpath}"
+ status=1
+ fi
+ ;;
+ *)
+ if echo "${rpath}" | grep -q -v '\[\$ORIGIN\]$' ; then
+ echo "${file}" has unexpected RPATH "${rpath}"
+ status=1
+ fi
+ ;;
+ esac
+ fi
+ fi
+}
+status=0
+
+if [ "$PARA" = "1" ] ; then
+ for file in ${files}
+ do
+ check_one_file $file
+ done
+else
+ rm -f check_elf.out
+ for file in ${files}
+ do
+ (
+ check_one_file $file
+ )>> check_elf.out &
+ done
+
+ wait
+
+ if [ -s check_elf.out ] ; then
+ cat check_elf.out
+ status=1
+ fi
+ rm check_elf.out
+fi
+exit ${status}
+
diff --git a/bin/check-icon-sizes.py b/bin/check-icon-sizes.py
new file mode 100755
index 000000000..535caa3ef
--- /dev/null
+++ b/bin/check-icon-sizes.py
@@ -0,0 +1,34 @@
+#!/usr/bin/env python3
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import os
+
+from PIL import Image
+
+"""
+This script walks through all icon files and checks whether the sc_* and lc_* files have the correct size.
+"""
+
+icons_folder = os.path.abspath(os.path.join(__file__, '..', '..', 'icon-themes'))
+
+def check_size(filename, size):
+ image = Image.open(filename)
+ width, height = image.size
+ if width != size or height != size:
+ print("%s has size %dx%d but should have %dx%d" % (filename, width, height, size, size))
+
+for root, dirs, files in os.walk(icons_folder):
+ for filename in files:
+ if not filename.endswith('png'):
+ continue
+ if filename.startswith('lc_'):
+ check_size(os.path.join(root, filename), 24)
+ elif filename.startswith('sc_'):
+ check_size(os.path.join(root, filename), 16)
+
diff --git a/bin/check-implementer-notes.py b/bin/check-implementer-notes.py
new file mode 100755
index 000000000..e637563d2
--- /dev/null
+++ b/bin/check-implementer-notes.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python
+
+import json, re, subprocess, sys, urllib3
+
+http = urllib3.PoolManager()
+
+# TDF implementer notes pages for LibreOffice
+wiki_pages = [
+ 'https://wiki.documentfoundation.org/api.php?action=parse&format=json&page=Development/ODF_Implementer_Notes/List_of_LibreOffice_ODF_Extensions&prop=wikitext',
+ 'https://wiki.documentfoundation.org/api.php?action=parse&format=json&page=Development/ODF_Implementer_Notes/List_of_LibreOffice_OpenFormula_Extensions&prop=wikitext']
+
+# get all commit hashes mentioned in implementer notes
+wiki_commit_hashes = {}
+query = re.compile(r'\{\{commit\|(\w+)\|\w*\|\w*\}\}', re.IGNORECASE)
+for page in wiki_pages:
+ r = http.request('GET', page)
+ data = json.loads(r.data.decode('utf-8'))
+ for line in data['parse']['wikitext']['*'].split('\n'):
+ for res in query.finditer(line):
+ wiki_commit_hashes[res.group(1)] = ''
+
+# get all commits that change core/schema/* - and are _not_ mentioned
+# in the wiki page
+# Cut-off is May 18th 2020, when Michael Stahl had finished cleaning this up
+for commit in subprocess.check_output(
+ ['git', '--no-pager', '-C', sys.path[0]+'/..', 'log',
+ '--since=2020-05-18', '--format=%H', '--', 'schema/'],
+ stderr=subprocess.STDOUT).decode("utf-8").split("\n"):
+ if commit != '' and commit not in wiki_commit_hashes:
+ print('missing commit: %s' % commit)
+
diff --git a/bin/check-missing-export-asserts.py b/bin/check-missing-export-asserts.py
new file mode 100755
index 000000000..2e181027d
--- /dev/null
+++ b/bin/check-missing-export-asserts.py
@@ -0,0 +1,177 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import re
+import os
+from subprocess import Popen, DEVNULL, PIPE
+import logging
+import sys
+
+def start_logger():
+ rootLogger = logging.getLogger()
+ rootLogger.setLevel(os.environ.get("LOGLEVEL", "INFO"))
+
+ logFormatter = logging.Formatter("%(asctime)s - %(message)s")
+ fileHandler = logging.FileHandler("log.txt")
+ fileHandler.setFormatter(logFormatter)
+ rootLogger.addHandler(fileHandler)
+
+ streamHandler = logging.StreamHandler(sys.stdout)
+ rootLogger.addHandler(streamHandler)
+
+ return rootLogger
+
+def checkout_file(repoPath, filePath):
+ p = Popen(['git', '-C', repoPath, 'checkout', repoPath + filePath],
+ stdout=DEVNULL, stderr=DEVNULL)
+ p.communicate()
+
+
+def execute_make_and_parse_output(fileName, makeName):
+ os.environ["CPPUNITTRACE"] = "gdb -ex=run -ex=quit --args"
+ p = Popen(['make', makeName],
+ stdout=DEVNULL, stderr=PIPE)
+ logger.info('Executing ' + makeName)
+
+ err = ""
+ while True:
+ errout = p.stderr.readline().decode('utf-8').strip()
+ if errout.startswith('debug:'):
+ info = errout.split(': ')[1]
+ err += info + '\n'
+ logger.info(info)
+ if errout == '' or p.poll():
+ break
+
+ logger.info('Parsing output from ' + makeName)
+
+ results = {}
+ for line in err.strip().split('\n'):
+ if not line:
+ continue
+ splitLine = line.split(' - ')
+ typeCheck = splitLine[0]
+ testName = splitLine[1]
+ importNumber = splitLine[2]
+ exportNumber = splitLine[3].strip()
+ if importNumber != exportNumber:
+ logger.info("WARNING: " + testName + " has different number of " + typeCheck + ". Import: " + \
+ importNumber + " Export: " + exportNumber)
+ else:
+ if testName.endswith('.odt') or testName.endswith('.ott'):
+ if testName not in results:
+ results[testName] = {'pages': 0, 'checkPages': False, 'index': 0,
+ 'shapes': 0, 'checkShapes': False}
+ if typeCheck == 'PAGES':
+ results[testName]['pages'] = importNumber
+ elif typeCheck == 'SHAPES':
+ results[testName]['shapes'] = importNumber
+
+ cxxFile = open(fileName, 'r')
+ lines = cxxFile.readlines()
+ cxxFile.close()
+
+ for i in range(len(lines)):
+ line = lines[i]
+
+ if line.startswith('DECLARE'):
+ try:
+ testName = re.findall('"([^"]*)"', line)[0]
+ except:
+ #check in the next line when line is broken into 2 lines
+ testName = re.findall('"([^"]*)"', lines[i + 1])[0]
+
+ if testName in results:
+ results[testName]['index'] = i
+
+ elif 'getPages' in line:
+ if testName in results:
+ results[testName]['checkPages'] = True
+ elif 'getShapes' in line:
+ if testName in results:
+ results[testName]['checkShapes'] = True
+
+ total = 0
+ for i in results.values():
+ if not i['checkPages'] and int(i['pages']) >= 1:
+ total += 1
+ lines.insert(i['index'] + 2, " CPPUNIT_ASSERT_EQUAL(" + str(i['pages']) + ", getPages());\n")
+
+ if not i['checkShapes'] and int(i['shapes']) >= 1:
+ total += 1
+ lines.insert(i['index'] + 2, " CPPUNIT_ASSERT_EQUAL(" + str(i['shapes']) + ", getShapes());\n")
+
+ logger.info(str(total) + ' missing asserts added in ' + fileName)
+
+ cxxFile = open(fileName, "w")
+ cxxFile.write("".join(lines))
+ cxxFile.close()
+
+def insert_code_in_sw_model(repoPath, modelTestRelPath):
+ modelTestPath = repoPath + modelTestRelPath
+ modelTestFile = open(modelTestPath, 'r')
+ modelTestLines = modelTestFile.readlines()
+ modelTestFile.close()
+
+ addText = False
+ # Add code to check import and export pages
+ for i in range(len(modelTestLines)):
+ line = modelTestLines[i]
+ if line.strip().startswith('void'):
+ if 'executeLoadVerifyReloadVerify' in line or \
+ 'executeLoadReloadVerify' in line:
+ addText = True
+ else:
+ addText = False
+
+ if addText and 'reload' in line:
+ modelTestLines.insert( i - 1, 'int nImportPages = getPages();int nImportShapes = getShapes();\n');
+ modelTestLines.insert( i + 2, 'int nExportPages = getPages();int nExportShapes = getShapes();SAL_' + \
+ 'DEBUG("PAGES - " << filename << " - " << nImportPages << " - " << nExportPages);SAL_' + \
+ 'DEBUG("SHAPES - " << filename << " - " << nImportShapes << " - " << nExportShapes);\n');
+ addText = False
+
+ modelTestFile = open(modelTestPath, 'w')
+ modelTestFile.write("".join(modelTestLines))
+ modelTestFile.close()
+
+def check_sw(repoPath):
+ modelTestRelPath = '/sw/qa/unit/swmodeltestbase.cxx'
+
+ checkout_file(repoPath, modelTestRelPath)
+ insert_code_in_sw_model(repoPath, modelTestRelPath)
+
+ os.chdir(repoPath)
+
+ qaDir = os.path.join(repoPath, 'sw/qa/extras/')
+ for dirName in os.listdir(qaDir):
+ subdirName = os.path.join(qaDir, dirName)
+ if not os.path.isdir(subdirName):
+ continue
+
+ for fileName in os.listdir(subdirName):
+ if 'export' in fileName and fileName.endswith('.cxx'):
+ fileNamePath = os.path.join(subdirName, fileName)
+
+ p = Popen(['git', '-C', repoPath, 'diff', fileNamePath],
+ stdout=PIPE, stderr=DEVNULL)
+ stdout = p.communicate()[0]
+ if stdout != b'':
+ logger.info( fileNamePath + " has unstaged changes. Ignoring...")
+ continue
+ makeName = 'CppunitTest_sw_' + os.path.basename(fileNamePath).split('.')[0]
+ execute_make_and_parse_output(fileNamePath, makeName)
+
+ checkout_file(repoPath, modelTestRelPath)
+
+if __name__ == '__main__':
+ logger = start_logger()
+
+ repoPath = os.path.dirname(os.path.abspath(__file__)) + '/..'
+
+ check_sw(repoPath)
diff --git a/bin/check-missing-unittests.py b/bin/check-missing-unittests.py
new file mode 100755
index 000000000..5ea891396
--- /dev/null
+++ b/bin/check-missing-unittests.py
@@ -0,0 +1,228 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Use this script to update
+# https://wiki.documentfoundation.org/MissingUnitTests
+
+import os
+import datetime
+import subprocess
+import sys
+import re
+import json
+import requests
+
+def splitList(lst, n):
+ for i in range(0, len(lst), n):
+ yield lst[i:i + n]
+
+def main(ignoredBugs):
+ results = {
+ 'export': {
+ 'docx': {},
+ 'doc': {},
+ 'pptx': {},
+ 'xlsx': {},
+ 'xhtml': {},
+ 'html': {},
+ },
+ 'writer': {
+ 'undo': {},
+ 'autoformat': {},
+ 'autocorrect': {},
+ 'others': {},
+ },
+ 'calc': {
+ 'import': {},
+ 'format': {},
+ 'others': {},
+ },
+ 'impress': {
+ 'drawingml': {},
+ 'slidesorter': {},
+ 'others': {},
+ },
+
+ }
+ hasTestSet = set()
+
+ repoPath = os.path.dirname(os.path.abspath(__file__)) + '/..'
+ branch = subprocess.check_output(
+ ['git', '-C', repoPath, 'rev-parse', '--abbrev-ref', 'HEAD'],
+ stderr=subprocess.DEVNULL)
+ last_hash = subprocess.check_output(
+ ['git', '-C', repoPath, 'rev-parse', 'HEAD'],
+ stderr=subprocess.DEVNULL)
+ output = subprocess.check_output(
+ ['git', '-C', repoPath, 'log', '--since="2012-01-01', '--name-only' ,'--pretty=format:"%s%n%ad"', '--date=format:"%Y/%m/%d"'],
+ stderr=subprocess.DEVNULL)
+ commits = output.decode('utf-8', 'ignore').split('\n\n')
+
+ for commit in reversed(commits):
+
+ commitInfo = commit.split('\n')
+
+ summary = commitInfo[0].strip('"').lower()
+
+ # Check for bugIds in the summary. Ignore those with a '-' after the digits.
+ # Those are used for file names ( e.g. tdf129410-1.ods )
+ bugIds = re.findall("\\b(?:bug|fdo|tdf|lo)[#:]?(\\d+)(?!-)\\b", summary)
+ if bugIds is None or len(bugIds) == 0:
+ continue
+
+ for bugId in bugIds:
+
+ isIgnored = False
+ for i in ignoredBugs:
+ if i in summary:
+ isIgnored = True
+ if isIgnored:
+ continue
+
+ if bugId in hasTestSet:
+ continue
+
+ date = commitInfo[1].strip('"')
+ infoList = [date, summary]
+
+ changedFiles = "".join(commitInfo[2:])
+ if 'qa' in changedFiles:
+ hasTestSet.add(bugId)
+ continue
+
+ elif 'sw/source/filter/ww8/docx' in changedFiles or \
+ 'writerfilter/source/dmapper' in changedFiles or \
+ 'starmath/source/ooxmlimport' in changedFiles:
+ results['export']['docx'][bugId] = infoList
+
+ elif 'sw/source/filter/ww8/ww8' in changedFiles:
+ results['export']['doc'][bugId] = infoList
+
+ elif 'sc/source/filter/excel/xe' in changedFiles:
+ results['export']['xlsx'][bugId] = infoList
+
+ elif 'oox/source/export/' in changedFiles:
+ results['export']['pptx'][bugId] = infoList
+
+ elif 'filter/source/xslt/odf2xhtml/export' in changedFiles:
+ results['export']['xhtml'][bugId] = infoList
+
+ elif 'sw/source/filter/html/' in changedFiles:
+ results['export']['html'][bugId] = infoList
+
+ elif 'sw/source/core/undo/' in changedFiles:
+ results['writer']['undo'][bugId] = infoList
+
+ elif 'sw/source/core/edit/autofmt' in changedFiles:
+ results['writer']['autoformat'][bugId] = infoList
+
+ elif 'sw/source/core/edit/acorrect' in changedFiles:
+ results['writer']['autocorrect'][bugId] = infoList
+
+ elif 'drawingml' in changedFiles:
+ results['impress']['drawingml'][bugId] = infoList
+
+ elif 'sd/source/ui/slidesorter/' in changedFiles:
+ results['impress']['slidesorter'][bugId] = infoList
+
+ elif 'sc/source/core/tool/interpr' in changedFiles:
+ results['calc']['import'][bugId] = infoList
+
+ elif 'svl/source/numbers/' in changedFiles:
+ results['calc']['format'][bugId] = infoList
+
+ # Keep the following if statements at the end
+
+ elif 'sc/source/core/' in changedFiles:
+ results['calc']['others'][bugId] = infoList
+
+ elif 'sw/source/core/' in changedFiles:
+ results['writer']['others'][bugId] = infoList
+
+ elif 'sd/source/core/' in changedFiles:
+ results['impress']['others'][bugId] = infoList
+
+ listOfBugIdsWithoutTest = []
+ for k,v in results.items():
+ for k1, v1 in v.items():
+ for bugId, info in v1.items():
+ if bugId not in hasTestSet:
+ listOfBugIdsWithoutTest.append(bugId)
+
+ bugzillaJson = []
+ #Split the list into different chunks for the requests, otherwise it fails
+ for chunk in splitList(listOfBugIdsWithoutTest, 50):
+ urlGet = 'https://bugs.documentfoundation.org/rest/bug?id=' + ','.join(chunk)
+ rGet = requests.get(urlGet)
+ rawData = json.loads(rGet.text)
+ rGet.close()
+ bugzillaJson.extend(rawData['bugs'])
+
+ print()
+ print('{{TopMenu}}')
+ print('{{Menu}}')
+ print('{{Menu.Development}}')
+ print()
+ print('This report is generated by ' + os.path.basename(sys.argv[0]))
+ print()
+ print('Date: ' + str(datetime.datetime.now()))
+ print()
+ print('Commits: ' + str(len(commits)))
+ print()
+ print('Branch: ' + branch.decode().strip())
+ print()
+ print('Hash: ' + str(last_hash.decode().strip()))
+
+ for k,v in results.items():
+ print('\n== ' + k + ' ==')
+ for k1, v1 in v.items():
+ print('\n=== ' + k1 + ' ===')
+ for bugId, info in v1.items():
+
+ resolution = ''
+ keywords = []
+ priority = ''
+ for bug in bugzillaJson:
+ if str(bug['id']) == str(bugId):
+ resolution = bug['resolution']
+ keywords = bug['keywords']
+ priority = bug['priority']
+ break
+
+ # Only care about FIXED bugs
+ # Ignore performance bugs and accessibility bugs
+ if resolution and resolution == 'FIXED' and 'perf' not in keywords \
+ and 'accessibility' not in keywords:
+ print(
+ "# {} - [{}] {} - [https://bugs.documentfoundation.org/show_bug.cgi?id={} tdf#{}]".format(
+ info[0], priority.upper(), info[1], bugId, bugId))
+
+ print('\n== ignored bugs ==')
+ print(' '.join(ignoredBugs))
+ print()
+ print('[[Category:QA]][[Category:Development]]')
+
+def usage():
+ message = """usage: {program} [bugs to ignore (each one is one argument)]
+
+Sample: {program} 10000 10001 10002"""
+ print(message.format(program = os.path.basename(sys.argv[0])))
+
+if __name__ == '__main__':
+
+ args = set()
+ if len(sys.argv) > 1:
+ arg1 = sys.argv[1]
+ if arg1 == '-h' or arg1 == "--help":
+ usage()
+ sys.exit(1)
+ for i in sys.argv:
+ if i.isdigit():
+ args.add(i)
+
+ main(sorted(args))
diff --git a/bin/compare-crashreport-stats.py b/bin/compare-crashreport-stats.py
new file mode 100755
index 000000000..26db30c24
--- /dev/null
+++ b/bin/compare-crashreport-stats.py
@@ -0,0 +1,62 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Use this script to compare the crashreport stats of two different versions of LibreOffice.
+# Usage sample: ./compare-crashreport-stats.py --old 7.2.0.4 --new 7.2.1.2
+
+import requests
+from bs4 import BeautifulSoup
+import argparse
+import sys
+
+def parse_url(url):
+ crashReports = {}
+ html_text = requests.get(url).text
+ soup = BeautifulSoup(html_text, 'html.parser')
+
+ table = soup.find("table", {"id": "data-table"}).tbody
+ for tr in table.find_all("tr"):
+ td_list = tr.find_all("td")
+ crashName = td_list[0].a.text.strip()
+ crashNumber = int(td_list[1].text.strip())
+ crashReports[crashName] = crashNumber
+
+ return crashReports
+
+if __name__ == '__main__':
+ parser = argparse.ArgumentParser()
+
+ parser.add_argument('--old', action='store', dest="old", required=True)
+ parser.add_argument('--new', action="store", dest="new", required=True)
+
+ results = parser.parse_args()
+
+ oldVersion = parse_url(
+ "https://crashreport.libreoffice.org/stats/version/" + results.old + "?limit=1000&days=30")
+ newVersion = parse_url(
+ "https://crashreport.libreoffice.org/stats/version/" + results.new + "?limit=1000&days=30")
+
+ print(str(len(oldVersion)) + " crash reports in version " + results.old)
+ print(str(len(newVersion)) + " crash reports in version " + results.new)
+ print()
+
+ print("===== Fixed Reports =====")
+ fixedReports = set(oldVersion.keys()) - set(newVersion.keys())
+ for k, v in sorted(oldVersion.items(), key=lambda item: item[1], reverse=True):
+ # Ignore rare reports
+ if v >= 20 and k in fixedReports:
+ print(str(v) + " " + k)
+
+ print()
+ print("===== Newly introduced Reports =====")
+ newReports = set(newVersion.keys()) - set(oldVersion.keys())
+ for k, v in sorted(newVersion.items(), key=lambda item: item[1], reverse=True):
+ # Ignore rare reports
+ if v >= 20 and k in newReports:
+ print(str(v) + " " + k)
+ print()
diff --git a/bin/convwatch.py b/bin/convwatch.py
new file mode 100644
index 000000000..93082186f
--- /dev/null
+++ b/bin/convwatch.py
@@ -0,0 +1,464 @@
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Conversion watch, initially intended to detect if document layout changed since the last time it was run.
+#
+# Print a set of docs, compare the pdf against the old run and highlight the differences
+#
+
+import getopt
+import os
+import subprocess
+import sys
+import time
+import uuid
+import datetime
+import traceback
+import threading
+try:
+ from urllib.parse import quote
+except ImportError:
+ from urllib import quote
+
+try:
+ import pyuno
+ import uno
+ import unohelper
+except ImportError:
+ print("pyuno not found: try to set PYTHONPATH and URE_BOOTSTRAP variables")
+ print("PYTHONPATH=/installation/opt/program")
+ print("URE_BOOTSTRAP=file:///installation/opt/program/fundamentalrc")
+ raise
+
+try:
+ from com.sun.star.document import XDocumentEventListener
+except ImportError:
+ print("UNO API class not found: try to set URE_BOOTSTRAP variable")
+ print("URE_BOOTSTRAP=file:///installation/opt/program/fundamentalrc")
+ raise
+
+### utilities ###
+
+def log(*args):
+ print(*args, flush=True)
+
+def partition(list, pred):
+ left = []
+ right = []
+ for e in list:
+ if pred(e):
+ left.append(e)
+ else:
+ right.append(e)
+ return (left, right)
+
+def filelist(dir, suffix):
+ if len(dir) == 0:
+ raise Exception("filelist: empty directory")
+ if not(dir[-1] == "/"):
+ dir += "/"
+ files = [dir + f for f in os.listdir(dir)]
+# log(files)
+ return [f for f in files
+ if os.path.isfile(f) and os.path.splitext(f)[1] == suffix]
+
+def getFiles(dirs, suffix):
+ files = []
+ for dir in dirs:
+ files += filelist(dir, suffix)
+ return files
+
+### UNO utilities ###
+
+class OfficeConnection:
+ def __init__(self, args):
+ self.args = args
+ self.soffice = None
+ self.socket = None
+ self.xContext = None
+ def setUp(self):
+ (method, sep, rest) = self.args["--soffice"].partition(":")
+ if sep != ":":
+ raise Exception("soffice parameter does not specify method")
+ if method == "path":
+ self.socket = "pipe,name=pytest" + str(uuid.uuid1())
+ try:
+ userdir = self.args["--userdir"]
+ except KeyError:
+ raise Exception("'path' method requires --userdir")
+ if not(userdir.startswith("file://")):
+ raise Exception("--userdir must be file URL")
+ self.soffice = self.bootstrap(rest, userdir, self.socket)
+ elif method == "connect":
+ self.socket = rest
+ else:
+ raise Exception("unsupported connection method: " + method)
+ self.xContext = self.connect(self.socket)
+
+ def bootstrap(self, soffice, userdir, socket):
+ argv = [ soffice, "--accept=" + socket + ";urp",
+ "-env:UserInstallation=" + userdir,
+ "--quickstart=no",
+ "--norestore", "--nologo", "--headless" ]
+ if "--valgrind" in self.args:
+ argv.append("--valgrind")
+ return subprocess.Popen(argv)
+
+ def connect(self, socket):
+ xLocalContext = uno.getComponentContext()
+ xUnoResolver = xLocalContext.ServiceManager.createInstanceWithContext(
+ "com.sun.star.bridge.UnoUrlResolver", xLocalContext)
+ url = "uno:" + socket + ";urp;StarOffice.ComponentContext"
+ log("OfficeConnection: connecting to: " + url)
+ while True:
+ try:
+ xContext = xUnoResolver.resolve(url)
+ return xContext
+# except com.sun.star.connection.NoConnectException
+ except pyuno.getClass("com.sun.star.connection.NoConnectException"):
+ log("NoConnectException: sleeping...")
+ time.sleep(1)
+
+ def tearDown(self):
+ if self.soffice:
+ if self.xContext:
+ try:
+ log("tearDown: calling terminate()...")
+ xMgr = self.xContext.ServiceManager
+ xDesktop = xMgr.createInstanceWithContext(
+ "com.sun.star.frame.Desktop", self.xContext)
+ xDesktop.terminate()
+ log("...done")
+# except com.sun.star.lang.DisposedException:
+ except pyuno.getClass("com.sun.star.beans.UnknownPropertyException"):
+ log("caught UnknownPropertyException")
+ pass # ignore, also means disposed
+ except pyuno.getClass("com.sun.star.lang.DisposedException"):
+ log("caught DisposedException")
+ pass # ignore
+ else:
+ self.soffice.terminate()
+ ret = self.soffice.wait()
+ self.xContext = None
+ self.socket = None
+ self.soffice = None
+ if ret != 0:
+ raise Exception("Exit status indicates failure: " + str(ret))
+# return ret
+
+class WatchDog(threading.Thread):
+ def __init__(self, connection):
+ threading.Thread.__init__(self, name="WatchDog " + connection.socket)
+ self.connection = connection
+ def run(self):
+ try:
+ if self.connection.soffice: # not possible for "connect"
+ self.connection.soffice.wait(timeout=120) # 2 minutes?
+ except subprocess.TimeoutExpired:
+ log("WatchDog: TIMEOUT -> killing soffice")
+ self.connection.soffice.terminate() # actually killing oosplash...
+ self.connection.xContext = None
+ log("WatchDog: killed soffice")
+
+class PerTestConnection:
+ def __init__(self, args):
+ self.args = args
+ self.connection = None
+ self.watchdog = None
+ def getContext(self):
+ return self.connection.xContext
+ def setUp(self):
+ assert(not(self.connection))
+ def preTest(self):
+ conn = OfficeConnection(self.args)
+ conn.setUp()
+ self.connection = conn
+ self.watchdog = WatchDog(self.connection)
+ self.watchdog.start()
+ def postTest(self):
+ if self.connection:
+ try:
+ self.connection.tearDown()
+ finally:
+ self.connection = None
+ self.watchdog.join()
+ def tearDown(self):
+ assert(not(self.connection))
+
+class PersistentConnection:
+ def __init__(self, args):
+ self.args = args
+ self.connection = None
+ def getContext(self):
+ return self.connection.xContext
+ def setUp(self):
+ conn = OfficeConnection(self.args)
+ conn.setUp()
+ self.connection = conn
+ def preTest(self):
+ assert(self.connection)
+ def postTest(self):
+ assert(self.connection)
+ def tearDown(self):
+ if self.connection:
+ try:
+ self.connection.tearDown()
+ finally:
+ self.connection = None
+
+def simpleInvoke(connection, test):
+ try:
+ connection.preTest()
+ test.run(connection.getContext())
+ finally:
+ connection.postTest()
+
+def retryInvoke(connection, test):
+ tries = 5
+ while tries > 0:
+ try:
+ tries -= 1
+ try:
+ connection.preTest()
+ test.run(connection.getContext())
+ return
+ finally:
+ connection.postTest()
+ except KeyboardInterrupt:
+ raise # Ctrl+C should work
+ except:
+ log("retryInvoke: caught exception")
+ raise Exception("FAILED retryInvoke")
+
+def runConnectionTests(connection, invoker, tests):
+ try:
+ connection.setUp()
+ failed = []
+ for test in tests:
+ try:
+ invoker(connection, test)
+ except KeyboardInterrupt:
+ raise # Ctrl+C should work
+ except:
+ failed.append(test.file)
+ estr = traceback.format_exc()
+ log("... FAILED with exception:\n" + estr)
+ return failed
+ finally:
+ connection.tearDown()
+
+class EventListener(XDocumentEventListener,unohelper.Base):
+ def __init__(self):
+ self.layoutFinished = False
+ def documentEventOccured(self, event):
+# log(str(event.EventName))
+ if event.EventName == "OnLayoutFinished":
+ self.layoutFinished = True
+ def disposing(event):
+ pass
+
+def mkPropertyValue(name, value):
+ return uno.createUnoStruct("com.sun.star.beans.PropertyValue",
+ name, 0, value, 0)
+
+### tests ###
+
+def loadFromURL(xContext, url):
+ xDesktop = xContext.ServiceManager.createInstanceWithContext(
+ "com.sun.star.frame.Desktop", xContext)
+ props = [("Hidden", True), ("ReadOnly", True)] # FilterName?
+ loadProps = tuple([mkPropertyValue(name, value) for (name, value) in props])
+ xListener = EventListener()
+ xGEB = xContext.getValueByName(
+ "/singletons/com.sun.star.frame.theGlobalEventBroadcaster")
+ xGEB.addDocumentEventListener(xListener)
+ xDoc = None
+ try:
+ xDoc = xDesktop.loadComponentFromURL(url, "_blank", 0, loadProps)
+ log("...loadComponentFromURL done")
+ if xDoc is None:
+ raise Exception("No document loaded?")
+ time_ = 0
+ while time_ < 30:
+ if xListener.layoutFinished:
+ return xDoc
+ log("delaying...")
+ time_ += 1
+ time.sleep(1)
+ log("timeout: no OnLayoutFinished received")
+ return xDoc
+ except:
+ if xDoc:
+ log("CLOSING")
+ xDoc.close(True)
+ raise
+ finally:
+ if xListener:
+ xGEB.removeDocumentEventListener(xListener)
+
+def printDoc(xContext, xDoc, url):
+ props = [ mkPropertyValue("FileName", url) ]
+# xDoc.print(props)
+ uno.invoke(xDoc, "print", (tuple(props),)) # damn, that's a keyword!
+ busy = True
+ while busy:
+ log("printing...")
+ time.sleep(1)
+ prt = xDoc.getPrinter()
+ for value in prt:
+ if value.Name == "IsBusy":
+ busy = value.Value
+ log("...done printing")
+
+class LoadPrintFileTest:
+ def __init__(self, file, prtsuffix):
+ self.file = file
+ self.prtsuffix = prtsuffix
+ def run(self, xContext):
+ start = datetime.datetime.now()
+ log("Time: " + str(start) + " Loading document: " + self.file)
+ xDoc = None
+ try:
+ if os.name == 'nt' and self.file[1] == ':':
+ url = "file:///" + self.file[0:2] + quote(self.file[2:])
+ else:
+ url = "file://" + quote(self.file)
+ xDoc = loadFromURL(xContext, url)
+ log("loadFromURL in: " + str(datetime.datetime.now() - start))
+ printDoc(xContext, xDoc, url + self.prtsuffix)
+ finally:
+ if xDoc:
+ xDoc.close(True)
+ end = datetime.datetime.now()
+ log("...done with: " + self.file + " in: " + str(end - start))
+
+def runLoadPrintFileTests(opts, dirs, suffix, reference):
+ if reference:
+ prtsuffix = ".pdf.reference"
+ else:
+ prtsuffix = ".pdf"
+ files = getFiles(dirs, suffix)
+ tests = (LoadPrintFileTest(file, prtsuffix) for file in files)
+# connection = PersistentConnection(opts)
+ connection = PerTestConnection(opts)
+ failed = runConnectionTests(connection, simpleInvoke, tests)
+ print("all printed: FAILURES: " + str(len(failed)))
+ for fail in failed:
+ print(fail)
+ return failed
+
+def mkImages(file, resolution):
+ argv = [ "gs", "-r" + resolution, "-sOutputFile=" + file + ".%04d.jpeg",
+ "-dNOPROMPT", "-dNOPAUSE", "-dBATCH", "-sDEVICE=jpeg", file ]
+ ret = subprocess.check_call(argv)
+
+def mkAllImages(dirs, suffix, resolution, reference, failed):
+ if reference:
+ prtsuffix = ".pdf.reference"
+ else:
+ prtsuffix = ".pdf"
+ for dir in dirs:
+ files = filelist(dir, suffix)
+ log(files)
+ for f in files:
+ if f in failed:
+ log("Skipping failed: " + f)
+ else:
+ mkImages(f + prtsuffix, resolution)
+
+def identify(imagefile):
+ argv = ["identify", "-format", "%k", imagefile]
+ process = subprocess.Popen(argv, stdout=subprocess.PIPE)
+ result, _ = process.communicate()
+ if process.wait() != 0:
+ raise Exception("identify failed")
+ if result.partition(b"\n")[0] != b"1":
+ log("identify result: " + result.decode('utf-8'))
+ log("DIFFERENCE in " + imagefile)
+
+def compose(refimagefile, imagefile, diffimagefile):
+ argv = [ "composite", "-compose", "difference",
+ refimagefile, imagefile, diffimagefile ]
+ subprocess.check_call(argv)
+
+def compareImages(file):
+ allimages = [f for f in filelist(os.path.dirname(file), ".jpeg")
+ if f.startswith(file)]
+# refimages = [f for f in filelist(os.path.dirname(file), ".jpeg")
+# if f.startswith(file + ".reference")]
+# log("compareImages: allimages:" + str(allimages))
+ (refimages, images) = partition(sorted(allimages),
+ lambda f: f.startswith(file + ".pdf.reference"))
+# log("compareImages: images" + str(images))
+ for (image, refimage) in zip(images, refimages):
+ compose(image, refimage, image + ".diff")
+ identify(image + ".diff")
+ if (len(images) != len(refimages)):
+ log("DIFFERENT NUMBER OF IMAGES FOR: " + file)
+
+def compareAllImages(dirs, suffix):
+ log("compareAllImages...")
+ for dir in dirs:
+ files = filelist(dir, suffix)
+# log("compareAllImages:" + str(files))
+ for f in files:
+ compareImages(f)
+ log("...compareAllImages done")
+
+
+def parseArgs(argv):
+ (optlist,args) = getopt.getopt(argv[1:], "hr",
+ ["help", "soffice=", "userdir=", "reference", "valgrind"])
+# print optlist
+ return (dict(optlist), args)
+
+def usage():
+ message = """usage: {program} [option]... [directory]..."
+ -h | --help: print usage information
+ -r | --reference: generate new reference files (otherwise: compare)
+ --soffice=method:location
+ specify soffice instance to connect to
+ supported methods: 'path', 'connect'
+ --userdir=URL specify user installation directory for 'path' method
+ --valgrind pass --valgrind to soffice for 'path' method"""
+ print(message.format(program = os.path.basename(sys.argv[0])))
+
+def checkTools():
+ try:
+ subprocess.check_output(["gs", "--version"])
+ except:
+ print("Cannot execute 'gs'. Please install ghostscript.")
+ sys.exit(1)
+ try:
+ subprocess.check_output(["composite", "-version"])
+ subprocess.check_output(["identify", "-version"])
+ except:
+ print("Cannot execute 'composite' or 'identify'.")
+ print("Please install ImageMagick.")
+ sys.exit(1)
+
+if __name__ == "__main__":
+ checkTools()
+ (opts,args) = parseArgs(sys.argv)
+ if len(args) == 0:
+ usage()
+ sys.exit(1)
+ if "-h" in opts or "--help" in opts:
+ usage()
+ sys.exit()
+ elif "--soffice" in opts:
+ reference = "-r" in opts or "--reference" in opts
+ failed = runLoadPrintFileTests(opts, args, ".odt", reference)
+ mkAllImages(args, ".odt", "200", reference, failed)
+ if not(reference):
+ compareAllImages(args, ".odt")
+ else:
+ usage()
+ sys.exit(1)
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/crashreportScraper.py b/bin/crashreportScraper.py
new file mode 100755
index 000000000..aec3e5e9c
--- /dev/null
+++ b/bin/crashreportScraper.py
@@ -0,0 +1,205 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Use this script to retrieve information from https://crashreport.libreoffice.org
+# about a specific version of LibreOffice
+# Usage sample: ./crashreportScraper.py 7.2.0.4
+
+import requests
+from bs4 import BeautifulSoup
+import sys
+import os
+import math
+from datetime import datetime
+
+def convert_str_to_date(value):
+ value = value.replace('.', '')
+ value = value.replace('March', 'Mar')
+ value = value.replace('April', 'Apr')
+ value = value.replace('June', 'Jun')
+ value = value.replace('July', 'Jul')
+ value = value.replace('Sept', 'Sep')
+ # reset the time leaving the date
+ value = ", ".join(value.split(", ")[:-1])
+ dtDate = datetime.strptime(value, '%b %d, %Y')
+
+ return dtDate.strftime('%y/%m/%d')
+
+def parse_version_url(url):
+ crashReports = {}
+
+ try:
+ html_text = requests.get(url, timeout=200).text
+ soup = BeautifulSoup(html_text, 'html.parser')
+ except requests.exceptions.Timeout:
+ print("Timeout requesting " + url)
+ sys.exit(1)
+
+ table = soup.find("table", {"id": "data-table"}).tbody
+ for tr in table.find_all("tr"):
+ td_list = tr.find_all("td")
+ crashName = td_list[0].a.text.strip()
+ crashNumber = int(td_list[1].text.strip())
+ firstCrashDate = convert_str_to_date(td_list[5].text.strip())
+ lastCrashDate = convert_str_to_date(td_list[6].text.strip())
+ crashReports[crashName] = [crashNumber, firstCrashDate, lastCrashDate]
+
+ return crashReports
+
+def parse_reports_and_get_most_recent_report_from_last_page(url):
+ try:
+ html_text = requests.get(url, timeout=200).text
+ soup = BeautifulSoup(html_text, 'html.parser')
+ except requests.exceptions.Timeout:
+ print("Timeout")
+ raise
+
+ count = 0
+ os_tab = soup.find("table", {"id": "os_tab"}).tbody
+ tr_list = os_tab.find_all("tr")
+ for tr in tr_list:
+ td_list = tr.find_all("td")
+ count += int(td_list[1].text.strip())
+
+ # There are 50 reports on each page.
+ # Go to the last page based on the total count to get a recent report
+ last_page = math.ceil( count / 50 )
+
+ if last_page > 1:
+ url = url + "?page=" + str(last_page)
+ try:
+ html_text = requests.get(url, timeout=200).text
+ soup = BeautifulSoup(html_text, 'html.parser')
+ except requests.exceptions.Timeout:
+ print("Timeout")
+ raise
+
+ reports = soup.find("div", {"id": "reports"}).tbody
+ ID, currentID = "", ""
+ version, currentVersion = "", ""
+ OS, currentOS = "", ""
+
+ tr_list = reports.find_all("tr")
+ for tr in tr_list:
+ td_list = tr.find_all("td")
+
+ currentID = td_list[0].a.text.strip()
+ currentVersion = td_list[2].text.strip().split(': ')[1]
+ currentOS = td_list[3].text.strip()
+
+ # get most recent version
+ # symbols on linux are not very informative generally
+ if currentOS == "windows" and currentVersion > version:
+ version = currentVersion
+ ID = currentID
+ OS = currentOS
+
+ if not version:
+ version = currentVersion
+
+ if not ID:
+ ID = currentID
+
+ if not OS:
+ OS = currentOS
+
+ return count, ID, version, OS
+
+def parse_details_and_get_info(url, gitRepo):
+ try:
+ html_text = requests.get(url, timeout=200).text
+ soup = BeautifulSoup(html_text, 'html.parser')
+ except requests.exceptions.Timeout:
+ print("Timeout")
+ raise
+
+ details = soup.find("div", {"id": "details"}).tbody
+ tr_list = details.find_all("tr")
+ reason = tr_list[8].td.text.strip()
+
+ stack = ""
+ codeLine = ""
+
+ count = 0
+ frames = soup.find("div", {"id": "frames"}).tbody
+ for tr in frames.find_all("tr"):
+ td_list = tr.find_all("td")
+ source = td_list[3].text.strip()
+ if source and count <= 10:
+ source = source.replace("\\", "/").replace("C:/cygwin64/home/buildslave/source/libo-core/", "")
+ stack += source + "\n"
+ count += 1
+
+ codeFile = source.split(":")[0]
+ codeNumber = source.split(":")[1]
+ try:
+ with open(os.path.join(gitRepo, codeFile)) as f:
+ lines = f.readlines()
+ for index, line in enumerate(lines):
+ if index + 1 == int(codeNumber):
+ codeLine += line.strip() + "\n"
+ except FileNotFoundError:
+ codeLine += "\n"
+ continue
+
+ if stack:
+ #multiline
+ stack = "\"" + stack + "\""
+
+ if codeLine:
+ #multiline
+ codeLine = "\"" + codeLine + "\""
+
+ return reason, stack, codeLine
+
+
+if __name__ == '__main__':
+
+ version = sys.argv[1]
+
+ crashes = parse_version_url(
+ "https://crashreport.libreoffice.org/stats/version/" + version + "?limit=1000&days=30")
+
+ gitRepo = os.path.dirname(os.path.realpath(__file__)) + "/../"
+
+ print(str(len(crashes)) + " crash reports in version " + version)
+
+ crashesInFile = []
+ fileName = "crashes_" + version.replace(".", "_") + ".csv"
+ print("Using " + fileName)
+
+ bInsertHeader = False
+ if os.path.exists(fileName):
+ with open(fileName, "r") as f:
+ lines = f.readlines()
+ for line in lines:
+ crashesInFile.append(line.split("\t")[0])
+ else:
+ bInsertHeader = True
+
+ with open(fileName, "a") as f:
+ if bInsertHeader:
+ line = '\t'.join(["Name", "Count", "First report", "Last Report",
+ "ID", "Version", "Reason", "OS", "Stack", "Code Lines" '\n'])
+ f.write(line)
+ f.flush()
+
+ for k, lDate in crashes.items():
+ if len(k) < 254 and k not in crashesInFile and '`' not in k:
+ print("Parsing " + k)
+ try:
+ crashCount, crashID, crashVersion, crashOS = parse_reports_and_get_most_recent_report_from_last_page(
+ "https://crashreport.libreoffice.org/stats/signature/" + k)
+ crashReason, crashStack, codeLine = parse_details_and_get_info(
+ "https://crashreport.libreoffice.org/stats/crash_details/" + crashID, gitRepo)
+ line = '\t'.join([k, str(crashCount), lDate[1], lDate[2],
+ crashID, crashVersion, crashReason, crashOS, crashStack, codeLine, '\n'])
+ f.write(line)
+ f.flush()
+ except requests.exceptions.Timeout:
+ continue
diff --git a/bin/distro-install-clean-up b/bin/distro-install-clean-up
new file mode 100755
index 000000000..701c9ffa0
--- /dev/null
+++ b/bin/distro-install-clean-up
@@ -0,0 +1,92 @@
+#!/bin/sh
+
+if test -z "${SRC_ROOT}"; then
+ echo "distro-install-clean-up: No environment set!"
+ exit 1
+fi
+
+echo "Cleaning up ...";
+
+remove_help_localization()
+{
+ lang=$1
+
+ # nothing to be done if the localization is en-US if it does not exist
+ # or if it is already removed
+ test "$lang" = "en-US" -o \
+ ! -e $DESTDIR$INSTALLDIR/help/$lang -o \
+ -L $DESTDIR$INSTALLDIR/help/$lang && return;
+
+ echo "... remove \"$lang\""
+
+ rm -rf $DESTDIR$INSTALLDIR/help/$lang
+ grep -v "$INSTALLDIR/help/$lang" $DESTDIR/gid_Module_Root.$lang >$DESTDIR/gid_Module_Root.$lang.new
+ mv -f $DESTDIR/gid_Module_Root.$lang.new $DESTDIR/gid_Module_Root.$lang
+ # FIXME: the following code could be used without the condition
+ # and should replace the lines above after only the milestones
+ # providing gid_Module_Helppack_Help and fixed gid_Module_Root.$lang
+ # are supported
+ # Note: The problem with gid_Module_Root.$lang is that it still includes
+ # %dir */help/* entries.
+ # Note: It was still necessary on ppc with gcj (OOo-2.0.2). Strange. Have to
+ # investigate it later.
+ if test -f $DESTDIR/gid_Module_Helppack_Help.$lang ; then
+ grep -v "$INSTALLDIR/help/$lang" $DESTDIR/gid_Module_Helppack_Help.$lang >$DESTDIR/gid_Module_Helppack_Help.$lang.new
+ mv -f $DESTDIR/gid_Module_Helppack_Help.$lang.new $DESTDIR/gid_Module_Helppack_Help.$lang
+ fi
+
+ # Note: We created a compat symlink in the past. It is no longer necessary.
+ # We do not want it because RPM has problems with update when we remove
+ # poor localizations in never packages
+}
+
+# Check if the English help is installed and is in the main package (is first on the list)
+# Note that Java-disabled builds do not create help at all.
+if test -f $DESTDIR$INSTALLDIR/help/en/sbasic.cfg -a \
+ "`for lang in $WITH_LANG_LIST ; do echo $lang ; break ; done`" = "en-US" ; then
+
+ echo "Removing duplicated English help..."
+
+ for lang in $WITH_LANG_LIST ; do
+ test ! -f $DESTDIR$INSTALLDIR/help/en/sbasic.cfg -o ! -f $DESTDIR$INSTALLDIR/help/$lang/sbasic.cfg && continue;
+ if diff $DESTDIR$INSTALLDIR/help/en/sbasic.cfg $DESTDIR$INSTALLDIR/help/$lang/sbasic.cfg >/dev/null 2>&1 ; then
+ remove_help_localization $lang
+ fi
+ done
+
+ echo "Removing poor help localizations..."
+
+ for lang in $WITH_POOR_HELP_LOCALIZATIONS ; do
+ remove_help_localization $lang
+ done
+fi
+
+echo "Fixing permissions..."
+for dir in $DESTDIR$DOCDIR $DESTDIR$INSTALLDIR/sdk/examples ; do
+ if test -d $dir -a -w $dir ; then
+ find "$dir" -type f \( -name "*.txt" -o -name "*.java" -o -name "*.xml" -o \
+ -name "*.xcu" -o -name "*.xcs" -o -name "*.html" -o \
+ -name "*.pdf" -o -name "*.ps" -o -name "*.gif" -o \
+ -name "*.png" -o -name "*.jpg" -o -name "Makefile" -o \
+ -name "manifest.mf" \) -exec chmod 644 {} \;
+ fi
+done
+
+if test "z$DESTDIR" != "z" ; then
+ echo "Checking for DESTDIR inside installed files..."
+ found_destdir=
+ for file in `find $DESTDIR -type f` ; do
+ grep -q "$DESTDIR" $file && echo "$file: includes the string \"$DESTDIR\"" && found_destdir=1
+ done
+ if test "z$found_destdir" != "z" ; then
+ echo "!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!"
+ echo "The path DESTDIR:$DESTDIR was found inside some"
+ echo "installed files. It is probably a bug."
+ echo
+ echo "Especially, if the DESTDIR is set to \$RPM_BUILD_ROOT"
+ echo "when creating RPM packages. Even it could be a security hole"
+ echo "if the application searches /var/tmp for binaries or"
+ echo "config files because the directory is world-writable."
+ echo "!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!"
+ fi
+fi
diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration
new file mode 100755
index 000000000..7e1428ffb
--- /dev/null
+++ b/bin/distro-install-desktop-integration
@@ -0,0 +1,188 @@
+#!/bin/sh
+
+if test -z "${SRC_ROOT}"; then
+ echo "distro-install-clean-up: No environment set!"
+ exit 1
+fi
+
+PRODUCTVERSION_NODOT=`echo $PRODUCTVERSION | sed -e "s/\.//"`
+
+mkdir -p "$DESTDIR$BINDIR"
+
+create_wrapper()
+{
+ echo "Install $BINDIR/$1"
+
+ if test -L "$DESTDIR$BINDIR/$1" ; then
+ # do not overwrite $BINDIR/libreoffice symlink created by create_tree.sh
+ # the symlink is necessary by java UNO components to find
+ # the UNO installation using $PATH; this function used to be provided
+ # by $BINDIR/soffice symlink, see
+ # http://udk.openoffice.org/common/man/spec/transparentofficecomponents.html
+ # Note: if you want to support parallel installation of more OOo versions
+ # you cannot include this link directly into the package
+ # For example, the Novell package mark this symlink as %ghost
+ # and update it in %post and %postun
+ echo " skip already existing symlink $BINDIR/$1"
+ else
+ mkdir -p "$DESTDIR$BINDIR"
+ cat <<EOT >"$DESTDIR$BINDIR/$1"
+#!/bin/sh
+$INSTALLDIR/program/$2 $3 "\$@"
+EOT
+ chmod 755 "$DESTDIR$BINDIR/$1"
+ fi
+ # put into file list
+ test -f "$DESTDIR/$4" && echo "$BINDIR/$1" >>$DESTDIR/$4
+}
+
+create_man_link()
+{
+ echo "Install $MANDIR/man1/$1.1.gz"
+
+ mkdir -p $DESTDIR$MANDIR/man1
+ echo ".so man1/$2.1" >| $DESTDIR$MANDIR/man1/$1.1
+ gzip -f $DESTDIR$MANDIR/man1/$1.1
+ test -f "$DESTDIR/$3" && echo "$MANDIR/man1/$1.1.gz" >>"$DESTDIR/$3"
+}
+
+install_man()
+{
+ echo "Install $MANDIR/man1/$1.1.gz"
+
+ mkdir -p $DESTDIR$MANDIR/man1
+ cp "${SRCDIR?}"/sysui/desktop/man/$1.1 $DESTDIR$MANDIR/man1 || exit 1;
+ gzip -f $DESTDIR$MANDIR/man1/$1.1
+ test -f "$DESTDIR/$2" && echo "$MANDIR/man1/$1.1.gz" >>"$DESTDIR/$2"
+}
+
+
+add_wrapper()
+{
+ lowrapper_name="$1"
+ target_binary="$2"
+ target_option_1="$3"
+ used_man_page="$4"
+ desktop_file="$5"
+ file_list="$6"
+
+ # do we want compat oowrapper?
+ oowrapper_name=""
+ if test "$WITH_COMPAT_OOWRAPPERS" = 'TRUE' ; then
+ oowrapper_name=`echo "$lowrapper_name" | sed -e "s/^lo/oo/"`
+ # "oo" prefix only for wrappers stating with "lo" prefix
+ test "$oowrapper_name" = "$lowrapper_name" && oowrapper_name=
+ fi
+
+ # wrappers
+ create_wrapper "$lowrapper_name" "$target_binary" "$target_option_1" "$file_list"
+ test -n "$oowrapper_name" && create_wrapper "$oowrapper_name" "$target_binary" "$target_option_1" "$file_list"
+
+ # man pages
+ if test "$used_man_page" = "$lowrapper_name" ; then
+ # need to install the manual page
+ install_man "$lowrapper_name" "$file_list"
+ else
+ # just link the manual page
+ create_man_link "$lowrapper_name" "$used_man_page" "$file_list"
+ fi
+ test -n "$oowrapper_name" && create_man_link "$oowrapper_name" "$used_man_page" "$file_list"
+
+ # add desktop file to the right file list
+ test -n "$desktop_file" -a -f "$DESTDIR/$file_list" && echo "$PREFIXDIR/share/applications/$desktop_file" >>"$DESTDIR/$file_list"
+}
+
+# install desktop integration from plain packages
+sysui_temp=`mktemp -d -t distro-pack-desktop-integration-XXXXXX`
+cp -a workdir/CustomTarget/sysui/share/libreoffice/* "$sysui_temp"
+cp -a "${SRCDIR?}"/sysui/desktop/share/create_tree.sh "$sysui_temp"
+cd $sysui_temp
+# we want non-versioned stuff in the distro packages
+sed -i \
+ -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION_NODOT/\1/" \
+ -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION/\1/" \
+ -e "s/\($PRODUCTNAME\) $PRODUCTVERSION/\1/" \
+ *
+# call in subshell to do not malform PRODUCTVERSION, ...
+(
+ export OFFICE_PREFIX=$LIBDIR
+ export PREFIX=$INSTALLDIRNAME
+ export ICON_PREFIX=$INSTALLDIRNAME
+ export ICON_SOURCE_DIR="${SRCDIR?}"/sysui/desktop/icons
+ export PRODUCTVERSION=
+ export KDEMAINDIR=$PREFIXDIR
+ export PREFIXDIR=${PREFIXDIR}
+ export APPDATA_SOURCE_DIR="${SRCDIR?}"/sysui/desktop/appstream-appdata
+ bash ./create_tree.sh
+)
+cd -
+rm -rf $sysui_temp
+
+# we do not want some stuff from the plain packages
+if test -d $DESTDIR/opt ; then
+ rm -f $DESTDIR/opt/$INSTALLDIRNAME
+ rmdir $DESTDIR/opt 2>/dev/null || true
+fi
+
+# we want non-versioned desktop files
+cd $DESTDIR/$INSTALLDIR/share/xdg
+# we want non-versioned stuff in the distro packages
+sed -i \
+ -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION_NODOT/\1/" \
+ -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION/\1/" \
+ -e "s/\($PRODUCTNAME\) $PRODUCTVERSION/\1/" \
+ *.desktop
+cd -
+
+# put the stuff installed by create_tree.sh into the right file lists
+# desktop files will be added by the corresponding add_wrapper command
+if test -f $DESTDIR/gid_Module_Root_Brand ; then
+ for dir in $PREFIXDIR/share/mime/packages \
+ $PREFIXDIR/share/icons ; do
+ find "$DESTDIR$dir" \( -type f -o -type l \) -printf "$dir/%P\n" >>$DESTDIR/gid_Module_Root_Brand
+ done
+fi
+
+# wrappers and man pages
+# FIXME: do not have desktop file and MIME icon for unopkg
+add_wrapper lobase soffice "--base" "libreoffice" "libreoffice-base.desktop" "gid_Module_Brand_Prg_Base"
+add_wrapper localc soffice "--calc" "libreoffice" "libreoffice-calc.desktop" "gid_Module_Brand_Prg_Calc"
+add_wrapper lodraw soffice "--draw" "libreoffice" "libreoffice-draw.desktop" "gid_Module_Brand_Prg_Draw"
+add_wrapper lomath soffice "--math" "libreoffice" "libreoffice-math.desktop" "gid_Module_Brand_Prg_Math"
+add_wrapper loimpress soffice "--impress" "libreoffice" "libreoffice-impress.desktop" "gid_Module_Brand_Prg_Impress"
+add_wrapper loweb soffice "--web" "libreoffice" "" "gid_Module_Brand_Prg_Wrt"
+add_wrapper lowriter soffice "--writer" "libreoffice" "libreoffice-writer.desktop" "gid_Module_Brand_Prg_Wrt"
+add_wrapper lofromtemplate soffice ".uno:NewDoc" "libreoffice" "" "gid_Module_Root_Brand"
+add_wrapper libreoffice soffice "" "libreoffice" "libreoffice-startcenter.desktop" "gid_Module_Root_Brand"
+add_wrapper loffice soffice "" "libreoffice" "" "gid_Module_Root_Brand"
+add_wrapper unopkg unopkg "" "unopkg" "" "gid_Module_Root_Brand"
+
+# there are two more desktop files for optional filters
+test -f $DESTDIR/gid_Module_Optional_Xsltfiltersamples && echo "$PREFIXDIR/share/applications/libreoffice-xsltfilter.desktop" >>"$DESTDIR/gid_Module_Optional_Xsltfiltersamples"
+
+# $BINDIR/ooffice symlink is necessary by java UNO components to find
+# the UNO installation using $PATH, see
+# http://udk.openoffice.org/common/man/spec/transparentofficecomponents.html
+# Note: if you want to support parallel installation of more OOo versions
+# you cannot include this link directly into the package
+# For example, the Novell package mark this symlink as %ghost
+# and update it in %post and %postun
+ln -sf "$INSTALLDIR/program/soffice" "$DESTDIR$BINDIR/soffice"
+test -f $DESTDIR/gid_Module_Root_Brand && echo "$BINDIR/soffice" >>$DESTDIR/gid_Module_Root_Brand
+
+# create bash completion
+mkdir -p $DESTDIR/usr/share/bash-completion/completions
+"${SRCDIR?}"/bin/generate-bash-completion.py bin/bash-completion.in $DESTDIR/usr/share/bash-completion/completions/$INSTALLDIRNAME.sh
+test -f $DESTDIR/gid_Module_Root_Brand && echo "/usr/share/bash-completion/completions/$INSTALLDIRNAME.sh" >>$DESTDIR/gid_Module_Root_Brand
+if test "$WITH_COMPAT_OOWRAPPERS" = "TRUE" ; then
+ "${SRCDIR?}"/bin/generate-bash-completion.py --compat-oowrappers bin/bash-completion.in $DESTDIR/usr/share/bash-completion/completions/ooffice.sh
+ test -f $DESTDIR/gid_Module_Root_Brand && echo "/usr/share/bash-completion/completions/ooffice.sh" >>$DESTDIR/gid_Module_Root_Brand
+fi
+
+echo "Install $OOINSTDIR/basis$VERSION/program/java-set-classpath";
+mkdir -p $DESTDIR$INSTALLDIR/program
+sed -e "s|@INSTALLDIR@|$INSTALLDIR|g" "${SRCDIR?}"/bin/java-set-classpath.in >| "$DESTDIR$INSTALLDIR/program/java-set-classpath" || exit 1;
+chmod 755 "$DESTDIR$INSTALLDIR/program/java-set-classpath"
+test -f $DESTDIR/gid_Module_Root_Brand && echo "$INSTALLDIR/program/java-set-classpath" >>$DESTDIR/gid_Module_Root_Brand
+
+exit 0
diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists
new file mode 100755
index 000000000..34db93e0a
--- /dev/null
+++ b/bin/distro-install-file-lists
@@ -0,0 +1,517 @@
+#!/bin/sh
+
+if test -z "${SRC_ROOT}"; then
+ echo "distro-install-clean-up: No environment set!"
+ exit 1
+fi
+
+BUILDDIR=`pwd`
+FILELISTSDIR="$BUILDDIR/file-lists"
+
+# remove installed file even from the file list
+# Params: file_list file_to_remove
+remove_file()
+{
+ rm -f "$DESTDIR/$2"
+ perl -pi -e "s|^$2$||" "$1"
+}
+
+# move one file from one list of files to a second one
+# Params: target_file_list source_file_list file_to_move
+mv_file_between_flists()
+{
+ if grep "^$3\$" $2 >/dev/null 2>&1 ; then
+ # \$3 can be regular expression
+ grep "^$3\$" $2 >>$1
+ perl -pi -e "s|^$3$||" $2
+ fi
+}
+# add the directories from the source list of files to the target list of
+# file which are used in the target list of files but are missing there
+# Params: target_file_list source_file_list
+add_used_directories()
+{
+ sort -u -r $2 | sed -n "s|^%dir \(.*\)\$|s%^\\\\(\1\\\\).*%\\\\1%p|p" >$2.pattern
+ sed -n -f $2.pattern $1 | sort -u | sed "s|^|%dir |" >>$1
+ rm $2.pattern
+ sort -u $1 >$1.unique
+ mv $1.unique $1
+}
+
+# remove a duplicity between two filelist
+# Params: filelist_with_original filelist_with_duplicity duplicit_path
+remove_duplicity_from_flists()
+{
+ if grep "$3" "$1" >/dev/null 2>&1 && \
+ grep "$3" "$2" >/dev/null 2>&1 ; then
+ perl -pi -e "s|^$3$||" $2
+ fi
+}
+
+# merges one file list into another one
+# Params: source_filelist dest_filelist replace_dest
+merge_flists()
+{
+ if test -f "$1" ; then
+ cat "$1" >>"$2"
+ sort -u "$2" >"$2".sorted
+ mv "$2".sorted "$2"
+ fi
+}
+
+if ! test -f $DESTDIR/gid_Module_Root; then
+ echo "Error: Failed to generate package file lists";
+ echo " Have you defined DESTDIR?"
+ exit
+fi
+
+
+rm -rf "$FILELISTSDIR"
+mkdir -p "$FILELISTSDIR"
+
+cd $DESTDIR
+
+if test "z$OOO_VENDOR" != "zDebian" ; then
+
+ echo "Generating package file lists for $OOO_VENDOR..."
+
+ rm -f common_list.txt
+ for module in gid_Module_Root gid_Module_Root_Brand \
+ gid_Module_Root_Files_[0-9] \
+ gid_Module_Root_Hack \
+ gid_Module_Oo_Linguistic \
+ gid_Module_Root_Extension_Dictionary_* \
+ gid_Module_Root_Ure_Hidden ; do
+ merge_flists $module $FILELISTSDIR/common_list.txt
+ done
+
+ # it is not a real extension; it used to be in the main package...
+ merge_flists gid_Module_Optional_Extensions_Script_Provider_For_JS $FILELISTSDIR/common_list.txt
+
+ if test "$SPLIT_APP_MODULES" = "TRUE" ; then
+ merge_flists gid_Module_Prg_Base_Bin $FILELISTSDIR/base_list.txt
+ merge_flists gid_Module_Prg_Calc_Bin $FILELISTSDIR/calc_list.txt
+ merge_flists gid_Module_Prg_Draw_Bin $FILELISTSDIR/draw_list.txt
+ merge_flists gid_Module_Prg_Math_Bin $FILELISTSDIR/math_list.txt
+ merge_flists gid_Module_Prg_Impress_Bin $FILELISTSDIR/impress_list.txt
+ merge_flists gid_Module_Prg_Wrt_Bin $FILELISTSDIR/writer_list.txt
+ merge_flists gid_Module_Brand_Prg_Base $FILELISTSDIR/base_list.txt
+ merge_flists gid_Module_Brand_Prg_Calc $FILELISTSDIR/calc_list.txt
+ merge_flists gid_Module_Brand_Prg_Draw $FILELISTSDIR/draw_list.txt
+ merge_flists gid_Module_Brand_Prg_Math $FILELISTSDIR/math_list.txt
+ merge_flists gid_Module_Brand_Prg_Impress $FILELISTSDIR/impress_list.txt
+ merge_flists gid_Module_Brand_Prg_Wrt $FILELISTSDIR/writer_list.txt
+ merge_flists gid_Module_Reportbuilder $FILELISTSDIR/base_list.txt
+ merge_flists gid_Module_Pdfimport $FILELISTSDIR/draw_list.txt
+
+ # FIXME: small; low dependencies; why optional module?
+ merge_flists gid_Module_Optional_OGLTrans $FILELISTSDIR/impress_list.txt
+ else
+ merge_flists gid_Module_Prg_Base_Bin $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Prg_Calc_Bin $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Prg_Draw_Bin $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Prg_Math_Bin $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Prg_Impress_Bin $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Prg_Wrt_Bin $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Brand_Prg_Base $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Brand_Prg_Calc $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Brand_Prg_Draw $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Brand_Prg_Math $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Brand_Prg_Impress $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Brand_Prg_Wrt $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Reportbuilder $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Pdfimport $FILELISTSDIR/common_list.txt
+ # FIXME: small; low dependencies; why optional module?
+ merge_flists gid_Module_Optional_OGLTrans $FILELISTSDIR/common_list.txt
+ fi
+
+ if test "$SPLIT_APP_MODULES" = "TRUE" -a "$OOO_VENDOR" = "SUSE" ; then
+ # move the prebuilt icons into a hacky temporary package
+ # we want to repack them into a noarch package as soon as possible
+ # without the build dependency on the huge devel package
+ merge_flists gid_Module_Root_Files_Images $FILELISTSDIR/icon_themes_prebuilt.txt
+ else
+ merge_flists gid_Module_Root_Files_Images $FILELISTSDIR/common_list.txt
+ fi
+
+ if test "$SPLIT_OPT_FEATURES" = "TRUE" ; then
+ if test "z$OOO_VENDOR" = "zMandriva" ; then
+ merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/draw_list.txt
+ merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Pymailmerge $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Pyuno $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Script_Provider_For_Python $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Optional_Pyuno_LibreLogo $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/common_list.txt
+ else
+ merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Pymailmerge $FILELISTSDIR/mailmerge_list.txt
+ merge_flists gid_Module_Pyuno $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Optional_Pyuno_LibreLogo $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Script_Provider_For_Python $FILELISTSDIR/pyuno_list.txt
+ merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/filters_list.txt
+ fi
+ else
+ merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Pymailmerge $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Pyuno $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Pyuno_LibreLogo $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Script_Provider_For_Python $FILELISTSDIR/common_list.txt
+ merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/common_list.txt
+ fi
+
+ # lang packs
+ for lang in `echo $WITH_LANG_LIST | sed -e s/-/_/g`; do
+ lang_lists=
+ if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "SUSE" -a "$SPLIT_APP_MODULES" = "TRUE" \) ; then
+ test -f gid_Module_Langpack_Basis_$lang && lang_lists="$lang_lists gid_Module_Langpack_Basis_$lang" || :
+ test -f gid_Module_Langpack_Brand_$lang && lang_lists="$lang_lists gid_Module_Langpack_Brand_$lang" || :
+ test -f gid_Module_Langpack_Resource_$lang && lang_lists="$lang_lists gid_Module_Langpack_Resource_$lang" || :
+ test -f gid_Module_Langpack_Impress_$lang && lang_lists="$lang_lists gid_Module_Langpack_Impress_$lang" || :
+ test -f gid_Module_Langpack_Draw_$lang && lang_lists="$lang_lists gid_Module_Langpack_Draw_$lang" || :
+ test -f gid_Module_Langpack_Math_$lang && lang_lists="$lang_lists gid_Module_Langpack_Math_$lang" || :
+ test -f gid_Module_Langpack_Calc_$lang && lang_lists="$lang_lists gid_Module_Langpack_Calc_$lang" || :
+ test -f gid_Module_Langpack_Base_$lang && lang_lists="$lang_lists gid_Module_Langpack_Base_$lang" || :
+ test -f gid_Module_Langpack_Writer_$lang && lang_lists="$lang_lists gid_Module_Langpack_Writer_$lang" || :
+ # Place helps on dedicated packages.
+ test -f gid_Module_Helppack_Help_$lang && sort -u gid_Module_Helppack_Help_$lang > $FILELISTSDIR/help_${lang}_list.txt || :
+ else
+ test -f gid_Module_Langpack_Basis_$lang && lang_lists="$lang_lists gid_Module_Langpack_Basis_$lang" || :
+ test -f gid_Module_Langpack_Brand_$lang && lang_lists="$lang_lists gid_Module_Langpack_Brand_$lang" || :
+ test -f gid_Module_Langpack_Resource_$lang && lang_lists="$lang_lists gid_Module_Langpack_Resource_$lang" || :
+ test -f gid_Module_Langpack_Impress_$lang && lang_lists="$lang_lists gid_Module_Langpack_Impress_$lang" || :
+ test -f gid_Module_Langpack_Draw_$lang && lang_lists="$lang_lists gid_Module_Langpack_Draw_$lang" || :
+ test -f gid_Module_Langpack_Math_$lang && lang_lists="$lang_lists gid_Module_Langpack_Math_$lang" || :
+ test -f gid_Module_Langpack_Calc_$lang && lang_lists="$lang_lists gid_Module_Langpack_Calc_$lang" || :
+ test -f gid_Module_Langpack_Base_$lang && lang_lists="$lang_lists gid_Module_Langpack_Base_$lang" || :
+ test -f gid_Module_Langpack_Writer_$lang && lang_lists="$lang_lists gid_Module_Langpack_Writer_$lang" || :
+ test -f gid_Module_Helppack_Help_$lang && lang_lists="$lang_lists gid_Module_Helppack_Help_$lang" || :
+ fi
+ if test -n "$lang_lists" ; then
+ # all files are installed below $INSTALLDIR/basis; we want to own also $INSTALLDIR
+ echo "%dir $INSTALLDIR" >$FILELISTSDIR/lang_${lang}_list.txt
+ cat $lang_lists | sort -u >>$FILELISTSDIR/lang_${lang}_list.txt
+ fi
+ # some help files are in _Langpack_{Writer,Impress,...}_<lang>
+ # move them from -l10n to -help
+ if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "SUSE" -a "$SPLIT_APP_MODULES" = "TRUE" \) ; then
+ for lang in `echo $WITH_LANG_LIST | sed -e s/-/_/g`; do
+ test -f $FILELISTSDIR/help_${lang}_list.txt || continue;
+ mv_file_between_flists $FILELISTSDIR/help_${lang}_list.txt $FILELISTSDIR/lang_${lang}_list.txt $INSTALLDIR/help/.*
+ add_used_directories $FILELISTSDIR/help_${lang}_list.txt $FILELISTSDIR/lang_${lang}_list.txt
+ done
+ fi
+ done
+
+ if test -f $FILELISTSDIR/lang_en_US_list.txt -a "$OOO_VENDOR" = "SUSE" -a "$SPLIT_APP_MODULES" != "TRUE" ; then
+ cat $FILELISTSDIR/lang_en_US_list.txt >>$FILELISTSDIR/common_list.txt
+ rm $FILELISTSDIR/lang_en_US_list.txt
+ fi
+
+ if test -f gid_Module_Root_SDK ; then
+ cp gid_Module_Root_SDK $FILELISTSDIR/sdk_list.txt
+ fi
+
+ cd $FILELISTSDIR
+
+ # gnome subpackage
+ test -f $DESTDIR/gid_Module_Optional_Gnome && cp $DESTDIR/gid_Module_Optional_Gnome gnome_list.txt || :
+ mv_file_between_flists gnome_list.txt common_list.txt $INSTALLDIR/program/libevoab2.so
+ mv_file_between_flists gnome_list.txt common_list.txt $INSTALLDIR/program/libvclplug_gtk[0-9]*l..so
+ add_used_directories gnome_list.txt common_list.txt
+
+ # mono subpackage
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/cli_.*.dll
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/cli_.*.dll.config
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/policy.*.cli_.*.dll
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/cli_.*.dll
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/cli_.*.dll.config
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/policy.*.cli_.*.dll
+ mv_file_between_flists mono_list.txt common_list.txt $INSTALLDIR/program/libcli_.*.so
+ add_used_directories mono_list.txt common_list.txt
+ # add the files from GAC if it was installed
+ test -f mono_gac && cat mono_gac >>mono_list.txt
+
+ # postgresql subpackage
+ test -f $DESTDIR/gid_Module_Optional_PostgresqlSdbc && cp $DESTDIR/gid_Module_Optional_PostgresqlSdbc postgresql_list.txt || :
+
+ # mailmerge
+ if test "$SPLIT_OPT_FEATURES" = "TRUE" ; then
+ if test "z$OOO_VENDOR" = "zMandriva" ; then
+ flist=pyuno_list.txt
+ else
+ flist=mailmerge_list.txt
+ fi
+ mv_file_between_flists $flist common_list.txt $INSTALLDIR/program/mailmerge.py
+ add_used_directories $flist common_list.txt
+ fi
+
+ if test "z$OOO_VENDOR" = "zSUSE" ; then
+ # officebean subpackage
+ test -f $DESTDIR/gid_Module_Optional_Extensions_Script_Provider_For_BS && cp $DESTDIR/gid_Module_Optional_Extensions_Script_Provider_For_BS officebean_list.txt || :
+ mv_file_between_flists officebean_list.txt common_list.txt $INSTALLDIR/program/classes/officebean.jar
+ mv_file_between_flists officebean_list.txt common_list.txt $INSTALLDIR/program/libofficebean.so
+ add_used_directories officebean_list.txt common_list.txt
+ fi
+
+ if test -f sdk_list.txt ; then
+ # in this case we move all entries including directories
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "%dir $DOCDIR/sdk/docs.*"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$DOCDIR/sdk/docs.*"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$DOCDIR/sdk/examples"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$DOCDIR/sdk/index.html"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "%dir $INSTALLDIR/sdk/examples.*"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$INSTALLDIR/sdk/docs"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$INSTALLDIR/sdk/examples.*"
+ mv_file_between_flists sdk_doc_list.txt sdk_list.txt "$INSTALLDIR/sdk/index.html"
+ add_used_directories sdk_doc_list.txt sdk_list.txt
+ fi
+
+
+ # Mandriva packaging
+ if test "$OOO_VENDOR" = "Mandriva"; then
+ # Not used
+ remove_file common_list.txt $INSTALLDIR/share/gallery/htmltheme.orig
+ remove_file common_list.txt $INSTALLDIR/share/dict/ooo/dictionary.lst
+
+ # And these are in -draw package
+ mv_file_between_flists draw_list.txt common_list.txt $INSTALLDIR/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_drawgraphics_filters.xcu
+ mv_file_between_flists draw_list.txt common_list.txt $INSTALLDIR/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_drawgraphics_types.xcu
+
+ # And these are in -impress package
+ mv_file_between_flists impress_list.txt common_list.txt $INSTALLDIR/share/registry/modules/org/openoffice/TypeDetection/Filter/fcfg_impressgraphics_filters.xcu
+ mv_file_between_flists impress_list.txt common_list.txt $INSTALLDIR/share/registry/modules/org/openoffice/TypeDetection/Types/fcfg_impressgraphics_types.xcu
+
+ # Split out the gallery
+ mv_file_between_flists gallery_list.txt common_list.txt "$INSTALLDIR/share/gallery.*"
+ test -r galleries.txt && cat galleries.txt >> gallery_list.txt
+
+ # Split out dtd-officedocument1.0
+ mv_file_between_flists dtd_list.txt common_list.txt "$INSTALLDIR/share/dtd/officedocument.*"
+
+ # Split out java stuff
+ mv_file_between_flists java_common_list.txt common_list.txt $INSTALLDIR/program/JREProperties.class
+ mv_file_between_flists java_common_list.txt common_list.txt "$INSTALLDIR/program/classes.*"
+ mv_file_between_flists java_common_list.txt common_list.txt $INSTALLDIR/program/libofficebean.so
+ mv_file_between_flists java_common_list.txt common_list.txt "$INSTALLDIR/share/Scripts/java.*"
+ mv_file_between_flists java_common_list.txt writer_list.txt $INSTALLDIR/program/classes/writer2latex.jar
+
+ # Move arch-dependent/dup files from common to core
+ for f in \
+ ".*\.so" \
+ ".*\.so\..*" \
+ "program/.*\.rdb" \
+ program/configimport.bin \
+ program/javaldx \
+ program/msfontextract \
+ program/oosplash.bin \
+ program/pagein \
+ program/pagein-calc \
+ program/pagein-common \
+ program/pagein-draw \
+ program/pagein-impress \
+ program/pagein-writer \
+ program/pkgchk.bin \
+ program/pluginapp.bin \
+ program/setofficelang.bin \
+ program/soffice.bin \
+ program/uno.bin \
+ program/unopkg.bin \
+ program/uri-encode
+ do
+ mv_file_between_flists core_list.txt common_list.txt "$INSTALLDIR/$f"
+ done
+
+ # themes are included in other packages
+ # don't use remove_file as we don't want them removed from the buildroot.
+ mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/share/config/images_crystal.zip
+ mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/share/config/images_hicontrast.zip
+ mv_file_between_flists /dev/null common_list.txt $INSTALLDIR/share/config/images.zip
+ fi
+
+ # remove known duplicities to do not have files packaged in two packages
+ # the Bulgarian fixes can be removed after the issue #54110 is fixed
+ remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/arrowhd.soe
+ remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/classic.sog
+ remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/hatching.soh
+ remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/modern.sog
+ remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/palette.soc
+ remove_duplicity_from_flists common_list.txt lang_bg_list.txt $INSTALLDIR/presets/config/styles.sod
+ # the British fixes can be removed after the issue #54113 is fixed
+ remove_duplicity_from_flists common_list.txt lang_en-GB_list.txt $INSTALLDIR/presets/config/standard.sog
+
+else
+
+ echo "Creating package directories..."
+
+ test -d pkg && rm -r pkg || :
+
+ # Create package tree (needed by Debian's dpkg)
+ # create_package_directory <list_file> <directory_name>
+ create_package_directory()
+ {
+ listfile=$1
+ directory="$2"
+ perl -nl \
+ -e " if(/^%dir (.*)/)
+ {system('mkdir', '-p', '-m', '755', \"$directory\".\$1);}
+ else
+ {rename('./'.\$_, \"$directory\".\$_);}
+ " \
+ $listfile
+ }
+
+ create_package_directory gid_Module_Root_Ure_Hidden pkg/ure
+
+ create_package_directory gid_Module_Root pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Brand pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Files_Images pkg/libreoffice-common
+ create_package_directory gid_Module_Oo_Linguistic pkg/libreoffice-common
+ create_package_directory gid_Module_Optional_Xsltfiltersamples pkg/libreoffice-common
+ create_package_directory gid_Module_Optional_Grfflt pkg/libreoffice-draw
+ create_package_directory gid_Module_Prg_Calc_Bin pkg/libreoffice-calc
+ create_package_directory gid_Module_Prg_Math_Bin pkg/libreoffice-math
+ create_package_directory gid_Module_Prg_Draw_Bin pkg/libreoffice-draw
+ create_package_directory gid_Module_Prg_Wrt_Bin pkg/libreoffice-writer
+ create_package_directory gid_Module_Prg_Impress_Bin pkg/libreoffice-impress
+ create_package_directory gid_Module_Prg_Base_Bin pkg/libreoffice-base
+ create_package_directory gid_Module_Brand_Prg_Calc pkg/libreoffice-calc
+ create_package_directory gid_Module_Brand_Prg_Math pkg/libreoffice-math
+ create_package_directory gid_Module_Brand_Prg_Draw pkg/libreoffice-draw
+ create_package_directory gid_Module_Brand_Prg_Wrt pkg/libreoffice-writer
+ create_package_directory gid_Module_Brand_Prg_Impress pkg/libreoffice-impress
+ create_package_directory gid_Module_Brand_Prg_Base pkg/libreoffice-base
+ create_package_directory gid_Module_Pyuno pkg/python-uno
+ create_package_directory gid_Module_Optional_Gnome pkg/libreoffice-gnome
+
+ create_package_directory gid_Module_Root_Files_2 pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Files_3 pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Files_4 pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Files_5 pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Files_6 pkg/libreoffice-common
+ create_package_directory gid_Module_Root_Files_7 pkg/libreoffice-common
+ if [ -e gid_Module_Optional_Pymailmerge ]; then
+ create_package_directory gid_Module_Optional_Pymailmerge pkg/libreoffice-emailmerge
+ else # post m26
+ mkdir -p pkg/libreoffice-emailmerge/$INSTALLDIR/program
+ mv pkg/libreoffice-common/$INSTALLDIR/program/mailmerge.py \
+ pkg/libreoffice-emailmerge/$INSTALLDIR/program/mailmerge.py
+ fi
+ create_package_directory gid_Module_Optional_OGLTrans pkg/libreoffice-ogltrans
+
+ create_package_directory gid_Module_Root_SDK pkg/libreoffice-dev
+
+ for l in `echo $WITH_LANG_LIST`; do
+ for p in Impress Draw Math Calc Base Writer; do
+ create_package_directory gid_Module_Langpack_${p}_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
+ done
+ create_package_directory gid_Module_Langpack_Basis_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
+ create_package_directory gid_Module_Langpack_Brand_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
+ create_package_directory gid_Module_Langpack_Resource_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
+ create_package_directory gid_Module_Helppack_Help_`echo $l | sed -e s/-/_/g` pkg/libreoffice-help-$l
+
+ # some help files are in _Langpack_{Writer,Impress,...}_<lang>
+ # move them from -l10n to -help
+ if [ "$l" = "en-US" ]; then d=en; else d=$l; fi
+ mv pkg/libreoffice-l10n-$l/$INSTALLDIR/help/$d/* \
+ pkg/libreoffice-help-$l/$INSTALLDIR/help/$d && \
+ rmdir pkg/libreoffice-l10n-$l/$INSTALLDIR/help/$d
+ done
+
+ # move_wrappers <directory_name> <name> [...]
+ move_wrappers()
+ {
+ directory=$1
+ shift
+ mkdir -m755 -p "$directory"/usr/bin
+ while test -n "$1"; do
+ mv usr/*bin/"$1$BINSUFFIX" "$directory"/usr/bin
+ shift
+ done
+ }
+ move_wrappers pkg/libreoffice-common soffice unopkg
+ if test "$COMPAT_OOWRAPPERS" = "YES" ; then
+ move_wrappers pkg/libreoffice-common ooffice oofromtemplate
+ move_wrappers pkg/libreoffice-base oobase
+ move_wrappers pkg/libreoffice-writer oowriter ooweb
+ move_wrappers pkg/libreoffice-calc oocalc
+ move_wrappers pkg/libreoffice-impress ooimpress
+ move_wrappers pkg/libreoffice-math oomath
+ move_wrappers pkg/libreoffice-draw oodraw
+ fi
+ move_wrappers pkg/libreoffice-common libreoffice lofromtemplate
+ move_wrappers pkg/libreoffice-base lobase
+ move_wrappers pkg/libreoffice-writer lowriter loweb
+ move_wrappers pkg/libreoffice-calc localc
+ move_wrappers pkg/libreoffice-impress loimpress
+ move_wrappers pkg/libreoffice-math lomath
+ move_wrappers pkg/libreoffice-draw lodraw
+
+ # Move all libraries, binaries, *.rdb from -common to -core
+ for d in $INSTALLDIR/program $INSTALLDIR/program; do \
+ if [ ! -d $DESTDIR/pkg/libreoffice-core/$d ]; then \
+ mkdir -p $DESTDIR/pkg/libreoffice-core/$d; \
+ fi &&
+ ( cd pkg/libreoffice-common/$d
+ find -maxdepth 1 \
+ -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \
+ -exec mv {} $DESTDIR/pkg/libreoffice-core/$d \;
+ ); \
+ done
+
+ # install additional ooo-build scripts & misc stuff
+ mkdir -p pkg/libreoffice-common/usr/share/man/man1
+ if test "$COMPAT_OOWRAPPERS" = "YES" ; then
+ mv usr/share/man/man1/openoffice$BINSUFFIX.1 \
+ pkg/libreoffice-common/usr/share/man/man1
+ fi
+ mv usr/share/man/man1/libreoffice$BINSUFFIX.1 \
+ pkg/libreoffice-common/usr/share/man/man1
+ mkdir -p pkg/libreoffice-common/etc/bash_completion.d
+ if test "$COMPAT_OOWRAPPERS" = "YES" ; then
+ mv etc/bash_completion.d/ooffice$BINSUFFIX.sh \
+ pkg/libreoffice-common/etc/bash_completion.d
+ fi
+ mv etc/bash_completion.d/libreoffice$BINSUFFIX.sh \
+ pkg/libreoffice-common/etc/bash_completion.d
+ mv .$INSTALLDIR/program/java-set-classpath \
+ pkg/libreoffice-common/$INSTALLDIR/program
+ if echo $WITH_LANG_LIST | grep -q en-US; then
+ for i in forms/resume.ott officorr/project-proposal.ott; do \
+ mkdir -p pkg/libreoffice-common/$INSTALLDIR/share/template/en-US/`dirname $i`; \
+ mv .$INSTALLDIR/share/template/en-US/$i \
+ pkg/libreoffice-common/$INSTALLDIR/share/template/en-US/$i; \
+ done; \
+ fi
+ # Warn for any remaining files
+ find . -path './pkg' -prune -o -not -name 'gid_Module_*' -not -type d -exec echo "File not packaged: {}" \;
+fi
+
+# mark the config files
+RPM_CONFIG_FILE_TAGS=
+if test "$OOO_VENDOR" = "SUSE" -o "$OOO_VENDOR" = "RedHat"; then
+ RPM_CONFIG_FILE_TAGS="%config"
+elif test "$OOO_VENDOR" = "PLD" ; then
+ RPM_CONFIG_FILE_TAGS="%config(noreplace) %verify(not md5 size mtime)"
+fi
+
+if test "z$RPM_CONFIG_FILE_TAGS" != "z" ; then
+ cd $FILELISTSDIR
+ perl -pi -e "s|^($INSTALLDIR/help/.*\.xsl)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/help/.*\.css)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/program/[a-zA-Z0-9_\.]*rc)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/program/.*\.xsl)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/share/config/[a-zA-Z0-9]*rc)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/share/dict/ooo/.*\.lst)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/share/psprint/.*\.conf)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/share/registry/.*\.xcu)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/share/registry/.*\.properties)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/share/registry/.*\.xcs)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ -e "s|^($INSTALLDIR/user/config/.*\.so.)\$|$RPM_CONFIG_FILE_TAGS \\1|;" \
+ *_list.txt
+fi
+
+mkdir -p $FILELISTSDIR/orig
+mv -f $DESTDIR/gid_Module_* $FILELISTSDIR/orig
diff --git a/bin/distro-install-sdk b/bin/distro-install-sdk
new file mode 100755
index 000000000..e8cf28d61
--- /dev/null
+++ b/bin/distro-install-sdk
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+if test -z "${SRC_ROOT}"; then
+ echo "distro-install-clean-up: No environment set!"
+ exit 1
+fi
+
+if test -d $DESTDIR$INSTALLDIR/sdk ; then
+
+ echo "SDK installation clean up"
+
+ # bin potential .orig files
+ find $DESTDIR$INSTALLDIR/sdk -name "*.orig" -exec rm -f {} \;
+
+ # move some SDK directories to the right place according to FHS
+ # note that examples must stay in $DESTDIR$INSTALLDIR/sdk because there are used
+ # relative paths to $DESTDIR$INSTALLDIR/sdk/setting and it does not work via
+ # a symlink
+ mkdir -p $DESTDIR$PREFIXDIR/include
+ mkdir -p $DESTDIR$DATADIR/idl
+ mkdir -p $DESTDIR$DATADIR/$INSTALLDIRNAME/sdk
+ mkdir -p $DESTDIR$DOCDIR/sdk
+ mv $DESTDIR$INSTALLDIR/sdk/include $DESTDIR$PREFIXDIR/include/$INSTALLDIRNAME
+ if [ -d $DESTDIR$INSTALLDIR/sdk/classes ]; then
+ mv $DESTDIR$INSTALLDIR/sdk/classes $DESTDIR$DATADIR/$INSTALLDIRNAME/sdk/classes
+ fi
+ mv $DESTDIR$INSTALLDIR/sdk/idl $DESTDIR$DATADIR/idl/$INSTALLDIRNAME
+ mv $DESTDIR$INSTALLDIR/sdk/docs $DESTDIR$DOCDIR/sdk
+ mv $DESTDIR$INSTALLDIR/sdk/share/readme $DESTDIR$DOCDIR/sdk/readme
+ mv $DESTDIR$INSTALLDIR/sdk/index.html $DESTDIR$DOCDIR/sdk
+
+ # compat symlinks
+ ln -sf $PREFIXDIR/include/$INSTALLDIRNAME $DESTDIR$INSTALLDIR/sdk/include
+ ln -sf $DATADIR/$INSTALLDIRNAME/sdk/classes $DESTDIR$INSTALLDIR/sdk/classes
+ ln -sf $DATADIR/idl/$INSTALLDIRNAME $DESTDIR$INSTALLDIR/sdk/idl
+ ln -sf $DOCDIR/sdk/docs $DESTDIR$INSTALLDIR/sdk/
+ ln -sf $DOCDIR/sdk/index.html $DESTDIR$INSTALLDIR/sdk/index.html
+ ln -sf $INSTALLDIR/sdk/examples $DESTDIR$DOCDIR/sdk/examples
+
+ # fix file list
+ sed -e "s|^\(%dir \)\?$INSTALLDIR/sdk/include|\1$PREFIXDIR/include/$INSTALLDIRNAME|" \
+ -e "s|^\(%dir \)\?$INSTALLDIR/sdk/classes|\1$DATADIR/$INSTALLDIRNAME/sdk/classes|" \
+ -e "s|^\(%dir \)\?$INSTALLDIR/sdk/idl|\1$DATADIR/idl/$INSTALLDIRNAME|" \
+ -e "s|^\(%dir \)\?$INSTALLDIR/sdk/docs|\1$DOCDIR/sdk/docs|" \
+ -e "s|^\(%dir \)\?$INSTALLDIR/sdk/share/readme|\1$DOCDIR/sdk/readme|" \
+ -e "s|^$INSTALLDIR/sdk/index.html$|$DOCDIR/sdk/index.html|" \
+ -e "s|^\(%dir \)\?$INSTALLDIR/sdk/share.*$||" \
+ -e "/\.orig$/D" \
+ -e "/^$/D" \
+ $DESTDIR/gid_Module_Root_SDK | sort -u \
+ >$DESTDIR/gid_Module_Root_SDK.new
+ mv $DESTDIR/gid_Module_Root_SDK.new $DESTDIR/gid_Module_Root_SDK
+ #
+ echo "%dir $DATADIR/$INSTALLDIRNAME/sdk" >>$DESTDIR/gid_Module_Root_SDK
+ echo "%dir $DATADIR/$INSTALLDIRNAME" >>$DESTDIR/gid_Module_Root_SDK
+ echo "%dir $DATADIR/idl" >>$DESTDIR/gid_Module_Root_SDK
+ echo "%dir $DOCDIR/sdk/docs" >>$DESTDIR/gid_Module_Root_SDK
+ echo "%dir $DOCDIR/sdk" >>$DESTDIR/gid_Module_Root_SDK
+ echo "%dir $DOCDIR" >>$DESTDIR/gid_Module_Root_SDK
+ echo "$INSTALLDIR/sdk/include" >>$DESTDIR/gid_Module_Root_SDK
+ echo "$INSTALLDIR/sdk/classes" >>$DESTDIR/gid_Module_Root_SDK
+ echo "$INSTALLDIR/sdk/idl" >>$DESTDIR/gid_Module_Root_SDK
+ echo "$INSTALLDIR/sdk/docs" >>$DESTDIR/gid_Module_Root_SDK
+ echo "$INSTALLDIR/sdk/index.html" >>$DESTDIR/gid_Module_Root_SDK
+ echo "$DOCDIR/sdk/examples" >>$DESTDIR/gid_Module_Root_SDK
+
+ # generate default profiles
+ sed -e "s,@OO_SDK_NAME@,libreoffice${PRODUCTVERSION}_sdk," \
+ -e "s,@OO_SDK_HOME@,$INSTALLDIR/sdk," \
+ -e "s,@OFFICE_HOME@,$INSTALLDIR," \
+ -e "s,@OO_SDK_MAKE_HOME@,$(dirname $(command -v make))," \
+ -e "s,@OO_SDK_ZIP_HOME@,$(dirname $(command -v zip))," \
+ -e "s,@OO_SDK_CPP_HOME@,$(dirname $(command -v cpp))," \
+ -e "s,@OO_SDK_SED_HOME@,$(dirname $(command -v sed))," \
+ -e "s,@OO_SDK_CAT_HOME@,$(dirname $(command -v cat))," \
+ -e "s,@OO_SDK_JAVA_HOME@,$JAVA_HOME," \
+ -e "s,@OO_SDK_OUTPUT_DIR@,\$HOME," \
+ -e "s,@SDK_AUTO_DEPLOYMENT@,NO," \
+ $DESTDIR$INSTALLDIR/sdk/setsdkenv_unix.sh.in \
+ > $DESTDIR$INSTALLDIR/sdk/setsdkenv_unix.sh
+ chmod 755 $DESTDIR$INSTALLDIR/sdk/setsdkenv_unix.sh
+ echo $INSTALLDIR/sdk/setsdkenv_unix.sh >>$DESTDIR/gid_Module_Root_SDK
+
+fi
diff --git a/bin/dump-poolitems-values.py b/bin/dump-poolitems-values.py
new file mode 100755
index 000000000..c2c5f357e
--- /dev/null
+++ b/bin/dump-poolitems-values.py
@@ -0,0 +1,91 @@
+#!/usr/bin/python
+
+
+# Produce a dump of name->constant of the poolitem values, to make interpreting things in the debugger easier
+#
+
+import subprocess
+import sys
+
+macroNameToValue = dict()
+macroNameToOriginalLine = dict()
+
+
+def extractMacroValue(macroValue):
+ if isinstance(macroValue, int):
+ return macroValue
+ elif macroValue.isdigit():
+ return int(macroValue)
+ elif macroValue[0:2] == "0x":
+ return int(macroValue, 16)
+ elif macroValue.find("+") != -1:
+ tokens = macroValue.split("+")
+ tokens1 = tokens[0].strip()
+ tokens2 = tokens[1].strip()
+ return extractMacroValue(tokens1) + extractMacroValue(tokens2)
+ elif macroValue.find("-") != -1:
+ tokens = macroValue.split("-")
+ tokens1 = tokens[0].strip()
+ tokens2 = tokens[1].strip()
+ return extractMacroValue(tokens1) - extractMacroValue(tokens2)
+ rv = extractMacroValue(macroNameToValue[macroValue])
+ macroNameToValue[macroValue] = rv
+ return rv
+
+
+a = subprocess.Popen("cpp -E -dD -Iinclude/ include/editeng/eeitem.hxx", stdout=subprocess.PIPE, shell=True)
+
+with a.stdout as txt:
+ for line in txt:
+ line = line.strip()
+ originalLine = line
+ if not line.startswith("#define "): continue
+ # strip the '#define' off the front
+ idx1 = line.find(" ")
+ line = line[idx1 : len(line)].strip()
+ # extract the name
+ idx1 = line.find(" ")
+ if (idx1 == -1): continue
+ macroName = line[0 : idx1].strip()
+ line = line[idx1 : len(line)].strip()
+ # ignore internal stuff
+ if macroName.startswith("_"): continue
+ # strip any trailing comments
+ idx1 = line.find("//")
+ if (idx1 != -1):
+ line = line[0 : idx1].strip()
+ idx1 = line.find("/*")
+ if (idx1 != -1):
+ line = line[0 : idx1].strip()
+ if len(line) == 0: continue
+ # strip brackets
+ if line[0] == "(": line = line[1:]
+ if line[len(line)-1] == ")": line = line[0:len(line)-1]
+ macroValue = line.strip()
+ # ignore macros that #define strings, not interested in those
+ if (macroValue.find("\"") != -1): continue
+ # ignore the multiline macros
+ if (macroValue.find("\\") != -1): continue
+ # check for redefinitions
+ if macroNameToValue.has_key(macroName):
+ print "Redefinition:\n\t", macroNameToOriginalLine[macroName], "\n\t" , originalLine
+ else:
+ macroNameToValue[macroName] = macroValue
+ macroNameToOriginalLine[macroName] = originalLine
+
+# decode the constants into their numeric values recursively
+macroValueToName = dict()
+for macroName in macroNameToValue:
+ macroValue = macroNameToValue[macroName]
+ try:
+ macroValue = extractMacroValue(macroName)
+ macroValueToName[macroValue] = macroName
+ except KeyError:
+ print "warning: could not decode macro ", macroName
+
+for macroValue in sorted(macroValueToName):
+ macroName = macroValueToName[macroValue]
+ print repr(macroNameToValue[macroName]).rjust(5), " ", macroName
+
+
+
diff --git a/bin/extract-tooltip.py b/bin/extract-tooltip.py
new file mode 100755
index 000000000..b313c9474
--- /dev/null
+++ b/bin/extract-tooltip.py
@@ -0,0 +1,107 @@
+#!/usr/bin/env python
+import sys
+import os
+import re
+import urlparse
+
+def usage():
+ message = """ usage: {program} inDir outDir
+inDir: directory containing .ht files
+outDir: target for the new files"""
+ print(message.format(program = os.path.basename(sys.argv[0])))
+
+def parseFile(filename):
+ file = open(filename, "r")
+ data = file.readlines()
+ data = [line.rstrip('\n') for line in data]
+
+ pairs = {}
+ regEx = re.compile(r"^(\S+)\s(\S+)\s(\S+)\s((?:\s*\S*)+)$")
+ old_line = None
+ for line in data:
+ if len(line) > 0:
+ if(old_line != None):
+ print filename
+ #print("failed to parse line")
+ #print(old_line)
+ line = old_line + line
+ print line
+ old_line = None
+ split_line = regEx.split(line)
+ #print(split_line)
+ #print(urlparse.unquote(split_line[2]))
+ #print(split_line[4])
+ if(old_line == None and split_line[4] == "" and split_line[3] != "0"):
+ print(line)
+ print(split_line)
+ old_line = line
+ else:
+ pairs[urlparse.unquote(split_line[2])] = split_line[4]
+ assert(len(split_line) == 6)
+ #print data
+ #print(pairs)
+ return pairs
+
+def parseFiles(dir):
+ strings = []
+ for files in os.listdir(dir):
+ if files.endswith(".ht"):
+ string = parseFile(os.path.join(dir,files))
+ print(files)
+ #print string
+ strings.append([files, string])
+ return strings
+
+def extractSharedEntries(strings):
+ first_dict = strings[0][1]
+ shared_dict = {}
+ #print(first_dict)
+ for key, value in first_dict.iteritems():
+ # check that the entry in the same in all dics
+ is_in_all_dicts = True
+ for dict_file_pair in strings:
+ dict = dict_file_pair[1]
+ if not dict.has_key(key):
+ is_in_all_dicts = False
+ elif not dict[key] == value:
+ print("Element with different values")
+ print(key)
+ is_in_all_dicts = False
+ if is_in_all_dicts:
+ shared_dict[key] = value
+ #print(shared_dict)
+ for dict_file_pair in strings:
+ for key in shared_dict.iterkeys():
+ dict_file_pair[1].pop(key)
+
+ strings.append(["shared.ht", shared_dict])
+ return strings
+
+def writeOutFiles(dir, strings):
+ for string in strings:
+ file_name_base = string[0]
+ file_name_base = file_name_base.replace(".ht", ".properties")
+ file_name = os.path.join(dir, file_name_base)
+ file = open(file_name, "w")
+ for key, value in string[1].iteritems():
+ try:
+ file.write(key)
+ file.write("=")
+ file.write(value)
+ file.write("\n")
+ except UnicodeDecodeError:
+ print key
+ print value
+ file.close()
+
+def main (args):
+ if(len(args) != 3):
+ usage()
+ sys.exit(1)
+
+ strings = parseFiles(args[1])
+ new_strings = extractSharedEntries(strings)
+ writeOutFiles(args[2], new_strings)
+
+if __name__ == "__main__":
+ main(sys.argv)
diff --git a/bin/fake_pom.xml b/bin/fake_pom.xml
new file mode 100644
index 000000000..50599f3ab
--- /dev/null
+++ b/bin/fake_pom.xml
@@ -0,0 +1,6 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.libreoffice</groupId>
+ <artifactId>LibreOffice-Maven</artifactId>
+ <version>1</version>
+</project>
diff --git a/bin/find-can-be-private-symbols.classes.results b/bin/find-can-be-private-symbols.classes.results
new file mode 100644
index 000000000..95ae4f129
--- /dev/null
+++ b/bin/find-can-be-private-symbols.classes.results
@@ -0,0 +1,287 @@
+BitmapAlphaClampFilter
+BitmapColorQuantizationFilter
+BitmapConvolutionMatrixFilter
+BitmapEmbossGreyFilter
+BitmapMedianFilter
+BitmapMonochromeFilter
+BitmapMosaicFilter
+BitmapPopArtFilter
+BitmapSepiaFilter
+BitmapShadowFilter
+BitmapSimpleColorQuantizationFilter
+BitmapSmoothenFilter
+BitmapSobelGreyFilter
+BitmapSolarizeFilter
+BuilderUtils
+ConditionEditDropTarget
+CurrencyFormatter
+DdeGetPutItem
+DdeLink
+DdeService
+DevelopmentToolDockingWindow
+E3dCompoundObject
+EditUndo
+FmDesignModeChangedHint
+FocusListenerMultiplexer
+FontSubsetInfo
+GalleryBinaryStorageLocations
+GalleryStorageLocations
+GrBackendFormat
+GrBackendRenderTarget
+GrBackendSurfaceMutableState
+GrBackendTexture
+GrContextThreadSafeProxy
+GrContext_Base
+GrDirectContext::DirectContextID
+GrImageContext
+GrRecordingContext
+GrVkExtensions
+GrVkSecondaryCBDrawContext
+GrYUVABackendTextureInfo
+GrYUVABackendTextures
+HelpLinker
+Hunspell
+Hunzip
+ImplJobSetup
+IndexerPreProcessor
+KeyListenerMultiplexer
+LongCurrencyFormatter
+MenuBarUpdateIconManager
+MetaAction
+MetaEPSAction
+MetaGradientExAction
+MetaPointAction
+MouseListenerMultiplexer
+MouseMotionListenerMultiplexer
+MyThes
+NotifyEvent
+OpenGLZone
+PaintListenerMultiplexer
+ProcessData
+QtSvpGraphics
+SalData
+SalDisplay
+SalInfoPrinter
+SalPrinter
+SalSystem
+SbClassModuleObject
+ScFormatEntry
+ScMultiBlockUndo
+ScPaintHint
+ScPreviewShell
+ScRefUndoData
+ScRefreshTimer
+ScSimpleUndo
+ScUndoCut
+ScUndoPaste
+SdAbstractDialogFactory
+SdOptionsItem
+SdOptionsLayout
+SdOptionsMisc
+SdOptionsPrint
+SdOptionsSnap
+SdrCaptionEscDirItem
+SdrCaptionTypeItem
+SdrEdgeNode1HorzDistItem
+SdrEdgeNode1VertDistItem
+SdrEdgeNode2HorzDistItem
+SdrEdgeNode2VertDistItem
+SdrEmbedObjectLink
+SdrGrafBlueItem
+SdrGrafContrastItem
+SdrGrafCropItem
+SdrGrafGamma100Item
+SdrGrafGreenItem
+SdrGrafLuminanceItem
+SdrGrafModeItem
+SdrGrafRedItem
+SdrGrafTransparenceItem
+SdrMeasureTextHPosItem
+SdrMeasureTextVPosItem
+SdrMeasureUnitItem
+SdrOnOffItem
+SdrPercentItem
+SdrSignedPercentItem
+SdrTextAniAmountItem
+SdrTextAniDelayItem
+SdrTextAniDirectionItem
+SdrTextAniKindItem
+SdrTextHorzAdjustItem
+SdrUndoInsertObj
+SdrUndoNewPage
+SdrUndoPageMasterPage
+SdrYesNoItem
+SfxStyleSheetModifiedHint
+SfxViewFrameItem
+SfxVisibilityItem
+SpinListenerMultiplexer
+SvxPrintItem
+SvxRsidItem
+SvxShowText
+SvxTPage
+SwAnchoredObject
+SwAuthenticator
+SwColExample
+SwConnectionListener
+SwContrastGrf
+SwDocShell::LockAllViewsGuard_Impl
+SwDrawFrameFormat
+SwDrawModeGrf
+SwExtraRedline
+SwFltRedline
+SwFormatEditInReadonly
+SwFormatEndAtTextEnd
+SwFormatFollowTextFlow
+SwFormatFootnoteAtTextEnd
+SwFormatLayoutSplit
+SwFormatNoBalancedColumns
+SwFormatRowSplit
+SwGammaGrf
+SwHeaderAndFooterEatSpacingItem
+SwLayoutFrame
+SwLuminanceGrf
+SwMirrorGrf
+SwNumRuleItem
+SwPagePreview
+SwRect
+SwRedlineExtraData
+SwRedlineExtraData_FormatColl
+SwShellCursor
+SwTableCellInfo::Impl
+SwTableCellRedline
+SwTableRowRedline
+SwTestItem
+SwWebDocShell
+SwWebView
+SwWrtShellItem
+SwXTextRange::Impl
+SwXTextTableCursor
+SyntaxHighlighter::Tokenizer
+SystemWindow::ImplData
+TBCExtraInfo
+TBCGeneralInfo
+TranslateNId
+VclBin
+VclBuilder::MenuAndId
+VclBuilder::ParserState
+VclBuilder::sortIntoBestTabTraversalOrder
+VclDrawingArea
+VclGrid
+VclWindowEvent
+WString
+WindowListenerMultiplexer
+X11SalObject
+X11SkiaSalGraphicsImpl
+XMLCellStyleExport
+XMLConstantsPropertyHandler
+XMLEnumPropertyHdl
+XMLShapeStyleContext
+basegfx::B2DTrapezoid
+basegfx::BColorModifier
+canvas
+chart::PopupRequest
+comphelper::RefCountedMutex
+comphelper::service_decl
+comphelper::service_decl::ServiceDecl
+comphelper::service_decl::ServiceDecl::Factory
+connectivity::component::OComponentPreparedStatement
+connectivity::component::OComponentStatement
+connectivity::file::OBoolOperator
+connectivity::file::OOp_ISNOTNULL
+connectivity::file::OOp_ISNULL
+connectivity::file::OOp_LIKE
+connectivity::odbc::OConnection
+connectivity::odbc::ODBCDriver
+connectivity::odbc::ODatabaseMetaData
+connectivity::odbc::ODatabaseMetaDataResultSet
+connectivity::odbc::OPreparedStatement
+connectivity::odbc::OResultSet
+connectivity::odbc::OResultSetMetaData
+connectivity::odbc::OStatement
+connectivity::odbc::OStatement_BASE2
+connectivity::odbc::OStatement_Base
+connectivity::odbc::OTools
+connectivity::sdbcx::IObjectCollection
+connectivity::sdbcx::OGroup
+connectivity::sdbcx::OKey
+covariant return thunk to ScEditWindow
+dbtools::param::ParameterWrapper
+desktop::CallbackFlushHandler
+desktop::CallbackFlushHandler::CallbackData
+desktop::CallbackFlushHandler::TimeoutIdle
+desktop::LibLODocument_Impl
+desktop::LibLibreOffice_Impl
+dp_misc::AbortChannel
+drawinglayer
+drawinglayer::animation::AnimationEntry
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D
+drawinglayer::primitive2d::ObjectAndViewTransformationDependentPrimitive2D
+drawinglayer::primitive2d::SdrFrameBorderData::SdrConnectStyleData
+drawinglayer::primitive2d::ViewTransformationDependentPrimitive2D
+drawinglayer::primitive3d
+drawinglayer::primitive3d::BasePrimitive3D
+drawinglayer::primitive3d::BufferedDecompositionPrimitive3D
+drawinglayer::primitive3d::GroupPrimitive3D
+drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D
+drawinglayer::primitive3d::PolygonHairlinePrimitive3D
+drawinglayer::primitive3d::SdrPrimitive3D
+formula::FormulaByteToken
+formula::FormulaDoubleToken
+formula::FormulaErrorToken
+formula::FormulaExternalToken
+formula::FormulaFAPToken
+formula::FormulaIndexToken
+formula::FormulaJumpToken
+formula::FormulaMissingToken
+formula::FormulaSpaceToken
+formula::FormulaTokenIterator::Item
+formula::FormulaTypedDoubleToken
+formula::FormulaUnknownToken
+jvmaccess::UnoVirtualMachine::CreationException
+jvmaccess::VirtualMachine::AttachGuard::CreationException
+linguistic::PropertyChgHelper
+linguistic::PropertyHelper_Spell
+oox::IProgressBar
+oox::ole::AxContainerModelBase
+oox::ole::AxControlModelBase
+oox::ole::AxFontDataModel
+oox::ole::AxImageModel
+oox::ole::AxMorphDataModelBase
+oox::ole::AxMultiPageModel
+oox::ole::AxPageModel
+oox::ole::AxTabStripModel
+oox::ole::AxToggleButtonModel
+oox::ole::AxUserFormModel
+sc::CopyFromClipContext
+sc::SwapRowsTransformation
+sd::DrawView
+sdr::SelectionController
+sdr::ViewSelection
+sdr::animation::primitiveAnimator
+sdr::contact::ObjectContactPainter
+sk_app::WindowContext
+svx::CommonStyleManager
+svx::PropertyValueProvider
+sw::BroadcastingModify
+sw::UnoCursorHint
+ucbhelper::ActiveDataSink
+ucbhelper::InteractionAbort
+ucbhelper::InteractionApprove
+ucbhelper::InteractionDisapprove
+ucbhelper::InteractionRetry
+ucbhelper::InteractionSupplyAuthentication
+utl::OInputStreamHelper
+vcl::ExtOutDevData
+vcl::ScriptRun
+vcl::filter::PDFBooleanElement
+vcl::filter::PDFCommentElement
+vcl::filter::PDFEndObjectElement
+vcl::filter::PDFEndStreamElement
+vcl::filter::PDFHexStringElement
+vcl::filter::PDFLiteralStringElement
+vcl::filter::PDFNullElement
+vcl::printer::Options
+writerperfect::DirectoryStream::Impl
+xmloff::OControlBorderHandler
+xmloff::OFontWidthHandler
+xmloff::ORotationAngleHandler
diff --git a/bin/find-can-be-private-symbols.functions.results b/bin/find-can-be-private-symbols.functions.results
new file mode 100644
index 000000000..477c1971f
--- /dev/null
+++ b/bin/find-can-be-private-symbols.functions.results
@@ -0,0 +1,23467 @@
+ATOB_AsciiToData@@NSS_3.2
+ATOB_AsciiToData_Util@@NSSUTIL_3.12
+ATOB_ConvertAsciiToItem@@NSS_3.2
+ATOB_ConvertAsciiToItem_Util@@NSSUTIL_3.12
+AllSettings::CopyData()
+AllSettings::Update(AllSettingsFlags, AllSettings const&)
+AllSettings::operator!=(AllSettings const&) const
+AllSettings::operator==(AllSettings const&) const
+AlphaMask::AlphaMask(AlphaMask const&)
+AlphaMask::AlphaMask(AlphaMask&&)
+AlphaMask::operator=(Bitmap const&)
+Animation::Adjust(short, short, short, short, short, double, bool)
+Animation::Clear()
+Animation::Convert(BmpConversion)
+Animation::Draw(OutputDevice&, Point const&) const
+Animation::Draw(OutputDevice&, Point const&, Size const&) const
+Animation::GetChecksum() const
+Animation::GetSizeBytes() const
+Animation::IsTransparent() const
+Animation::Mirror(BmpMirrorFlags)
+Animation::ResetLoopCount()
+Animation::Start(OutputDevice&, Point const&, Size const&, long, OutputDevice*)
+Animation::Stop(OutputDevice const*, long)
+Animation::operator=(Animation const&)
+Animation::operator==(Animation const&) const
+Application::DeInit()
+Application::EnableBitmapRendering()
+Application::EndAllDialogs()
+Application::EndAllPopups()
+Application::GetAppLocaleDataWrapper()
+Application::HandleKey(VclEventId, vcl::Window*, KeyEvent*)
+Application::ImplCallEventListeners(VclSimpleEvent&)
+Application::ImplCallEventListenersApplicationDataChanged(void*)
+Application::InsertAccel(Accelerator*)
+Application::IsBitmapRendering()
+Application::Main()
+Application::RemoveAccel(Accelerator const*)
+Application::setDeInitHook(Link<LinkParamNone*, void> const&)
+AsWinding(SkPath const&, SkPath*)
+AsyncQuitHandler::AsyncQuitHandler()
+AsyncQuitHandler::OnAsyncQuit(AsyncQuitHandler*, void*)
+AsyncQuitHandler::QuitApplication()
+B3dCamera::CalcFocalLength()
+B3dCamera::CalcNewViewportValues()
+B3dCamera::DeviceRectangleChange()
+B3dTransformationSet::B3dTransformationSet()
+B3dTransformationSet::CalcViewport()
+B3dTransformationSet::DeviceRectangleChange()
+B3dTransformationSet::EyeToWorldCoor(basegfx::B3DPoint const&)
+B3dTransformationSet::Frustum(basegfx::B3DHomMatrix&, double, double, double, double, double, double)
+B3dTransformationSet::GetProjection()
+B3dTransformationSet::Orientation(basegfx::B3DHomMatrix&, basegfx::B3DPoint const&, basegfx::B3DVector, basegfx::B3DVector)
+B3dTransformationSet::Ortho(basegfx::B3DHomMatrix&, double, double, double, double, double, double)
+B3dTransformationSet::PostSetObjectTrans()
+B3dTransformationSet::PostSetOrientation()
+B3dTransformationSet::PostSetProjection()
+B3dTransformationSet::Reset()
+B3dTransformationSet::SetOrientation(basegfx::B3DPoint const&, basegfx::B3DVector const&, basegfx::B3DVector const&)
+B3dTransformationSet::SetProjection(basegfx::B3DHomMatrix const&)
+B3dTransformationSet::WorldToEyeCoor(basegfx::B3DPoint const&)
+B3dTransformationSet::~B3dTransformationSet()
+B3dViewport::B3dViewport()
+B3dViewport::CalcOrientation()
+B3dViewport::SetVUV(basegfx::B3DVector const&)
+B3dViewport::~B3dViewport()
+BTOA_ConvertItemToAscii@@NSS_3.2
+BTOA_ConvertItemToAscii_Util@@NSSUTIL_3.12
+BTOA_DataToAscii@@NSS_3.2
+BTOA_DataToAscii_Util@@NSSUTIL_3.12
+BasePrimitive2DImplBase::~BasePrimitive2DImplBase()
+BasicManager::BasicManager(SotStorage&, rtl::OUString const&, StarBASIC*, rtl::OUString const*, bool)
+BasicManager::BasicManager(StarBASIC*, rtl::OUString const*, bool)
+BasicManager::CheckModules(StarBASIC*, bool)
+BasicManager::CreateLibInfo()
+BasicManager::FindLibInfo(StarBASIC const*)
+BasicManager::GetLibName(unsigned short)
+BasicManager::HasExeCode(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+BasicManager::ImpCreateStdLib(StarBASIC*)
+BasicManager::ImpLoadLibrary(BasicLibInfo*, SotStorage*)
+BasicManager::ImpMgrNotLoaded(rtl::OUString const&)
+BasicManager::ImplEncryptStream(SvStream&)
+BasicManager::ImplLoadBasic(SvStream&, tools::SvRef<StarBASIC>&) const
+BasicManager::LoadBasicManager(SotStorage&, rtl::OUString const&)
+BasicManager::LoadOldBasicManager(SotStorage&)
+BasicManager::SetLibraryContainerInfo(LibraryContainerInfo const&)
+BasicManager::~BasicManager()
+BigInt::BigInt(unsigned int)
+BigPtrArray::BigPtrArray()
+BigPtrArray::BlockDel(unsigned short)
+BigPtrArray::Compress()
+BigPtrArray::Index2Block(int) const
+BigPtrArray::InsBlock(unsigned short)
+BigPtrArray::Insert(BigPtrEntry*, int)
+BigPtrArray::Move(int, int)
+BigPtrArray::Remove(int, int)
+BigPtrArray::Replace(int, BigPtrEntry*)
+BigPtrArray::UpdIndex(unsigned short)
+BigPtrArray::~BigPtrArray()
+BinaryDataContainer::calculateHash() const
+Bitmap::AcquireInfoAccess()
+Bitmap::AdaptBitCount(Bitmap&) const
+Bitmap::Adjust(short, short, short, short, short, double, bool, bool)
+Bitmap::Bitmap(std::shared_ptr<SalBitmap> const&)
+Bitmap::Blend(AlphaMask const&, Color const&)
+Bitmap::CopyPixel(tools::Rectangle const&, tools::Rectangle const&, Bitmap const*)
+Bitmap::CopyPixel_AlphaOptimized(tools::Rectangle const&, tools::Rectangle const&, Bitmap const*)
+Bitmap::CreateDisplayBitmap(OutputDevice*) const
+Bitmap::CreateRegion(Color const&, tools::Rectangle const&) const
+Bitmap::Expand(int, int, Color const*)
+Bitmap::Replace(AlphaMask const&, Color const&)
+Bitmap::Replace(Bitmap const&, Color const&)
+Bitmap::Replace(Color const&, Color const&, unsigned char)
+Bitmap::Replace(Color const*, Color const*, unsigned long, unsigned char const*)
+Bitmap::Rotate(o3tl::strong_int<short, FractionTag<10> >, Color const&)
+Bitmap::operator==(Bitmap const&) const
+BitmapAlphaClampFilter::execute(BitmapEx const&) const
+BitmapBasicMorphologyFilter::filter(Bitmap const&) const
+BitmapColorQuantizationFilter::execute(BitmapEx const&) const
+BitmapConvolutionMatrixFilter::execute(BitmapEx const&) const
+BitmapEmbossGreyFilter::execute(BitmapEx const&) const
+BitmapEx::AdjustTransparency(unsigned char)
+BitmapEx::Clear()
+BitmapEx::Draw(OutputDevice*, Point const&) const
+BitmapEx::Replace(Color const&, Color const&, unsigned char)
+BitmapEx::SetSizePixel(Size const&)
+BitmapEx::getTransformed(basegfx::B2DHomMatrix const&, basegfx::B2DRange const&, double) const
+BitmapEx::loadFromIconTheme(rtl::OUString const&)
+BitmapEx::setAlphaFrom(unsigned char, signed char)
+BitmapFilterStackBlur::execute(BitmapEx const&) const
+BitmapMedianFilter::execute(BitmapEx const&) const
+BitmapMonochromeFilter::execute(BitmapEx const&) const
+BitmapMosaicFilter::execute(BitmapEx const&) const
+BitmapPalette::BitmapPalette(BitmapPalette&&)
+BitmapPalette::GetChecksum() const
+BitmapPalette::IsGreyPalette8Bit() const
+BitmapPalette::IsGreyPaletteAny() const
+BitmapPalette::operator=(BitmapPalette&&)
+BitmapPalette::operator==(BitmapPalette const&) const
+BitmapPopArtFilter::execute(BitmapEx const&) const
+BitmapSepiaFilter::execute(BitmapEx const&) const
+BitmapShadowFilter::execute(BitmapEx const&) const
+BitmapSimpleColorQuantizationFilter::execute(BitmapEx const&) const
+BitmapSmoothenFilter::execute(BitmapEx const&) const
+BitmapSobelGreyFilter::execute(BitmapEx const&) const
+BitmapSolarizeFilter::execute(BitmapEx const&) const
+BitmapSymmetryCheck::checkImpl(BitmapReadAccess const*)
+BitmapWriteAccess::CopyScanline(long, BitmapReadAccess const&)
+BitmapWriteAccess::CopyScanline(long, unsigned char const*, ScanlineFormat, unsigned int)
+BitmapWriteAccess::DrawLine(Point const&, Point const&)
+BitmapWriteAccess::SetFillColor()
+BmpWriter(SvStream&, Graphic const&, FilterConfigItem*)
+BrowseBox::BrowseBox(vcl::Window*, long, BrowserMode)
+BrowseBox::Clear()
+BrowseBox::Dispatch(unsigned short)
+BrowseBox::DoHideCursor()
+BrowseBox::DoShowCursor()
+BrowseBox::DrawCursor()
+BrowseBox::GetCursorHideCount() const
+BrowseBox::GoToColumnId(unsigned short, bool, bool)
+BrowseBox::GoToRow(int, bool, bool)
+BrowseBox::ImplPaintData(OutputDevice&, tools::Rectangle const&, bool)
+BrowseBox::IsFieldVisible(int, unsigned short, bool) const
+BrowseBox::IsFrozen(unsigned short) const
+BrowseBox::PaintData(vcl::Window const&, OutputDevice&, tools::Rectangle const&)
+BrowseBox::ScrollColumns(int)
+BrowseBox::ScrollRows(int)
+BrowseBox::SetToggledSelectedColumn(unsigned short)
+BrowseBox::StartScroll()
+BrowseBox::ToggleSelectedColumn()
+BrowseBox::commitBrowseBoxEvent(short, com::sun::star::uno::Any const&, com::sun::star::uno::Any const&)
+BrowseBox::commitHeaderBarEvent(short, com::sun::star::uno::Any const&, com::sun::star::uno::Any const&, bool)
+BrowseBox::commitTableEvent(short, com::sun::star::uno::Any const&, com::sun::star::uno::Any const&)
+BrowseBox::getAccessibleFactory()
+BrowseBox::isAccessibleAlive() const
+BrowseBox::~BrowseBox()
+BuilderUtils::convertMnemonicMarkup(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+BuilderUtils::ensureDefaultWidthChars(std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+BuilderUtils::extractCustomProperty(std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+BuilderUtils::extractDropdown(std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+BuilderUtils::getRoleFromName(rtl::OString const&)
+BuilderUtils::reorderWithinParent(std::vector<vcl::Window*, std::allocator<vcl::Window*> >&, bool)
+BuilderUtils::reorderWithinParent(vcl::Window&, unsigned short)
+BuilderUtils::set_properties(vcl::Window*, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+Button::Button(WindowType)
+Button::GetButtonState()
+Button::GetButtonState() const
+Button::GetCustomButtonImage() const
+Button::GetModeImage() const
+Button::HasImage() const
+Button::IsSmallSymbol() const
+Button::SetCommandHandler(rtl::OUString const&)
+Button::SetCustomButtonImage(Image const&)
+Button::SetSmallSymbol()
+ButtonSet::exportButton(int, rtl::OUString const&, rtl::OUString const&)
+CLuceneError::CLuceneError()
+CLuceneError::CLuceneError(CLuceneError const&)
+CLuceneError::CLuceneError(int, char const*, bool)
+CLuceneError::CLuceneError(int, wchar_t const*, bool)
+CLuceneError::set(int, char const*, bool)
+CLuceneError::set(int, wchar_t const*, bool)
+CLuceneError::twhat()
+CLuceneError::~CLuceneError()
+C_GetFunctionList@@NSS_3.1
+C_GetFunctionList@@NSS_3.4
+C_GetInterface@@NSS_3.52
+C_GetInterfaceList@@NSS_3.52
+CalendarField::ShowDropDown(bool)
+CalendarField::StateChanged(StateChangedType)
+CalendarField::dispose()
+CalendarField::~CalendarField()
+Camera3D::Camera3D()
+Camera3D::Camera3D(basegfx::B3DPoint const&, basegfx::B3DPoint const&, double)
+Camera3D::SetBankAngle(double)
+Camera3D::SetLookAt(basegfx::B3DPoint const&)
+CancelButton::Click()
+CharClass::getMyLocale() const
+CheckBox::GetCheckImage(AllSettings const&, DrawButtonFlags)
+CntByteItem::Clone(SfxItemPool*) const
+CntByteItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+CntInt32Item::Clone(SfxItemPool*) const
+CntUInt16Item::Clone(SfxItemPool*) const
+CntUInt32Item::Clone(SfxItemPool*) const
+CntUnencodedStringItem::Clone(SfxItemPool*) const
+CodeCompleteDataCache::Clear()
+CodeCompleteDataCache::InsertGlobalVar(rtl::OUString const&, rtl::OUString const&)
+CodeCompleteDataCache::InsertLocalVar(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+CodeCompleteOptions::CodeCompleteOptions()
+ColorListBox::EnsurePaletteManager()
+ColorListBox::LockWidthRequest()
+ColorListBox::Selected(std::pair<Color, rtl::OUString> const&)
+ColorListBox::ShowPreview(std::pair<Color, rtl::OUString> const&)
+ColorListBox::createColorWindow()
+ColorStatus::GetColor()
+ColorStatus::statusChanged(com::sun::star::frame::FeatureStateEvent const&)
+ColorWindow::GetAutoColor() const
+ColorWindow::GetSelectEntryColor() const
+ColorWindow::GetSelectEntryColor(ValueSet const*)
+ColorWindow::GrabFocus()
+ColorWindow::SelectEntry(Color const&)
+ColorWindow::SelectEntry(std::pair<Color, rtl::OUString> const&)
+ColorWindow::SelectValueSetEntry(SvxColorValueSet*, Color const&)
+ColorWindow::ShowNoneButton()
+ColorWindow::statusChanged(com::sun::star::frame::FeatureStateEvent const&)
+ComboBox::AdaptDropDownLineCountToMaximum()
+ComboBox::AddSeparator(int)
+ComboBox::DoubleClick()
+ComboBox::DrawEntry(UserDrawEvent const&)
+ComboBox::EnableUserDraw(bool)
+ComboBox::GetDropDownEntryHeight() const
+ComboBox::GetEntryData(int) const
+ComboBox::GetMRUEntries() const
+ComboBox::GetMainWindow() const
+ComboBox::GetMaxMRUCount() const
+ComboBox::IsAutoSizeEnabled() const
+ComboBox::IsDropDownBox() const
+ComboBox::IsModifyByKeyboard() const
+ComboBox::IsSyntheticModify() const
+ComboBox::IsUserDrawEnabled() const
+ComboBox::SetEntryActivateHdl(Link<Edit&, bool> const&)
+ComboBox::SetEntryData(int, void*)
+ComboBox::SetMRUEntries(rtl::OUString const&)
+ComboBox::SetMaxMRUCount(int)
+ComboBox::SetSelectHdl(Link<ComboBox&, void> const&)
+ComboBox::SetUserDrawHdl(Link<UserDrawEvent*, void> const&)
+ComboBox::SetUserItemSize(Size const&)
+ComboBox::SetWidthInChars(int)
+ComboBox::setMaxWidthChars(int)
+CommandEvent::CommandEvent()
+CommandEvent::GetAutoScrollData() const
+CommandEvent::GetGestureData() const
+CommandExtTextInputData::CommandExtTextInputData(CommandExtTextInputData const&)
+CommandWheelData::CommandWheelData()
+CompressGraphicsDialog::Compress(SvStream&)
+CompressGraphicsDialog::GetSelectedInterpolationType() const
+CompressGraphicsDialog::GetViewHeightInch() const
+CompressGraphicsDialog::GetViewWidthInch() const
+CompressGraphicsDialog::Initialize()
+CompressGraphicsDialog::Update()
+CompressGraphicsDialog::UpdateNewHeightMF()
+CompressGraphicsDialog::UpdateNewWidthMF()
+CompressGraphicsDialog::UpdateResolutionLB()
+ConditionEditDropTarget::ConditionEditDropTarget(ConditionEdit&)
+ContextChangeEventMultiplexer::GetModuleName(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+Control::AppendLayoutData(Control const&) const
+Control::Control(WindowType)
+Control::CreateLayoutData() const
+Control::DrawControlText(OutputDevice&, tools::Rectangle const&, rtl::OUString const&, DrawTextFlags, std::vector<tools::Rectangle, std::allocator<tools::Rectangle> >*, rtl::OUString*, Size const*) const
+Control::GetControlTextRect(OutputDevice&, tools::Rectangle const&, rtl::OUString const&, DrawTextFlags, Size*) const
+Control::GetUnzoomedControlPointFont() const
+Control::HasLayoutData() const
+Control::SetLayoutDataParent(Control const*) const
+Control::ToRelativeLineIndex(long) const
+ConvertChar::RecodeChar(char16_t) const
+CurrencyBox::DataChanged(DataChangedEvent const&)
+CurrencyBox::EventNotify(NotifyEvent&)
+CurrencyBox::Modify()
+CurrencyBox::PreNotify(NotifyEvent&)
+CurrencyBox::ReformatAll()
+CurrencyBox::dispose()
+CurrencyField::DataChanged(DataChangedEvent const&)
+CurrencyField::Down()
+CurrencyField::EventNotify(NotifyEvent&)
+CurrencyField::First()
+CurrencyField::Last()
+CurrencyField::Modify()
+CurrencyField::PreNotify(NotifyEvent&)
+CurrencyField::Up()
+CurrencyField::dispose()
+CurrencyFormatter::CreateFieldText(long) const
+CurrencyFormatter::CurrencyFormatter(Edit*)
+CurrencyFormatter::GetValueFromString(rtl::OUString const&) const
+CurrencyFormatter::Reformat()
+CurrencyFormatter::SetValue(long)
+CurrencyFormatter::~CurrencyFormatter()
+CurtisReidMeasure
+CurtisReidScales
+CustomToolBarImportHelper::MSOTCIDToOOCommand(short)
+CustomToolBarImportHelper::ScaleImage(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic>&, long)
+CustomToolBarImportHelper::addIcon(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&, rtl::OUString const&)
+CustomToolBarImportHelper::createCommandFromMacro(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+DSAU_DecodeDerSig@@NSS_3.2
+DSAU_DecodeDerSigToLen@@NSS_3.9
+DSAU_EncodeDerSig@@NSS_3.2
+DSAU_EncodeDerSigWithLen@@NSS_3.9
+DTLS_GetHandshakeTimeout@@NSS_3.14
+DTLS_ImportFD@@NSS_3.14
+Date::GetAsNormalizedDays() const
+Date::IsEndOfMonth(unsigned short, unsigned short, short)
+Date::IsValidDate(unsigned short, unsigned short, short)
+Date::Normalize(unsigned short&, unsigned short&, short&)
+DateBox::DataChanged(DataChangedEvent const&)
+DateBox::EventNotify(NotifyEvent&)
+DateBox::Modify()
+DateBox::PreNotify(NotifyEvent&)
+DateBox::ReformatAll()
+DateBox::dispose()
+DateFormatter::DateFormatter(Edit*)
+DateFormatter::ExpandCentury(Date&)
+DateFormatter::ExpandCentury(Date&, unsigned short)
+DateFormatter::FormatDate(Date const&, ExtDateFieldFormat, LocaleDataWrapper const&, Formatter::StaticFormatter const&)
+DateFormatter::GetCalendarWrapper() const
+DateFormatter::GetDateArea(ExtDateFieldFormat, rtl::OUString const&, int, LocaleDataWrapper const&)
+DateFormatter::GetExtDateFormat(bool) const
+DateFormatter::Reformat()
+DateFormatter::ReformatAll()
+DateFormatter::TextToDate(rtl::OUString const&, Date&, ExtDateFieldFormat, LocaleDataWrapper const&, CalendarWrapper const&)
+DateFormatter::~DateFormatter()
+DbGridControl::AdjustDataSource(bool)
+DbGridControl::AdjustRows()
+DbGridControl::AlignSeekCursor()
+DbGridControl::AppendNew()
+DbGridControl::ConnectToFields()
+DbGridControl::CreateColumn(unsigned short)
+DbGridControl::DataSourcePropertyChanged(com::sun::star::beans::PropertyChangeEvent const&)
+DbGridControl::DbGridControl(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, vcl::Window*, long)
+DbGridControl::DisconnectFromFields()
+DbGridControl::EnableHandle(bool)
+DbGridControl::EnableNavigationBar(bool)
+DbGridControl::EnablePermanentCursor(bool)
+DbGridControl::FieldListenerDisposing(unsigned short)
+DbGridControl::FieldValueChanged(unsigned short)
+DbGridControl::GetCurrentRowCellText(DbGridColumn const*, tools::SvRef<DbGridRow> const&) const
+DbGridControl::ImplInitWindow(InitWindowFacet)
+DbGridControl::InsertHandleColumn()
+DbGridControl::IsInsertionRow(int) const
+DbGridControl::IsPermanentCursorEnabled() const
+DbGridControl::MoveToFirst()
+DbGridControl::MoveToLast()
+DbGridControl::MoveToNext()
+DbGridControl::MoveToPosition(unsigned int)
+DbGridControl::MoveToPrev()
+DbGridControl::RecalcRows(int, unsigned short, bool)
+DbGridControl::RemoveColumn(unsigned short)
+DbGridControl::RemoveColumns()
+DbGridControl::RemoveRows(bool)
+DbGridControl::RowInserted(int, int, bool)
+DbGridControl::RowModified(int)
+DbGridControl::RowRemoved(int, int, bool)
+DbGridControl::SeekCursor(int, bool)
+DbGridControl::SetCurrent(int)
+DbGridControl::SetFilterMode(bool)
+DbGridControl::Undo()
+DbGridControl::disposing(unsigned short)
+DbGridControl::executeRowContextMenu(Point const&)
+DbGridControl::implAdjustInSolarThread(bool)
+DbGridControl::refreshController(unsigned short, DbGridControl::GrantControlAccess)
+DbGridControl::resetCurrentRow()
+DbGridControl::setDisplaySynchron(bool)
+DbgSetTestSolarMutex(void (*)())
+DbgTestSolarMutex()
+DdeData::DdeData()
+DdeData::DdeData(DdeData const&)
+DdeData::DdeData(DdeData&&)
+DdeData::operator=(DdeData const&)
+DdeGetPutItem::AdviseLoop(bool)
+DdeGetPutItem::DdeGetPutItem(DdeItem const&)
+DdeGetPutItem::DdeGetPutItem(rtl::OUString const&)
+DdeGetPutItem::Get(SotClipboardFormatId)
+DdeGetPutItem::Put(DdeData const*)
+DdeItem::DdeItem(DdeItem const&)
+DdeItem::DdeItem(rtl::OUString const&)
+DdeLink::DdeLink(DdeConnection&, rtl::OUString const&, long)
+DdeLink::Notify()
+DdeLink::~DdeLink()
+DdeService::AddFormat(SotClipboardFormatId)
+DdeService::AddTopic(DdeTopic const&)
+DdeService::DdeService(rtl::OUString const&)
+DdeService::Formats()
+DdeService::GetName() const
+DdeService::GetServices()
+DdeService::RemoveTopic(DdeTopic const&)
+DdeService::Status()
+DdeService::SysItems()
+DdeService::Topics()
+DdeService::~DdeService()
+DdeTopic::AddItem(DdeItem const&)
+DdeTopic::DdeTopic(rtl::OUString const&)
+DdeTopic::GetName() const
+DdeTopic::InsertItem(DdeItem*)
+DdeTopic::RemoveItem(DdeItem const&)
+DdeTransaction::Data(DdeData const*)
+DdeTransaction::DdeTransaction(DdeConnection&, rtl::OUString const&, long)
+DdeTransaction::Done(bool)
+DecorationView::DrawFrame(tools::Rectangle const&, Color const&, Color const&)
+DecorationView::DrawHighlightFrame(tools::Rectangle const&, DrawHighlightFrameStyle)
+DecorationView::DrawSeparator(Point const&, Point const&, bool)
+DevelopmentToolChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+DevelopmentToolChildWindow::DevelopmentToolChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+DevelopmentToolChildWindow::GetInfo() const
+DevelopmentToolDockingWindow::DevelopmentToolDockingWindow(SfxBindings*, SfxChildWindow*, vcl::Window*)
+DevelopmentToolDockingWindow::ToggleFloatingMode()
+DevelopmentToolDockingWindow::changeToCurrentSelection()
+DevelopmentToolDockingWindow::dispose()
+DevelopmentToolDockingWindow::selectionChanged(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+DevelopmentToolDockingWindow::updateSelection()
+DevelopmentToolDockingWindow::~DevelopmentToolDockingWindow()
+DffPropSet::DffPropSet()
+DffPropSet::InitializePropSet(unsigned short) const
+DffPropSet::ReadPropSet(SvStream&, bool)
+DffPropSet::~DffPropSet()
+DffPropertyReader::ApplyCustomShapeGeometryAttributes(SvStream&, SfxItemSet&, DffObjData const&) const
+DffPropertyReader::ApplyCustomShapeTextAttributes(SfxItemSet&) const
+DffPropertyReader::ApplyFillAttributes(SvStream&, SfxItemSet&, DffObjData const&) const
+DffPropertyReader::ApplyLineAttributes(SfxItemSet&, MSO_SPT) const
+DffPropertyReader::CheckAndCorrectExcelTextRotation(SvStream&, SfxItemSet&, DffObjData const&) const
+DffPropertyReader::DffPropertyReader(SvxMSDffManager const&)
+DffPropertyReader::Fix16ToAngle(int)
+DffPropertyReader::ImportGradientColor(SfxItemSet&, unsigned int, double, double) const
+DffPropertyReader::SetDefaultPropSet(SvStream&, unsigned int) const
+DffPropertyReader::~DffPropertyReader()
+DffRecordManager::Clear()
+DffRecordManager::Consume(SvStream&, unsigned int)
+DffRecordManager::DffRecordManager()
+DffRecordManager::DffRecordManager(SvStream&)
+DffRecordManager::First()
+DffRecordManager::Last()
+DffRecordManager::Next()
+DffRecordManager::Prev()
+Dialog::GrabFocusToFirstControl()
+Dialog::ImplEndExecuteModal()
+Dialog::ImplSetModalInputMode(bool)
+Dialog::ImplStartExecute()
+Dialog::SetInstallLOKNotifierHdl(Link<void*, vcl::ILibreOfficeKitNotifier*> const&)
+Dialog::SetLOKTunnelingState(bool)
+Dialog::SetModalInputMode(bool)
+Dialog::SetPopupMenuHdl(Link<CommandEvent const&, bool> const&)
+Dialog::StartExecuteAsync(VclAbstractDialog::AsyncContext&)
+Dialog::add_button(PushButton*, int, bool)
+Dialog::get_default_response() const
+Dialog::get_widget_for_response(int)
+Dialog::set_action_area(VclButtonBox*)
+Dialog::set_content_area(VclBox*)
+Dialog::set_default_response(int)
+DialogGalleryPreview::SetDrawingArea(weld::DrawingArea*)
+DockingAreaWindow::ApplySettings(OutputDevice&)
+DockingAreaWindow::DataChanged(DataChangedEvent const&)
+DockingAreaWindow::GetAlign() const
+DockingAreaWindow::IsHorizontal() const
+DockingAreaWindow::Paint(OutputDevice&, tools::Rectangle const&)
+DockingAreaWindow::Resize()
+DockingAreaWindow::StateChanged(StateChangedType)
+DockingAreaWindow::dispose()
+DockingAreaWindow::~DockingAreaWindow()
+DockingManager::AddWindow(vcl::Window const*)
+DockingManager::DockingManager()
+DockingManager::GetDockingWindowWrapper(vcl::Window const*)
+DockingManager::IsInPopupMode(vcl::Window const*)
+DockingManager::RemoveWindow(vcl::Window const*)
+DockingManager::SetPopupModeEndHdl(vcl::Window const*, Link<FloatingWindow*, void> const&)
+DockingManager::StartPopupMode(vcl::Window const*, tools::Rectangle const&, FloatWinPopupFlags)
+DockingManager::~DockingManager()
+DockingWindow::DockingWindow(WindowType, char const*)
+DockingWindow::DockingWindow(vcl::Window*, rtl::OString const&, rtl::OUString const&, char const*, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+DockingWindow::SetMaxOutputSizePixel(Size const&)
+DockingWindow::isLayoutEnabled() const
+DockingWindow::loadUI(vcl::Window*, rtl::OString const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+DockingWindow::setOptimalLayoutSize()
+DocumentSignatureManager::ImplOpenSignatureStream(int, bool)
+DocumentSignatureManager::getGpgSecurityContext() const
+DocumentSignatureManager::getGpgSecurityEnvironment()
+DocumentSignatureManager::getSecurityContext() const
+DocumentSignatureManager::isXML(rtl::OUString const&)
+DocumentSignatureManager::readManifest()
+DocumentSignatureManager::setModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+DocumentToGraphicRenderer::getCurrentPageWriter()
+DocumentToGraphicRenderer::getSelection() const
+DocumentToGraphicRenderer::hasSelection() const
+DocumentToGraphicRenderer::isImpress() const
+DoubleCurrencyField::UpdateCurrencyFormat()
+DoubleNumericField::ResetConformanceTester()
+DoubleNumericField::~DoubleNumericField()
+DragSourceHelper::StartDrag(signed char, Point const&)
+DrawingAreaUIObject::create(vcl::Window*)
+DriverBlocklist::GetVendorNameFromId(unsigned int)
+DriverBlocklist::IsDeviceBlocked(rtl::OUString const&, DriverBlocklist::VersionType, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&)
+DriverBlocklist::Parser::getVersion(std::basic_string_view<char, std::char_traits<char> >)
+DriverBlocklist::Parser::handleContent(xmlreader::XmlReader&)
+DriverBlocklist::Parser::handleDevices(DriverBlocklist::DriverInfo&, xmlreader::XmlReader&)
+DriverBlocklist::Parser::handleEntry(DriverBlocklist::DriverInfo&, xmlreader::XmlReader&)
+DriverBlocklist::Parser::handleList(xmlreader::XmlReader&)
+DropTargetHelper::AcceptDrop(AcceptDropEvent const&)
+DropTargetHelper::ExecuteDrop(ExecuteDropEvent const&)
+DropTargetHelper::ImplBeginDrag(com::sun::star::uno::Sequence<com::sun::star::datatransfer::DataFlavor> const&)
+DropTargetHelper::ImplConstruct()
+DropTargetHelper::ImplEndDrag()
+DynamicErrorInfo::GetDialogMask() const
+E3dAttributesUndoAction::CanRepeat(SfxRepeatTarget&) const
+E3dAttributesUndoAction::Redo()
+E3dAttributesUndoAction::Undo()
+E3dAttributesUndoAction::~E3dAttributesUndoAction()
+E3dCompoundObject::AddToHdlList(SdrHdlList&) const
+E3dCompoundObject::CloneSdrObject(SdrModel&) const
+E3dCompoundObject::CreateObjectSpecificProperties()
+E3dCompoundObject::E3dCompoundObject(SdrModel&)
+E3dCompoundObject::E3dCompoundObject(SdrModel&, E3dCompoundObject const&)
+E3dCompoundObject::GetHdlCount() const
+E3dCompoundObject::GetObjIdentifier() const
+E3dCompoundObject::RecalcSnapRect()
+E3dCompoundObject::TakeXorPoly() const
+E3dCompoundObject::TransformToScreenCoor(basegfx::B3DPolyPolygon const&) const
+E3dCompoundObject::~E3dCompoundObject()
+E3dCubeObj::CloneSdrObject(SdrModel&) const
+E3dCubeObj::CreateObjectSpecificViewContact()
+E3dCubeObj::DoConvertToPolyObj(bool, bool) const
+E3dCubeObj::E3dCubeObj(SdrModel&)
+E3dCubeObj::E3dCubeObj(SdrModel&, E3dCubeObj const&)
+E3dCubeObj::GetObjIdentifier() const
+E3dCubeObj::SetCubePos(basegfx::B3DPoint const&)
+E3dCubeObj::SetCubeSize(basegfx::B3DVector const&)
+E3dCubeObj::SetDefaultAttributes(E3dDefaultAttributes const&)
+E3dCubeObj::SetPosIsCenter(bool)
+E3dCubeObj::TakeObjNamePlural() const
+E3dCubeObj::TakeObjNameSingul() const
+E3dCubeObj::~E3dCubeObj()
+E3dDefaultAttributes::Reset()
+E3dExtrudeObj::CloneSdrObject(SdrModel&) const
+E3dExtrudeObj::CreateObjectSpecificProperties()
+E3dExtrudeObj::CreateObjectSpecificViewContact()
+E3dExtrudeObj::E3dExtrudeObj(SdrModel&)
+E3dExtrudeObj::E3dExtrudeObj(SdrModel&, E3dExtrudeObj const&)
+E3dExtrudeObj::GetBreakObj()
+E3dExtrudeObj::GetObjIdentifier() const
+E3dExtrudeObj::IsBreakObjPossible()
+E3dExtrudeObj::SetDefaultAttributes(E3dDefaultAttributes const&)
+E3dExtrudeObj::SetExtrudePolygon(basegfx::B2DPolyPolygon const&)
+E3dExtrudeObj::TakeObjNamePlural() const
+E3dExtrudeObj::TakeObjNameSingul() const
+E3dExtrudeObj::~E3dExtrudeObj()
+E3dLatheObj::CloneSdrObject(SdrModel&) const
+E3dLatheObj::CreateObjectSpecificProperties()
+E3dLatheObj::CreateObjectSpecificViewContact()
+E3dLatheObj::DoConvertToPolyObj(bool, bool) const
+E3dLatheObj::E3dLatheObj(SdrModel&)
+E3dLatheObj::E3dLatheObj(SdrModel&, E3dLatheObj const&)
+E3dLatheObj::GetBreakObj()
+E3dLatheObj::GetObjIdentifier() const
+E3dLatheObj::IsBreakObjPossible()
+E3dLatheObj::SetDefaultAttributes(E3dDefaultAttributes const&)
+E3dLatheObj::SetPolyPoly2D(basegfx::B2DPolyPolygon const&)
+E3dLatheObj::TakeObjNamePlural() const
+E3dLatheObj::TakeObjNameSingul() const
+E3dLatheObj::~E3dLatheObj()
+E3dObject::CloneSdrObject(SdrModel&) const
+E3dObject::CreateObjectSpecificProperties()
+E3dObject::E3dObject(SdrModel&)
+E3dObject::E3dObject(SdrModel&, E3dObject const&)
+E3dObject::GetBreakObj()
+E3dObject::GetFullTransform() const
+E3dObject::GetObjIdentifier() const
+E3dObject::GetObjInventor() const
+E3dObject::InvalidateBoundVolume()
+E3dObject::IsBreakObjPossible()
+E3dObject::NbcMove(Size const&)
+E3dObject::NbcResize(Point const&, Fraction const&, Fraction const&)
+E3dObject::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+E3dObject::NbcSetTransform(basegfx::B3DHomMatrix const&)
+E3dObject::NewGeoData() const
+E3dObject::RecalcBoundVolume() const
+E3dObject::RecalcSnapRect()
+E3dObject::RestoreGeoData(SdrObjGeoData const&)
+E3dObject::SaveGeoData(SdrObjGeoData&) const
+E3dObject::SetSelected(bool)
+E3dObject::SetTransform(basegfx::B3DHomMatrix const&)
+E3dObject::SetTransformChanged()
+E3dObject::StructureChanged()
+E3dObject::TakeObjInfo(SdrObjTransformInfoRec&) const
+E3dObject::TakeObjNamePlural() const
+E3dObject::TakeObjNameSingul() const
+E3dObject::getParentE3dSceneFromE3dObject() const
+E3dObject::getRootE3dSceneFromE3dObject() const
+E3dObject::~E3dObject()
+E3dPolygonObj::CloneSdrObject(SdrModel&) const
+E3dPolygonObj::CreateObjectSpecificViewContact()
+E3dPolygonObj::DoConvertToPolyObj(bool, bool) const
+E3dPolygonObj::E3dPolygonObj(SdrModel&)
+E3dPolygonObj::E3dPolygonObj(SdrModel&, E3dPolygonObj const&)
+E3dPolygonObj::GetObjIdentifier() const
+E3dPolygonObj::SetLineOnly(bool)
+E3dPolygonObj::SetPolyNormals3D(basegfx::B3DPolyPolygon const&)
+E3dPolygonObj::SetPolyPolygon3D(basegfx::B3DPolyPolygon const&)
+E3dPolygonObj::SetPolyTexture2D(basegfx::B2DPolyPolygon const&)
+E3dPolygonObj::~E3dPolygonObj()
+E3dScene::BckCreate(SdrDragStat&)
+E3dScene::BegCreate(SdrDragStat&)
+E3dScene::BrkCreate(SdrDragStat&)
+E3dScene::CloneSdrObject(SdrModel&) const
+E3dScene::CreateObjectSpecificProperties()
+E3dScene::CreateObjectSpecificViewContact()
+E3dScene::E3dScene(SdrModel&, E3dScene const&)
+E3dScene::EndCreate(SdrDragStat&, SdrCreateCmd)
+E3dScene::GetObjIdentifier() const
+E3dScene::GetSubList() const
+E3dScene::ImpCleanup3DDepthMapper()
+E3dScene::IsBreakObjPossible()
+E3dScene::MovCreate(SdrDragStat&)
+E3dScene::NbcInsertObject(SdrObject*, unsigned long)
+E3dScene::NbcMove(Size const&)
+E3dScene::NbcRemoveObject(unsigned long)
+E3dScene::NbcResize(Point const&, Fraction const&, Fraction const&)
+E3dScene::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+E3dScene::NbcSetLayer(o3tl::strong_int<unsigned char, SdrLayerIDTag>)
+E3dScene::NewGeoData() const
+E3dScene::Notify(SfxBroadcaster&, SfxHint const&)
+E3dScene::RebuildLists()
+E3dScene::RecalcBoundVolume() const
+E3dScene::RecalcSnapRect()
+E3dScene::RemapOrdNum(unsigned int) const
+E3dScene::RestoreGeoData(SdrObjGeoData const&)
+E3dScene::RotateScene(Point const&, double, double)
+E3dScene::SaveGeoData(SdrObjGeoData&) const
+E3dScene::SetBoundRectDirty()
+E3dScene::SetDefaultAttributes()
+E3dScene::SetSelected(bool)
+E3dScene::SetTransformChanged()
+E3dScene::StructureChanged()
+E3dScene::TakeCreatePoly(SdrDragStat const&) const
+E3dScene::TakeObjNamePlural() const
+E3dScene::TakeObjNameSingul() const
+E3dScene::TakeXorPoly() const
+E3dScene::getChildrenOfSdrObject() const
+E3dScene::getSdrObjectFromSdrObjList() const
+E3dScene::getSdrPageFromSdrObjList() const
+E3dScene::handlePageChange(SdrPage*, SdrPage*)
+E3dScene::removeAllNonSelectedObjects()
+E3dScene::~E3dScene()
+E3dSphereObj::CloneSdrObject(SdrModel&) const
+E3dSphereObj::CreateObjectSpecificProperties()
+E3dSphereObj::CreateObjectSpecificViewContact()
+E3dSphereObj::DoConvertToPolyObj(bool, bool) const
+E3dSphereObj::E3dSphereObj(SdrModel&)
+E3dSphereObj::E3dSphereObj(SdrModel&, E3dSphereObj const&)
+E3dSphereObj::GetObjIdentifier() const
+E3dSphereObj::SetCenter(basegfx::B3DPoint const&)
+E3dSphereObj::SetDefaultAttributes(E3dDefaultAttributes const&)
+E3dSphereObj::SetSize(basegfx::B3DVector const&)
+E3dSphereObj::TakeObjNamePlural() const
+E3dSphereObj::TakeObjNameSingul() const
+E3dSphereObj::~E3dSphereObj()
+E3dView::BreakSingle3DObj(E3dObject*)
+E3dView::DoDepthArrange(E3dScene const*, double)
+E3dView::ImpChangeSomeAttributesFor3DConversion(SdrObject*)
+E3dView::ImpChangeSomeAttributesFor3DConversion2(SdrObject*)
+E3dView::ImpCloneAll3DObjectsToDestScene(E3dScene const*, E3dScene*, Point)
+E3dView::ImpCreate3DObject(E3dScene*, SdrObject*, bool, double, basegfx::B2DHomMatrix const&)
+E3dView::ImpCreateSingle3DObjectFlat(E3dScene*, SdrObject*, bool, double, basegfx::B2DHomMatrix const&)
+E3dView::ImpIsConvertTo3DPossible(SdrObject const*, bool&, bool&) const
+E3dView::InitScene(E3dScene*, double, double, double)
+E3dView::InitView()
+EFieldInfo::EFieldInfo(EFieldInfo const&)
+EFieldInfo::EFieldInfo(SvxFieldItem const&, int, int)
+EFieldInfo::operator=(EFieldInfo const&)
+Edit::CreatePopupMenu()
+Edit::Edit(WindowType)
+Edit::IsCharInput(KeyEvent const&)
+Edit::IsInsertMode() const
+Edit::SetCursorAtLast()
+Edit::SetInsertMode(bool)
+Edit::SetPlaceholderText(rtl::OUString const&)
+Edit::SetSubEdit(Edit*)
+Edit::SetWidthInChars(int)
+Edit::ShowTruncationWarning(weld::Widget*)
+Edit::Undo()
+Edit::setMaxWidthChars(int)
+EditAbstractDialogFactory::Create()
+EditEngine::AppendDeletedNodeInfo(DeletedNodeInfo*)
+EditEngine::CallHtmlImportHandler(HtmlImportInfo&)
+EditEngine::CallRtfImportHandler(RtfImportInfo&)
+EditEngine::ClearOverflowingParaNum()
+EditEngine::ClearPolygon()
+EditEngine::ConnectContents(int, bool)
+EditEngine::ConnectParagraphs(ContentNode*, ContentNode*, bool)
+EditEngine::CreateESelection(EditSelection const&) const
+EditEngine::CreateEditPaM(EPaM const&)
+EditEngine::CreateFontFromItemSet(SfxItemSet const&, SvtScriptType)
+EditEngine::CreateSelection(ESelection const&)
+EditEngine::CreateSvxFontFromItemSet(SfxItemSet const&)
+EditEngine::CursorLeft(EditPaM const&, unsigned short)
+EditEngine::CursorRight(EditPaM const&, unsigned short)
+EditEngine::DeleteSelected(EditSelection const&)
+EditEngine::DeleteSelection(EditSelection const&)
+EditEngine::Draw(OutputDevice&, tools::Rectangle const&)
+EditEngine::FindParagraph(long)
+EditEngine::GetActiveView() const
+EditEngine::GetBaseParaAttribs(int) const
+EditEngine::GetBeginDropHdl() const
+EditEngine::GetDefaultHorizontalTextDirection() const
+EditEngine::GetDocPos(Point const&) const
+EditEngine::GetEditDoc()
+EditEngine::GetEditDoc() const
+EditEngine::GetEditViews()
+EditEngine::GetEditViews() const
+EditEngine::GetEmptyTextObject() const
+EditEngine::GetEndDropHdl() const
+EditEngine::GetFirstLineStartX(int)
+EditEngine::GetGlobalCharStretching(unsigned short&, unsigned short&) const
+EditEngine::GetLanguage(EditPaM const&) const
+EditEngine::GetMaxAutoPaperSize() const
+EditEngine::GetMinAutoPaperSize() const
+EditEngine::GetModifyHdl() const
+EditEngine::GetOverflowingLineNum() const
+EditEngine::GetOverflowingParaNum() const
+EditEngine::GetParaBounds(int)
+EditEngine::GetParaPortions()
+EditEngine::GetParaPortions() const
+EditEngine::GetParagraphInfos(int)
+EditEngine::GetRotation() const
+EditEngine::GetScriptType(ESelection const&) const
+EditEngine::GetScriptType(EditSelection const&) const
+EditEngine::GetSelected(EditSelection const&) const
+EditEngine::GetSpeller()
+EditEngine::GetStandardSvxFont(int)
+EditEngine::GetStatusEventHdl() const
+EditEngine::GetStyleSheet(int)
+EditEngine::GetStyleSheet(int) const
+EditEngine::GetStyleSheetPool()
+EditEngine::GetTextHeightNTP() const
+EditEngine::GetVertical() const
+EditEngine::HasText(SvxSearchItem const&)
+EditEngine::InsertContent(ContentNode*, int)
+EditEngine::InsertFeature(EditSelection const&, SfxPoolItem const&)
+EditEngine::InsertField(EditSelection const&, SvxFieldItem const&)
+EditEngine::InsertLineBreak(EditSelection const&)
+EditEngine::InsertParaBreak(EditSelection const&)
+EditEngine::InsertParagraph(int, EditTextObject const&, bool)
+EditEngine::InsertText(EditSelection const&, rtl::OUString const&)
+EditEngine::InsertText(EditTextObject const&, EditSelection const&)
+EditEngine::InsertText(com::sun::star::uno::Reference<com::sun::star::datatransfer::XTransferable> const&, rtl::OUString const&, EditPaM const&, bool)
+EditEngine::IsCallParaInsertedOrDeleted() const
+EditEngine::IsForceAutoColor() const
+EditEngine::IsFormatted() const
+EditEngine::IsHtmlImportHandlerSet() const
+EditEngine::IsImportRTFStyleSheetsSet() const
+EditEngine::IsInSelectionMode() const
+EditEngine::IsInUndo() const
+EditEngine::IsPageOverflow()
+EditEngine::IsRtfImportHandlerSet() const
+EditEngine::IsTextPos(Point const&, unsigned short)
+EditEngine::IsTopToBottom() const
+EditEngine::MoveParagraphs(Range const&, int)
+EditEngine::ParaAttribsToCharAttribs(ContentNode*)
+EditEngine::ParagraphHeightChanged(int)
+EditEngine::PutSpellingToSentenceStart(EditView const&)
+EditEngine::QuickMarkInvalid(ESelection const&)
+EditEngine::QuickMarkToBeRepainted(int)
+EditEngine::Redo(EditView*)
+EditEngine::RemoveCharAttribs(EditSelection const&, EERemoveParaAttribsMode, unsigned short)
+EditEngine::RemoveCharAttribs(EditSelection const&, bool, unsigned short)
+EditEngine::RemoveParaPortion(int)
+EditEngine::RemoveParagraph(int)
+EditEngine::RemoveView(unsigned long)
+EditEngine::SeekCursor(ContentNode*, int, SvxFont&)
+EditEngine::SetActiveView(EditView*)
+EditEngine::SetAttribs(EditSelection const&, SfxItemSet const&, SetAttribsMode)
+EditEngine::SetBeginDropHdl(Link<EditView*, void> const&)
+EditEngine::SetBeginMovingParagraphsHdl(Link<MoveParagraphsInfo&, void> const&)
+EditEngine::SetBeginPasteOrDropHdl(Link<PasteOrDropInfos&, void> const&)
+EditEngine::SetCallParaInsertedOrDeleted(bool)
+EditEngine::SetCharAttribs(int, SfxItemSet const&)
+EditEngine::SetEndDropHdl(Link<EditView*, void> const&)
+EditEngine::SetEndMovingParagraphsHdl(Link<MoveParagraphsInfo&, void> const&)
+EditEngine::SetEndPasteOrDropHdl(Link<PasteOrDropInfos&, void> const&)
+EditEngine::SetFixedCellHeight(bool)
+EditEngine::SetFlatMode(bool)
+EditEngine::SetFontInfoInItemSet(SfxItemSet&, SvxFont const&)
+EditEngine::SetGlobalCharStretching(unsigned short, unsigned short)
+EditEngine::SetMaxAutoPaperSize(Size const&)
+EditEngine::SetMinAutoPaperSize(Size const&)
+EditEngine::SetMinColumnWrapHeight(long)
+EditEngine::SetParaAttribsOnly(int, SfxItemSet const&)
+EditEngine::SetPolygon(basegfx::B2DPolyPolygon const&)
+EditEngine::SetPolygon(basegfx::B2DPolyPolygon const&, basegfx::B2DPolyPolygon const*)
+EditEngine::SetRotation(TextRotation)
+EditEngine::SetStyleSheet(EditSelection const&, SfxStyleSheet*)
+EditEngine::SetStyleSheet(int, SfxStyleSheet*)
+EditEngine::SetStyleSheetPool(SfxStyleSheetPool*)
+EditEngine::SetTextColumns(short, int)
+EditEngine::SetUndoManager(SfxUndoManager*)
+EditEngine::SetUndoMode(bool)
+EditEngine::ShouldCreateBigTextObject() const
+EditEngine::ShowParagraph(int, bool)
+EditEngine::SplitContent(int, int)
+EditEngine::StripPortions()
+EditEngine::TransliterateText(EditSelection const&, TransliterationFlags)
+EditEngine::Undo(EditView*)
+EditEngine::UndoActionStart(unsigned short, ESelection const&)
+EditEngine::UpdateFieldsOnly()
+EditEngine::UpdateSelections()
+EditTextObject::~EditTextObject()
+EditUndo::CanRepeat(SfxRepeatTarget&) const
+EditUndo::EditUndo(unsigned short, EditEngine*)
+EditUndo::GetComment() const
+EditUndo::GetId() const
+EditUndo::GetViewShellId() const
+EditUndo::~EditUndo()
+EditUndoManager::SetEditEngine(EditEngine*)
+EditView::GetAnchorMode() const
+EditView::GetFieldAtSelection() const
+EditView::GetFieldUnderMousePointer(int&, int&) const
+EditView::GetImpEditEngine() const
+EditView::GetInvalidateMore() const
+EditView::GetStyleSheet()
+EditView::GetStyleSheet() const
+EditView::HasOtherViewWindow(vcl::Window*)
+EditView::InvalidateWindow(tools::Rectangle const&)
+EditView::IsCursorAtWrongSpelledWord()
+EditView::MoveParagraphs(Range, int)
+EditView::MoveParagraphs(long)
+EditView::Read(SvStream&, EETextFormat, SvKeyValueIterator*)
+EditView::ReleaseMouse()
+EditView::RemoveAttribs(EERemoveParaAttribsMode, unsigned short)
+EditView::SetAnchorMode(EEAnchorMode)
+EditView::SetInvalidateMore(unsigned short)
+EditView::StartSearchAndReplace(SvxSearchItem const&)
+EmbeddedFontsHelper::activateFont(rtl::OUString const&, rtl::OUString const&)
+EmbeddedFontsHelper::clearTemporaryFontFiles()
+EmbeddedFontsHelper::fileUrlForTemporaryFont(rtl::OUString const&, char const*)
+EmbeddedFontsHelper::sufficientTTFRights(void const*, long, EmbeddedFontsHelper::FontRights)
+EnhancedCustomShapeTypeNames::GetAccName(rtl::OUString const&)
+ErrorContext::GetParent()
+ErrorInfo::~ErrorInfo()
+ErrorRegistry::ErrorRegistry()
+EscherConnectorListEntry::GetClosestPoint(tools::Polygon const&, com::sun::star::awt::Point const&)
+EscherEx::SeekToPersistOffset(unsigned int)
+EscherEx::SetEditAs(rtl::OUString const&)
+EscherEx::SetGroupLogicRect(unsigned int, tools::Rectangle const&)
+EscherEx::SetGroupSnapRect(unsigned int, tools::Rectangle const&)
+EscherExGlobal::ImplQueryPictureStream()
+EscherGraphicProvider::GetPrefSize(unsigned int, Size&, MapMode&)
+EscherGraphicProvider::ImplInsertBlib(EscherBlibEntry*)
+EscherGraphicProvider::~EscherGraphicProvider()
+EscherPersistTable::EscherPersistTable()
+EscherPersistTable::PtDelete(unsigned int)
+EscherPersistTable::PtIsID(unsigned int)
+EscherPersistTable::PtReplace(unsigned int, unsigned int)
+EscherPersistTable::~EscherPersistTable()
+EscherPropertyContainer::CreateGraphicProperties(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, GraphicObject const&)
+EscherPropertyContainer::GetGradientColor(com::sun::star::awt::Gradient const*, unsigned int)
+EscherPropertyContainer::GetPolyPolygon(com::sun::star::uno::Any const&)
+EscherPropertyContainer::GetValueForEnhancedCustomShapeParameter(com::sun::star::drawing::EnhancedCustomShapeParameter const&, std::vector<int, std::allocator<int> > const&, bool)
+EscherPropertyContainer::ImplCreateEmbeddedBmp(GraphicObject const&)
+EscherPropertyContainer::ImplCreateGraphicAttributes(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, unsigned int, bool)
+EscherPropertyContainer::ImplGetColor(unsigned int, bool)
+EscherSolverContainer::AddConnector(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, com::sun::star::awt::Point const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, com::sun::star::awt::Point const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+ExportEpsGraphic(SvStream&, Graphic const&, FilterConfigItem*)
+ExportGifGraphic(SvStream&, Graphic const&, FilterConfigItem*)
+ExportTiffGraphicImport(SvStream&, Graphic const&, FilterConfigItem const*)
+ExtTextEngine::MatchGroup(TextPaM const&) const
+ExtTextEngine::Search(TextSelection&, i18nutil::SearchOptions const&, bool) const
+ExternalToolEdit::HandleCloseEvent(ExternalToolEdit*)
+ExternalToolEdit::StartListeningEvent()
+FC_GetFunctionList@@NSS_3.4
+FC_GetInterface@@NSS_3.52
+FC_GetInterfaceList@@NSS_3.52
+FREEBL_GetVector@@NSSprivate_3.11
+FSDK_SetLocaltimeFunction
+FSDK_SetTimeFunction
+FSDK_SetUnSpObjProcessHandler
+FileChangedChecker::hasFileChanged()
+FileChangedChecker::resetTimer()
+FilterConfigItem::GetPropertyValue(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, rtl::OUString const&)
+FilterConfigItem::GetStatusIndicator() const
+FilterConfigItem::ImpInitTree(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+FilterConfigItem::ImplGetPropertyValue(com::sun::star::uno::Any&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&)
+FilterConfigItem::WritePropertyValue(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&, com::sun::star::beans::PropertyValue const&)
+FixedBitmap::ApplySettings(OutputDevice&)
+FixedBitmap::DataChanged(DataChangedEvent const&)
+FixedBitmap::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+FixedBitmap::Paint(OutputDevice&, tools::Rectangle const&)
+FixedBitmap::Resize()
+FixedBitmap::SetBitmap(BitmapEx const&)
+FixedBitmap::StateChanged(StateChangedType)
+FixedHyperlink::GetFocus()
+FixedHyperlink::Initialize()
+FixedHyperlink::KeyInput(KeyEvent const&)
+FixedHyperlink::LoseFocus()
+FixedHyperlink::MouseButtonUp(MouseEvent const&)
+FixedHyperlink::MouseMove(MouseEvent const&)
+FixedHyperlink::RequestHelp(HelpEvent const&)
+FixedHyperlink::set_property(rtl::OString const&, rtl::OUString const&)
+FixedImage::ApplySettings(OutputDevice&)
+FixedImage::DataChanged(DataChangedEvent const&)
+FixedImage::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+FixedImage::DumpAsPropertyTree(tools::JsonWriter&)
+FixedImage::GetOptimalSize() const
+FixedImage::Paint(OutputDevice&, tools::Rectangle const&)
+FixedImage::Resize()
+FixedImage::StateChanged(StateChangedType)
+FixedImage::loadThemeImage(rtl::OUString const&)
+FixedImage::set_property(rtl::OString const&, rtl::OUString const&)
+FixedLine::ApplySettings(OutputDevice&)
+FixedLine::DataChanged(DataChangedEvent const&)
+FixedLine::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+FixedLine::DumpAsPropertyTree(tools::JsonWriter&)
+FixedLine::FillLayoutData() const
+FixedLine::GetCanonicalFont(StyleSettings const&) const
+FixedLine::GetCanonicalTextColor(StyleSettings const&) const
+FixedLine::GetOptimalSize() const
+FixedLine::Paint(OutputDevice&, tools::Rectangle const&)
+FixedLine::Resize()
+FixedLine::StateChanged(StateChangedType)
+FixedText::ApplySettings(OutputDevice&)
+FixedText::CalcMinimumTextSize(Control const*, long)
+FixedText::DataChanged(DataChangedEvent const&)
+FixedText::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+FixedText::FillLayoutData() const
+FixedText::GetCanonicalFont(StyleSettings const&) const
+FixedText::GetCanonicalTextColor(StyleSettings const&) const
+FixedText::GetOptimalSize() const
+FixedText::Paint(OutputDevice&, tools::Rectangle const&)
+FixedText::Resize()
+FixedText::StateChanged(StateChangedType)
+FixedText::dispose()
+FixedText::getAccessibleRelationLabelFor() const
+FixedText::getTextDimensions(Control const*, rtl::OUString const&, long)
+FixedText::setMaxWidthChars(int)
+FixedText::setMinWidthChars(int)
+FixedText::set_mnemonic_widget(vcl::Window*)
+FixedText::set_property(rtl::OString const&, rtl::OUString const&)
+FixedText::~FixedText()
+FloatingWindow::AddPopupModeWindow(vcl::Window*)
+FloatingWindow::ApplySettings(OutputDevice&)
+FloatingWindow::DataChanged(DataChangedEvent const&)
+FloatingWindow::EventNotify(NotifyEvent&)
+FloatingWindow::FloatingWindow(vcl::Window*, rtl::OString const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+FloatingWindow::ImplConvertToRelPos(vcl::Window*, tools::Rectangle const&)
+FloatingWindow::PixelInvalidate(tools::Rectangle const*)
+FloatingWindow::PopupModeEnd()
+FloatingWindow::SetTitleType(FloatWinTitleType)
+FloatingWindow::StartPopupMode(ToolBox*, FloatWinPopupFlags)
+FloatingWindow::StartPopupMode(tools::Rectangle const&, FloatWinPopupFlags)
+FloatingWindow::StateChanged(StateChangedType)
+FloatingWindow::dispose()
+FloatingWindow::doDeferredInit(long)
+FloatingWindow::~FloatingWindow()
+FmDesignModeChangedHint::FmDesignModeChangedHint(bool)
+FmDesignModeChangedHint::~FmDesignModeChangedHint()
+FmFormModel::AllocPage(bool)
+FmFormModel::ControlsUseRefDevice() const
+FmFormModel::GetUndoEnv()
+FmFormModel::implSetOpenInDesignMode(bool)
+FmFormObj::FmFormObj(SdrModel&, FmFormObj const&)
+FmFormObj::handlePageChange(SdrPage*, SdrPage*)
+FmFormPage::CloneSdrPage(SdrModel&) const
+FmFormPage::GetForms(bool) const
+FmFormShell::Activate(bool)
+FmFormShell::Deactivate(bool)
+FmFormShell::DetermineForms(bool)
+FmFormShell::ExecuteTextAttribute(SfxRequest&)
+FmFormShell::GetFormState(SfxItemSet&, unsigned short)
+FmFormShell::GetInterface() const
+FmFormShell::GetStaticInterface()
+FmFormShell::GetTextAttributeState(SfxItemSet&)
+FmFormShell::HasUIFeature(SfxShellFeature) const
+FmFormShell::InitInterface_Impl()
+FmFormShell::NotifyMarkListChanged(FmFormView*)
+FmFormShell::impl_setDesignMode(bool)
+FmFormView::GetCurPage()
+FmFormView::Init()
+FmFormView::InsertControlContainer(com::sun::star::uno::Reference<com::sun::star::awt::XControlContainer> const&)
+FmFormView::RemoveControlContainer(com::sun::star::uno::Reference<com::sun::star::awt::XControlContainer> const&)
+FmGridControl::InitColumnByField(DbGridColumn*, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&)
+FmGridControl::InitColumnsByModels(com::sun::star::uno::Reference<com::sun::star::container::XIndexContainer> const&)
+FmGridControl::commit()
+FmGridControl::inserted()
+FmGridControl::isColumnMarked(unsigned short) const
+FmGridControl::isColumnSelected(DbGridColumn const*) const
+FmGridControl::markColumn(unsigned short)
+FmGridControl::positioned()
+FmGridControl::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+FmGridControl::selectBookmarks(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+FmGridHeader::GetModelColumnPos(unsigned short) const
+FmGridHeader::triggerColumnContextMenu(Point const&)
+FmSearchEngine::FormatField(int)
+FmSearchEngine::ImplStartNextSearch()
+FmSearchEngine::Init(rtl::OUString const&)
+FmSearchEngine::OnSearchTerminated()
+FmSearchEngine::SearchNextImpl()
+FmXGridControl::getImplementationId()
+FmXGridControl::getImplementationName()
+FmXGridControl::getSupportedServiceNames()
+FmXGridControl::imp_CreatePeer(vcl::Window*)
+FmXGridPeer::CellModified()
+FmXGridPeer::ConnectToDispatcher()
+FmXGridPeer::DisConnectFromDispatcher()
+FmXGridPeer::UpdateDispatches()
+FmXGridPeer::addColumnListeners(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+FmXGridPeer::columnChanged()
+FmXGridPeer::columnHidden(DbGridColumn const*)
+FmXGridPeer::columnVisible(DbGridColumn const*)
+FmXGridPeer::getSupportedGridSlots()
+FmXGridPeer::getSupportedURLs()
+FmXGridPeer::getUnoTunnelId()
+FmXGridPeer::imp_CreateControl(vcl::Window*, long)
+FmXGridPeer::removeColumnListeners(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+FmXGridPeer::selectionChanged()
+FmXGridPeer::startCursorListening()
+FmXGridPeer::stopCursorListening()
+FmXGridPeer::updateGrid(com::sun::star::uno::Reference<com::sun::star::sdbc::XRowSet> const&)
+FocusListenerMultiplexer::FocusListenerMultiplexer(cppu::OWeakObject&)
+FocusListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+FocusListenerMultiplexer::focusGained(com::sun::star::awt::FocusEvent const&)
+FocusListenerMultiplexer::focusLost(com::sun::star::awt::FocusEvent const&)
+FocusListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+FocusListenerMultiplexer::release()
+FontAttributes::CompareDeviceIndependentFontAttributes(FontAttributes const&) const
+FontCharMap::FontCharMap(tools::SvRef<ImplFontCharMap> const&)
+FontCharMap::GetGlyphIndex(unsigned int) const
+FontCharMap::findRangeIndex(unsigned int) const
+FontCharMap::isSymbolic() const
+FontCharMap::~FontCharMap()
+FontConfigFontOptions::SyncPattern(rtl::OString const&, unsigned int, unsigned int, bool)
+FontConfigFontOptions::cairo_font_options_substitute(_FcPattern*)
+FontConfigFontOptions::~FontConfigFontOptions()
+FontList::GetNextFontMetric(void*)
+FontList::GetStyleName(FontWeight, FontItalic) const
+FontMetric::FontMetric(vcl::font::PhysicalFontFace const&)
+FontNameBox::CachePreview(unsigned long, Point*)
+FontNameBox::InitFontMRUEntriesFile()
+FontNameBox::LoadMRUEntries(rtl::OUString const&)
+FontNameBox::SaveMRUEntries(rtl::OUString const&) const
+FontSizeBox::InsertValue(int)
+FontSizeBox::SetValue(int, FieldUnit)
+FontSizeBox::format_number(int) const
+FontSizeNames::Name2Size(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+FontSizeNames::Size2Name(int) const
+FontSubsetInfo::CreateFontSubset(FontType, _IO_FILE*, char const*, unsigned short const*, unsigned char const*, int, int*)
+FontSubsetInfo::CreateFontSubsetFromCff(int*)
+FontSubsetInfo::CreateFontSubsetFromSfnt(int*)
+FontSubsetInfo::CreateFontSubsetFromType1(int const*)
+FontSubsetInfo::FontSubsetInfo()
+FontSubsetInfo::LoadFont(FontType, unsigned char const*, int)
+FontSubsetInfo::LoadFont(vcl::TrueTypeFont*)
+FontSubsetInfo::~FontSubsetInfo()
+FormattedField::Down()
+FormattedField::DumpAsPropertyTree(tools::JsonWriter&)
+FormattedField::EventNotify(NotifyEvent&)
+FormattedField::First()
+FormattedField::GetUITestFactory() const
+FormattedField::Last()
+FormattedField::Modify()
+FormattedField::PreNotify(NotifyEvent&)
+FormattedField::SetFormatter(Formatter*)
+FormattedField::SetText(rtl::OUString const&)
+FormattedField::SetText(rtl::OUString const&, Selection const&)
+FormattedField::SetValueFromString(rtl::OUString const&)
+FormattedField::Up()
+FormattedField::dispose()
+FormattedField::set_property(rtl::OString const&, rtl::OUString const&)
+Formatter::DisableRemainderFactor()
+Formatter::EntryLostFocus()
+Formatter::FormatChanged(FORMAT_CHANGE_TYPE)
+Formatter::Formatter()
+Formatter::GetFormat(o3tl::strong_int<unsigned short, LanguageTypeTag>&) const
+Formatter::GetThousandsSep() const
+Formatter::ImplGetValue(double&)
+Formatter::ImplSetFormatKey(unsigned long)
+Formatter::ImplSetTextImpl(rtl::OUString const&, Selection const*)
+Formatter::ImplSetValue(double, bool)
+Formatter::SetFieldText(rtl::OUString const&, Selection const&)
+Formatter::SetMaxValue(double)
+Formatter::SetMinValue(double)
+Formatter::StaticFormatter::StaticFormatter()
+Formatter::StaticFormatter::~StaticFormatter()
+Formatter::~Formatter()
+FormatterBase::FormatterBase(Edit*)
+FormatterBase::GetLanguageTag() const
+FormatterBase::GetLocale() const
+FormatterBase::GetLocaleDataWrapper() const
+FormatterBase::Reformat()
+FormatterBase::ReformatAll()
+FormatterBase::~FormatterBase()
+Fraction::Fraction(double, double)
+FrameDeleteWatch::Notify(SfxHint const&)
+FreetypeFont::ApplyGlyphTransform(bool, FT_GlyphRec_*) const
+FreetypeFont::FreetypeFont(FreetypeFontInstance&, std::shared_ptr<FreetypeFontInfo> const&)
+FreetypeFont::GetFontCapabilities(vcl::FontCapabilities&) const
+FreetypeFont::GetFontCharMap() const
+FreetypeFont::GetFontFaceIndex() const
+FreetypeFont::GetFontFaceVariation() const
+FreetypeFont::GetFontFileName() const
+FreetypeFont::GetFontMetric(tools::SvRef<ImplFontMetricData> const&) const
+FreetypeFont::GetFtFace() const
+FreetypeFont::GetGlyphBoundRect(unsigned short, tools::Rectangle&, bool) const
+FreetypeFont::GetGlyphOutline(unsigned short, basegfx::B2DPolyPolygon&, bool) const
+FreetypeFont::GetTable(char const*, unsigned long*) const
+FreetypeFont::SetFontVariationsOnHBFont(hb_font_t*) const
+FreetypeFont::~FreetypeFont()
+FreetypeManager::AnnounceFonts(vcl::font::PhysicalFontCollection*) const
+FreetypeManager::CreateFont(FreetypeFontInstance*)
+FreetypeManager::FindFontFile(rtl::OString const&)
+FreetypeManager::FreetypeManager()
+FreetypeManager::InitFreetype()
+FreetypeManager::~FreetypeManager()
+FuConstUnoControl::Activate()
+GDIMetaFile::GetSizeBytes() const
+GDIMetaFile::Linker(OutputDevice*, bool)
+GDIMetaFile::Mirror(BmpMirrorFlags)
+GDIMetaFile::ReplaceAction(rtl::Reference<MetaAction>, unsigned long)
+GDIMetaFile::Rotate(o3tl::strong_int<short, FractionTag<10> >)
+GDIMetaFile::dumpAsXml(char const*) const
+GDIMetaFile::push_back(rtl::Reference<MetaAction> const&)
+GLWindow::Synchronize(bool) const
+GUB_count
+GalleryBinaryEngine::GalleryBinaryEngine(GalleryBinaryStorageLocations const&, GalleryObjectCollection&, bool)
+GalleryBinaryEngine::clearSotStorage()
+GalleryBinaryEngine::getModificationDate() const
+GalleryBinaryEngine::implCreateUniqueURL(SgaObjKind, INetURLObject const&, ConvertDataFormat)
+GalleryBinaryEngine::implWriteSgaObject(SgaObject const&, unsigned int, GalleryObject*)
+GalleryBinaryEngine::insertFileOrDirURL(INetURLObject const&, std::vector<INetURLObject, std::allocator<INetURLObject> >&)
+GalleryBinaryEngine::insertGraphic(Graphic const&, GfxLink const&, ConvertDataFormat const&, INetURLObject const&)
+GalleryBinaryEngine::insertModel(FmFormModel const&, INetURLObject const&)
+GalleryBinaryEngine::insertModelStream(tools::SvRef<SotTempStream> const&, INetURLObject const&)
+GalleryBinaryEngine::insertObject(SgaObject const&, GalleryObject*, unsigned int)
+GalleryBinaryEngine::readModel(GalleryObject const*, SdrModel&)
+GalleryBinaryEngine::readModelStream(GalleryObject const*, tools::SvRef<SotTempStream> const&)
+GalleryBinaryEngine::removeObject(std::unique_ptr<GalleryObject, std::default_delete<GalleryObject> > const&)
+GalleryBinaryEngine::setDestDir(rtl::OUString const&, bool)
+GalleryBinaryEngine::updateSvDrawObject(GalleryObject const*)
+GalleryBinaryEngine::updateTheme()
+GalleryBinaryEngine::writeGalleryTheme(SvStream&, GalleryTheme const&, GalleryThemeEntry const*)
+GalleryBinaryStorageLocations::ImplGetURLIgnoreCase(INetURLObject const&)
+GalleryBinaryStorageLocations::SetSdgExtension(INetURLObject&)
+GalleryBinaryStorageLocations::SetSdvExtension(INetURLObject&)
+GalleryBinaryStorageLocations::SetStorageLocations(INetURLObject&)
+GalleryBinaryStorageLocations::SetStrExtension(INetURLObject&)
+GalleryBinaryStorageLocations::SetThmExtension(INetURLObject&)
+GalleryExplorer::BeginLocking(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+GalleryExplorer::EndLocking(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+GalleryExplorer::FillObjList(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+GalleryExplorer::GetGraphicObj(std::basic_string_view<char16_t, std::char_traits<char16_t> >, unsigned int, Graphic*)
+GalleryExplorer::GetSdrObj(std::basic_string_view<char16_t, std::char_traits<char16_t> >, unsigned int, SdrModel*, BitmapEx*)
+GalleryExplorer::GetSdrObjCount(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+GalleryObjectCollection::GalleryObjectCollection()
+GalleryObjectCollection::clear()
+GalleryObjectCollection::getURLForPosition(unsigned int) const
+GalleryStorageLocations::~GalleryStorageLocations()
+GalleryTheme::getModificationDate() const
+GenPspGraphics::AddTempDevFont(vcl::font::PhysicalFontCollection*, rtl::OUString const&, rtl::OUString const&)
+GenPspGraphics::AddTempDevFontHelper(vcl::font::PhysicalFontCollection*, rtl::OUString const&, rtl::OUString const&)
+GenPspGraphics::AnnounceFonts(vcl::font::PhysicalFontCollection*, psp::FastPrintFontInfo const&)
+GenPspGraphics::ClearDevFontCache()
+GenPspGraphics::CreateBitmapSurface(OutputDevice const&, BitmapSystemData const&, Size const&) const
+GenPspGraphics::CreateFontSubset(rtl::OUString const&, vcl::font::PhysicalFontFace const*, unsigned short const*, unsigned char const*, int*, int, FontSubsetInfo&)
+GenPspGraphics::CreateSurface(OutputDevice const&, int, int, int, int) const
+GenPspGraphics::CreateSurface(std::shared_ptr<_cairo_surface> const&) const
+GenPspGraphics::DoFreeEmbedFontData(void const*, long)
+GenPspGraphics::DoGetEmbedFontData(int, long*)
+GenPspGraphics::DoGetGlyphWidths(int, bool, std::vector<int, std::allocator<int> >&, std::map<char16_t, unsigned int, std::less<char16_t>, std::allocator<std::pair<char16_t const, unsigned int> > >&)
+GenPspGraphics::DrawTextLayout(GenericSalLayout const&)
+GenPspGraphics::FreeEmbedFontData(void const*, long)
+GenPspGraphics::GetDevFontList(vcl::font::PhysicalFontCollection*)
+GenPspGraphics::GetEmbedFontData(vcl::font::PhysicalFontFace const*, long*)
+GenPspGraphics::GetFontCapabilities(vcl::FontCapabilities&) const
+GenPspGraphics::GetFontCharMap() const
+GenPspGraphics::GetFontMetric(tools::SvRef<ImplFontMetricData>&, int)
+GenPspGraphics::GetGlyphWidths(vcl::font::PhysicalFontFace const*, bool, std::vector<int, std::allocator<int> >&, std::map<char16_t, unsigned int, std::less<char16_t>, std::allocator<std::pair<char16_t const, unsigned int> > >&)
+GenPspGraphics::GetGraphicsData() const
+GenPspGraphics::GetNativeSurfaceHandle(std::shared_ptr<cairo::Surface>&, basegfx::B2IVector const&) const
+GenPspGraphics::GetResolution(int&, int&)
+GenPspGraphics::GetTextLayout(int)
+GenPspGraphics::Init(psp::JobData*, psp::PrinterGfx*)
+GenPspGraphics::SetFont(LogicalFontInstance*, int)
+GenPspGraphics::SetTextColor(Color)
+GenPspGraphics::SupportsCairo() const
+GenPspGraphics::~GenPspGraphics()
+GenericSalLayout::ApplyAsianKerning(rtl::OUString const&)
+GenericSalLayout::ApplyDXArray(int const*, SalLayoutFlags)
+GenericSalLayout::CreateTextLayoutCache(rtl::OUString const&)
+GenericSalLayout::DropGlyph(int)
+GenericSalLayout::GetCharWidths(std::vector<int, std::allocator<int> >&) const
+GenericSalLayout::HasVerticalAlternate(unsigned int, unsigned int)
+GenericSalLayout::Justify(int)
+GenericSalLayout::MoveGlyph(int, long)
+GenericSalLayout::ParseFeatures(rtl::OUString const&)
+GenericSalLayout::SetNeedFallback(vcl::text::ImplLayoutArgs&, int, bool)
+GenericSalLayout::Simplify(bool)
+GenericUnixSalData::InitFreetypeManager()
+GenericUnixSalData::InitPrintFontManager()
+GetExecutionEnvironment
+GetODFSaneDefaultVersion(SvtSaveOptions::ODFDefaultVersion)
+GfxLink::GetHash() const
+GfxLink::GfxLink(BinaryDataContainer const&, GfxLinkType)
+GfxLink::LoadNative(Graphic&) const
+GlobalEventConfig::GetOwnStaticMutex()
+GlobalEventConfig::getByName(rtl::OUString const&)
+GlobalEventConfig::getElementType()
+GlobalEventConfig::getEvents()
+GlobalEventConfig::hasByName(rtl::OUString const&)
+GlobalEventConfig::hasElements()
+GlobalEventConfig::replaceByName(rtl::OUString const&, com::sun::star::uno::Any const&)
+GlobalEventConfig::~GlobalEventConfig()
+GrBackendFormat::GrBackendFormat(GrBackendFormat const&)
+GrBackendFormat::GrBackendFormat(GrColorType, SkImage::CompressionType, bool)
+GrBackendFormat::GrBackendFormat(VkFormat, GrVkYcbcrConversionInfo const&, bool)
+GrBackendFormat::MakeMock(GrColorType, SkImage::CompressionType, bool)
+GrBackendFormat::MakeVk(GrVkYcbcrConversionInfo const&, bool)
+GrBackendFormat::asMockColorType() const
+GrBackendFormat::asMockCompressionType() const
+GrBackendFormat::asVkFormat(VkFormat*) const
+GrBackendFormat::channelMask() const
+GrBackendFormat::desc() const
+GrBackendFormat::getVkYcbcrConversionInfo() const
+GrBackendFormat::isMockStencilFormat() const
+GrBackendFormat::makeTexture2D() const
+GrBackendFormat::operator=(GrBackendFormat const&)
+GrBackendFormat::operator==(GrBackendFormat const&) const
+GrBackendRenderTarget::GrBackendRenderTarget()
+GrBackendRenderTarget::GrBackendRenderTarget(GrBackendRenderTarget const&)
+GrBackendRenderTarget::GrBackendRenderTarget(int, int, GrVkImageInfo const&)
+GrBackendRenderTarget::GrBackendRenderTarget(int, int, GrVkImageInfo const&, sk_sp<GrBackendSurfaceMutableStateImpl>)
+GrBackendRenderTarget::GrBackendRenderTarget(int, int, int, GrVkImageInfo const&)
+GrBackendRenderTarget::GrBackendRenderTarget(int, int, int, int, GrMockRenderTargetInfo const&)
+GrBackendRenderTarget::cleanup()
+GrBackendRenderTarget::getBackendFormat() const
+GrBackendRenderTarget::getMockRenderTargetInfo(GrMockRenderTargetInfo*) const
+GrBackendRenderTarget::getMutableState() const
+GrBackendRenderTarget::getVkImageInfo(GrVkImageInfo*) const
+GrBackendRenderTarget::isProtected() const
+GrBackendRenderTarget::operator=(GrBackendRenderTarget const&)
+GrBackendRenderTarget::setMutableState(GrBackendSurfaceMutableState const&)
+GrBackendRenderTarget::setVkImageLayout(VkImageLayout)
+GrBackendRenderTarget::~GrBackendRenderTarget()
+GrBackendSurfaceMutableState::GrBackendSurfaceMutableState(GrBackendSurfaceMutableState const&)
+GrBackendSurfaceMutableState::operator=(GrBackendSurfaceMutableState const&)
+GrBackendTexture::GrBackendTexture()
+GrBackendTexture::GrBackendTexture(GrBackendTexture const&)
+GrBackendTexture::GrBackendTexture(int, int, GrMipmapped, GrMockTextureInfo const&)
+GrBackendTexture::GrBackendTexture(int, int, GrVkImageInfo const&)
+GrBackendTexture::GrBackendTexture(int, int, GrVkImageInfo const&, sk_sp<GrBackendSurfaceMutableStateImpl>)
+GrBackendTexture::cleanup()
+GrBackendTexture::getBackendFormat() const
+GrBackendTexture::getMockTextureInfo(GrMockTextureInfo*) const
+GrBackendTexture::getMutableState() const
+GrBackendTexture::getVkImageInfo(GrVkImageInfo*) const
+GrBackendTexture::isProtected() const
+GrBackendTexture::isSameTexture(GrBackendTexture const&)
+GrBackendTexture::operator=(GrBackendTexture const&)
+GrBackendTexture::setMutableState(GrBackendSurfaceMutableState const&)
+GrBackendTexture::setVkImageLayout(VkImageLayout)
+GrBackendTexture::~GrBackendTexture()
+GrContextThreadSafeProxy::GrContextThreadSafeProxy(GrBackendApi, GrContextOptions const&)
+GrContextThreadSafeProxy::abandonContext()
+GrContextThreadSafeProxy::abandoned() const
+GrContextThreadSafeProxy::compressedBackendFormat(SkImage::CompressionType) const
+GrContextThreadSafeProxy::createCharacterization(unsigned long, SkImageInfo const&, GrBackendFormat const&, int, GrSurfaceOrigin, SkSurfaceProps const&, bool, bool, bool, GrProtected, bool, bool)
+GrContextThreadSafeProxy::defaultBackendFormat(SkColorType, GrRenderable) const
+GrContextThreadSafeProxy::init(sk_sp<GrCaps const>, sk_sp<GrThreadSafePipelineBuilder>)
+GrContextThreadSafeProxy::~GrContextThreadSafeProxy()
+GrContext_Base::GrContext_Base(sk_sp<GrContextThreadSafeProxy>)
+GrContext_Base::backend() const
+GrContext_Base::caps() const
+GrContext_Base::compressedBackendFormat(SkImage::CompressionType) const
+GrContext_Base::contextID() const
+GrContext_Base::defaultBackendFormat(SkColorType, GrRenderable) const
+GrContext_Base::init()
+GrContext_Base::options() const
+GrContext_Base::refCaps() const
+GrContext_Base::threadSafeProxy()
+GrContext_Base::~GrContext_Base()
+GrDirectContext::DirectContextID::Next()
+GrDirectContext::GrDirectContext(GrBackendApi, GrContextOptions const&)
+GrDirectContext::MakeMock(GrMockOptions const*)
+GrDirectContext::MakeMock(GrMockOptions const*, GrContextOptions const&)
+GrDirectContext::MakeVulkan(GrVkBackendContext const&)
+GrDirectContext::MakeVulkan(GrVkBackendContext const&, GrContextOptions const&)
+GrDirectContext::abandonContext()
+GrDirectContext::abandoned()
+GrDirectContext::checkAsyncWorkCompletion()
+GrDirectContext::createBackendTexture(SkPixmap const*, int, GrSurfaceOrigin, GrRenderable, GrProtected, void (*)(void*), void*)
+GrDirectContext::createBackendTexture(int, int, GrBackendFormat const&, GrMipmapped, GrRenderable, GrProtected)
+GrDirectContext::createBackendTexture(int, int, GrBackendFormat const&, SkRGBA4f<(SkAlphaType)3> const&, GrMipmapped, GrRenderable, GrProtected, void (*)(void*), void*)
+GrDirectContext::createBackendTexture(int, int, SkColorType, GrMipmapped, GrRenderable, GrProtected)
+GrDirectContext::createBackendTexture(int, int, SkColorType, SkRGBA4f<(SkAlphaType)3> const&, GrMipmapped, GrRenderable, GrProtected, void (*)(void*), void*)
+GrDirectContext::createCompressedBackendTexture(int, int, GrBackendFormat const&, SkRGBA4f<(SkAlphaType)3> const&, GrMipmapped, GrProtected, void (*)(void*), void*)
+GrDirectContext::createCompressedBackendTexture(int, int, GrBackendFormat const&, void const*, unsigned long, GrMipmapped, GrProtected, void (*)(void*), void*)
+GrDirectContext::createCompressedBackendTexture(int, int, SkImage::CompressionType, SkRGBA4f<(SkAlphaType)3> const&, GrMipmapped, GrProtected, void (*)(void*), void*)
+GrDirectContext::createCompressedBackendTexture(int, int, SkImage::CompressionType, void const*, unsigned long, GrMipmapped, GrProtected, void (*)(void*), void*)
+GrDirectContext::deleteBackendTexture(GrBackendTexture)
+GrDirectContext::dumpMemoryStatistics(SkTraceMemoryDump*) const
+GrDirectContext::flush(GrFlushInfo const&)
+GrDirectContext::freeGpuResources()
+GrDirectContext::getResourceCacheLimit() const
+GrDirectContext::getResourceCacheLimits(int*, unsigned long*) const
+GrDirectContext::getResourceCachePurgeableBytes() const
+GrDirectContext::getResourceCacheUsage(int*, unsigned long*) const
+GrDirectContext::init()
+GrDirectContext::onGetSmallPathAtlasMgr()
+GrDirectContext::performDeferredCleanup(std::chrono::duration<long, std::ratio<1l, 1000l> >, bool)
+GrDirectContext::precompileShader(SkData const&, SkData const&)
+GrDirectContext::purgeUnlockedResources(bool)
+GrDirectContext::purgeUnlockedResources(unsigned long, bool)
+GrDirectContext::releaseResourcesAndAbandonContext()
+GrDirectContext::resetContext(unsigned int)
+GrDirectContext::resetGLTextureBindings()
+GrDirectContext::setBackendRenderTargetState(GrBackendRenderTarget const&, GrBackendSurfaceMutableState const&, GrBackendSurfaceMutableState*, void (*)(void*), void*)
+GrDirectContext::setBackendTextureState(GrBackendTexture const&, GrBackendSurfaceMutableState const&, GrBackendSurfaceMutableState*, void (*)(void*), void*)
+GrDirectContext::setResourceCacheLimit(unsigned long)
+GrDirectContext::setResourceCacheLimits(int, unsigned long)
+GrDirectContext::storeVkPipelineCacheData()
+GrDirectContext::submit(bool)
+GrDirectContext::supportsDistanceFieldText() const
+GrDirectContext::syncAllOutstandingGpuWork(bool)
+GrDirectContext::threadSafeProxy()
+GrDirectContext::updateBackendTexture(GrBackendTexture const&, SkColorType, SkRGBA4f<(SkAlphaType)3> const&, void (*)(void*), void*)
+GrDirectContext::updateBackendTexture(GrBackendTexture const&, SkPixmap const*, int, GrSurfaceOrigin, void (*)(void*), void*)
+GrDirectContext::updateBackendTexture(GrBackendTexture const&, SkRGBA4f<(SkAlphaType)3> const&, void (*)(void*), void*)
+GrDirectContext::updateCompressedBackendTexture(GrBackendTexture const&, SkRGBA4f<(SkAlphaType)3> const&, void (*)(void*), void*)
+GrDirectContext::updateCompressedBackendTexture(GrBackendTexture const&, void const*, unsigned long, void (*)(void*), void*)
+GrDirectContext::wait(int, GrBackendSemaphore const*, bool)
+GrDirectContext::~GrDirectContext()
+GrDriverBugWorkarounds::GrDriverBugWorkarounds(std::vector<int, std::allocator<int> > const&)
+GrDriverBugWorkarounds::applyOverrides(GrDriverBugWorkarounds const&)
+GrImageContext::abandonContext()
+GrImageContext::abandoned()
+GrRecordingContext::colorTypeSupportedAsImage(SkColorType) const
+GrRecordingContext::maxRenderTargetSize() const
+GrRecordingContext::maxSurfaceSampleCountForColorType(SkColorType) const
+GrRecordingContext::maxTextureSize() const
+GrVkExtensions::getSpecVersions(std::function<void (*(char const*, VkInstance_T*, VkDevice_T*))()>, VkInstance_T*, VkPhysicalDevice_T*)
+GrVkExtensions::hasExtension(char const*, unsigned int) const
+GrVkExtensions::init(std::function<void (*(char const*, VkInstance_T*, VkDevice_T*))()>, VkInstance_T*, VkPhysicalDevice_T*, unsigned int, char const* const*, unsigned int, char const* const*)
+GrVkSecondaryCBDrawContext::GrVkSecondaryCBDrawContext(sk_sp<skgpu::BaseDevice>, SkSurfaceProps const*)
+GrVkSecondaryCBDrawContext::Make(GrRecordingContext*, SkImageInfo const&, GrVkDrawableInfo const&, SkSurfaceProps const*)
+GrVkSecondaryCBDrawContext::characterize(SkSurfaceCharacterization*) const
+GrVkSecondaryCBDrawContext::draw(sk_sp<SkDeferredDisplayList const>)
+GrVkSecondaryCBDrawContext::flush()
+GrVkSecondaryCBDrawContext::getCanvas()
+GrVkSecondaryCBDrawContext::isCompatible(SkSurfaceCharacterization const&) const
+GrVkSecondaryCBDrawContext::releaseResources()
+GrVkSecondaryCBDrawContext::wait(int, GrBackendSemaphore const*, bool)
+GrVkSecondaryCBDrawContext::~GrVkSecondaryCBDrawContext()
+GrYUVABackendTextureInfo::GrYUVABackendTextureInfo(SkYUVAInfo const&, GrBackendFormat const*, GrMipmapped, GrSurfaceOrigin)
+GrYUVABackendTextureInfo::operator==(GrYUVABackendTextureInfo const&) const
+GrYUVABackendTextureInfo::toYUVALocations() const
+GrYUVABackendTextures::GrYUVABackendTextures(SkYUVAInfo const&, GrBackendTexture const*, GrSurfaceOrigin)
+GrYUVABackendTextures::toYUVALocations() const
+Gradient::Gradient(Gradient&&)
+Gradient::MakeGrayscale()
+Gradient::operator=(Gradient const&)
+Gradient::operator=(Gradient&&)
+Gradient::operator==(Gradient const&) const
+GraphCtrl::CreateAccessible()
+GraphCtrl::GetPositionInDialog() const
+GraphCtrl::GetSelectedSdrObject() const
+GraphCtrl::GraphicToVD()
+GraphCtrl::InitSdrModel()
+GraphCtrl::KeyInput(KeyEvent const&)
+GraphCtrl::MarkListHasChanged()
+GraphCtrl::MouseButtonDown(MouseEvent const&)
+GraphCtrl::MouseButtonUp(MouseEvent const&)
+GraphCtrl::MouseMove(MouseEvent const&)
+GraphCtrl::Paint(OutputDevice&, tools::Rectangle const&)
+GraphCtrl::QueueIdleUpdate()
+GraphCtrl::Resize()
+GraphCtrl::SdrObjChanged(SdrObject const&)
+GraphCtrl::SdrObjCreated(SdrObject const&)
+GraphCtrl::SetDrawingArea(weld::DrawingArea*)
+GraphCtrl::SetEditMode(bool)
+GraphCtrl::SetObjKind(SdrObjKind)
+GraphCtrl::SetPolyEditMode(unsigned short)
+GraphCtrl::SetSdrMode(bool)
+Graphic::GetAnimationLoopCount() const
+Graphic::GetAnimationNotifyHdl() const
+Graphic::Graphic(std::shared_ptr<GfxLink> const&, int)
+Graphic::IsDummyContext() const
+Graphic::IsEPS() const
+Graphic::SetAnimationNotifyHdl(Link<Animation*, void> const&)
+Graphic::SetDummyContext(bool)
+Graphic::SetGfxLink(std::shared_ptr<GfxLink> const&)
+Graphic::SetReaderContext(std::shared_ptr<GraphicReader> const&)
+Graphic::getUniqueID() const
+Graphic::getUnoTunnelId()
+GraphicConverter::GraphicConverter()
+GraphicConverter::~GraphicConverter()
+GraphicDescriptor::ImpConstruct()
+GraphicDescriptor::ImpDetectBMP(SvStream&, bool)
+GraphicDescriptor::ImpDetectDXF(SvStream&, bool)
+GraphicDescriptor::ImpDetectEMF(SvStream&, bool)
+GraphicDescriptor::ImpDetectEPS(SvStream&, bool)
+GraphicDescriptor::ImpDetectGIF(SvStream&, bool)
+GraphicDescriptor::ImpDetectJPG(SvStream&, bool)
+GraphicDescriptor::ImpDetectMET(SvStream&, bool)
+GraphicDescriptor::ImpDetectPBM(SvStream&, bool)
+GraphicDescriptor::ImpDetectPCD(SvStream&, bool)
+GraphicDescriptor::ImpDetectPCT(SvStream&, bool)
+GraphicDescriptor::ImpDetectPCX(SvStream&)
+GraphicDescriptor::ImpDetectPGM(SvStream&, bool)
+GraphicDescriptor::ImpDetectPNG(SvStream&, bool)
+GraphicDescriptor::ImpDetectPPM(SvStream&, bool)
+GraphicDescriptor::ImpDetectPSD(SvStream&, bool)
+GraphicDescriptor::ImpDetectRAS(SvStream&, bool)
+GraphicDescriptor::ImpDetectSVG(SvStream&, bool)
+GraphicDescriptor::ImpDetectSVM(SvStream&, bool)
+GraphicDescriptor::ImpDetectTGA(SvStream&, bool)
+GraphicDescriptor::ImpDetectTIF(SvStream&, bool)
+GraphicDescriptor::ImpDetectWMF(SvStream&, bool)
+GraphicDescriptor::ImpDetectXBM(SvStream&, bool)
+GraphicDescriptor::ImpDetectXPM(SvStream&, bool)
+GraphicFilter::ImpTestOrFindFormat(rtl::OUString const&, SvStream&, unsigned short&)
+GraphicFilter::ImplInit()
+GraphicFilter::ImplSetError(ErrCode, SvStream const*)
+GraphicFilter::ImportGraphics(std::vector<std::shared_ptr<Graphic>, std::allocator<std::shared_ptr<Graphic> > >&, std::vector<std::unique_ptr<SvStream, std::default_delete<SvStream> >, std::allocator<std::unique_ptr<SvStream, std::default_delete<SvStream> > > >)
+GraphicFilter::ResetLastError()
+GraphicFilter::readBMP(SvStream&, Graphic&, GfxLinkType&)
+GraphicFilter::readDXF(SvStream&, Graphic&)
+GraphicFilter::readEMF(SvStream&, Graphic&, GfxLinkType&, WmfExternal const*)
+GraphicFilter::readEPS(SvStream&, Graphic&)
+GraphicFilter::readGIF(SvStream&, Graphic&, GfxLinkType&)
+GraphicFilter::readJPEG(SvStream&, Graphic&, GfxLinkType&, GraphicFilterImportFlags)
+GraphicFilter::readMET(SvStream&, Graphic&, GfxLinkType&)
+GraphicFilter::readPBM(SvStream&, Graphic&)
+GraphicFilter::readPCD(SvStream&, Graphic&)
+GraphicFilter::readPCX(SvStream&, Graphic&)
+GraphicFilter::readPDF(SvStream&, Graphic&, GfxLinkType&)
+GraphicFilter::readPICT(SvStream&, Graphic&, GfxLinkType&)
+GraphicFilter::readPNG(SvStream&, Graphic&, GfxLinkType&, std::unique_ptr<unsigned char [], std::default_delete<unsigned char []> >&, int&)
+GraphicFilter::readPSD(SvStream&, Graphic&)
+GraphicFilter::readRAS(SvStream&, Graphic&)
+GraphicFilter::readSVG(SvStream&, Graphic&, GfxLinkType&, std::unique_ptr<unsigned char [], std::default_delete<unsigned char []> >&, int&)
+GraphicFilter::readTGA(SvStream&, Graphic&)
+GraphicFilter::readTIFF(SvStream&, Graphic&, GfxLinkType&)
+GraphicFilter::readWMF(SvStream&, Graphic&, GfxLinkType&, WmfExternal const*)
+GraphicFilter::readWMF_EMF(SvStream&, Graphic&, GfxLinkType&, WmfExternal const*, VectorGraphicDataType)
+GraphicFilter::readWithTypeSerializer(SvStream&, Graphic&, GfxLinkType&, rtl::OUString)
+GraphicFilter::readXBM(SvStream&, Graphic&)
+GraphicFilter::readXPM(SvStream&, Graphic&)
+GraphicHelper::GetPreferredExtension(rtl::OUString&, Graphic const&)
+GraphicNativeTransform::rotateBitmapOnly(o3tl::strong_int<short, FractionTag<10> >)
+GraphicNativeTransform::rotateGeneric(o3tl::strong_int<short, FractionTag<10> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+GraphicNativeTransform::rotateJPEG(o3tl::strong_int<short, FractionTag<10> >)
+GraphicsRenderTests::appendTestResult(rtl::OUString, rtl::OUString, Bitmap)
+GraphicsRenderTests::returnTestStatus(vcl::test::TestResult)
+GraphicsRenderTests::runALLTests()
+GraphicsRenderTests::testAxialGradient()
+GraphicsRenderTests::testClipB2DPolyPolygon()
+GraphicsRenderTests::testClipPolyPolygon()
+GraphicsRenderTests::testClipPolygon()
+GraphicsRenderTests::testClipRectangle()
+GraphicsRenderTests::testClosedBezierWithPolygon()
+GraphicsRenderTests::testClosedBezierWithPolyline()
+GraphicsRenderTests::testComplexDrawTransformedBitmap24bpp()
+GraphicsRenderTests::testDashedLine()
+GraphicsRenderTests::testDrawBezierAAWithPolylineB2D()
+GraphicsRenderTests::testDrawBezierWithPolylineB2D()
+GraphicsRenderTests::testDrawBitmap24bpp()
+GraphicsRenderTests::testDrawBitmap32bpp()
+GraphicsRenderTests::testDrawBitmap8bppGreyScale()
+GraphicsRenderTests::testDrawBitmapExWithAlpha24bpp()
+GraphicsRenderTests::testDrawBitmapExWithAlpha32bpp()
+GraphicsRenderTests::testDrawBlend24bpp()
+GraphicsRenderTests::testDrawBlend32bpp()
+GraphicsRenderTests::testDrawDiamondWithLine()
+GraphicsRenderTests::testDrawDiamondWithPolygon()
+GraphicsRenderTests::testDrawDiamondWithPolyline()
+GraphicsRenderTests::testDrawDiamondWithPolylineB2D()
+GraphicsRenderTests::testDrawDropShapeAAWithPolygon()
+GraphicsRenderTests::testDrawDropShapeAAWithPolyline()
+GraphicsRenderTests::testDrawDropShapeWithPolygon()
+GraphicsRenderTests::testDrawDropShapeWithPolyline()
+GraphicsRenderTests::testDrawFilledRectWithPolyPolygon()
+GraphicsRenderTests::testDrawFilledRectWithPolyPolygon2D()
+GraphicsRenderTests::testDrawFilledRectWithPolygon()
+GraphicsRenderTests::testDrawFilledRectWithRectangle()
+GraphicsRenderTests::testDrawInvertN50WithRectangle()
+GraphicsRenderTests::testDrawInvertTrackFrameWithRectangle()
+GraphicsRenderTests::testDrawInvertWithRectangle()
+GraphicsRenderTests::testDrawMask24bpp()
+GraphicsRenderTests::testDrawMask32bpp()
+GraphicsRenderTests::testDrawOpenBezierWithPolyLine()
+GraphicsRenderTests::testDrawOpenBezierWithPolyLineB2D()
+GraphicsRenderTests::testDrawOpenPolygonWithPolyLine()
+GraphicsRenderTests::testDrawOpenPolygonWithPolyLineB2D()
+GraphicsRenderTests::testDrawOpenPolygonWithPolyPolygon()
+GraphicsRenderTests::testDrawOpenPolygonWithPolyPolygonB2D()
+GraphicsRenderTests::testDrawOpenPolygonWithPolygon()
+GraphicsRenderTests::testDrawOutDev()
+GraphicsRenderTests::testDrawOutDevScaledClipped()
+GraphicsRenderTests::testDrawOutDevSelf()
+GraphicsRenderTests::testDrawRectAAWithLine()
+GraphicsRenderTests::testDrawRectAAWithPixel()
+GraphicsRenderTests::testDrawRectAAWithPolyLine()
+GraphicsRenderTests::testDrawRectAAWithPolyLineB2D()
+GraphicsRenderTests::testDrawRectAAWithPolyPolygon()
+GraphicsRenderTests::testDrawRectAAWithPolyPolygonB2D()
+GraphicsRenderTests::testDrawRectAAWithPolygon()
+GraphicsRenderTests::testDrawRectAAWithRectangle()
+GraphicsRenderTests::testDrawRectWithLine()
+GraphicsRenderTests::testDrawRectWithPixel()
+GraphicsRenderTests::testDrawRectWithPolyLine()
+GraphicsRenderTests::testDrawRectWithPolyLineB2D()
+GraphicsRenderTests::testDrawRectWithPolyPolygon()
+GraphicsRenderTests::testDrawRectWithPolyPolygonB2D()
+GraphicsRenderTests::testDrawRectWithPolygon()
+GraphicsRenderTests::testDrawRectWithRectangle()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithLine()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithPixel()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithPolyLine()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithPolyLineB2D()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithPolyPolygon()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithPolyPolygonB2D()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithPolygon()
+GraphicsRenderTests::testDrawRectangleOnSize1028WithRect()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithLine()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithPixel()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithPolyLine()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithPolyLineB2D()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithPolyPolygon()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithPolygon()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithPolygonPolygonB2D()
+GraphicsRenderTests::testDrawRectangleOnSize4096WithRect()
+GraphicsRenderTests::testDrawTransformedBitmap24bpp()
+GraphicsRenderTests::testDrawTransformedBitmap32bpp()
+GraphicsRenderTests::testDrawTransformedBitmap8bppGreyScale()
+GraphicsRenderTests::testDrawXor()
+GraphicsRenderTests::testEvenOddRuleInIntersectingRectsWithPolyPolygon()
+GraphicsRenderTests::testEvenOddRuleInIntersectingRectsWithPolyPolygonB2D()
+GraphicsRenderTests::testFilledAsymmetricalDropShape()
+GraphicsRenderTests::testHalfEllipseAAWithPolyLine()
+GraphicsRenderTests::testHalfEllipseAAWithPolyLineB2D()
+GraphicsRenderTests::testHalfEllipseAAWithPolygon()
+GraphicsRenderTests::testHalfEllipseWithPolyLine()
+GraphicsRenderTests::testHalfEllipseWithPolyLineB2D()
+GraphicsRenderTests::testHalfEllipseWithPolygon()
+GraphicsRenderTests::testLineCapButt()
+GraphicsRenderTests::testLineCapRound()
+GraphicsRenderTests::testLineCapSquare()
+GraphicsRenderTests::testLineJoinBevel()
+GraphicsRenderTests::testLineJoinMiter()
+GraphicsRenderTests::testLineJoinNone()
+GraphicsRenderTests::testLineJoinRound()
+GraphicsRenderTests::testLinearGradient()
+GraphicsRenderTests::testLinearGradientAngled()
+GraphicsRenderTests::testLinearGradientBorder()
+GraphicsRenderTests::testLinearGradientIntensity()
+GraphicsRenderTests::testLinearGradientSteps()
+GraphicsRenderTests::testRadialGradient()
+GraphicsRenderTests::testRadialGradientOfs()
+GraphicsRenderTests::testTextDrawing()
+GroupBox::DataChanged(DataChangedEvent const&)
+GroupBox::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+GroupBox::FillLayoutData() const
+GroupBox::GetCanonicalFont(StyleSettings const&) const
+GroupBox::GetCanonicalTextColor(StyleSettings const&) const
+GroupBox::Paint(OutputDevice&, tools::Rectangle const&)
+GroupBox::Resize()
+GroupBox::StateChanged(StateChangedType)
+HBUILD
+HCHANGE
+HDELETE
+HDOWN
+HINSERT
+HTMLOption::HTMLOption(HtmlOptionId, rtl::OUString const&, rtl::OUString const&)
+HTMLOutFuncs::Out_Hex(SvStream&, unsigned int, unsigned char)
+HTMLParser::FilterListing(HtmlTokenId)
+HTMLParser::FilterPRE(HtmlTokenId)
+HTMLParser::FilterXMP(HtmlTokenId)
+HTMLParser::GetNextRawToken()
+HTMLParser::ParseMetaOptionsImpl(com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> const&, SvKeyValueIterator*, std::vector<HTMLOption, std::allocator<HTMLOption> > const&, unsigned short&)
+HTMLParser::ScanText(char16_t)
+HUP
+Hatch::Hatch()
+Hatch::Hatch(Hatch const&)
+Hatch::SetAngle(o3tl::strong_int<short, FractionTag<10> >)
+Hatch::SetColor(Color const&)
+Hatch::SetDistance(long)
+Hatch::operator=(Hatch const&)
+Hatch::operator==(Hatch const&) const
+HeaderBar::CalcWindowSizePixel() const
+HeaderBar::GetHelpText(unsigned short) const
+HeaderBar::GetItemId(unsigned short) const
+HeaderBar::SetAccessible(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> const&)
+HeaderFooterEntry::HeaderFooterEntry(PptSlidePersistEntry const*)
+Help::EndExtHelp()
+Help::GetHelpText(rtl::OUString const&, vcl::Window const*)
+Help::GetHelpText(rtl::OUString const&, weld::Widget const*)
+Help::SearchKeyword(rtl::OUString const&)
+Help::Start(rtl::OUString const&, vcl::Window const*)
+Help::Start(rtl::OUString const&, weld::Widget*)
+Help::UpdatePopover(void*, vcl::Window*, tools::Rectangle const&, rtl::OUString const&)
+HelpButton::Click()
+HelpButton::StateChanged(StateChangedType)
+HelpIndexer::helpDocument(rtl::OUString const&, lucene::document::Document*) const
+HelpIndexer::helpFileReader(rtl::OUString const&)
+HelpIndexer::scanForFiles()
+HelpIndexer::scanForFiles(rtl::OUString const&)
+HelpLinker::main(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const*, rtl::OUString const*)
+HelpSettings::GetBalloonDelay()
+HelpSettings::GetTipTimeout() const
+HelpSettings::HelpSettings()
+HelpSettings::operator!=(HelpSettings const&) const
+HelpSettings::operator==(HelpSettings const&) const
+HtmlWriter::writeAttribute(SvStream&, std::basic_string_view<char, std::char_traits<char> >, int)
+HtmlWriter::writeAttribute(SvStream&, std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >)
+Hunzip::Hunzip(char const*, char const*)
+Hunzip::fail(char const*, char const*)
+Hunzip::getbuf()
+Hunzip::getcode(char const*)
+Hunzip::getline(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
+Hunzip::~Hunzip()
+IDocumentMarkAccess::IsLegalPaMForCrossRefHeadingBookmark(SwPaM const&)
+IDocumentMarkAccess::iterator::get() const
+IDocumentMarkAccess::iterator::iterator(IDocumentMarkAccess::iterator const&)
+IDocumentMarkAccess::iterator::iterator(IDocumentMarkAccess::iterator&&)
+IDocumentMarkAccess::iterator::iterator(__gnu_cxx::__normal_iterator<sw::mark::MarkBase* const*, std::vector<sw::mark::MarkBase*, std::allocator<sw::mark::MarkBase*> > > const&)
+IDocumentMarkAccess::iterator::operator+(long) const
+IDocumentMarkAccess::iterator::operator++(int)
+IDocumentMarkAccess::iterator::operator+=(long)
+IDocumentMarkAccess::iterator::operator-(long) const
+IDocumentMarkAccess::iterator::operator--()
+IDocumentMarkAccess::iterator::operator--(int)
+IDocumentMarkAccess::iterator::operator-=(long)
+IDocumentMarkAccess::iterator::operator<(IDocumentMarkAccess::iterator const&) const
+IDocumentMarkAccess::iterator::operator<=(IDocumentMarkAccess::iterator const&) const
+IDocumentMarkAccess::iterator::operator=(IDocumentMarkAccess::iterator const&)
+IDocumentMarkAccess::iterator::operator>(IDocumentMarkAccess::iterator const&) const
+IDocumentMarkAccess::iterator::operator>=(IDocumentMarkAccess::iterator const&) const
+IMapCircleObject::GetType() const
+IMapCircleObject::ImpConstruct(Point const&, int, bool)
+IMapCircleObject::IsEqual(IMapCircleObject const&) const
+IMapCircleObject::IsHit(Point const&) const
+IMapCircleObject::ReadIMapObject(SvStream&)
+IMapCircleObject::Scale(Fraction const&, Fraction const&)
+IMapCircleObject::WriteCERN(SvStream&) const
+IMapCircleObject::WriteIMapObject(SvStream&) const
+IMapCircleObject::WriteNCSA(SvStream&) const
+IMapPolygonObject::GetType() const
+IMapPolygonObject::IsEqual(IMapPolygonObject const&)
+IMapPolygonObject::IsHit(Point const&) const
+IMapPolygonObject::ReadIMapObject(SvStream&)
+IMapPolygonObject::Scale(Fraction const&, Fraction const&)
+IMapPolygonObject::WriteCERN(SvStream&) const
+IMapPolygonObject::WriteIMapObject(SvStream&) const
+IMapPolygonObject::WriteNCSA(SvStream&) const
+IMapRectangleObject::GetType() const
+IMapRectangleObject::IsEqual(IMapRectangleObject const&) const
+IMapRectangleObject::IsHit(Point const&) const
+IMapRectangleObject::ReadIMapObject(SvStream&)
+IMapRectangleObject::Scale(Fraction const&, Fraction const&)
+IMapRectangleObject::WriteCERN(SvStream&) const
+IMapRectangleObject::WriteIMapObject(SvStream&) const
+IMapRectangleObject::WriteNCSA(SvStream&) const
+INetContentTypes::GetContentType(rtl::OUString const&)
+INetContentTypes::GetExtensionFromURL(rtl::OUString const&, rtl::OUString&)
+INetMIME::equalIgnoreCase(char16_t const*, char16_t const*, char const*)
+INetMIME::isIMAPAtomChar(unsigned int)
+INetMIME::scanUnsigned(char16_t const*&, char16_t const*, bool, unsigned int&)
+INetMIMEMessage::GetDefaultContentType()
+INetMIMEMessage::SetHeaderField_Impl(rtl::OString const&, rtl::OUString const&, unsigned int&)
+INetMIMEMessage::SetMIMEVersion(rtl::OUString const&)
+INetMIMEMessageStream::GetBodyLine(char*, unsigned int)
+INetMIMEMessageStream::GetHeaderLine(char*, unsigned int)
+INetMIMEMessageStream::GetMsgLine(char*, unsigned int)
+INetURLObject::appendUCS4(rtl::OUStringBuffer&, unsigned int, INetURLObject::EscapeType, INetURLObject::Part, unsigned short, bool)
+INetURLObject::appendUCS4Escape(rtl::OUStringBuffer&, unsigned int)
+INetURLObject::getUTF32(char16_t const*&, char16_t const*, INetURLObject::EncodeMechanism, unsigned short, INetURLObject::EscapeType&)
+INetURLObject::setHost(std::basic_string_view<char16_t, std::char_traits<char16_t> >, unsigned short)
+Idle::Idle(bool, char const*)
+Image::Draw(OutputDevice*, Point const&, DrawImageFlags, Size const*)
+Image::operator==(Image const&) const
+ImageControl::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+ImageControl::GetFocus()
+ImageControl::ImplDraw(OutputDevice&, Point const&, Size const&) const
+ImageControl::LoseFocus()
+ImageControl::Paint(OutputDevice&, tools::Rectangle const&)
+ImageControl::Resize()
+ImageMap::ImpDetectFormat(SvStream&)
+ImageMap::ImpReadCERN(SvStream&)
+ImageMap::ImpReadCERNCoords(char const**)
+ImageMap::ImpReadCERNLine(std::basic_string_view<char, std::char_traits<char> >)
+ImageMap::ImpReadCERNRadius(char const**)
+ImageMap::ImpReadCERNURL(char const**)
+ImageMap::ImpReadImageMap(SvStream&, unsigned long)
+ImageMap::ImpReadNCSA(SvStream&)
+ImageMap::ImpReadNCSACoords(char const**)
+ImageMap::ImpReadNCSALine(std::basic_string_view<char, std::char_traits<char> >)
+ImageMap::ImpReadNCSAURL(char const**)
+ImageMap::ImpWriteCERN(SvStream&) const
+ImageMap::ImpWriteImageMap(SvStream&) const
+ImageMap::ImpWriteNCSA(SvStream&) const
+ImageMap::Write(SvStream&) const
+ImageTree::getNameAccess()
+ImageTree::loadImage(rtl::OUString const&, rtl::OUString const&, BitmapEx&, bool, ImageLoadFlags)
+ImageTree::loadImage(rtl::OUString const&, rtl::OUString const&, BitmapEx&, bool, int, ImageLoadFlags)
+ImageTree::shutdown()
+ImpGraphic::ImpGraphic()
+ImpGraphic::ImpGraphic(Animation const&)
+ImpGraphic::ImpGraphic(BitmapEx const&)
+ImpGraphic::ImpGraphic(GDIMetaFile const&)
+ImpGraphic::ImpGraphic(GraphicExternalLink const&)
+ImpGraphic::ImpGraphic(ImpGraphic const&)
+ImpGraphic::ImpGraphic(ImpGraphic&&)
+ImpGraphic::ImpGraphic(std::shared_ptr<GfxLink> const&, int)
+ImpGraphic::ImpGraphic(std::shared_ptr<VectorGraphicData> const&)
+ImpGraphic::clear()
+ImpGraphic::clearGraphics()
+ImpGraphic::createSwapInfo()
+ImpGraphic::draw(OutputDevice&, Point const&) const
+ImpGraphic::draw(OutputDevice&, Point const&, Size const&) const
+ImpGraphic::ensureAvailable() const
+ImpGraphic::getAnimation() const
+ImpGraphic::getAnimationLoopCount() const
+ImpGraphic::getAnimationNotifyHdl() const
+ImpGraphic::getBitmap(GraphicConversionParameters const&) const
+ImpGraphic::getBitmapEx(GraphicConversionParameters const&) const
+ImpGraphic::getBitmapExRef() const
+ImpGraphic::getChecksum() const
+ImpGraphic::getGDIMetaFile() const
+ImpGraphic::getGfxLink() const
+ImpGraphic::getPageNumber() const
+ImpGraphic::getPrefMapMode() const
+ImpGraphic::getPrefSize() const
+ImpGraphic::getSharedGfxLink() const
+ImpGraphic::getSizeBytes() const
+ImpGraphic::getSizePixel() const
+ImpGraphic::getVectorGraphicData() const
+ImpGraphic::getVectorGraphicReplacement() const
+ImpGraphic::isAlpha() const
+ImpGraphic::isAnimated() const
+ImpGraphic::isAvailable() const
+ImpGraphic::isEPS() const
+ImpGraphic::isGfxLink() const
+ImpGraphic::isSupportedGraphic() const
+ImpGraphic::isTransparent() const
+ImpGraphic::makeAvailable()
+ImpGraphic::operator=(ImpGraphic const&)
+ImpGraphic::operator=(ImpGraphic&&)
+ImpGraphic::operator==(ImpGraphic const&) const
+ImpGraphic::restoreFromSwapInfo()
+ImpGraphic::setAnimationNotifyHdl(Link<Animation*, void> const&)
+ImpGraphic::setContext(std::shared_ptr<GraphicReader> const&)
+ImpGraphic::setDefaultType()
+ImpGraphic::setGfxLink(std::shared_ptr<GfxLink> const&)
+ImpGraphic::setPrefMapMode(MapMode const&)
+ImpGraphic::setPrefSize(Size const&)
+ImpGraphic::setPrepared(bool, Size const*)
+ImpGraphic::setValuesForPrefMapMod(MapMode const&)
+ImpGraphic::setValuesForPrefSize(Size const&)
+ImpGraphic::startAnimation(OutputDevice&, Point const&, Size const&, long, OutputDevice*)
+ImpGraphic::stopAnimation(OutputDevice const*, long)
+ImpGraphic::swapIn()
+ImpGraphic::swapInContent(SvStream&)
+ImpGraphic::swapInFromStream(SvStream&)
+ImpGraphic::swapInGraphic(SvStream&)
+ImpGraphic::swapOutContent(SvStream&)
+ImpGraphic::swapOutGraphic(SvStream&)
+ImpGraphic::updateFromLoadedGraphic(ImpGraphic const*)
+ImpGraphic::~ImpGraphic()
+ImplCallPreNotify(NotifyEvent&)
+ImplControlValue::clone() const
+ImplDestroyHelpWindow(bool)
+ImplFastBitmapConversion(BitmapBuffer&, BitmapBuffer const&, SalTwoRect const&)
+ImplFontMetricData::ImplFontMetricData(vcl::font::FontSelectPattern const&)
+ImplFontMetricData::ImplInitAboveTextLineSize()
+ImplFontMetricData::ImplInitFlags(OutputDevice const*)
+ImplFontMetricData::ImplInitTextLineSize(OutputDevice const*)
+ImplFontMetricData::ShouldUseWinMetrics(vcl::TTGlobalFontInfo_ const&) const
+ImplGetSalSystem()
+ImplHideSplash()
+ImplJobSetup::ImplJobSetup()
+ImplJobSetup::ImplJobSetup(ImplJobSetup const&)
+ImplJobSetup::SetDriver(rtl::OUString const&)
+ImplJobSetup::SetDriverData(unsigned char*)
+ImplJobSetup::SetDriverDataLen(unsigned int)
+ImplJobSetup::SetDuplexMode(DuplexMode)
+ImplJobSetup::SetOrientation(Orientation)
+ImplJobSetup::SetPaperBin(unsigned short)
+ImplJobSetup::SetPaperFormat(Paper)
+ImplJobSetup::SetPaperHeight(long)
+ImplJobSetup::SetPaperWidth(long)
+ImplJobSetup::SetPapersizeFromSetup(bool)
+ImplJobSetup::SetPrinterName(rtl::OUString const&)
+ImplJobSetup::SetPrinterSetupMode(PrinterSetupMode)
+ImplJobSetup::SetSystem(unsigned short)
+ImplJobSetup::SetValueMap(rtl::OUString const&, rtl::OUString const&)
+ImplJobSetup::operator==(ImplJobSetup const&) const
+ImplJobSetup::~ImplJobSetup()
+ImplPrnQueueList::Get(rtl::OUString const&)
+ImplPrnQueueList::~ImplPrnQueueList()
+ImplSVMain()
+IndexEntrySupplierWrapper::CompareIndexEntry(rtl::OUString const&, rtl::OUString const&, com::sun::star::lang::Locale const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::lang::Locale const&) const
+IndexEntrySupplierWrapper::GetFollowingText(bool) const
+IndexEntrySupplierWrapper::GetIndexKey(rtl::OUString const&, rtl::OUString const&, com::sun::star::lang::Locale const&) const
+IndexEntrySupplierWrapper::LoadAlgorithm(com::sun::star::lang::Locale const&, rtl::OUString const&, long) const
+IndexerPreProcessor::IndexerPreProcessor(fs::path const&, fs::path const&, fs::path const&)
+IndexerPreProcessor::processDocument(_xmlDoc*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+IndexerPreProcessor::~IndexerPreProcessor()
+InputDialog::SetEntryMessageType(weld::EntryMessageType)
+InputDialog::SetTooltip(rtl::OUString const&)
+InputDialog::setCheckEntry(std::function<bool (rtl::OUString)>)
+InterimItemWindow::StartIdleLayout()
+InterimToolbarPopup::EndPopupMode()
+InterimToolbarPopup::GetFocus()
+InterimToolbarPopup::dispose()
+InterimToolbarPopup::~InterimToolbarPopup()
+JobSetup::IsDefault() const
+JobSetup::operator=(JobSetup&&)
+KeyListenerMultiplexer::KeyListenerMultiplexer(cppu::OWeakObject&)
+KeyListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+KeyListenerMultiplexer::keyPressed(com::sun::star::awt::KeyEvent const&)
+KeyListenerMultiplexer::keyReleased(com::sun::star::awt::KeyEvent const&)
+KeyListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+KeyListenerMultiplexer::release()
+LabelItemWindow::dispose()
+LabelItemWindow::~LabelItemWindow()
+LanguageTag::convertBcp47ToLang()
+LanguageTag::convertBcp47ToLocale()
+LanguageTag::convertFromRtlLocale()
+LanguageTag::convertLangToLocale()
+LanguageTag::convertLocaleToLang()
+LanguageTag::getImpl()
+LanguageTag::getImpl() const
+LanguageTag::getOnTheFlyScriptType(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+LanguageTag::getScriptType() const
+LanguageTag::isIsoCountry(rtl::OUString const&)
+LanguageTag::isIsoLanguage(rtl::OUString const&)
+LanguageTag::isIsoScript(rtl::OUString const&)
+LanguageTag::registerImpl() const
+LanguageTag::resetVars()
+LanguageTag::synCanonicalize()
+LanguageTag::syncFromImpl()
+LanguageTag::syncVarsFromImpl() const
+LanguageTag::syncVarsFromRawImpl() const
+LineInfo::LineInfo(LineInfo&&)
+LineInfo::applyToB2DPolyPolygon(basegfx::B2DPolyPolygon&, basegfx::B2DPolyPolygon&) const
+LinguMgr::GetChangeAll()
+LinguMgr::GetDicList()
+LinguMgr::GetHyph()
+LinguMgr::GetIgnoreAll()
+LinguMgr::GetProp()
+LinguMgr::GetSpell()
+LinguMgr::GetStandard()
+LinguMgr::GetThes()
+ListBox::AdaptDropDownLineCountToMaximum()
+ListBox::AddSeparator(int)
+ListBox::ApplySettings(OutputDevice&)
+ListBox::CalcSubEditSize() const
+ListBox::DataChanged(DataChangedEvent const&)
+ListBox::DoubleClick()
+ListBox::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+ListBox::DumpAsPropertyTree(tools::JsonWriter&)
+ListBox::FillLayoutData() const
+ListBox::GetDisplayBackground() const
+ListBox::GetEntryData(int) const
+ListBox::GetFocus()
+ListBox::GetOptimalSize() const
+ListBox::GetUITestFactory() const
+ListBox::IsTravelSelect() const
+ListBox::ListBox(WindowType)
+ListBox::LoseFocus()
+ListBox::PreNotify(NotifyEvent&)
+ListBox::Resize()
+ListBox::SelectEntry(std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool)
+ListBox::SetEntryData(int, void*)
+ListBox::SetEntryFlags(int, ListBoxEntryFlags)
+ListBox::StateChanged(StateChangedType)
+ListBox::dispose()
+ListBox::setMaxWidthChars(int)
+ListBox::setPosSizePixel(long, long, long, long, PosSizeFlags)
+ListBox::set_property(rtl::OString const&, rtl::OUString const&)
+ListBox::~ListBox()
+ListenerMultiplexerBase::ListenerMultiplexerBase(cppu::OWeakObject&)
+ListenerMultiplexerBase::queryInterface(com::sun::star::uno::Type const&)
+LocaleDataWrapper::ImplAddFormatNum(rtl::OUStringBuffer&, long, unsigned short, bool, bool) const
+LocaleDataWrapper::getAllInstalledLocaleNames() const
+LocaleDataWrapper::getLanguageCountryInfo() const
+LocaleDataWrapper::getMyLocale() const
+LocaleDataWrapper::loadCurrencyFormats()
+LocaleDataWrapper::loadData()
+LocaleDataWrapper::loadDateAcceptancePatterns(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&)
+LocaleDataWrapper::loadDateOrders()
+LocaleDataWrapper::loadDigitGrouping()
+LocaleDataWrapper::scanCurrFormatImpl(rtl::OUString const&, int, int&, int&, int&, int&, int&) const
+LocaleDataWrapper::scanDateOrderImpl(rtl::OUString const&) const
+LogicalFontInstance::AddFallbackForUnicode(unsigned int, FontWeight, rtl::OUString const&)
+LogicalFontInstance::GetFallbackForUnicode(unsigned int, FontWeight, rtl::OUString*) const
+LogicalFontInstance::GetGlyphBoundRect(unsigned short, tools::Rectangle&, bool) const
+LogicalFontInstance::GetScale(double*, double*)
+LogicalFontInstance::IgnoreFallbackForUnicode(unsigned int, FontWeight, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+LogicalFontInstance::IsGraphiteFont()
+LokChartHelper::Hit(Point const&)
+LokChartHelper::Invalidate()
+LokChartHelper::PaintTile(VirtualDevice&, tools::Rectangle const&)
+LongCurrencyBox::EventNotify(NotifyEvent&)
+LongCurrencyBox::Modify()
+LongCurrencyBox::ReformatAll()
+LongCurrencyFormatter::GetCurrencySymbol() const
+LongCurrencyFormatter::GetValue() const
+LongCurrencyFormatter::LongCurrencyFormatter(Edit*)
+LongCurrencyFormatter::Reformat()
+LongCurrencyFormatter::ReformatAll()
+LongCurrencyFormatter::SetDecimalDigits(unsigned short)
+LongCurrencyFormatter::SetUserValue(BigInt)
+LongCurrencyFormatter::SetValue(BigInt const&)
+LongCurrencyFormatter::~LongCurrencyFormatter()
+MailDispatcher::cloneListener()
+MailDispatcher::onTerminated()
+MailDispatcher::run()
+MailDispatcher::sendMailMessageNotifyListener(com::sun::star::uno::Reference<com::sun::star::mail::XMailMessage> const&)
+MailDispatcher::~MailDispatcher()
+MapMode::IsDefault() const
+Menu::CheckItem(std::basic_string_view<char, std::char_traits<char> >, bool)
+Menu::GetHelpId(unsigned short) const
+Menu::InsertItem(unsigned short, Image const&, MenuItemBits, rtl::OString const&, unsigned short)
+Menu::InsertItem(unsigned short, rtl::OUString const&, Image const&, MenuItemBits, rtl::OString const&, unsigned short)
+Menu::Menu()
+Menu::MenuBarKeyInput(KeyEvent const&)
+Menu::Select()
+Menu::SetAccessibleDescription(unsigned short, rtl::OUString const&)
+Menu::SetAccessibleName(unsigned short, rtl::OUString const&)
+Menu::dispose()
+Menu::operator=(Menu const&)
+Menu::~Menu()
+MenuBar::AddMenuBarButton(Image const&, Link<MenuBarButtonCallbackArg&, bool> const&, rtl::OUString const&)
+MenuBar::ClosePopup(Menu*)
+MenuBar::GetMenuBarButtonRectPixel(unsigned short)
+MenuBar::GetMenuBarHeight() const
+MenuBar::HandleMenuHighlightEvent(Menu*, unsigned short) const
+MenuBar::MenuBar(MenuBar const&)
+MenuBar::MenuBarKeyInput(KeyEvent const&)
+MenuBar::RemoveMenuBarButton(unsigned short)
+MenuBar::SelectItem(unsigned short)
+MenuBar::SetMenuBarButtonHighlightHdl(unsigned short, Link<MenuBarButtonCallbackArg&, bool> const&)
+MenuBar::ShowButtons(bool, bool, bool)
+MenuBar::dispose()
+MenuBar::getMenuBarWindow()
+MenuBar::~MenuBar()
+MenuBarUpdateIconManager::AddMenuBarIcon(SystemWindow*, bool)
+MenuBarUpdateIconManager::GetBubbleWindow()
+MenuBarUpdateIconManager::MenuBarUpdateIconManager()
+MenuBarUpdateIconManager::RemoveBubbleWindow(bool)
+MenuBarUpdateIconManager::SetBubbleChanged()
+MenuBarUpdateIconManager::SetBubbleImage(Image const&)
+MenuBarUpdateIconManager::SetBubbleText(rtl::OUString const&)
+MenuBarUpdateIconManager::SetBubbleTitle(rtl::OUString const&)
+MenuBarUpdateIconManager::SetShowBubble(bool)
+MenuBarUpdateIconManager::SetShowMenuIcon(bool)
+MenuBarUpdateIconManager::~MenuBarUpdateIconManager()
+MenuButton::Activate()
+MenuButton::CancelMenu()
+MenuButton::ExecuteMenu()
+MenuButton::GetUITestFactory() const
+MenuButton::InPopupMode() const
+MenuButton::KeyInput(KeyEvent const&)
+MenuButton::MouseButtonDown(MouseEvent const&)
+MenuButton::Select()
+MenuButton::SetCurItemId()
+MenuButton::SetPopover(vcl::Window*)
+MenuButton::SetPopupMenu(PopupMenu*)
+MenuButton::dispose()
+MenuButton::~MenuButton()
+MenuOrToolMenuButton::MenuOrToolMenuButton(SvxColorToolBoxControl*, ToolBox*, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>)
+MenuOrToolMenuButton::MenuOrToolMenuButton(weld::MenuButton*)
+MenuOrToolMenuButton::get_active() const
+MenuOrToolMenuButton::get_widget() const
+MetaAction::Clone() const
+MetaAction::Execute(OutputDevice*)
+MetaAction::MetaAction()
+MetaAction::MetaAction(MetaAction const&)
+MetaAction::MetaAction(MetaActionType)
+MetaAction::Move(long, long)
+MetaAction::Scale(double, double)
+MetaAction::~MetaAction()
+MetaArcAction::Clone() const
+MetaArcAction::Execute(OutputDevice*)
+MetaArcAction::MetaArcAction()
+MetaArcAction::Move(long, long)
+MetaArcAction::Scale(double, double)
+MetaArcAction::~MetaArcAction()
+MetaBmpAction::Clone() const
+MetaBmpAction::Execute(OutputDevice*)
+MetaBmpAction::MetaBmpAction()
+MetaBmpAction::Move(long, long)
+MetaBmpAction::Scale(double, double)
+MetaBmpAction::~MetaBmpAction()
+MetaBmpExAction::Clone() const
+MetaBmpExAction::Execute(OutputDevice*)
+MetaBmpExAction::MetaBmpExAction()
+MetaBmpExAction::Move(long, long)
+MetaBmpExAction::Scale(double, double)
+MetaBmpExAction::~MetaBmpExAction()
+MetaBmpExScaleAction::Clone() const
+MetaBmpExScaleAction::Execute(OutputDevice*)
+MetaBmpExScaleAction::MetaBmpExScaleAction()
+MetaBmpExScaleAction::Move(long, long)
+MetaBmpExScaleAction::Scale(double, double)
+MetaBmpExScaleAction::~MetaBmpExScaleAction()
+MetaBmpExScalePartAction::Clone() const
+MetaBmpExScalePartAction::Execute(OutputDevice*)
+MetaBmpExScalePartAction::MetaBmpExScalePartAction()
+MetaBmpExScalePartAction::Move(long, long)
+MetaBmpExScalePartAction::Scale(double, double)
+MetaBmpExScalePartAction::~MetaBmpExScalePartAction()
+MetaBmpScaleAction::Clone() const
+MetaBmpScaleAction::Execute(OutputDevice*)
+MetaBmpScaleAction::MetaBmpScaleAction()
+MetaBmpScaleAction::Move(long, long)
+MetaBmpScaleAction::Scale(double, double)
+MetaBmpScaleAction::~MetaBmpScaleAction()
+MetaBmpScalePartAction::Clone() const
+MetaBmpScalePartAction::Execute(OutputDevice*)
+MetaBmpScalePartAction::MetaBmpScalePartAction()
+MetaBmpScalePartAction::Move(long, long)
+MetaBmpScalePartAction::Scale(double, double)
+MetaBmpScalePartAction::~MetaBmpScalePartAction()
+MetaChordAction::Clone() const
+MetaChordAction::Execute(OutputDevice*)
+MetaChordAction::MetaChordAction()
+MetaChordAction::Move(long, long)
+MetaChordAction::Scale(double, double)
+MetaChordAction::~MetaChordAction()
+MetaClipRegionAction::Clone() const
+MetaClipRegionAction::MetaClipRegionAction()
+MetaClipRegionAction::MetaClipRegionAction(vcl::Region const&, bool)
+MetaClipRegionAction::Move(long, long)
+MetaClipRegionAction::Scale(double, double)
+MetaClipRegionAction::~MetaClipRegionAction()
+MetaCommentAction::Clone() const
+MetaCommentAction::Execute(OutputDevice*)
+MetaCommentAction::MetaCommentAction()
+MetaCommentAction::MetaCommentAction(MetaCommentAction const&)
+MetaCommentAction::Move(long, long)
+MetaCommentAction::Scale(double, double)
+MetaCommentAction::~MetaCommentAction()
+MetaEPSAction::Clone() const
+MetaEPSAction::Execute(OutputDevice*)
+MetaEPSAction::MetaEPSAction()
+MetaEPSAction::MetaEPSAction(Point const&, Size const&, GfxLink const&, GDIMetaFile const&)
+MetaEPSAction::Move(long, long)
+MetaEPSAction::Scale(double, double)
+MetaEPSAction::~MetaEPSAction()
+MetaEllipseAction::Clone() const
+MetaEllipseAction::Execute(OutputDevice*)
+MetaEllipseAction::MetaEllipseAction()
+MetaEllipseAction::Move(long, long)
+MetaEllipseAction::Scale(double, double)
+MetaEllipseAction::~MetaEllipseAction()
+MetaFillColorAction::Clone() const
+MetaFillColorAction::MetaFillColorAction()
+MetaFillColorAction::~MetaFillColorAction()
+MetaFontAction::Clone() const
+MetaFontAction::MetaFontAction()
+MetaFontAction::Scale(double, double)
+MetaFontAction::~MetaFontAction()
+MetaGradientExAction::Clone() const
+MetaGradientExAction::Execute(OutputDevice*)
+MetaGradientExAction::MetaGradientExAction()
+MetaGradientExAction::MetaGradientExAction(tools::PolyPolygon const&, Gradient const&)
+MetaGradientExAction::Move(long, long)
+MetaGradientExAction::Scale(double, double)
+MetaGradientExAction::~MetaGradientExAction()
+MetaISectRectClipRegionAction::Clone() const
+MetaISectRectClipRegionAction::MetaISectRectClipRegionAction()
+MetaISectRectClipRegionAction::Move(long, long)
+MetaISectRectClipRegionAction::Scale(double, double)
+MetaISectRectClipRegionAction::~MetaISectRectClipRegionAction()
+MetaISectRegionClipRegionAction::Clone() const
+MetaISectRegionClipRegionAction::MetaISectRegionClipRegionAction()
+MetaISectRegionClipRegionAction::Move(long, long)
+MetaISectRegionClipRegionAction::Scale(double, double)
+MetaISectRegionClipRegionAction::~MetaISectRegionClipRegionAction()
+MetaLayoutModeAction::Clone() const
+MetaLayoutModeAction::MetaLayoutModeAction()
+MetaLayoutModeAction::~MetaLayoutModeAction()
+MetaLineAction::Clone() const
+MetaLineAction::Execute(OutputDevice*)
+MetaLineAction::MetaLineAction()
+MetaLineAction::MetaLineAction(Point const&, Point const&)
+MetaLineAction::Move(long, long)
+MetaLineAction::Scale(double, double)
+MetaLineAction::~MetaLineAction()
+MetaLineColorAction::Clone() const
+MetaLineColorAction::MetaLineColorAction()
+MetaLineColorAction::~MetaLineColorAction()
+MetaMapModeAction::Clone() const
+MetaMapModeAction::MetaMapModeAction()
+MetaMapModeAction::MetaMapModeAction(MapMode const&)
+MetaMapModeAction::Scale(double, double)
+MetaMapModeAction::~MetaMapModeAction()
+MetaMoveClipRegionAction::Clone() const
+MetaMoveClipRegionAction::MetaMoveClipRegionAction()
+MetaMoveClipRegionAction::MetaMoveClipRegionAction(long, long)
+MetaMoveClipRegionAction::Scale(double, double)
+MetaMoveClipRegionAction::~MetaMoveClipRegionAction()
+MetaOverlineColorAction::Clone() const
+MetaOverlineColorAction::MetaOverlineColorAction()
+MetaOverlineColorAction::MetaOverlineColorAction(Color const&, bool)
+MetaOverlineColorAction::~MetaOverlineColorAction()
+MetaPieAction::Clone() const
+MetaPieAction::Execute(OutputDevice*)
+MetaPieAction::MetaPieAction()
+MetaPieAction::Move(long, long)
+MetaPieAction::Scale(double, double)
+MetaPieAction::~MetaPieAction()
+MetaPixelAction::Clone() const
+MetaPixelAction::Execute(OutputDevice*)
+MetaPixelAction::MetaPixelAction()
+MetaPixelAction::Move(long, long)
+MetaPixelAction::Scale(double, double)
+MetaPixelAction::~MetaPixelAction()
+MetaPointAction::Clone() const
+MetaPointAction::Execute(OutputDevice*)
+MetaPointAction::MetaPointAction()
+MetaPointAction::MetaPointAction(Point const&)
+MetaPointAction::Move(long, long)
+MetaPointAction::Scale(double, double)
+MetaPointAction::~MetaPointAction()
+MetaPolyLineAction::Clone() const
+MetaPolyLineAction::Execute(OutputDevice*)
+MetaPolyLineAction::MetaPolyLineAction()
+MetaPolyLineAction::MetaPolyLineAction(tools::Polygon const&)
+MetaPolyLineAction::Move(long, long)
+MetaPolyLineAction::Scale(double, double)
+MetaPolyLineAction::~MetaPolyLineAction()
+MetaPolyPolygonAction::Clone() const
+MetaPolyPolygonAction::Execute(OutputDevice*)
+MetaPolyPolygonAction::MetaPolyPolygonAction()
+MetaPolyPolygonAction::Move(long, long)
+MetaPolyPolygonAction::Scale(double, double)
+MetaPolyPolygonAction::~MetaPolyPolygonAction()
+MetaPolygonAction::Clone() const
+MetaPolygonAction::Execute(OutputDevice*)
+MetaPolygonAction::MetaPolygonAction()
+MetaPolygonAction::Move(long, long)
+MetaPolygonAction::Scale(double, double)
+MetaPolygonAction::~MetaPolygonAction()
+MetaPopAction::Clone() const
+MetaPopAction::~MetaPopAction()
+MetaPushAction::Clone() const
+MetaPushAction::MetaPushAction()
+MetaPushAction::~MetaPushAction()
+MetaRasterOpAction::Clone() const
+MetaRasterOpAction::MetaRasterOpAction()
+MetaRasterOpAction::~MetaRasterOpAction()
+MetaRectAction::Clone() const
+MetaRectAction::Execute(OutputDevice*)
+MetaRectAction::MetaRectAction()
+MetaRectAction::Move(long, long)
+MetaRectAction::Scale(double, double)
+MetaRectAction::~MetaRectAction()
+MetaRefPointAction::Clone() const
+MetaRefPointAction::MetaRefPointAction()
+MetaRefPointAction::MetaRefPointAction(Point const&, bool)
+MetaRefPointAction::~MetaRefPointAction()
+MetaRoundRectAction::Clone() const
+MetaRoundRectAction::Execute(OutputDevice*)
+MetaRoundRectAction::MetaRoundRectAction()
+MetaRoundRectAction::Move(long, long)
+MetaRoundRectAction::Scale(double, double)
+MetaRoundRectAction::~MetaRoundRectAction()
+MetaTextAlignAction::Clone() const
+MetaTextAlignAction::MetaTextAlignAction()
+MetaTextAlignAction::~MetaTextAlignAction()
+MetaTextArrayAction::Clone() const
+MetaTextArrayAction::Execute(OutputDevice*)
+MetaTextArrayAction::MetaTextArrayAction()
+MetaTextArrayAction::MetaTextArrayAction(MetaTextArrayAction const&)
+MetaTextArrayAction::MetaTextArrayAction(Point const&, rtl::OUString const&, std::vector<int, std::allocator<int> > const&, int, int)
+MetaTextArrayAction::Move(long, long)
+MetaTextArrayAction::Scale(double, double)
+MetaTextArrayAction::SetDXArray(std::vector<int, std::allocator<int> >)
+MetaTextArrayAction::~MetaTextArrayAction()
+MetaTextColorAction::Clone() const
+MetaTextColorAction::MetaTextColorAction()
+MetaTextColorAction::~MetaTextColorAction()
+MetaTextFillColorAction::Clone() const
+MetaTextFillColorAction::MetaTextFillColorAction()
+MetaTextFillColorAction::~MetaTextFillColorAction()
+MetaTextLanguageAction::Clone() const
+MetaTextLanguageAction::MetaTextLanguageAction()
+MetaTextLanguageAction::MetaTextLanguageAction(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+MetaTextLanguageAction::~MetaTextLanguageAction()
+MetaTextLineColorAction::Clone() const
+MetaTextLineColorAction::MetaTextLineColorAction()
+MetaTextLineColorAction::MetaTextLineColorAction(Color const&, bool)
+MetaTextLineColorAction::~MetaTextLineColorAction()
+MetaWallpaperAction::Clone() const
+MetaWallpaperAction::Execute(OutputDevice*)
+MetaWallpaperAction::MetaWallpaperAction()
+MetaWallpaperAction::Move(long, long)
+MetaWallpaperAction::Scale(double, double)
+MetaWallpaperAction::~MetaWallpaperAction()
+MetafileXmlDump::dump(GDIMetaFile const&, SvStream&)
+MetafileXmlDump::writeXml(GDIMetaFile const&, tools::XmlWriter&)
+MetricBox::CalcMinimumSize() const
+MetricBox::DataChanged(DataChangedEvent const&)
+MetricBox::EventNotify(NotifyEvent&)
+MetricBox::Modify()
+MetricBox::PreNotify(NotifyEvent&)
+MetricBox::ReformatAll()
+MetricBox::dispose()
+MetricField::CalcMinimumSize() const
+MetricField::DataChanged(DataChangedEvent const&)
+MetricField::Down()
+MetricField::DumpAsPropertyTree(tools::JsonWriter&)
+MetricField::EventNotify(NotifyEvent&)
+MetricField::First()
+MetricField::GetUITestFactory() const
+MetricField::Last()
+MetricField::Modify()
+MetricField::PreNotify(NotifyEvent&)
+MetricField::Up()
+MetricField::dispose()
+MetricField::set_property(rtl::OString const&, rtl::OUString const&)
+MetricFormatter::CreateFieldText(long) const
+MetricFormatter::GetValueFromString(rtl::OUString const&) const
+MetricFormatter::GetValueFromStringUnit(rtl::OUString const&, FieldUnit) const
+MetricFormatter::MetricFormatter(Edit*)
+MetricFormatter::Reformat()
+MetricFormatter::SetUnit(FieldUnit)
+MetricFormatter::SetValue(long)
+MetricFormatter::~MetricFormatter()
+MiscSettings::MiscSettings()
+MiscSettings::SetEnableLocalizedDecimalSep(bool)
+MiscSettings::operator!=(MiscSettings const&) const
+MiscSettings::operator==(MiscSettings const&) const
+MnemonicGenerator::GetCharClass()
+ModuleSizeExceeded::isAbort() const
+MoreButton::Click()
+MoreButton::dispose()
+MoreButton::~MoreButton()
+MouseListenerMultiplexer::MouseListenerMultiplexer(cppu::OWeakObject&)
+MouseListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+MouseListenerMultiplexer::mouseEntered(com::sun::star::awt::MouseEvent const&)
+MouseListenerMultiplexer::mouseExited(com::sun::star::awt::MouseEvent const&)
+MouseListenerMultiplexer::mousePressed(com::sun::star::awt::MouseEvent const&)
+MouseListenerMultiplexer::mouseReleased(com::sun::star::awt::MouseEvent const&)
+MouseListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+MouseListenerMultiplexer::release()
+MouseMotionListenerMultiplexer::MouseMotionListenerMultiplexer(cppu::OWeakObject&)
+MouseMotionListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+MouseMotionListenerMultiplexer::mouseDragged(com::sun::star::awt::MouseEvent const&)
+MouseMotionListenerMultiplexer::mouseMoved(com::sun::star::awt::MouseEvent const&)
+MouseMotionListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+MouseMotionListenerMultiplexer::release()
+MouseSettings::CopyData()
+MouseSettings::GetActionDelay()
+MouseSettings::GetButtonStartRepeat()
+MouseSettings::GetContextMenuClicks()
+MouseSettings::GetContextMenuCode()
+MouseSettings::GetDoubleClickHeight() const
+MouseSettings::GetDoubleClickWidth() const
+MouseSettings::GetScrollRepeat()
+MouseSettings::GetStartDragCode()
+MouseSettings::GetStartDragHeight() const
+MouseSettings::GetStartDragWidth() const
+MouseSettings::MouseSettings()
+MouseSettings::operator!=(MouseSettings const&) const
+MouseSettings::operator==(MouseSettings const&) const
+MsLangId::getPlatformSystemLanguage()
+MsLangId::getPlatformSystemUILanguage()
+MultiSelection::operator=(MultiSelection const&)
+MyThes::CleanUpAfterLookup(mentry**, int)
+MyThes::Lookup(char const*, int, mentry**)
+MyThes::MyThes(char const*, char const*)
+MyThes::binsearch(char*, char**, int)
+MyThes::get_th_encoding()
+MyThes::mychomp(char*)
+MyThes::myfopen(char const*, char const*)
+MyThes::mystr_indexOfChar(char const*, int)
+MyThes::mystrdup(char const*)
+MyThes::readLine(_IO_FILE*, char*, int)
+MyThes::thCleanup()
+MyThes::thInitialize(char const*, char const*)
+MyThes::~MyThes()
+NameOrIndex::CheckNamedItem(NameOrIndex const*, unsigned short, SfxItemPool const*, bool (*)(NameOrIndex const*, NameOrIndex const*), TranslateId, rtl::Reference<XPropertyList> const&)
+NameOrIndex::Clone(SfxItemPool*) const
+NameOrIndex::NameOrIndex(NameOrIndex const&)
+NameOrIndex::NameOrIndex(unsigned short, rtl::OUString const&)
+NameOrIndex::dumpAsXml(_xmlTextWriter*) const
+NameOrIndex::operator==(SfxPoolItem const&) const
+NfCurrencyEntry::BuildNegativeFormatString(bool, LocaleDataWrapper const&, unsigned short) const
+NfCurrencyEntry::BuildPositiveFormatString(bool, LocaleDataWrapper const&, unsigned short) const
+NfCurrencyEntry::CompleteNegativeFormatString(rtl::OUStringBuffer&, bool, unsigned short) const
+NfCurrencyEntry::CompleteNegativeFormatString(rtl::OUStringBuffer&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, unsigned short)
+NfCurrencyEntry::CompletePositiveFormatString(rtl::OUStringBuffer&, bool, unsigned short) const
+NfCurrencyEntry::CompletePositiveFormatString(rtl::OUStringBuffer&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, unsigned short)
+NfCurrencyEntry::GetEffectiveNegativeFormat(unsigned short, unsigned short, bool)
+NfCurrencyEntry::GetEffectivePositiveFormat(unsigned short, unsigned short, bool)
+NfCurrencyEntry::NfCurrencyEntry(LocaleDataWrapper const&, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+NfCurrencyEntry::NfCurrencyEntry(com::sun::star::i18n::Currency const&, LocaleDataWrapper const&, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+NfCurrencyEntry::operator==(NfCurrencyEntry const&) const
+NfCurrencyTable::begin()
+NfCurrencyTable::insert(__gnu_cxx::__normal_iterator<NfCurrencyEntry*, std::vector<NfCurrencyEntry, std::allocator<NfCurrencyEntry> > > const&, NfCurrencyEntry)
+NfCurrencyTable::operator[](unsigned long)
+NotebookBar::DataChanged(DataChangedEvent const&)
+NotebookBar::GetOptimalSize() const
+NotebookBar::NotebookBar(vcl::Window*, rtl::OString const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, NotebookBarAddonsItem const&)
+NotebookBar::PreNotify(NotifyEvent&)
+NotebookBar::Resize()
+NotebookBar::SetSystemWindow(SystemWindow*)
+NotebookBar::StateChanged(StateChangedType)
+NotebookBar::UpdateBackground()
+NotebookBar::UpdateDefaultSettings()
+NotebookBar::UpdatePersonaSettings()
+NotebookBar::dispose()
+NotebookBar::setPosSizePixel(long, long, long, long, PosSizeFlags)
+NotebookBar::~NotebookBar()
+NotifyEvent::NotifyEvent(MouseNotifyEvent, vcl::Window*, void const*)
+NotifyEvent::~NotifyEvent()
+NumFormatListBox::Init()
+NumFormatListBox::clear()
+NumericBox::CalcMinimumSize() const
+NumericBox::DataChanged(DataChangedEvent const&)
+NumericBox::EventNotify(NotifyEvent&)
+NumericBox::Modify()
+NumericBox::PreNotify(NotifyEvent&)
+NumericBox::ReformatAll()
+NumericBox::dispose()
+NumericFormatter::ClipAgainstMinMax(long) const
+NumericFormatter::CreateFieldText(long) const
+NumericFormatter::Denormalize(long) const
+NumericFormatter::FieldDown()
+NumericFormatter::FieldFirst()
+NumericFormatter::FieldLast()
+NumericFormatter::FieldUp()
+NumericFormatter::FormatValue(Selection const*)
+NumericFormatter::GetValueFromString(rtl::OUString const&) const
+NumericFormatter::GetValueString() const
+NumericFormatter::Normalize(long) const
+NumericFormatter::NumericFormatter(Edit*)
+NumericFormatter::Reformat()
+NumericFormatter::SetUserValue(long)
+NumericFormatter::SetValue(long)
+NumericFormatter::SetValueFromString(rtl::OUString const&)
+NumericFormatter::~NumericFormatter()
+OKButton::Click()
+OLEObjCache::operator[](unsigned long) const
+OLEObjCache::~OLEObjCache()
+Octree::CreatePalette(OctreeNode*)
+Octree::GetBestPaletteIndex(BitmapColor const&)
+Octree::GetPalIndex(OctreeNode const*)
+OfaPtrItem::Clone(SfxItemPool*) const
+OfaPtrItem::operator==(SfxPoolItem const&) const
+Op(SkPath const&, SkPath const&, SkPathOp, SkPath*)
+OpenCLConfig::OpenCLConfig()
+OpenCLConfig::checkImplementation(OpenCLPlatformInfo const&, OpenCLDeviceInfo const&) const
+OpenCLConfig::operator==(OpenCLConfig const&) const
+OpenFileDropTargetListener::disposing(com::sun::star::lang::EventObject const&)
+OpenFileDropTargetListener::dragEnter(com::sun::star::datatransfer::dnd::DropTargetDragEnterEvent const&)
+OpenFileDropTargetListener::dragExit(com::sun::star::datatransfer::dnd::DropTargetEvent const&)
+OpenFileDropTargetListener::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&)
+OpenFileDropTargetListener::drop(com::sun::star::datatransfer::dnd::DropTargetDropEvent const&)
+OpenFileDropTargetListener::dropActionChanged(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&)
+OpenFileDropTargetListener::implts_BeginDrag(com::sun::star::uno::Sequence<com::sun::star::datatransfer::DataFlavor> const&)
+OpenFileDropTargetListener::implts_EndDrag()
+OpenFileDropTargetListener::implts_IsDropFormatSupported(SotClipboardFormatId)
+OpenFileDropTargetListener::implts_OpenFile(rtl::OUString const&)
+OpenFileDropTargetListener::~OpenFileDropTargetListener()
+OpenGLContext::ImplInit()
+OpenGLContext::destroyCurrentContext()
+OpenGLContext::getChildWindow() const
+OpenGLContext::hasCurrent()
+OpenGLContext::initWindow()
+OpenGLContext::isCurrent()
+OpenGLContext::makeCurrent()
+OpenGLContext::prepareForYield()
+OpenGLContext::resetCurrent()
+OpenGLContext::swapBuffers()
+OpenGLHelper::ConvertBufferToBitmapEx(unsigned char const*, long, long)
+OpenGLHelper::GLErrorString(unsigned int)
+OpenGLHelper::GetDigest(rtl::OUString const&, rtl::OUString const&, std::basic_string_view<char, std::char_traits<char> >)
+OpenGLHelper::LoadShaders(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, std::basic_string_view<char, std::char_traits<char> >, std::basic_string_view<char, std::char_traits<char> >)
+OpenGLHelper::OptimalBufferFormat()
+OpenGLHelper::checkGLError(char const*, unsigned long)
+OpenGLHelper::debugMsgPrint(int, char const*, ...)
+OpenGLHelper::debugMsgStream(std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> > const&)
+OpenGLHelper::debugMsgStreamWarn(std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> > const&)
+OpenGLHelper::isDeviceDenylisted()
+OpenGLHelper::renderToFile(long, long, rtl::OUString const&)
+OpenGLZone::checkDebug(int, CrashWatchdogTimingsValues const&)
+OpenGLZone::getCrashWatchdogTimingsValues()
+OpenGLZone::hardDisable()
+OpenGLZone::relaxWatchdogTimings()
+Outliner::Collapse(Paragraph const*)
+Outliner::DepthChangedHdl(Paragraph*, ParaFlag)
+Outliner::DrawingTab(Point const&, long, rtl::OUString const&, SvxFont const&, int, unsigned char, bool, bool, Color const&, Color const&)
+Outliner::DrawingText(Point const&, rtl::OUString const&, int, int, o3tl::span<int const>, SvxFont const&, int, unsigned char, std::vector<EEngineData::WrongSpellClass, std::allocator<EEngineData::WrongSpellClass> > const*, SvxFieldData const*, bool, bool, bool, com::sun::star::lang::Locale const*, Color const&, Color const&)
+Outliner::Expand(Paragraph const*)
+Outliner::GetBulletsNumberingStatus(int, int) const
+Outliner::GetDocPos(Point const&) const
+Outliner::GetNonOverflowingText() const
+Outliner::GetNumberFormat(int) const
+Outliner::GetOverflowingText() const
+Outliner::GetParaBounds(int) const
+Outliner::GetStyleSheetPool()
+Outliner::ImpCalcBulletArea(int, bool, bool)
+Outliner::ImpCalcBulletFont(int) const
+Outliner::ImpCanDeleteSelectedPages(OutlinerView*)
+Outliner::ImpCanDeleteSelectedPages(OutlinerView*, int, int)
+Outliner::ImpCanIndentSelectedPages(OutlinerView*)
+Outliner::ImpConvertEdtToOut(int)
+Outliner::ImpFilterIndents(int, int)
+Outliner::ImpTextPasted(int, int)
+Outliner::ImplBlockInsertionCallbacks(bool)
+Outliner::ImplCalcBulletText(int, bool, bool)
+Outliner::ImplCheckDepth(short&) const
+Outliner::ImplCheckNumBulletItem(int)
+Outliner::ImplCheckParagraphs(int, int)
+Outliner::ImplGetBulletSize(int)
+Outliner::ImplGetBulletText(int)
+Outliner::ImplGetNumbering(int, SvxNumberFormat const*)
+Outliner::ImplHasNumberFormat(int) const
+Outliner::ImplInitDepth(int, short, bool)
+Outliner::ImplSetLevelDependentStyleSheet(int)
+Outliner::IndentingPagesHdl(OutlinerView*)
+Outliner::InsertUndo(std::unique_ptr<EditUndo, std::default_delete<EditUndo> >)
+Outliner::InvalidateBullet(int)
+Outliner::IsForceAutoColor() const
+Outliner::IsTextPos(Point const&, unsigned short, bool*)
+Outliner::PaintBullet(int, Point const&, Point const&, o3tl::strong_int<short, FractionTag<10> >, OutputDevice&)
+Outliner::ParaAttribsChanged(int)
+Outliner::ParagraphDeleted(int)
+Outliner::ParagraphInserted(int)
+Outliner::ParagraphInsertedHdl(Paragraph*)
+Outliner::QuickFormatDoc()
+Outliner::RemovingPagesHdl(OutlinerView*)
+Outliner::SetLevelDependentStyleSheet(int)
+Outliner::SetMaxDepth(short)
+Outliner::SetToEmptyText()
+Outliner::StyleSheetChanged(SfxStyleSheet const*)
+OutlinerParaObjData::OutlinerParaObjData(OutlinerParaObjData const&)
+OutlinerParaObjData::OutlinerParaObjData(std::unique_ptr<EditTextObject, std::default_delete<EditTextObject> >, std::vector<ParagraphData, std::allocator<ParagraphData> >&&, bool)
+OutlinerParaObjData::isWrongListEqual(OutlinerParaObjData const&) const
+OutlinerParaObjData::operator==(OutlinerParaObjData const&) const
+OutlinerParaObject::GetParagraphData(int) const
+OutlinerParaObject::OutlinerParaObject(std::unique_ptr<EditTextObject, std::default_delete<EditTextObject> >, std::vector<ParagraphData, std::allocator<ParagraphData> >&&, bool)
+OutlinerView::GetStyleSheet() const
+OutlinerView::Indent(short)
+OutputDevice::AddTempDevFont(rtl::OUString const&, rtl::OUString const&)
+OutputDevice::ClearStack()
+OutputDevice::DrawBitmapEx(Point const&, Size const&, Point const&, Size const&, BitmapEx const&, MetaActionType)
+OutputDevice::DrawGradientWallpaper(long, long, long, long, Wallpaper const&)
+OutputDevice::DrawHatch(tools::PolyPolygon const&, Hatch const&, bool)
+OutputDevice::DrawMask(Point const&, Size const&, Point const&, Size const&, Bitmap const&, Color const&)
+OutputDevice::DrawPolyLineDirectInternal(basegfx::B2DHomMatrix const&, basegfx::B2DPolygon const&, double, double, std::vector<double, std::allocator<double> > const*, basegfx::B2DLineJoin, com::sun::star::drawing::LineCap, double)
+OutputDevice::GetCommonDeviceInfo(Size const&) const
+OutputDevice::GetGraphics() const
+OutputDevice::GetInverseViewTransformation(MapMode const&) const
+OutputDevice::GetSystemGfxDataAny() const
+OutputDevice::GetViewTransformation(MapMode const&) const
+OutputDevice::HitTestNativeScrollbar(ControlPart, tools::Rectangle const&, Point const&, bool&) const
+OutputDevice::ImplDrawRotateText(SalLayout&)
+OutputDevice::ImplDrawText(OutputDevice&, tools::Rectangle const&, rtl::OUString const&, DrawTextFlags, std::vector<tools::Rectangle, std::allocator<tools::Rectangle> >*, rtl::OUString*, vcl::ITextLayout&)
+OutputDevice::ImplDrawText(SalLayout&)
+OutputDevice::ImplDrawTextBackground(SalLayout const&)
+OutputDevice::ImplDrawTextLine(long, long, long, int, FontStrikeout, FontLineStyle, FontLineStyle, bool)
+OutputDevice::ImplDrawTextLines(SalLayout&, FontStrikeout, FontLineStyle, FontLineStyle, bool, bool)
+OutputDevice::LogicToPixel(basegfx::B2DPolyPolygon const&) const
+OutputDevice::LogicToPixel(basegfx::B2DPolyPolygon const&, MapMode const&) const
+OutputDevice::LogicToPixel(tools::PolyPolygon const&) const
+OutputDevice::LogicToPixel(tools::Polygon const&) const
+OutputDevice::LogicToPixel(tools::Polygon const&, MapMode const&) const
+OutputDevice::PixelToLogic(basegfx::B2DPolyPolygon const&) const
+OutputDevice::PixelToLogic(basegfx::B2DPolyPolygon const&, MapMode const&) const
+OutputDevice::PixelToLogic(basegfx::B2DPolygon const&, MapMode const&) const
+OutputDevice::PixelToLogic(tools::PolyPolygon const&) const
+OutputDevice::PixelToLogic(tools::Polygon const&) const
+OutputDevice::PixelToLogic(tools::Polygon const&, MapMode const&) const
+OutputDevice::ReleaseFontCache()
+OutputDevice::ReleaseFontCollection()
+OutputDevice::ResetNewFontCache()
+OutputDevice::SelectClipRegion(vcl::Region const&, SalGraphics*)
+OutputDevice::SetFontCollectionFromSVData()
+OutputDevice::SetOutOffXPixel(long)
+OutputDevice::SetOutOffYPixel(long)
+PDFSignatureHelper::GetNewSecurityId() const
+PDFSignatureHelper::ReadAndVerifySignature(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&)
+PDFSignatureHelper::SetDescription(rtl::OUString const&)
+PDFSignatureHelper::SetX509Certificate(com::sun::star::uno::Reference<com::sun::star::security::XCertificate> const&)
+PDFSignatureHelper::Sign(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, bool)
+PPTFieldEntry::SetDateTime(unsigned int)
+PPTFieldEntry::~PPTFieldEntry()
+PPTParagraphObj::GetAttrib(unsigned int, unsigned int&, TSS_Type)
+PPTParagraphObj::Next()
+PPTParagraphObj::PPTParagraphObj(PPTStyleTextPropReader&, unsigned long, unsigned long&, PPTStyleSheet const&, TSS_Type, PPTTextRulerInterpreter const&)
+PPTParagraphObj::UpdateBulletRelSize(unsigned int&) const
+PPTPortionObj::ApplyTo(SfxItemSet&, SdrPowerPointImport&, TSS_Type, PPTTextObj const*)
+PPTPortionObj::GetAttrib(unsigned int, unsigned int&, TSS_Type) const
+PPTPortionObj::GetTextField()
+PPTPortionObj::PPTPortionObj(PPTCharPropSet const&, PPTStyleSheet const&, TSS_Type, unsigned int)
+PPTPortionObj::PPTPortionObj(PPTPortionObj const&)
+PPTTextObj::GetBackground() const
+PPTTextObj::Next()
+PPTTextObj::PPTTextObj(PPTTextObj const&)
+PPTTextObj::PPTTextObj(SvStream&, SdrPowerPointImport&, PptSlidePersistEntry&, DffObjData const*)
+PPTTextObj::operator=(PPTTextObj const&)
+PPTTextObj::~PPTTextObj()
+PaintListenerMultiplexer::PaintListenerMultiplexer(cppu::OWeakObject&)
+PaintListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+PaintListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+PaintListenerMultiplexer::release()
+PaintListenerMultiplexer::windowPaint(com::sun::star::awt::PaintEvent const&)
+PaletteManager::DispatchColorCommand(rtl::OUString const&, std::pair<Color, rtl::OUString> const&)
+PaletteManager::GetColorCount() const
+PaletteManager::GetPalette() const
+PaletteManager::LoadPalettes()
+PaletteManager::PopupColorPicker(weld::Window*, rtl::OUString const&, Color const&)
+PaletteManager::SetBtnUpdater(svx::ToolboxButtonColorUpdaterBase*)
+PaletteManager::SetColorSelectFunction(std::function<void (rtl::OUString const&, std::pair<Color, rtl::OUString> const&)> const&)
+PanelLayout::SetPanel(sfx2::sidebar::Panel*)
+PanelLayout::queue_resize()
+PaperInfo::getDefaultPaperForLocale(com::sun::star::lang::Locale const&)
+PatternBox::EventNotify(NotifyEvent&)
+PatternBox::Modify()
+PatternBox::PreNotify(NotifyEvent&)
+PatternBox::ReformatAll()
+PatternBox::dispose()
+PatternField::EventNotify(NotifyEvent&)
+PatternField::Modify()
+PatternField::PreNotify(NotifyEvent&)
+PatternField::dispose()
+PatternFormatter::PatternFormatter(Edit*)
+PatternFormatter::Reformat()
+PatternFormatter::~PatternFormatter()
+PlaceEditDialog::InitDetails()
+PlaceEditDialog::SelectType(bool)
+PopupMenu::ClosePopup(Menu*)
+PopupMenu::CreateMenuInterface()
+PopupMenu::GetActivePopupMenu()
+PopupMenu::PopupMenu(PopupMenu const&)
+PopupMenu::SelectItem(unsigned short)
+PopupMenu::SetSelectedEntry(unsigned short)
+PopupMenu::~PopupMenu()
+PptSlidePersistList::PptSlidePersistList()
+PptSlidePersistList::~PptSlidePersistList()
+Printer::DrawGradientEx(OutputDevice*, tools::Rectangle const&, Gradient const&)
+Printer::ExecutePrintJob(std::shared_ptr<vcl::PrinterController> const&)
+Printer::GetCapabilities(PrinterCapType) const
+Printer::GetDuplexMode() const
+Printer::GetPaperInfo(int) const
+Printer::GetPaperInfoCount() const
+Printer::GetPaperSize(int) const
+Printer::GetSizeOfPaper() const
+Printer::ImplReleaseGraphics(bool)
+Printer::PreparePrintJob(std::shared_ptr<vcl::PrinterController>, JobSetup const&)
+Printer::SetCopyCount(unsigned short, bool)
+Printer::SetDuplexMode(DuplexMode)
+ProcessData::NotifyFreeObj(SdrObject*)
+ProgressBar::DataChanged(DataChangedEvent const&)
+ProgressBar::GetOptimalSize() const
+ProgressBar::Paint(OutputDevice&, tools::Rectangle const&)
+ProgressBar::Resize()
+ProgressBar::StateChanged(StateChangedType)
+ProgressBarHelper::ProgressBarHelper(com::sun::star::uno::Reference<com::sun::star::task::XStatusIndicator> const&, bool)
+ProgressBarHelper::~ProgressBarHelper()
+PspSalInfoPrinter::AcquireGraphics()
+PspSalInfoPrinter::GetCapabilities(ImplJobSetup const*, PrinterCapType)
+PspSalInfoPrinter::GetLandscapeAngle(ImplJobSetup const*)
+PspSalInfoPrinter::GetPageInfo(ImplJobSetup const*, long&, long&, Point&, Size&)
+PspSalInfoPrinter::GetPaperBinCount(ImplJobSetup const*)
+PspSalInfoPrinter::GetPaperBinName(ImplJobSetup const*, unsigned short)
+PspSalInfoPrinter::InitPaperFormats(ImplJobSetup const*)
+PspSalInfoPrinter::ReleaseGraphics(SalGraphics*)
+PspSalInfoPrinter::SetData(JobSetFlags, ImplJobSetup*)
+PspSalInfoPrinter::SetPrinterData(ImplJobSetup*)
+PspSalInfoPrinter::Setup(weld::Window*, ImplJobSetup*)
+PspSalInfoPrinter::~PspSalInfoPrinter()
+PushButton::EndSelection()
+PushButton::PushButton(WindowType)
+PushButton::SetDropDown(PushButtonDropdownStyle)
+PushButton::SetSymbol(SymbolType)
+PushButton::SetSymbolAlign(SymbolAlign)
+PushButton::Toggle()
+PushButtonValue::clone() const
+QtData::ErrorTrapPop(bool)
+QtData::ErrorTrapPush()
+QtData::getCursor(PointerStyle)
+QtData::noNativeControls()
+QtData::~QtData()
+QtFilePicker::currentChanged(QString const&)
+QtFilePicker::filterSelected(QString const&)
+QtFilePicker::finished(int)
+QtFilePicker::getImplementationName()
+QtFilePicker::getResString(TranslateId)
+QtFilePicker::getSupportedServiceNames()
+QtFilePicker::handleGetListValue(QComboBox const*, short)
+QtFilePicker::handleSetListValue(QComboBox*, short, com::sun::star::uno::Any const&)
+QtFilePicker::metaObject() const
+QtFilePicker::prepareExecute()
+QtFilePicker::supportsService(rtl::OUString const&)
+QtFilePicker::updateAutomaticFileExtension()
+QtFrame::CalcDefaultSize()
+QtFrame::Damage(int, int, int, int) const
+QtFrame::FillSystemEnvData(SystemEnvData&, long, QWidget*)
+QtFrame::SetDefaultPos()
+QtFrame::SetDefaultSize()
+QtFrame::SetWindowStateImpl(QFlags<Qt::WindowState>)
+QtFrame::asChild() const
+QtFrame::devicePixelRatioF() const
+QtFrame::fixICCCMwindowGroup()
+QtFrame::handleDragLeave()
+QtFrame::handleDragMove(QDragMoveEvent*)
+QtFrame::handleDrop(QDropEvent*)
+QtFrame::isMaximized() const
+QtFrame::isMinimized() const
+QtFrame::isWindow() const
+QtFrame::modalReparent(bool)
+QtFrame::screen() const
+QtFrame::setInputLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+QtFrame::windowHandle() const
+QtInstance::CreateChildFrame(SystemParentData*, SalFrameStyleFlags)
+QtInstance::CreateFrame(SalFrame*, SalFrameStyleFlags)
+QtInstance::ImplYield(bool, bool)
+QtInstance::ImplYieldSignal(bool, bool)
+QtInstance::UpdateStyle(bool)
+QtInstance::deleteObjectLater(QObject*)
+QtInstance::deleteObjectLaterSignal(QObject*)
+QtInstance::localeChanged()
+QtSvpGraphics::CreateSurface(OutputDevice const&, int, int, int, int) const
+QtSvpGraphics::CreateSurface(std::shared_ptr<_cairo_surface> const&) const
+QtSvpGraphics::GetResolution(int&, int&)
+QtSvpGraphics::QtSvpGraphics(QtFrame*)
+QtSvpGraphics::SupportsCairo() const
+QtSvpGraphics::handleDamage(tools::Rectangle const&)
+QtSvpGraphics::updateQWidget() const
+QtSvpGraphics::~QtSvpGraphics()
+RadioButton::GetRadioImage(AllSettings const&, DrawButtonFlags)
+RadioButton::SetModeRadioImage(Image const&)
+RadioButton::Toggle()
+RadioButton::group(RadioButton&)
+Reader::ClearTemplate()
+Reader::GetTemplateDoc(SwDoc&)
+Reader::MakeHTMLDummyTemplateDoc()
+Reader::ResetFrameFormats(SwDoc&)
+Reader::SetTemplate(SwDoc&)
+Reader::SetTemplateName(rtl::OUString const&)
+RecordItemWindowBase::FirePosition(bool)
+RecordItemWindowBase::PositionFired(long)
+Ruler::DoubleClick()
+SEInitializerGpg::createSecurityContext(rtl::OUString const&)
+SEInitializerGpg::freeSecurityContext(com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> const&)
+SEInitializerGpg::getImplementationName()
+SEInitializerGpg::getSupportedServiceNames()
+SEInitializerGpg::supportsService(rtl::OUString const&)
+SEInitializerGpg::~SEInitializerGpg()
+SVTXNumericField::CreateAccessibleContext()
+SVTXNumericField::GetPropertyIds(std::vector<unsigned short, std::allocator<unsigned short> >&)
+SVTXNumericField::SVTXNumericField()
+SVTXNumericField::getDecimalDigits()
+SVTXNumericField::getFirst()
+SVTXNumericField::getImplementationId()
+SVTXNumericField::getLast()
+SVTXNumericField::getTypes()
+SVTXNumericField::isStrictFormat()
+SVTXNumericField::queryInterface(com::sun::star::uno::Type const&)
+SVTXNumericField::setDecimalDigits(short)
+SVTXNumericField::setFirst(double)
+SVTXNumericField::setLast(double)
+SVTXNumericField::setMax(double)
+SVTXNumericField::setMin(double)
+SVTXNumericField::setSpinSize(double)
+SVTXNumericField::setStrictFormat(unsigned char)
+SVTXNumericField::~SVTXNumericField()
+SalBitmap::DropScaledCache()
+SalBitmap::convertDataBitCount(unsigned char const*, int, int, int, int, BitmapPalette const&, SalBitmap::BitConvert)
+SalBitmap::updateChecksum() const
+SalData::SalData()
+SalData::~SalData()
+SalDisplay::Beep() const
+SalDisplay::BestVisual(_XDisplay*, int, XVisualInfo&)
+SalDisplay::CaptureMouse(SalFrame*)
+SalDisplay::DeInitRandR()
+SalDisplay::GetEventTimeImpl(bool) const
+SalDisplay::GetIndicatorState() const
+SalDisplay::GetKeyCode(unsigned long, char*) const
+SalDisplay::GetKeyName(unsigned short) const
+SalDisplay::GetKeyNameFromKeySym(unsigned long) const
+SalDisplay::GetKeySym(XKeyEvent*, char*, int*, unsigned long*, int*, _XIC*) const
+SalDisplay::GetPointer(PointerStyle)
+SalDisplay::Init()
+SalDisplay::InitRandR(unsigned long) const
+SalDisplay::InitXinerama()
+SalDisplay::ModifierMapping()
+SalDisplay::SalDisplay(_XDisplay*)
+SalDisplay::SimulateKeyPress(unsigned short)
+SalDisplay::XIfEventWithTimeout(_XEvent*, char*, int (*)(_XDisplay*, _XEvent*, char*)) const
+SalDisplay::addXineramaScreenUnique(int, long, long, long, long)
+SalDisplay::doDestruct()
+SalDisplay::initScreen(SalX11Screen) const
+SalDisplay::processRandREvent(_XEvent*)
+SalDisplay::~SalDisplay()
+SalFrame::GetGeometry() const
+SalFrame::SetCallback(vcl::Window*, bool (*)(vcl::Window*, SalEvent, void const*))
+SalGraphics::BlendAlphaBitmap(SalTwoRect const&, SalBitmap const&, SalBitmap const&, SalBitmap const&, OutputDevice const&)
+SalGraphics::BlendBitmap(SalTwoRect const&, SalBitmap const&, OutputDevice const&)
+SalGraphics::CopyArea(long, long, long, long, long, long, OutputDevice const&)
+SalGraphics::CopyBits(SalTwoRect const&, OutputDevice const&)
+SalGraphics::CopyBits(SalTwoRect const&, SalGraphics&, OutputDevice const&, OutputDevice const&)
+SalGraphics::DrawAlphaBitmap(SalTwoRect const&, SalBitmap const&, SalBitmap const&, OutputDevice const&)
+SalGraphics::DrawAlphaRect(long, long, long, long, unsigned char, OutputDevice const&)
+SalGraphics::DrawBitmap(SalTwoRect const&, SalBitmap const&, OutputDevice const&)
+SalGraphics::DrawBitmap(SalTwoRect const&, SalBitmap const&, SalBitmap const&, OutputDevice const&)
+SalGraphics::DrawEPS(long, long, long, long, void*, unsigned int, OutputDevice const&)
+SalGraphics::DrawGradient(tools::PolyPolygon const&, Gradient const&, OutputDevice const&)
+SalGraphics::DrawLine(long, long, long, long, OutputDevice const&)
+SalGraphics::DrawMask(SalTwoRect const&, SalBitmap const&, Color, OutputDevice const&)
+SalGraphics::DrawNativeControl(ControlType, ControlPart, tools::Rectangle const&, ControlState, ImplControlValue const&, rtl::OUString const&, OutputDevice const&, Color const&)
+SalGraphics::DrawPixel(long, long, Color, OutputDevice const&)
+SalGraphics::DrawPixel(long, long, OutputDevice const&)
+SalGraphics::DrawPolyLine(basegfx::B2DHomMatrix const&, basegfx::B2DPolygon const&, double, double, std::vector<double, std::allocator<double> > const*, basegfx::B2DLineJoin, com::sun::star::drawing::LineCap, double, bool, OutputDevice const&)
+SalGraphics::DrawPolyLine(unsigned int, Point const*, OutputDevice const&)
+SalGraphics::DrawPolyLineBezier(unsigned int, Point const*, PolyFlags const*, OutputDevice const&)
+SalGraphics::DrawPolyPolygon(basegfx::B2DHomMatrix const&, basegfx::B2DPolyPolygon const&, double, OutputDevice const&)
+SalGraphics::DrawPolyPolygon(unsigned int, unsigned int const*, Point const**, OutputDevice const&)
+SalGraphics::DrawPolyPolygonBezier(unsigned int, unsigned int const*, Point const* const*, PolyFlags const* const*, OutputDevice const&)
+SalGraphics::DrawPolygon(unsigned int, Point const*, OutputDevice const&)
+SalGraphics::DrawPolygonBezier(unsigned int, Point const*, PolyFlags const*, OutputDevice const&)
+SalGraphics::DrawRect(long, long, long, long, OutputDevice const&)
+SalGraphics::DrawTransformedBitmap(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, SalBitmap const&, SalBitmap const*, double, OutputDevice const&)
+SalGraphics::FillFontSubsetInfo(vcl::TTGlobalFontInfo_ const&, rtl::OUString const&, FontSubsetInfo&)
+SalGraphics::GetBitmap(long, long, long, long, OutputDevice const&)
+SalGraphics::GetNativeControlRegion(ControlType, ControlPart, tools::Rectangle const&, ControlState, ImplControlValue const&, tools::Rectangle&, tools::Rectangle&, OutputDevice const&)
+SalGraphics::GetPixel(long, long, OutputDevice const&)
+SalGraphics::HasFastDrawTransformedBitmap() const
+SalGraphics::HitTestNativeScrollbar(ControlPart, tools::Rectangle const&, Point const&, bool&, OutputDevice const&)
+SalGraphics::Invert(long, long, long, long, SalInvert, OutputDevice const&)
+SalGraphics::Invert(unsigned int, Point const*, SalInvert, OutputDevice const&)
+SalGraphics::SetClipRegion(vcl::Region const&, OutputDevice const&)
+SalGraphics::drawTransformedBitmap(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, SalBitmap const&, SalBitmap const*, double)
+SalGraphics::getMirror(OutputDevice const&) const
+SalGraphics::mirror(ImplControlValue&, OutputDevice const&) const
+SalGraphics::mirror(basegfx::B2DPolyPolygon const&, OutputDevice const&) const
+SalGraphics::mirror(long&, OutputDevice const&) const
+SalGraphics::mirror(long&, long, OutputDevice const&, bool) const
+SalGraphics::mirror(tools::Rectangle&, OutputDevice const&, bool) const
+SalGraphics::mirror(unsigned int, Point const*, Point*, OutputDevice const&) const
+SalGraphics::mirror(vcl::Region&, OutputDevice const&) const
+SalGraphics::mirror2(long, OutputDevice const&) const
+SalInfoPrinter::~SalInfoPrinter()
+SalInstance::AcquireYieldMutex(unsigned int)
+SalInstance::CreateOpenGLContext()
+SalInstance::ReleaseYieldMutexAll()
+SalInstance::~SalInstance()
+SalLayout::AdjustLayout(vcl::text::ImplLayoutArgs&)
+SalLayout::GetBoundRect(tools::Rectangle&) const
+SalLayout::GetDrawPosition(Point const&) const
+SalLayout::GetGlyphs() const
+SalLayout::SalLayout()
+SalLayout::~SalLayout()
+SalLayoutGlyphs::AppendImpl(SalLayoutGlyphsImpl*)
+SalLayoutGlyphs::Invalidate()
+SalMenu::ShowCloseButton(bool)
+SalMenu::ShowNativePopupMenu(FloatingWindow*, tools::Rectangle const&, FloatWinPopupFlags)
+SalPrinter::StartJob(rtl::OUString const*, rtl::OUString const&, rtl::OUString const&, ImplJobSetup*, vcl::PrinterController&)
+SalPrinter::~SalPrinter()
+SalSystem::~SalSystem()
+SalUserEventList::RemoveEvent(SalFrame*, void*, SalEvent)
+SaveOrDelMSVBAStorage_ww8
+SaveVBA
+SbClassModuleObject::Find(rtl::OUString const&, SbxClassType)
+SbClassModuleObject::Notify(SfxBroadcaster&, SfxHint const&)
+SbClassModuleObject::SbClassModuleObject(SbModule*)
+SbClassModuleObject::triggerInitializeEvent()
+SbClassModuleObject::triggerTerminateEvent()
+SbClassModuleObject::~SbClassModuleObject()
+SbMethod::Broadcast(SfxHintId)
+SbMethod::ClearStatics()
+SbMethod::GetInfo()
+SbMethod::GetStatics()
+SbMethod::LoadData(SvStream&, unsigned short)
+SbMethod::StoreData(SvStream&) const
+SbMethod::~SbMethod()
+SbModule::createCOMWrapperForIface(com::sun::star::uno::Any&, SbClassModuleObject*)
+SbModule::~SbModule()
+SbxArray::Clear()
+SbxArray::GetAlias(unsigned int)
+SbxArray::GetRef(unsigned int)
+SbxArray::Insert(SbxVariable*, unsigned int)
+SbxArray::LoadData(SvStream&, unsigned short)
+SbxArray::Merge(SbxArray*)
+SbxArray::PutAlias(rtl::OUString const&, unsigned int)
+SbxArray::Remove(unsigned int)
+SbxArray::StoreData(SvStream&) const
+SbxArray::operator=(SbxArray const&)
+SbxArray::~SbxArray()
+SbxBase::AddFactory(SbxFactory*)
+SbxBase::Create(unsigned short, unsigned int)
+SbxBase::CreateObject(rtl::OUString const&)
+SbxBase::Load(SvStream&)
+SbxBase::RemoveFactory(SbxFactory const*)
+SbxBase::SbxBase()
+SbxBase::SbxBase(SbxBase const&)
+SbxBase::Store(SvStream&)
+SbxBase::operator=(SbxBase const&)
+SbxBase::~SbxBase()
+SbxDimArray::Clear()
+SbxDimArray::Get(SbxArray*)
+SbxDimArray::LoadData(SvStream&, unsigned short)
+SbxDimArray::Offset(SbxArray*)
+SbxDimArray::Offset(int const*)
+SbxDimArray::Put(SbxVariable*, int const*)
+SbxDimArray::StoreData(SvStream&) const
+SbxDimArray::operator=(SbxDimArray const&)
+SbxDimArray::unoAddDim(int, int)
+SbxDimArray::~SbxDimArray()
+SbxInfo::AddParam(rtl::OUString const&, SbxDataType, SbxFlagBits)
+SbxInfo::LoadData(SvStream&, unsigned short)
+SbxInfo::SbxInfo()
+SbxInfo::SbxInfo(rtl::OUString const&, unsigned int)
+SbxInfo::StoreData(SvStream&) const
+SbxInfo::~SbxInfo()
+SbxMethod::GetClass() const
+SbxMethod::SbxMethod(rtl::OUString const&, SbxDataType, bool)
+SbxMethod::~SbxMethod()
+SbxObject::Call(rtl::OUString const&, SbxArray*)
+SbxObject::Clear()
+SbxObject::Dump(SvStream&, bool)
+SbxObject::Find(rtl::OUString const&, SbxClassType)
+SbxObject::FindQualified(rtl::OUString const&, SbxClassType)
+SbxObject::GetClass() const
+SbxObject::GetDfltProperty()
+SbxObject::GetType() const
+SbxObject::Insert(SbxVariable*)
+SbxObject::IsClass(rtl::OUString const&) const
+SbxObject::LoadData(SvStream&, unsigned short)
+SbxObject::Make(rtl::OUString const&, SbxClassType, SbxDataType, bool)
+SbxObject::Notify(SfxBroadcaster&, SfxHint const&)
+SbxObject::QuickInsert(SbxVariable*)
+SbxObject::Remove(SbxVariable*)
+SbxObject::Remove(rtl::OUString const&, SbxClassType)
+SbxObject::SbxObject(SbxObject const&)
+SbxObject::SbxObject(rtl::OUString const&)
+SbxObject::SetDfltProperty(rtl::OUString const&)
+SbxObject::StoreData(SvStream&) const
+SbxObject::operator=(SbxObject const&)
+SbxObject::~SbxObject()
+SbxValue::Convert(SbxDataType)
+SbxValue::Format(rtl::OUString&, rtl::OUString const*) const
+SbxValue::GetCoreString() const
+SbxValue::ImpIsNumeric(bool) const
+SbxValue::IsNumericRTL() const
+SbxValue::Put(SbxValues const&)
+SbxValue::PutByte(unsigned char)
+SbxValue::PutCurrency(long)
+SbxValue::PutDate(double)
+SbxValue::PutDecimal(SbxDecimal*)
+SbxValue::PutDecimal(com::sun::star::bridge::oleautomation::Decimal const&)
+SbxValue::PutErr(unsigned short)
+SbxValue::PutInt64(long)
+SbxValue::PutInteger(short)
+SbxValue::PutNull()
+SbxValue::PutSingle(float)
+SbxValue::PutUInt64(unsigned long)
+SbxValue::SbxValue(SbxDataType)
+SbxValue::Scan(rtl::OUString const&, unsigned short*)
+SbxValue::ScanNumIntnl(rtl::OUString const&, double&, bool)
+SbxValue::fillAutomationDecimal(com::sun::star::bridge::oleautomation::Decimal&) const
+SbxVariable::Broadcast(SfxHintId)
+SbxVariable::ClearComListener()
+SbxVariable::Dump(SvStream&, bool)
+SbxVariable::GetClass() const
+SbxVariable::GetDeclareClassName() const
+SbxVariable::GetInfo()
+SbxVariable::GetType() const
+SbxVariable::LoadData(SvStream&, unsigned short)
+SbxVariable::SbxVariable(SbxVariable const&)
+SbxVariable::SetComListener(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, StarBASIC*)
+SbxVariable::SetDeclareClassName(rtl::OUString const&)
+SbxVariable::SetInfo(SbxInfo*)
+SbxVariable::SetModified(bool)
+SbxVariable::SetName(rtl::OUString const&)
+SbxVariable::SetParent(SbxObject*)
+SbxVariable::StoreData(SvStream&) const
+SbxVariable::operator=(SbxVariable const&)
+SbxVariable::~SbxVariable()
+ScAppOptions::ScAppOptions()
+ScAppOptions::SetDefaults()
+ScAppOptions::SetLRUFuncList(unsigned short const*, unsigned short)
+ScAppOptions::operator=(ScAppOptions const&)
+ScAreaLink::Closed()
+ScAreaLink::DataChanged(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScAreaLink::Edit(weld::Window*, Link<sfx2::SvBaseLink&, void> const&)
+ScAreaLink::FindExtRange(ScRange&, ScDocument const&, rtl::OUString const&)
+ScAreaLink::IsEqual(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, ScRange const&) const
+ScAreaLink::Refresh(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, unsigned long)
+ScAreaLink::SetDestArea(ScRange const&)
+ScAreaLink::SetSource(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+ScAreaLink::~ScAreaLink()
+ScAutoFmtPreview::Paint(OutputDevice&, tools::Rectangle const&)
+ScAutoFmtPreview::Resize()
+ScAutoFmtPreview::SetDrawingArea(weld::DrawingArea*)
+ScAutoFormat::Load()
+ScAutoFormat::ScAutoFormat()
+ScAutoFormat::SetSaveLater(bool)
+ScAutoFormat::begin() const
+ScAutoFormat::end() const
+ScAutoFormat::findByIndex(unsigned long) const
+ScAutoFormatData::CopyItem(unsigned short, unsigned short, unsigned short)
+ScAutoFormatData::FillToItemSet(unsigned short, SfxItemSet&, ScDocument const&) const
+ScAutoFormatData::GetFromItemSet(unsigned short, SfxItemSet const&, ScNumFormatAbbrev const&)
+ScAutoFormatData::GetItem(unsigned short, unsigned short) const
+ScAutoFormatData::GetNumFormat(unsigned short) const
+ScAutoFormatData::IsEqualData(unsigned short, unsigned short) const
+ScAutoFormatData::Load(SvStream&, ScAfVersions const&)
+ScAutoFormatData::PutItem(unsigned short, SfxPoolItem const&)
+ScAutoFormatData::Save(SvStream&, unsigned short)
+ScAutoFormatData::ScAutoFormatData()
+ScAutoNameCache::GetNameOccurrences(rtl::OUString const&, short)
+ScBootstrapFixture::load(bool, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned long, rtl::OUString const*)
+ScBootstrapFixture::saveAndReload(ScDocShell*, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, rtl::OUString const*)
+ScCalcConfig::MergeDocumentSpecific(ScCalcConfig const&)
+ScCalcConfig::isThreadingEnabled()
+ScCalcConfig::setOpenCLConfigToDefault()
+ScCellFormat::GetInputString(ScRefCellValue const&, unsigned int, SvNumberFormatter&, ScDocument const&, svl::SharedString const**, bool)
+ScCellFormat::GetOutputString(ScDocument&, ScAddress const&, ScRefCellValue const&)
+ScCellObj::GetCellPropertyMap()
+ScCellObj::GetContentType_Impl()
+ScCellObj::GetEditPropertySet()
+ScCellObj::GetInputString_Impl(bool) const
+ScCellObj::GetItemPropertyMap()
+ScCellObj::GetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+ScCellObj::GetOutputString_Impl() const
+ScCellObj::GetResultType_Impl() const
+ScCellObj::GetUnoText()
+ScCellObj::GetValue_Impl() const
+ScCellObj::RefChanged()
+ScCellObj::ScCellObj(ScDocShell*, ScAddress const&)
+ScCellObj::SetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+ScCellObj::SetString_Impl(rtl::OUString const&, bool, bool)
+ScCellObj::SetValue_Impl(double)
+ScCellObj::acquire()
+ScCellObj::addActionLock()
+ScCellObj::createEnumeration()
+ScCellObj::createTextCursor()
+ScCellObj::createTextCursorByRange(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&)
+ScCellObj::getAnnotation()
+ScCellObj::getCellAddress()
+ScCellObj::getElementType()
+ScCellObj::getEnd()
+ScCellObj::getError()
+ScCellObj::getFormula()
+ScCellObj::getImplementationId()
+ScCellObj::getImplementationName()
+ScCellObj::getPropertySetInfo()
+ScCellObj::getStart()
+ScCellObj::getString()
+ScCellObj::getSupportedServiceNames()
+ScCellObj::getText()
+ScCellObj::getTextFieldMasters()
+ScCellObj::getTextFields()
+ScCellObj::getTokens()
+ScCellObj::getType()
+ScCellObj::getTypes()
+ScCellObj::getValue()
+ScCellObj::hasElements()
+ScCellObj::insertControlCharacter(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, short, unsigned char)
+ScCellObj::insertString(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, rtl::OUString const&, unsigned char)
+ScCellObj::insertTextContent(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, unsigned char)
+ScCellObj::isActionLocked()
+ScCellObj::queryInterface(com::sun::star::uno::Type const&)
+ScCellObj::release()
+ScCellObj::removeActionLock()
+ScCellObj::removeTextContent(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&)
+ScCellObj::resetActionLocks()
+ScCellObj::setActionLocks(short)
+ScCellObj::setFormula(rtl::OUString const&)
+ScCellObj::setFormulaResult(double)
+ScCellObj::setFormulaString(rtl::OUString const&)
+ScCellObj::setString(rtl::OUString const&)
+ScCellObj::setTokens(com::sun::star::uno::Sequence<com::sun::star::sheet::FormulaToken> const&)
+ScCellObj::setValue(double)
+ScCellObj::supportsService(rtl::OUString const&)
+ScCellObj::~ScCellObj()
+ScCellRangeObj::CreateRangeFromDoc(ScDocument const&, ScRange const&)
+ScCellRangeObj::GetCellByPosition_Impl(int, int)
+ScCellRangeObj::GetItemPropertyMap()
+ScCellRangeObj::GetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+ScCellRangeObj::RefChanged()
+ScCellRangeObj::SetArrayFormula_Impl(rtl::OUString const&, formula::FormulaGrammar::Grammar)
+ScCellRangeObj::SetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+ScCellRangeObj::applySubTotals(com::sun::star::uno::Reference<com::sun::star::sheet::XSubTotalDescriptor> const&, unsigned char)
+ScCellRangeObj::autoFormat(rtl::OUString const&)
+ScCellRangeObj::createFilterDescriptor(unsigned char)
+ScCellRangeObj::createFilterDescriptorByObject(com::sun::star::uno::Reference<com::sun::star::sheet::XSheetFilterable> const&)
+ScCellRangeObj::createImportDescriptor(unsigned char)
+ScCellRangeObj::createSortDescriptor()
+ScCellRangeObj::createSubTotalDescriptor(unsigned char)
+ScCellRangeObj::doImport(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScCellRangeObj::fillAuto(com::sun::star::sheet::FillDirection, int)
+ScCellRangeObj::fillSeries(com::sun::star::sheet::FillDirection, com::sun::star::sheet::FillMode, com::sun::star::sheet::FillDateMode, double, double)
+ScCellRangeObj::filter(com::sun::star::uno::Reference<com::sun::star::sheet::XSheetFilterDescriptor> const&)
+ScCellRangeObj::getArrayFormula()
+ScCellRangeObj::getArrayTokens()
+ScCellRangeObj::getCellByPosition(int, int)
+ScCellRangeObj::getCellFormatRanges()
+ScCellRangeObj::getCellRangeByName(rtl::OUString const&)
+ScCellRangeObj::getCellRangeByName(rtl::OUString const&, ScAddress::Details const&)
+ScCellRangeObj::getCellRangeByPosition(int, int, int, int)
+ScCellRangeObj::getColumns()
+ScCellRangeObj::getDataArray()
+ScCellRangeObj::getFormulaArray()
+ScCellRangeObj::getImplementationId()
+ScCellRangeObj::getImplementationName()
+ScCellRangeObj::getIsMerged()
+ScCellRangeObj::getPropertySetInfo()
+ScCellRangeObj::getRangeAddress()
+ScCellRangeObj::getRows()
+ScCellRangeObj::getSpreadsheet()
+ScCellRangeObj::getSupportedServiceNames()
+ScCellRangeObj::getTypes()
+ScCellRangeObj::getUniqueCellFormatRanges()
+ScCellRangeObj::merge(unsigned char)
+ScCellRangeObj::queryInterface(com::sun::star::uno::Type const&)
+ScCellRangeObj::release()
+ScCellRangeObj::removeSubTotals()
+ScCellRangeObj::setArrayFormula(rtl::OUString const&)
+ScCellRangeObj::setArrayTokens(com::sun::star::uno::Sequence<com::sun::star::sheet::FormulaToken> const&)
+ScCellRangeObj::setDataArray(com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<com::sun::star::uno::Any> > const&)
+ScCellRangeObj::setFormulaArray(com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<rtl::OUString> > const&)
+ScCellRangeObj::setTableOperation(com::sun::star::table::CellRangeAddress const&, com::sun::star::sheet::TableOperationMode, com::sun::star::table::CellAddress const&, com::sun::star::table::CellAddress const&)
+ScCellRangeObj::sort(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScCellRangeObj::supportsService(rtl::OUString const&)
+ScCellRangeObj::~ScCellRangeObj()
+ScCellRangesBase::AddRange(ScRange const&, bool)
+ScCellRangesBase::CreateMemChart_Impl() const
+ScCellRangesBase::Find_Impl(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&, ScAddress const*)
+ScCellRangesBase::ForceChartListener_Impl()
+ScCellRangesBase::ForgetCurrentAttrs()
+ScCellRangesBase::ForgetMarkData()
+ScCellRangesBase::GetCurrentAttrsDeep()
+ScCellRangesBase::GetCurrentAttrsFlat()
+ScCellRangesBase::GetDocument() const
+ScCellRangesBase::GetItemPropertyMap()
+ScCellRangesBase::GetLimitedChartRanges_Impl(int, int) const
+ScCellRangesBase::GetMarkData()
+ScCellRangesBase::GetOnePropertyState(unsigned short, SfxItemPropertyMapEntry const*)
+ScCellRangesBase::GetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+ScCellRangesBase::InitInsertRange(ScDocShell*, ScRange const&)
+ScCellRangesBase::Notify(SfxBroadcaster&, SfxHint const&)
+ScCellRangesBase::PaintGridRanges_Impl()
+ScCellRangesBase::QueryDifferences_Impl(com::sun::star::table::CellAddress const&, bool)
+ScCellRangesBase::RefChanged()
+ScCellRangesBase::ScCellRangesBase(ScDocShell*, ScRange const&)
+ScCellRangesBase::ScCellRangesBase(ScDocShell*, ScRangeList const&)
+ScCellRangesBase::SetCursorOnly(bool)
+ScCellRangesBase::SetNewRange(ScRange const&)
+ScCellRangesBase::SetNewRanges(ScRangeList const&)
+ScCellRangesBase::SetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+ScCellRangesBase::addChartDataChangeEventListener(com::sun::star::uno::Reference<com::sun::star::chart::XChartDataChangeEventListener> const&)
+ScCellRangesBase::addModifyListener(com::sun::star::uno::Reference<com::sun::star::util::XModifyListener> const&)
+ScCellRangesBase::addPropertiesChangeListener(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&)
+ScCellRangesBase::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScCellRangesBase::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScCellRangesBase::clearContents(int)
+ScCellRangesBase::computeFunction(com::sun::star::sheet::GeneralFunction)
+ScCellRangesBase::createReplaceDescriptor()
+ScCellRangesBase::createSearchDescriptor()
+ScCellRangesBase::decrementIndent()
+ScCellRangesBase::findAll(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+ScCellRangesBase::findFirst(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+ScCellRangesBase::findNext(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+ScCellRangesBase::firePropertiesChangeEvent(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&)
+ScCellRangesBase::getColumnDescriptions()
+ScCellRangesBase::getData()
+ScCellRangesBase::getDirectPropertyValuesTolerant(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScCellRangesBase::getImplementationName()
+ScCellRangesBase::getNotANumber()
+ScCellRangesBase::getPropertyDefault(rtl::OUString const&)
+ScCellRangesBase::getPropertySetInfo()
+ScCellRangesBase::getPropertyState(rtl::OUString const&)
+ScCellRangesBase::getPropertyStates(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScCellRangesBase::getPropertyValue(rtl::OUString const&)
+ScCellRangesBase::getPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScCellRangesBase::getPropertyValuesTolerant(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScCellRangesBase::getRowDescriptions()
+ScCellRangesBase::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+ScCellRangesBase::getSupportedServiceNames()
+ScCellRangesBase::incrementIndent()
+ScCellRangesBase::isNotANumber(double)
+ScCellRangesBase::queryColumnDifferences(com::sun::star::table::CellAddress const&)
+ScCellRangesBase::queryContentCells(short)
+ScCellRangesBase::queryDependents(unsigned char)
+ScCellRangesBase::queryEmptyCells()
+ScCellRangesBase::queryFormulaCells(int)
+ScCellRangesBase::queryIntersection(com::sun::star::table::CellRangeAddress const&)
+ScCellRangesBase::queryPrecedents(unsigned char)
+ScCellRangesBase::queryRowDifferences(com::sun::star::table::CellAddress const&)
+ScCellRangesBase::queryVisibleCells()
+ScCellRangesBase::removeChartDataChangeEventListener(com::sun::star::uno::Reference<com::sun::star::chart::XChartDataChangeEventListener> const&)
+ScCellRangesBase::removeModifyListener(com::sun::star::uno::Reference<com::sun::star::util::XModifyListener> const&)
+ScCellRangesBase::removePropertiesChangeListener(com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&)
+ScCellRangesBase::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScCellRangesBase::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScCellRangesBase::replaceAll(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+ScCellRangesBase::setColumnDescriptions(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScCellRangesBase::setData(com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<double> > const&)
+ScCellRangesBase::setPropertyToDefault(rtl::OUString const&)
+ScCellRangesBase::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScCellRangesBase::setPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+ScCellRangesBase::setPropertyValuesTolerant(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+ScCellRangesBase::setRowDescriptions(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScCellRangesBase::supportsService(rtl::OUString const&)
+ScCellRangesBase::~ScCellRangesBase()
+ScCellRangesObj::GetObjectByIndex_Impl(int) const
+ScCellRangesObj::RefChanged()
+ScCellRangesObj::addRangeAddress(com::sun::star::table::CellRangeAddress const&, unsigned char)
+ScCellRangesObj::addRangeAddresses(com::sun::star::uno::Sequence<com::sun::star::table::CellRangeAddress> const&, unsigned char)
+ScCellRangesObj::createEnumeration()
+ScCellRangesObj::getByIndex(int)
+ScCellRangesObj::getByName(rtl::OUString const&)
+ScCellRangesObj::getCells()
+ScCellRangesObj::getCount()
+ScCellRangesObj::getElementNames()
+ScCellRangesObj::getElementType()
+ScCellRangesObj::getImplementationId()
+ScCellRangesObj::getImplementationName()
+ScCellRangesObj::getRangeAddresses()
+ScCellRangesObj::getRangeAddressesAsString()
+ScCellRangesObj::getSupportedServiceNames()
+ScCellRangesObj::getTypes()
+ScCellRangesObj::hasByName(rtl::OUString const&)
+ScCellRangesObj::hasElements()
+ScCellRangesObj::insertByName(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScCellRangesObj::queryInterface(com::sun::star::uno::Type const&)
+ScCellRangesObj::release()
+ScCellRangesObj::removeByName(rtl::OUString const&)
+ScCellRangesObj::removeRangeAddress(com::sun::star::table::CellRangeAddress const&)
+ScCellRangesObj::removeRangeAddresses(com::sun::star::uno::Sequence<com::sun::star::table::CellRangeAddress> const&)
+ScCellRangesObj::replaceByName(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScCellRangesObj::supportsService(rtl::OUString const&)
+ScCellRangesObj::~ScCellRangesObj()
+ScCellValue::ScCellValue(ScCellValue const&)
+ScCellValue::ScCellValue(ScCellValue&&)
+ScCellValue::ScCellValue(ScRefCellValue const&)
+ScCellValue::ScCellValue(double)
+ScCellValue::ScCellValue(svl::SharedString const&)
+ScCellValue::assign(ScCellValue const&, ScDocument&, ScCloneFlags)
+ScCellValue::assign(ScDocument const&, ScAddress const&)
+ScCellValue::commit(ScColumn&, int) const
+ScCellValue::commit(ScDocument&, ScAddress const&) const
+ScCellValue::equalsWithoutFormat(ScCellValue const&) const
+ScCellValue::getString(ScDocument const&) const
+ScCellValue::operator=(ScCellValue const&)
+ScCellValue::operator=(ScCellValue&&)
+ScCellValue::operator=(ScRefCellValue const&)
+ScCellValue::release(ScColumn&, int, sc::StartListeningType)
+ScCellValue::release(ScDocument&, ScAddress const&)
+ScCellValue::set(EditTextObject const&)
+ScCellValue::swap(ScCellValue&)
+ScChangeTrack::AppendDeleteRange(ScRange const&, ScDocument*, short, unsigned long)
+ScChangeTrack::Undo(unsigned long, unsigned long, bool)
+ScChangeViewSettings::AdjustDateMode(ScDocument const&)
+ScChangeViewSettings::IsValidComment(rtl::OUString const*) const
+ScChangeViewSettings::ScChangeViewSettings(ScChangeViewSettings const&)
+ScChangeViewSettings::SetTheComment(rtl::OUString const&)
+ScChangeViewSettings::operator=(ScChangeViewSettings const&)
+ScChart2DataProvider::Notify(SfxBroadcaster&, SfxHint const&)
+ScChart2DataProvider::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScChart2DataProvider::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScChart2DataProvider::convertRangeFromXML(rtl::OUString const&)
+ScChart2DataProvider::convertRangeToXML(rtl::OUString const&)
+ScChart2DataProvider::createDataSequenceByFormulaTokens(com::sun::star::uno::Sequence<com::sun::star::sheet::FormulaToken> const&)
+ScChart2DataProvider::createDataSequenceByFormulaTokensPossible(com::sun::star::uno::Sequence<com::sun::star::sheet::FormulaToken> const&)
+ScChart2DataProvider::createDataSequenceByRangeRepresentation(rtl::OUString const&)
+ScChart2DataProvider::createDataSequenceByRangeRepresentationPossible(rtl::OUString const&)
+ScChart2DataProvider::createDataSequenceByValueArray(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+ScChart2DataProvider::createDataSource(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScChart2DataProvider::createDataSourcePossible(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScChart2DataProvider::detectArguments(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSource> const&)
+ScChart2DataProvider::getImplementationName()
+ScChart2DataProvider::getPropertySetInfo()
+ScChart2DataProvider::getPropertyValue(rtl::OUString const&)
+ScChart2DataProvider::getRangeSelection()
+ScChart2DataProvider::getSupportedServiceNames()
+ScChart2DataProvider::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScChart2DataProvider::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScChart2DataProvider::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScChart2DataProvider::supportsService(rtl::OUString const&)
+ScChart2DataProvider::~ScChart2DataProvider()
+ScChartListener::ChangeListening(tools::SvRef<ScRangeList> const&, bool)
+ScChartListener::EndListeningTo()
+ScChartListener::GetExtRefListener()
+ScChartListener::GetRangeList() const
+ScChartListener::GetUnoListener() const
+ScChartListener::GetUnoSource() const
+ScChartListener::Notify(SfxHint const&)
+ScChartListener::ScChartListener(rtl::OUString const&, ScDocument&, tools::SvRef<ScRangeList> const&)
+ScChartListener::SetRangeList(tools::SvRef<ScRangeList> const&)
+ScChartListener::SetUno(com::sun::star::uno::Reference<com::sun::star::chart::XChartDataChangeEventListener> const&, com::sun::star::uno::Reference<com::sun::star::chart::XChartData> const&)
+ScChartListener::SetUpdateQueue()
+ScChartListener::Update()
+ScChartListener::UpdateChartIntersecting(ScRange const&)
+ScChartListener::operator!=(ScChartListener const&) const
+ScChartListener::operator==(ScChartListener const&) const
+ScChartListenerCollection::ChangeListening(rtl::OUString const&, tools::SvRef<ScRangeList> const&)
+ScChartListenerCollection::FreeUno(com::sun::star::uno::Reference<com::sun::star::chart::XChartDataChangeEventListener> const&, com::sun::star::uno::Reference<com::sun::star::chart::XChartData> const&)
+ScChartListenerCollection::FreeUnused()
+ScChartListenerCollection::Init()
+ScChartListenerCollection::ScChartListenerCollection(ScChartListenerCollection const&)
+ScChartListenerCollection::SetDiffDirty(ScChartListenerCollection const&, bool)
+ScChartListenerCollection::SetDirty()
+ScChartListenerCollection::StartAllListeners()
+ScChartListenerCollection::StartTimer()
+ScChartListenerCollection::UpdateChartsContainingTab(short)
+ScChartListenerCollection::UpdateDirtyCharts()
+ScChartListenerCollection::findByName(rtl::OUString const&)
+ScChartListenerCollection::findByName(rtl::OUString const&) const
+ScChartListenerCollection::getUniqueName(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+ScChartListenerCollection::hasListeners() const
+ScChartListenerCollection::operator==(ScChartListenerCollection const&) const
+ScChartListenerCollection::removeByName(rtl::OUString const&)
+ScClipParam::ScClipParam()
+ScClipParam::getPasteColSize()
+ScClipParam::getPasteRowSize(ScDocument const&, bool)
+ScClipParam::getWholeRange() const
+ScClipParam::isMultiRange() const
+ScClipParam::transpose(ScDocument const&, bool, bool)
+ScColorFormat::ScColorFormat(ScDocument*)
+ScColorFormat::SetParent(ScConditionalFormat*)
+ScColorFormat::endRendering()
+ScColorFormat::getMaxValue() const
+ScColorFormat::getMinValue() const
+ScColorFormat::getValues() const
+ScColorFormat::startRendering()
+ScColorScaleEntry::ScColorScaleEntry(ScColorScaleEntry const&)
+ScColorScaleEntry::ScColorScaleEntry(ScDocument*, ScColorScaleEntry const&)
+ScColorScaleEntry::SetColor(Color const&)
+ScColorScaleEntry::SetRepaintCallback(ScConditionalFormat*)
+ScColorScaleEntry::SetRepaintCallback(std::function<void ()> const&)
+ScColorScaleEntry::SetValue(double)
+ScColorScaleEntry::UpdateDeleteTab(sc::RefUpdateDeleteTabContext const&)
+ScColorScaleEntry::UpdateInsertTab(sc::RefUpdateInsertTabContext const&)
+ScColorScaleEntry::UpdateMoveTab(sc::RefUpdateMoveTabContext const&)
+ScColorScaleEntry::UpdateReference(sc::RefUpdateContext const&)
+ScColorScaleEntry::setListener()
+ScColorScaleFormat::CalcValue(double, double, __gnu_cxx::__normal_iterator<std::unique_ptr<ScColorScaleEntry, o3tl::default_delete<ScColorScaleEntry> > const*, std::vector<std::unique_ptr<ScColorScaleEntry, o3tl::default_delete<ScColorScaleEntry> >, std::allocator<std::unique_ptr<ScColorScaleEntry, o3tl::default_delete<ScColorScaleEntry> > > > > const&) const
+ScColorScaleFormat::Clone(ScDocument*) const
+ScColorScaleFormat::EnsureSize()
+ScColorScaleFormat::GetColor(ScAddress const&) const
+ScColorScaleFormat::GetEntry(unsigned long)
+ScColorScaleFormat::GetMaxValue() const
+ScColorScaleFormat::GetMinValue() const
+ScColorScaleFormat::GetType() const
+ScColorScaleFormat::ScColorScaleFormat(ScDocument*, ScColorScaleFormat const&)
+ScColorScaleFormat::SetParent(ScConditionalFormat*)
+ScColorScaleFormat::UpdateDeleteTab(sc::RefUpdateDeleteTabContext&)
+ScColorScaleFormat::UpdateInsertTab(sc::RefUpdateInsertTabContext&)
+ScColorScaleFormat::UpdateMoveTab(sc::RefUpdateMoveTabContext&)
+ScColorScaleFormat::UpdateReference(sc::RefUpdateContext&)
+ScColorScaleFormat::begin()
+ScColorScaleFormat::calcMinMax(double&, double&) const
+ScColorScaleFormat::end()
+ScColorScaleFormat::~ScColorScaleFormat()
+ScCompiler::AdjustSheetLocalNameRelReferences(short)
+ScCompiler::AdjustSumRangeShape(ScComplexRefData const&, ScComplexRefData&)
+ScCompiler::AnnotateOperands()
+ScCompiler::AnnotateTrimOnDoubleRefs()
+ScCompiler::AutoCorrectParsedSymbol()
+ScCompiler::CompileString(rtl::OUString const&, rtl::OUString const&)
+ScCompiler::CorrectSumRange(ScComplexRefData const&, ScComplexRefData&, formula::FormulaToken**)
+ScCompiler::CreateStringFromDoubleRef(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+ScCompiler::CreateStringFromExternal(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+ScCompiler::CreateStringFromIndex(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+ScCompiler::CreateStringFromMatrix(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+ScCompiler::CreateStringFromSingleRef(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+ScCompiler::CreateStringFromXMLTokenArray(rtl::OUString&, rtl::OUString&)
+ScCompiler::DeInit()
+ScCompiler::DoubleRefToPosSingleRefScalarCase(ScRange const&, ScAddress&, ScAddress const&)
+ScCompiler::EnQuote(rtl::OUString&)
+ScCompiler::ExtendRangeReference(formula::FormulaToken&, formula::FormulaToken&)
+ScCompiler::FindAddInFunction(rtl::OUString const&, bool) const
+ScCompiler::GetAddInMapCount()
+ScCompiler::GetCharClassEnglish()
+ScCompiler::GetCharClassLocalized()
+ScCompiler::GetDocTabPos(rtl::OUString const&)
+ScCompiler::GetForceArrayParameter(formula::FormulaToken const*, unsigned short) const
+ScCompiler::GetRangeData(formula::FormulaToken const&) const
+ScCompiler::GetRangeData(short&, rtl::OUString const&) const
+ScCompiler::GetRefConvention(formula::FormulaGrammar::AddressConvention)
+ScCompiler::GetSetupTabNames() const
+ScCompiler::GetTokenIfOpCode(OpCode)
+ScCompiler::HandleColRowName()
+ScCompiler::HandleDbData()
+ScCompiler::HandleExternalReference(formula::FormulaToken const&)
+ScCompiler::HandleIIOpCode(formula::FormulaToken*, formula::FormulaToken***, unsigned char)
+ScCompiler::HandleIIOpCodeInternal(formula::FormulaToken*, formula::FormulaToken***, unsigned char)
+ScCompiler::HandleRange()
+ScCompiler::HandleTableRef()
+ScCompiler::IsBoolean(rtl::OUString const&)
+ScCompiler::IsColRowName(rtl::OUString const&)
+ScCompiler::IsDBRange(rtl::OUString const&)
+ScCompiler::IsDoubleReference(rtl::OUString const&, rtl::OUString const*)
+ScCompiler::IsErrorConstant(rtl::OUString const&) const
+ScCompiler::IsExternalNamedRange(rtl::OUString const&, bool&)
+ScCompiler::IsMacro(rtl::OUString const&)
+ScCompiler::IsNamedRange(rtl::OUString const&)
+ScCompiler::IsOpCode(rtl::OUString const&, bool)
+ScCompiler::IsOpCode2(rtl::OUString const&)
+ScCompiler::IsPredetectedErrRefReference(rtl::OUString const&, rtl::OUString const*)
+ScCompiler::IsPredetectedReference(rtl::OUString const&)
+ScCompiler::IsReference(rtl::OUString const&, rtl::OUString const*)
+ScCompiler::IsSingleReference(rtl::OUString const&, rtl::OUString const*)
+ScCompiler::IsString()
+ScCompiler::IsTableRefColumn(rtl::OUString const&) const
+ScCompiler::IsTableRefItem(rtl::OUString const&) const
+ScCompiler::IsValue(rtl::OUString const&)
+ScCompiler::LocalizeString(rtl::OUString&) const
+ScCompiler::MoveRelWrap()
+ScCompiler::NextNewToken(bool)
+ScCompiler::NextSymbol(bool)
+ScCompiler::ParameterMayBeImplicitIntersection(formula::FormulaToken const*, int)
+ScCompiler::PostProcessCode()
+ScCompiler::ReplaceDoubleRefII(formula::FormulaToken**)
+ScCompiler::ScCompiler(sc::CompileFormulaContext&, ScAddress const&, bool, bool, ScInterpreterContext const*)
+ScCompiler::SetAutoCorrection(bool)
+ScCompiler::SetError(FormulaError)
+ScCompiler::SetFormulaLanguage(std::shared_ptr<formula::FormulaCompiler::OpCodeMap const> const&)
+ScCompiler::SetGrammarAndRefConvention(formula::FormulaGrammar::Grammar, formula::FormulaGrammar::Grammar)
+ScCompiler::SetRefConvention(ScCompiler::Convention const*)
+ScCompiler::SetRefConvention(formula::FormulaGrammar::AddressConvention)
+ScCompiler::SetRelNameReference()
+ScCompiler::SkipImplicitIntersectionOptimization(formula::FormulaToken const*) const
+ScCompiler::ToUpperAsciiOrI18nIsAscii(rtl::OUString&, rtl::OUString const&) const
+ScCompiler::addWhitespace(std::vector<ScCompiler::Whitespace, std::allocator<ScCompiler::Whitespace> >&, ScCompiler::Whitespace&, char16_t, int)
+ScCompiler::fillAddInToken(std::vector<com::sun::star::sheet::FormulaOpCodeMapEntry, std::allocator<com::sun::star::sheet::FormulaOpCodeMapEntry> >&, bool) const
+ScCompiler::fillFromAddInCollectionEnglishName(std::shared_ptr<formula::FormulaCompiler::OpCodeMap> const&) const
+ScCompiler::fillFromAddInCollectionUpperName(std::shared_ptr<formula::FormulaCompiler::OpCodeMap> const&) const
+ScCompiler::fillFromAddInMap(std::shared_ptr<formula::FormulaCompiler::OpCodeMap> const&, formula::FormulaGrammar::Grammar) const
+ScComplexRefData::toAbs(ScSheetLimits const&, ScAddress const&) const
+ScCondDateFormatEntry::Clone(ScDocument*) const
+ScCondDateFormatEntry::IsValid(ScAddress const&) const
+ScCondDateFormatEntry::ScCondDateFormatEntry(ScDocument*, ScCondDateFormatEntry const&)
+ScCondDateFormatEntry::endRendering()
+ScCondDateFormatEntry::startRendering()
+ScCondFormatEntry::Clone(ScDocument*) const
+ScCondFormatEntry::DataChanged() const
+ScCondFormatEntry::IsEqual(ScFormatEntry const&, bool) const
+ScCondFormatEntry::ScCondFormatEntry(ScDocument&, ScCondFormatEntry const&)
+ScCondFormatHelper::GetExpression(ScCondFormatEntryType, int, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ScConditionEntry::CalcAll()
+ScConditionEntry::Clone(ScDocument*) const
+ScConditionEntry::Compile(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, formula::FormulaGrammar::Grammar, formula::FormulaGrammar::Grammar, bool)
+ScConditionEntry::CompileAll()
+ScConditionEntry::CompileXML()
+ScConditionEntry::DataChanged() const
+ScConditionEntry::FillCache() const
+ScConditionEntry::GetModeFromApi(com::sun::star::sheet::ConditionOperator)
+ScConditionEntry::Interpret(ScAddress const&)
+ScConditionEntry::IsAboveAverage(double, bool) const
+ScConditionEntry::IsBelowAverage(double, bool) const
+ScConditionEntry::IsBottomNElement(double) const
+ScConditionEntry::IsBottomNPercent(double) const
+ScConditionEntry::IsCellValid(ScRefCellValue&, ScAddress const&) const
+ScConditionEntry::IsDuplicate(double, rtl::OUString const&) const
+ScConditionEntry::IsEqual(ScFormatEntry const&, bool) const
+ScConditionEntry::IsError(ScAddress const&) const
+ScConditionEntry::IsTopNElement(double) const
+ScConditionEntry::IsTopNPercent(double) const
+ScConditionEntry::IsValid(double, ScAddress const&) const
+ScConditionEntry::IsValidStr(rtl::OUString const&, ScAddress const&) const
+ScConditionEntry::MakeCells(ScAddress const&)
+ScConditionEntry::MarkUsedExternalReferences() const
+ScConditionEntry::NeedsRepaint() const
+ScConditionEntry::ScConditionEntry(ScConditionEntry const&)
+ScConditionEntry::ScConditionEntry(ScConditionMode, ScTokenArray const*, ScTokenArray const*, ScDocument&, ScAddress const&)
+ScConditionEntry::ScConditionEntry(ScConditionMode, rtl::OUString const&, rtl::OUString const&, ScDocument&, ScAddress const&, rtl::OUString const&, rtl::OUString const&, formula::FormulaGrammar::Grammar, formula::FormulaGrammar::Grammar, ScFormatEntry::Type)
+ScConditionEntry::ScConditionEntry(ScDocument&, ScConditionEntry const&)
+ScConditionEntry::SetFormula1(ScTokenArray const&)
+ScConditionEntry::SetFormula2(ScTokenArray const&)
+ScConditionEntry::SetOperation(ScConditionMode)
+ScConditionEntry::SetParent(ScConditionalFormat*)
+ScConditionEntry::SimplifyCompiledFormula(std::unique_ptr<ScTokenArray, std::default_delete<ScTokenArray> >&, double&, bool&, rtl::OUString&)
+ScConditionEntry::StartListening()
+ScConditionEntry::UpdateDeleteTab(sc::RefUpdateDeleteTabContext&)
+ScConditionEntry::UpdateInsertTab(sc::RefUpdateInsertTabContext&)
+ScConditionEntry::UpdateMoveTab(sc::RefUpdateMoveTabContext&)
+ScConditionEntry::UpdateReference(sc::RefUpdateContext&)
+ScConditionEntry::endRendering()
+ScConditionEntry::startRendering()
+ScConditionEntry::~ScConditionEntry()
+ScConditionalFormat::CalcAll()
+ScConditionalFormat::CompileAll()
+ScConditionalFormat::CompileXML()
+ScConditionalFormat::DeleteArea(short, int, short, int)
+ScConditionalFormat::DoRepaint()
+ScConditionalFormat::EqualEntries(ScConditionalFormat const&, bool) const
+ScConditionalFormat::GetData(ScRefCellValue&, ScAddress const&) const
+ScConditionalFormat::GetDocument()
+ScConditionalFormat::InsertCol(short, int, int, short, unsigned long)
+ScConditionalFormat::InsertRow(short, short, short, int, unsigned long)
+ScConditionalFormat::IsEmpty() const
+ScConditionalFormat::MarkUsedExternalReferences() const
+ScConditionalFormat::RemoveEntry(unsigned long)
+ScConditionalFormat::RenameCellStyle(std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&)
+ScConditionalFormat::UpdateDeleteTab(sc::RefUpdateDeleteTabContext&)
+ScConditionalFormat::UpdateInsertTab(sc::RefUpdateInsertTabContext&)
+ScConditionalFormat::UpdateMoveTab(sc::RefUpdateMoveTabContext&)
+ScConditionalFormat::UpdateReference(sc::RefUpdateContext&, bool)
+ScConditionalFormat::endRendering()
+ScConditionalFormat::startRendering()
+ScConditionalFormatList::AddToDocument(ScDocument&) const
+ScConditionalFormatList::CalcAll()
+ScConditionalFormatList::CheckAllEntries(Link<ScConditionalFormat*, void> const&)
+ScConditionalFormatList::CompileAll()
+ScConditionalFormatList::CompileXML()
+ScConditionalFormatList::DeleteArea(short, int, short, int)
+ScConditionalFormatList::GetCombinedRange() const
+ScConditionalFormatList::GetFormat(unsigned int) const
+ScConditionalFormatList::InsertCol(short, int, int, short, unsigned long)
+ScConditionalFormatList::InsertNew(std::unique_ptr<ScConditionalFormat, std::default_delete<ScConditionalFormat> >)
+ScConditionalFormatList::InsertRow(short, short, short, int, unsigned long)
+ScConditionalFormatList::RemoveFromDocument(ScDocument&) const
+ScConditionalFormatList::RenameCellStyle(std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&)
+ScConditionalFormatList::ScConditionalFormatList(ScDocument&, ScConditionalFormatList const&)
+ScConditionalFormatList::UpdateDeleteTab(sc::RefUpdateDeleteTabContext&)
+ScConditionalFormatList::UpdateInsertTab(sc::RefUpdateInsertTabContext&)
+ScConditionalFormatList::UpdateMoveTab(sc::RefUpdateMoveTabContext&)
+ScConditionalFormatList::UpdateReference(sc::RefUpdateContext&)
+ScConditionalFormatList::clear()
+ScConditionalFormatList::endRendering()
+ScConditionalFormatList::getMaxKey() const
+ScConditionalFormatList::startRendering()
+ScCreateDialogFactory
+ScCsvControl::AccSendCaretEvent()
+ScCsvControl::AccSendFocusEvent(bool)
+ScCsvControl::AccSendInsertColumnEvent(unsigned int, unsigned int)
+ScCsvControl::AccSendRemoveColumnEvent(unsigned int, unsigned int)
+ScCsvControl::AccSendSelectionEvent()
+ScCsvControl::AccSendTableUpdateEvent(unsigned int, unsigned int, bool)
+ScCsvControl::AccSendVisibleEvent()
+ScCsvControl::DisableRepaint()
+ScCsvControl::EnableRepaint()
+ScCsvControl::GetFirstX() const
+ScCsvControl::GetFocus()
+ScCsvControl::GetHdrX() const
+ScCsvControl::GetHorzDirection(unsigned short, bool)
+ScCsvControl::GetLastVisLine() const
+ScCsvControl::GetLastX() const
+ScCsvControl::GetLineFromY(int) const
+ScCsvControl::GetMaxLineOffset() const
+ScCsvControl::GetMaxPosOffset() const
+ScCsvControl::GetPosFromX(int) const
+ScCsvControl::GetVertDirection(unsigned short, bool)
+ScCsvControl::GetVisPosCount() const
+ScCsvControl::GetX(int) const
+ScCsvControl::GetY(int) const
+ScCsvControl::ImplInvertRect(OutputDevice&, tools::Rectangle const&)
+ScCsvControl::IsValidLine(int) const
+ScCsvControl::IsValidSplitPos(int) const
+ScCsvControl::IsVisibleLine(int) const
+ScCsvControl::IsVisibleSplitPos(int) const
+ScCsvControl::LoseFocus()
+ScCsvControl::Repaint(bool)
+ScCsvControl::ScCsvControl(ScCsvLayoutData const&)
+ScCsvControl::~ScCsvControl()
+ScCsvGrid::ApplyLayout(ScCsvLayoutData const&)
+ScCsvGrid::Command(CommandEvent const&)
+ScCsvGrid::ConfigurationChanged(utl::ConfigurationBroadcaster*, ConfigurationHints)
+ScCsvGrid::CreateAccessible()
+ScCsvGrid::FillColumnDataFix(ScAsciiOptions&) const
+ScCsvGrid::FillColumnDataSep(ScAsciiOptions&) const
+ScCsvGrid::GetCellText(unsigned int, int) const
+ScCsvGrid::GetColumnFromPos(int) const
+ScCsvGrid::GetColumnFromX(int) const
+ScCsvGrid::GetColumnTypeName(unsigned int) const
+ScCsvGrid::GetColumnWidth(unsigned int) const
+ScCsvGrid::GetColumnX(unsigned int) const
+ScCsvGrid::GetEditEngine()
+ScCsvGrid::GetFirstSelected() const
+ScCsvGrid::GetFirstVisColumn() const
+ScCsvGrid::GetFocus()
+ScCsvGrid::GetFocusRect()
+ScCsvGrid::GetLastVisColumn() const
+ScCsvGrid::GetNextSelected(unsigned int) const
+ScCsvGrid::GetNoScrollCol(int) const
+ScCsvGrid::ImplRedraw(OutputDevice&)
+ScCsvGrid::ImplSetTextLineFix(int, rtl::OUString const&)
+ScCsvGrid::ImplSetTextLineSep(int, rtl::OUString const&, rtl::OUString const&, char16_t, bool, bool)
+ScCsvGrid::Init()
+ScCsvGrid::InsertSplit(int)
+ScCsvGrid::IsSelected(unsigned int) const
+ScCsvGrid::IsValidColumn(unsigned int) const
+ScCsvGrid::IsVisibleColumn(unsigned int) const
+ScCsvGrid::KeyInput(KeyEvent const&)
+ScCsvGrid::LoseFocus()
+ScCsvGrid::MouseButtonDown(MouseEvent const&)
+ScCsvGrid::MouseButtonUp(MouseEvent const&)
+ScCsvGrid::MouseMove(MouseEvent const&)
+ScCsvGrid::MoveSplit(int, int)
+ScCsvGrid::Paint(OutputDevice&, tools::Rectangle const&)
+ScCsvGrid::RemoveAllSplits()
+ScCsvGrid::RemoveSplit(int)
+ScCsvGrid::Resize()
+ScCsvGrid::ScCsvGrid(ScCsvLayoutData const&, std::unique_ptr<weld::Menu, std::default_delete<weld::Menu> >, ScCsvTableBox*)
+ScCsvGrid::Select(unsigned int, bool)
+ScCsvGrid::SelectAll(bool)
+ScCsvGrid::SelectRange(unsigned int, unsigned int, bool)
+ScCsvGrid::SetColumnStates(std::vector<ScCsvColState, std::allocator<ScCsvColState> >&&)
+ScCsvGrid::SetDrawingArea(weld::DrawingArea*)
+ScCsvGrid::SetFirstImportedLine(int)
+ScCsvGrid::SetSelColumnType(int)
+ScCsvGrid::SetSplits(ScCsvSplits const&)
+ScCsvGrid::SetTypeNames(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&&)
+ScCsvGrid::StyleUpdated()
+ScCsvGrid::ToggleSelect(unsigned int)
+ScCsvGrid::UpdateLayoutData()
+ScCsvGrid::UpdateOffsetX()
+ScCsvGrid::~ScCsvGrid()
+ScDBCollection::DeleteOnTab(short)
+ScDBCollection::GetDBAtArea(short, short, int, short, int) const
+ScDBCollection::GetDBAtCursor(short, int, short, ScDBDataPortion)
+ScDBCollection::GetDBAtCursor(short, int, short, ScDBDataPortion) const
+ScDBCollection::NamedDBs::NamedDBs(ScDBCollection&, ScDocument&)
+ScDBCollection::NamedDBs::NamedDBs(ScDBCollection::NamedDBs const&, ScDBCollection&)
+ScDBCollection::NamedDBs::begin() const
+ScDBCollection::NamedDBs::end() const
+ScDBCollection::NamedDBs::erase(std::_Rb_tree_const_iterator<std::unique_ptr<ScDBData, std::default_delete<ScDBData> > > const&)
+ScDBCollection::NamedDBs::findByUpperName2(rtl::OUString const&)
+ScDBCollection::NamedDBs::initInserted(ScDBData*)
+ScDBCollection::NamedDBs::operator==(ScDBCollection::NamedDBs const&) const
+ScDBCollection::NamedDBs::size() const
+ScDBCollection::NamedDBs::~NamedDBs()
+ScDBCollection::RefreshDirtyTableColumnNames()
+ScDBCollection::ScDBCollection(ScDBCollection const&)
+ScDBCollection::ScDBCollection(ScDocument&)
+ScDBCollection::UpdateMoveTab(short, short)
+ScDBCollection::UpdateReference(UpdateRefMode, short, int, short, short, int, short, short, int, short)
+ScDBCollection::operator==(ScDBCollection const&) const
+ScDBDocFunc::Query(short, ScQueryParam const&, ScRange const*, bool, bool)
+ScDPCache::AddReference(ScDPObject*) const
+ScDPCache::AppendGroupField()
+ScDPCache::Clear()
+ScDPCache::ClearAllFields()
+ScDPCache::ClearGroupFields()
+ScDPCache::GetColumnCount() const
+ScDPCache::GetDimMemberCount(long) const
+ScDPCache::GetDoc() const
+ScDPCache::GetGroupItems(long) const
+ScDPCache::GetIdByItemData(long, ScDPItemData const&) const
+ScDPCache::GetItemDataId(unsigned short, int, bool) const
+ScDPCache::GetLocaleIndependentFormat(SvNumberFormatter&, unsigned int)
+ScDPCache::GetLocaleIndependentFormattedNumberString(double)
+ScDPCache::GetLocaleIndependentFormattedString(double, SvNumberFormatter&, unsigned int)
+ScDPCache::GetNumberFormat(long) const
+ScDPCache::GetNumberFormatter() const
+ScDPCache::GetRowCount() const
+ScDPCache::InitFromDataBase(ScDPCache::DBConnector&)
+ScDPCache::InitFromDoc(ScDocument&, ScRange const&)
+ScDPCache::InternString(unsigned long, rtl::OUString const&)
+ScDPCache::IsRowEmpty(int) const
+ScDPCache::PostInit()
+ScDPCache::RemoveReference(ScDPObject*) const
+ScDPCache::ResetGroupItems(long, ScDPNumGroupInfo const&, int)
+ScDPCache::ScDPCache(ScDocument&)
+ScDPCache::SetGroupItem(long, ScDPItemData const&)
+ScDPCache::ValidQuery(int, ScQueryParam const&) const
+ScDPCache::~ScDPCache()
+ScDPCollection::GetDBCaches() const
+ScDPCollection::GetNameCaches() const
+ScDPCollection::HasTable(ScDPObject const*) const
+ScDPCollection::operator[](unsigned long) const
+ScDPDimensionSaveData::CollectDateParts(rtl::OUString const&) const
+ScDPDimensionSaveData::CreateDateGroupDimName(int, ScDPObject const&, bool, std::vector<rtl::OUString, std::allocator<rtl::OUString> > const*)
+ScDPDimensionSaveData::CreateGroupDimName(rtl::OUString const&, ScDPObject const&, bool, std::vector<rtl::OUString, std::allocator<rtl::OUString> > const*)
+ScDPDimensionSaveData::GetFirstNamedGroupDim(rtl::OUString const&) const
+ScDPDimensionSaveData::GetFirstNamedGroupDimAcc(rtl::OUString const&)
+ScDPDimensionSaveData::GetGroupDimAccForBase(rtl::OUString const&)
+ScDPDimensionSaveData::GetNamedGroupDimAcc(rtl::OUString const&)
+ScDPDimensionSaveData::GetNextNamedGroupDim(rtl::OUString const&) const
+ScDPDimensionSaveData::GetNextNamedGroupDimAcc(rtl::OUString const&)
+ScDPDimensionSaveData::GetNumGroupDimAcc(rtl::OUString const&)
+ScDPDimensionSaveData::RemoveGroupDimension(rtl::OUString const&)
+ScDPDimensionSaveData::RemoveNumGroupDimension(rtl::OUString const&)
+ScDPDimensionSaveData::ReplaceGroupDimension(ScDPSaveGroupDimension const&)
+ScDPDimensionSaveData::ReplaceNumGroupDimension(ScDPSaveNumGroupDimension const&)
+ScDPDimensionSaveData::ScDPDimensionSaveData()
+ScDPDimensionSaveData::WriteToCache(ScDPCache&) const
+ScDPDimensionSaveData::WriteToData(ScDPGroupTableData&) const
+ScDPDimensionSaveData::operator==(ScDPDimensionSaveData const&) const
+ScDPItemData::Compare(ScDPItemData const&, ScDPItemData const&)
+ScDPItemData::DisposeString()
+ScDPItemData::GetCellType() const
+ScDPItemData::IsCaseInsEqual(ScDPItemData const&) const
+ScDPItemData::IsValue() const
+ScDPItemData::ScDPItemData()
+ScDPItemData::ScDPItemData(ScDPItemData const&)
+ScDPItemData::ScDPItemData(int, int)
+ScDPItemData::ScDPItemData(rtl::OUString const&)
+ScDPItemData::SetEmpty()
+ScDPItemData::SetErrorStringInterned(_rtl_uString*)
+ScDPItemData::SetRangeFirst()
+ScDPItemData::SetRangeLast()
+ScDPItemData::SetRangeStart(double)
+ScDPItemData::SetString(rtl::OUString const&)
+ScDPItemData::SetStringInterned(_rtl_uString*)
+ScDPItemData::SetValue(double)
+ScDPItemData::operator<(ScDPItemData const&) const
+ScDPItemData::operator=(ScDPItemData const&)
+ScDPItemData::operator==(ScDPItemData const&) const
+ScDPItemData::~ScDPItemData()
+ScDPName::ScDPName(rtl::OUString const&, rtl::OUString const&, unsigned char)
+ScDPNumGroupDimension::DisposeData()
+ScDPNumGroupDimension::ScDPNumGroupDimension()
+ScDPNumGroupDimension::ScDPNumGroupDimension(ScDPNumGroupDimension const&)
+ScDPNumGroupDimension::operator=(ScDPNumGroupDimension const&)
+ScDPObject::Clear()
+ScDPObject::ClearTableData()
+ScDPObject::ConvertOrientation(ScDPSaveData&, std::vector<ScPivotField, std::allocator<ScPivotField> > const&, com::sun::star::sheet::DataPilotFieldOrientation, com::sun::star::uno::Reference<com::sun::star::sheet::XDimensionsSupplier> const&, std::vector<std::unique_ptr<ScDPLabelData, std::default_delete<ScDPLabelData> >, std::allocator<std::unique_ptr<ScDPLabelData, std::default_delete<ScDPLabelData> > > > const&, std::vector<ScPivotField, std::allocator<ScPivotField> > const*, std::vector<ScPivotField, std::allocator<ScPivotField> > const*, std::vector<ScPivotField, std::allocator<ScPivotField> > const*)
+ScDPObject::CreateSource(ScDPServiceDesc const&)
+ScDPObject::EnableGetPivotData(bool)
+ScDPObject::FillLabelData(ScPivotParam&)
+ScDPObject::FillLabelData(int, ScDPLabelData&)
+ScDPObject::FillOldParam(ScPivotParam&) const
+ScDPObject::GetDataFieldPositionData(ScAddress const&, com::sun::star::uno::Sequence<com::sun::star::sheet::DataPilotFieldFilter>&)
+ScDPObject::GetDrillDownData(ScAddress const&, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<com::sun::star::uno::Any> >&)
+ScDPObject::GetHeaderDrag(ScAddress const&, bool, bool, long, tools::Rectangle&, com::sun::star::sheet::DataPilotFieldOrientation&, long&)
+ScDPObject::GetHeaderPositionData(ScAddress const&, com::sun::star::sheet::DataPilotTableHeaderData&)
+ScDPObject::GetHierarchies(int, com::sun::star::uno::Sequence<rtl::OUString>&)
+ScDPObject::GetHierarchiesNA(int, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&)
+ScDPObject::GetMemberNames(int, com::sun::star::uno::Sequence<rtl::OUString>&)
+ScDPObject::GetMemberResultNames(std::unordered_set<rtl::OUString, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<rtl::OUString> >&, long)
+ScDPObject::GetMembersNA(int, com::sun::star::uno::Reference<com::sun::star::sheet::XMembersAccess>&)
+ScDPObject::GetMembersNA(int, int, com::sun::star::uno::Reference<com::sun::star::sheet::XMembersAccess>&)
+ScDPObject::GetNewOutputRange(bool&)
+ScDPObject::GetPivotData(rtl::OUString const&, std::vector<com::sun::star::sheet::DataPilotFieldFilter, std::allocator<com::sun::star::sheet::DataPilotFieldFilter> >&)
+ScDPObject::GetPositionData(ScAddress const&, com::sun::star::sheet::DataPilotTablePositionData&)
+ScDPObject::GetRegisteredSources()
+ScDPObject::HasRegisteredSources()
+ScDPObject::InvalidateData()
+ScDPObject::IsDataDescriptionCell(ScAddress const&)
+ScDPObject::IsDimNameInUse(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+ScDPObject::IsFilterButton(ScAddress const&)
+ScDPObject::IsSheetData() const
+ScDPObject::ParseFilters(rtl::OUString&, std::vector<com::sun::star::sheet::DataPilotFieldFilter, std::allocator<com::sun::star::sheet::DataPilotFieldFilter> >&, std::vector<short, std::allocator<short> >&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ScDPObject::RefreshAfterLoad()
+ScDPObject::RefsEqual(ScDPObject const&) const
+ScDPObject::ScDPObject(ScDPObject const&)
+ScDPObject::SetAllowMove(bool)
+ScDPObject::SetImportDesc(ScImportSourceDesc const&)
+ScDPObject::SetServiceData(ScDPServiceDesc const&)
+ScDPObject::SetTag(rtl::OUString const&)
+ScDPObject::ToggleDetails(com::sun::star::sheet::DataPilotTableHeaderData const&, ScDPObject*)
+ScDPObject::UpdateReference(UpdateRefMode, ScRange const&, short, int, short)
+ScDPObject::WriteRefsTo(ScDPObject&) const
+ScDPObject::WriteSourceDataTo(ScDPObject&) const
+ScDPObject::WriteTempDataTo(ScDPObject&) const
+ScDPObject::operator=(ScDPObject const&)
+ScDPOutputGeometry::adjustFieldsForDataLayout(unsigned int&, unsigned int&) const
+ScDPOutputGeometry::getFieldButtonType(ScAddress const&) const
+ScDPOutputGeometry::setDataLayoutType(ScDPOutputGeometry::FieldType)
+ScDPSaveDimension::AddMember(std::unique_ptr<ScDPSaveMember, std::default_delete<ScDPSaveMember> >)
+ScDPSaveDimension::GetCurrentPage() const
+ScDPSaveDimension::IsMemberNameInUse(rtl::OUString const&) const
+ScDPSaveDimension::RemoveLayoutName()
+ScDPSaveDimension::RemoveObsoleteMembers(std::unordered_set<rtl::OUString, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<rtl::OUString> > const&)
+ScDPSaveDimension::RemoveSubtotalName()
+ScDPSaveDimension::ScDPSaveDimension(ScDPSaveDimension const&)
+ScDPSaveDimension::ScDPSaveDimension(rtl::OUString const&, bool)
+ScDPSaveDimension::SetMemberPosition(rtl::OUString const&, int)
+ScDPSaveDimension::SetName(rtl::OUString const&)
+ScDPSaveDimension::SetRepeatItemLabels(bool)
+ScDPSaveDimension::SetUsedHierarchy(long)
+ScDPSaveDimension::UpdateMemberVisibility(std::unordered_map<rtl::OUString, bool, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, bool> > > const&)
+ScDPSaveDimension::WriteToSource(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+ScDPSaveDimension::operator==(ScDPSaveDimension const&) const
+ScDPSaveDimension::~ScDPSaveDimension()
+ScDPSaveGroupDimension::AddToCache(ScDPCache&) const
+ScDPSaveGroupDimension::AddToData(ScDPGroupTableData&) const
+ScDPSaveGroupDimension::CreateGroupName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ScDPSaveGroupDimension::GetNamedGroup(rtl::OUString const&) const
+ScDPSaveGroupDimension::GetNamedGroupAcc(rtl::OUString const&)
+ScDPSaveGroupDimension::HasOnlyHidden(std::unordered_set<rtl::OUString, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<rtl::OUString> > const&)
+ScDPSaveGroupDimension::IsEmpty() const
+ScDPSaveGroupDimension::IsInGroup(ScDPItemData const&) const
+ScDPSaveGroupDimension::RemoveFromGroups(rtl::OUString const&)
+ScDPSaveGroupDimension::RemoveGroup(rtl::OUString const&)
+ScDPSaveGroupDimension::Rename(rtl::OUString const&)
+ScDPSaveGroupDimension::ScDPSaveGroupDimension(rtl::OUString const&, rtl::OUString const&, ScDPNumGroupInfo const&, int)
+ScDPSaveGroupItem::AddElementsFromGroup(ScDPSaveGroupItem const&)
+ScDPSaveGroupItem::AddToData(ScDPGroupDimension&) const
+ScDPSaveGroupItem::ConvertElementsToItems(SvNumberFormatter*) const
+ScDPSaveGroupItem::HasInGroup(ScDPItemData const&) const
+ScDPSaveGroupItem::RemoveElement(rtl::OUString const&)
+ScDPSaveGroupItem::RemoveElementsFromGroups(ScDPSaveGroupDimension&) const
+ScDPSaveGroupItem::Rename(rtl::OUString const&)
+ScDPSaveNumGroupDimension::AddToCache(ScDPCache&) const
+ScDPSaveNumGroupDimension::AddToData(ScDPGroupTableData&) const
+ScDPSaveNumGroupDimension::ScDPSaveNumGroupDimension(rtl::OUString const&, ScDPNumGroupInfo const&, int)
+ScDPSaveNumGroupDimension::SetGroupInfo(ScDPNumGroupInfo const&)
+ScDPTableData::CalcResultsFromCacheTable(ScDPFilteredCache const&, ScDPTableData::CalcInfo&, bool)
+ScDPTableData::Compare(int, int, int)
+ScDPTableData::FillRowDataFromCacheTable(int, ScDPFilteredCache const&, ScDPTableData::CalcInfo const&, ScDPTableData::CalcRowData&)
+ScDPTableData::GetColumnEntries(int)
+ScDPTableData::GetDatePart(long, long, long)
+ScDPTableData::GetFormattedString(int, ScDPItemData const&, bool) const
+ScDPTableData::GetGroupBase(int) const
+ScDPTableData::GetItemData(ScDPFilteredCache const&, int, std::vector<int, std::allocator<int> > const&, std::vector<int, std::allocator<int> >&)
+ScDPTableData::GetMemberByIndex(int, int)
+ScDPTableData::GetMembersCount(int)
+ScDPTableData::GetNumberFormat(int)
+ScDPTableData::GetNumberFormatByIdx(NfIndexTableOffset)
+ScDPTableData::GetSourceDim(int)
+ScDPTableData::HasCommonElement(ScDPItemData const&, int, ScDPItemData const&, int) const
+ScDPTableData::IsBaseForGroup(int) const
+ScDPTableData::IsInGroup(ScDPItemData const&, int, ScDPItemData const&, int) const
+ScDPTableData::IsNumOrDateGroup(int) const
+ScDPTableData::IsRepeatIfEmpty()
+ScDPTableData::ProcessRowData(ScDPTableData::CalcInfo&, ScDPTableData::CalcRowData const&, bool)
+ScDPTableData::ScDPTableData(ScDocument const*)
+ScDPTableData::~ScDPTableData()
+ScDPUtil::getDateGroupName(int, int, SvNumberFormatter*, double, double)
+ScDataBarFormat::Clone(ScDocument*) const
+ScDataBarFormat::EnsureSize()
+ScDataBarFormat::GetDataBarData()
+ScDataBarFormat::GetDataBarInfo(ScAddress const&) const
+ScDataBarFormat::GetType() const
+ScDataBarFormat::ScDataBarFormat(ScDocument*, ScDataBarFormat const&)
+ScDataBarFormat::SetParent(ScConditionalFormat*)
+ScDataBarFormat::UpdateDeleteTab(sc::RefUpdateDeleteTabContext&)
+ScDataBarFormat::UpdateInsertTab(sc::RefUpdateInsertTabContext&)
+ScDataBarFormat::UpdateMoveTab(sc::RefUpdateMoveTabContext&)
+ScDataBarFormat::UpdateReference(sc::RefUpdateContext&)
+ScDataBarFormat::getMax(double, double) const
+ScDataBarFormat::getMin(double, double) const
+ScDefaultsOptions::SetDefaults()
+ScDefaultsOptions::operator==(ScDefaultsOptions const&) const
+ScDetectiveFunc::AppendChangTrackNoteSeparator(rtl::OUString&)
+ScDetectiveFunc::DeleteAll(ScDetectiveDelete)
+ScDetectiveFunc::DeleteArrowsAt(short, int, bool)
+ScDetectiveFunc::DeleteBox(short, int, short, int)
+ScDetectiveFunc::DeletePred(short, int)
+ScDetectiveFunc::DeleteSucc(short, int)
+ScDetectiveFunc::DrawAlienEntry(ScRange const&, ScDetectiveData&)
+ScDetectiveFunc::DrawCircle(short, int, ScDetectiveData&)
+ScDetectiveFunc::DrawEntry(short, int, ScRange const&, ScDetectiveData&)
+ScDetectiveFunc::FindFrameForObject(SdrObject const*, ScRange&)
+ScDetectiveFunc::FindPredLevel(short, int, unsigned short, unsigned short)
+ScDetectiveFunc::FindPredLevelArea(ScRange const&, unsigned short, unsigned short)
+ScDetectiveFunc::FindSuccLevel(short, int, short, int, unsigned short, unsigned short)
+ScDetectiveFunc::GetAllPreds(short, int, short, int, std::vector<boost::intrusive_ptr<formula::FormulaToken>, std::allocator<boost::intrusive_ptr<formula::FormulaToken> > >&)
+ScDetectiveFunc::GetAllSuccs(short, int, short, int, std::vector<boost::intrusive_ptr<formula::FormulaToken>, std::allocator<boost::intrusive_ptr<formula::FormulaToken> > >&)
+ScDetectiveFunc::GetArrowColor()
+ScDetectiveFunc::GetCommentColor()
+ScDetectiveFunc::GetDrawPos(short, int, ScDetectiveFunc::DrawPosMode) const
+ScDetectiveFunc::GetDrawRect(short, int) const
+ScDetectiveFunc::GetDrawRect(short, int, short, int) const
+ScDetectiveFunc::GetErrorColor()
+ScDetectiveFunc::HasArrow(ScAddress const&, short, int, short)
+ScDetectiveFunc::HasError(ScRange const&, ScAddress&)
+ScDetectiveFunc::InitializeColors()
+ScDetectiveFunc::InsertArrow(short, int, short, int, short, int, bool, bool, ScDetectiveData&)
+ScDetectiveFunc::InsertErrorLevel(short, int, ScDetectiveData&, unsigned short)
+ScDetectiveFunc::InsertObject(ScDetectiveObjType, ScAddress const&, ScRange const&, bool)
+ScDetectiveFunc::InsertPredLevel(short, int, ScDetectiveData&, unsigned short)
+ScDetectiveFunc::InsertPredLevelArea(ScRange const&, ScDetectiveData&, unsigned short)
+ScDetectiveFunc::InsertSuccLevel(short, int, short, int, ScDetectiveData&, unsigned short)
+ScDetectiveFunc::InsertToOtherTab(short, int, short, int, bool, ScDetectiveData&)
+ScDetectiveFunc::IsColorsInitialized()
+ScDetectiveFunc::IsNonAlienArrow(SdrObject const*)
+ScDetectiveFunc::Modified()
+ScDetectiveFunc::ShowError(short, int)
+ScDetectiveFunc::ShowPred(short, int)
+ScDetectiveFunc::ShowSucc(short, int)
+ScDetectiveFunc::UpdateAllArrowColors()
+ScDetectiveFunc::UpdateAllComments(ScDocument&)
+ScDocFunc::InsertTable(short, rtl::OUString const&, bool, bool)
+ScDocOptions::ResetDocOptions()
+ScDocProtection::ScDocProtection(ScDocProtection const&)
+ScDocProtection::getPasswordHash() const
+ScDocProtection::hasPasswordHash(ScPasswordHash, ScPasswordHash) const
+ScDocProtection::isPasswordEmpty() const
+ScDocProtection::isProtectedWithPass() const
+ScDocProtection::setPassword(rtl::OUString const&)
+ScDocProtection::setPasswordHash(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, unsigned int)
+ScDocShell::AdjustPrintZoom(ScRange const&)
+ScDocShell::AdjustRowHeight(int, int, short)
+ScDocShell::AfterXMLLoading(bool)
+ScDocShell::AllowLinkUpdate()
+ScDocShell::AsciiSave(SvStream&, ScImportOptions const&, short)
+ScDocShell::BeforeXMLLoading()
+ScDocShell::CalcOutputFactor()
+ScDocShell::CancelAutoDBRange()
+ScDocShell::CheckConfigOptions()
+ScDocShell::CompareDocument(ScDocument&)
+ScDocShell::ConvertFrom(SfxMedium&)
+ScDocShell::ConvertTo(SfxMedium&)
+ScDocShell::CreateDocumentInfoDialog(weld::Window*, SfxItemSet const&)
+ScDocShell::DBAreaDeleted(short, short, int, short)
+ScDocShell::DdeCreateLinkSource(rtl::OUString const&)
+ScDocShell::DoAutoStyle(ScRange const&, rtl::OUString const&)
+ScDocShell::DoConsolidate(ScConsolidateParam const&, bool)
+ScDocShell::DoSaveCompleted(SfxMedium*, bool)
+ScDocShell::Draw(OutputDevice*, JobSetup const&, unsigned short)
+ScDocShell::ErrorMessage(TranslateId)
+ScDocShell::Execute(SfxRequest&)
+ScDocShell::ExecuteChangeCommentDialog(ScChangeAction*, weld::Window*, bool)
+ScDocShell::ExecuteChangeProtectionDialog(bool)
+ScDocShell::ExecutePageStyle(SfxViewShell const&, SfxRequest&, short)
+ScDocShell::FillClass(SvGlobalName*, SotClipboardFormatId*, rtl::OUString*, int, bool) const
+ScDocShell::GetAnonymousDBData(ScRange const&)
+ScDocShell::GetAsciiFilterName()
+ScDocShell::GetChangeAction(ScAddress const&)
+ScDocShell::GetDBData(ScRange const&, ScGetDBMode, ScGetDBSelection)
+ScDocShell::GetDBaseFilterName()
+ScDocShell::GetDifFilterName()
+ScDocShell::GetDocColors()
+ScDocShell::GetDocumentPrinter()
+ScDocShell::GetFormatSaveData()
+ScDocShell::GetHiddenInformationState(HiddenInformation)
+ScDocShell::GetHtmlFilterName()
+ScDocShell::GetInterface() const
+ScDocShell::GetLinkUpdateModeState() const
+ScDocShell::GetLotusFilterName()
+ScDocShell::GetOldAutoDBRange()
+ScDocShell::GetOwnFilterName()
+ScDocShell::GetPageOnFromPageStyleSet(SfxItemSet const*, short, bool&, bool&)
+ScDocShell::GetPrinter(bool)
+ScDocShell::GetProtectionHash(com::sun::star::uno::Sequence<signed char>&)
+ScDocShell::GetRefDevice()
+ScDocShell::GetSheetSaveData()
+ScDocShell::GetShellByNum(unsigned short)
+ScDocShell::GetState(SfxItemSet&)
+ScDocShell::GetStatePageStyle(SfxItemSet&, short)
+ScDocShell::GetStaticInterface()
+ScDocShell::GetStyleSheetPool()
+ScDocShell::GetViewBindings()
+ScDocShell::GetVisArea(unsigned short) const
+ScDocShell::GetWebQueryFilterName()
+ScDocShell::HasAutomaticTableName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ScDocShell::HasChangeRecordProtection() const
+ScDocShell::InitInterface_Impl()
+ScDocShell::InitNew(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+ScDocShell::IsChangeRecording() const
+ScDocShell::IsEditable() const
+ScDocShell::IsOle() const
+ScDocShell::LOKCommentNotify(LOKCommentNotificationType, ScDocument const*, ScAddress const&, ScPostIt const*)
+ScDocShell::Load(SfxMedium&)
+ScDocShell::LoadExternal(SfxMedium&)
+ScDocShell::LoadFrom(SfxMedium&)
+ScDocShell::LoadStyles(SfxObjectShell&)
+ScDocShell::LoadStylesArgs(ScDocShell&, bool, bool, bool)
+ScDocShell::LockDocument()
+ScDocShell::LockPaint()
+ScDocShell::MakeDrawLayer()
+ScDocShell::MakeScenario(short, rtl::OUString const&, rtl::OUString const&, Color const&, ScScenarioFlags, ScMarkData&, bool)
+ScDocShell::MergeDocument(ScDocument&, bool, bool, unsigned long, std::unordered_map<unsigned long, unsigned long, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >*, bool)
+ScDocShell::MergeSharedDocument(ScDocShell*)
+ScDocShell::ModifyScenario(short, rtl::OUString const&, rtl::OUString const&, Color const&, ScScenarioFlags)
+ScDocShell::MoveTable(short, short, bool, bool)
+ScDocShell::Notify(SfxBroadcaster&, SfxHint const&)
+ScDocShell::NotifyStyle(SfxStyleSheetHint const&)
+ScDocShell::PageStyleModified(std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool)
+ScDocShell::PostDataChanged()
+ScDocShell::PostEditView(ScEditEngineDefaulter*, ScAddress const&)
+ScDocShell::PostPaint(short, int, short, short, int, short, PaintPartFlags, unsigned short)
+ScDocShell::PostPaintCell(ScAddress const&)
+ScDocShell::PostPaintCell(short, int, short)
+ScDocShell::PostPaintExtras()
+ScDocShell::PrepareClose(bool)
+ScDocShell::QuerySlotExecutable(unsigned short)
+ScDocShell::ReconnectDdeLink(SfxObjectShell&)
+ScDocShell::RefreshPivotTables(ScRange const&)
+ScDocShell::RegisterInterface(SfxModule const*)
+ScDocShell::ReloadTabLinks()
+ScDocShell::ResetKeyBindings(ScOptionsUtil::KeyBindingType)
+ScDocShell::Save()
+ScDocShell::SaveAs(SfxMedium&)
+ScDocShell::SetChangeComment(ScChangeAction*, rtl::OUString const&)
+ScDocShell::SetChangeRecording(bool, bool)
+ScDocShell::SetDrawModified()
+ScDocShell::SetFormulaOptions(ScFormulaOptions const&, bool)
+ScDocShell::SetInUndo(bool)
+ScDocShell::SetInplace(bool)
+ScDocShell::SetLockCount(unsigned short)
+ScDocShell::SetModified(bool)
+ScDocShell::SetPrintZoom(short, unsigned short, unsigned short)
+ScDocShell::SetPrinter(VclPtr<SfxPrinter> const&, SfxPrinterChangeFlags)
+ScDocShell::SetProtectionPassword(rtl::OUString const&)
+ScDocShell::SetSolverSaveData(std::unique_ptr<ScOptSolverSave, std::default_delete<ScOptSolverSave> >)
+ScDocShell::SetVisArea(tools::Rectangle const&)
+ScDocShell::SetVisAreaOrSize(tools::Rectangle const&)
+ScDocShell::SnapVisArea(tools::Rectangle&) const
+ScDocShell::TerminateEditing()
+ScDocShell::UnlockDocument()
+ScDocShell::UnlockPaint()
+ScDocShell::UpdateFontList()
+ScDocShell::UpdateLinks()
+ScDocShell::UpdateOle(ScViewData const&, bool)
+ScDocShell::UpdatePaintExt(unsigned short&, ScRange const&)
+ScDocShell::UpdatePaintExt(unsigned short&, short, int, short, short, int, short)
+ScDocShell::UpdatePendingRowHeights(short, bool)
+ScDocShell::UseScenario(short, rtl::OUString const&, bool)
+ScDocShell::~ScDocShell()
+ScDocument::ApplyPatternArea(short, int, short, int, ScMarkData const&, ScPatternAttr const&, ScEditDataArray*, bool*)
+ScDocument::ApplyPatternIfNumberformatIncompatible(ScRange const&, ScMarkData const&, ScPatternAttr const&, SvNumFormatType)
+ScDocument::ApplySelectionPattern(ScPatternAttr const&, ScMarkData const&, ScEditDataArray*, bool*)
+ScDocument::ApplySelectionStyle(ScStyleSheet const&, ScMarkData const&)
+ScDocument::CalcFormulaTree(bool, bool, bool)
+ScDocument::CompareDocument(ScDocument&)
+ScDocument::CompileHybridFormula()
+ScDocument::CopyDdeLinks(ScDocument&) const
+ScDocument::CopyOneCellFromClip(sc::CopyFromClipContext&, short, int, short, int)
+ScDocument::CopyStdStylesFrom(ScDocument const&)
+ScDocument::CopyToDocument(ScRange const&, InsertDeleteFlags, bool, ScDocument&, ScMarkData const*, bool)
+ScDocument::CopyUpdated(ScDocument*, ScDocument*)
+ScDocument::CreateNote(ScAddress const&)
+ScDocument::CreateValidTabNames(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, short) const
+ScDocument::DeleteArea(short, int, short, int, ScMarkData const&, InsertDeleteFlags, bool, sc::ColumnSpanSet*)
+ScDocument::DeleteAreaTab(short, int, short, int, short, InsertDeleteFlags)
+ScDocument::DeleteSelection(InsertDeleteFlags, ScMarkData const&, bool)
+ScDocument::DeleteTabs(short, short)
+ScDocument::DoEmptyBlock(short, short, int, short, int)
+ScDocument::DoMergeContents(short, short, int, short, int)
+ScDocument::DrawGetPrintArea(ScRange&, bool, bool) const
+ScDocument::EnableUserInteraction(bool)
+ScDocument::EnsureFormulaCellResults(ScRange const&, bool)
+ScDocument::ExtendOverlapped(short&, int&, short, int, short) const
+ScDocument::Fill(short, int, short, int, ScProgress*, ScMarkData const&, unsigned long, FillDir, FillCmd, FillDateCmd, double, double)
+ScDocument::GetAllNoteEntries(short, std::vector<sc::NoteEntry, std::allocator<sc::NoteEntry> >&) const
+ScDocument::GetAllocatedColumnsCount(short) const
+ScDocument::GetAnonymousDBData()
+ScDocument::GetCellArea(short, short&, int&) const
+ScDocument::GetCellCount() const
+ScDocument::GetCellScriptType(ScAddress const&, unsigned int, ScRefCellValue const*)
+ScDocument::GetCellType(short, int, short) const
+ScDocument::GetChartRanges(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::vector<ScRangeList, std::allocator<ScRangeList> >&, ScDocument const&)
+ScDocument::GetColFlags(short, short) const
+ScDocument::GetColWidth(short, short, short) const
+ScDocument::GetDBAtArea(short, short, int, short, int) const
+ScDocument::GetFirstEditTextRow(ScRange const&) const
+ScDocument::GetFormulaCell(ScAddress const&) const
+ScDocument::GetFormulaGroupCount() const
+ScDocument::GetHashCode(short, long&) const
+ScDocument::GetLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>&, o3tl::strong_int<unsigned short, LanguageTypeTag>&, o3tl::strong_int<unsigned short, LanguageTypeTag>&) const
+ScDocument::GetLinkDoc(short) const
+ScDocument::GetLinkManager() const
+ScDocument::GetLinkTab(short) const
+ScDocument::GetNote(short, int, short)
+ScDocument::GetNoteEngine()
+ScDocument::GetPrintAreaHor(short, int, int, short&) const
+ScDocument::GetPrintAreaVer(short, short, short, int&, bool) const
+ScDocument::GetRowHeight(int, short, int*, int*) const
+ScDocument::GetTiledRenderingArea(short, short&, int&) const
+ScDocument::HasColNotes(short, short) const
+ScDocument::HasTabNotes(short) const
+ScDocument::InitClipPtrs(ScDocument*)
+ScDocument::InitUndo(ScDocument const&, short, short, bool, bool)
+ScDocument::InitUndoSelected(ScDocument const&, ScMarkData const&, bool, bool)
+ScDocument::InsertMatrixFormula(short, int, short, int, ScMarkData const&, rtl::OUString const&, ScTokenArray const*, formula::FormulaGrammar::Grammar)
+ScDocument::InsertTableOp(ScTabOpParam const&, short, int, short, int, ScMarkData const&)
+ScDocument::InsertTabs(short, std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, bool)
+ScDocument::IsDocProtected() const
+ScDocument::PreprocessAllRangeNamesUpdate(std::map<rtl::OUString, std::unique_ptr<ScRangeName, std::default_delete<ScRangeName> >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::unique_ptr<ScRangeName, std::default_delete<ScRangeName> > > > > const&)
+ScDocument::PreprocessDBDataUpdate()
+ScDocument::PreprocessRangeNameUpdate()
+ScDocument::ReleaseNote(ScAddress const&)
+ScDocument::ResetClip(ScDocument*, ScMarkData const*)
+ScDocument::ResetClip(ScDocument*, short)
+ScDocument::SetAllRangeNames(std::map<rtl::OUString, std::unique_ptr<ScRangeName, std::default_delete<ScRangeName> >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::unique_ptr<ScRangeName, std::default_delete<ScRangeName> > > > > const&)
+ScDocument::SetAnonymousDBData(std::unique_ptr<ScDBData, std::default_delete<ScDBData> >)
+ScDocument::SetEditText(ScAddress const&, rtl::OUString const&)
+ScDocument::SetFormula(ScAddress const&, ScTokenArray const&)
+ScDocument::SetFormulaResults(ScAddress const&, double const*, unsigned long)
+ScDocument::SetPattern(ScAddress const&, ScPatternAttr const&)
+ScDocument::SetPattern(short, int, short, ScPatternAttr const&)
+ScDocument::SetRowHeightRange(int, int, short, unsigned short)
+ScDocument::ShowRow(int, short, bool)
+ScDocument::StartAllListeners(ScRange const&)
+ScDocument::TransferDrawPage(ScDocument const&, short, short)
+ScDocument::TransferTab(ScDocument&, short, short, bool, bool)
+ScDocument::TransposeClip(ScDocument*, InsertDeleteFlags, bool, bool)
+ScDocument::UpdateTranspose(ScAddress const&, ScDocument*, ScMarkData const&, ScDocument*)
+ScDocumentImport::broadcastRecalcAfterImportColumn(ScColumn&)
+ScDocumentImport::initColumn(ScColumn&)
+ScDocumentImport::setDefaultNumericScript(SvtScriptType)
+ScDocumentImport::setRowsVisible(short, int, int, bool)
+ScDocumentLoader::CreateMedium(rtl::OUString const&, std::shared_ptr<SfxFilter const> const&, rtl::OUString const&, weld::Window*)
+ScDocumentLoader::GetDocument()
+ScDocumentLoader::GetTitle() const
+ScDocumentLoader::IsError() const
+ScDocumentLoader::RemoveAppPrefix(rtl::OUString&)
+ScDocumentPool::CellStyleCreated(std::basic_string_view<char16_t, std::char_traits<char16_t> >, ScDocument const&)
+ScDocumentPool::Clone() const
+ScDocumentPool::GetMetric(unsigned short) const
+ScDocumentPool::GetPresentation(SfxPoolItem const&, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScDocumentPool::PutImpl(SfxPoolItem const&, unsigned short, bool)
+ScDocumentPool::StyleDeleted(ScStyleSheet const*)
+ScDocumentPool::~ScDocumentPool()
+ScDrawLayer::AddCalcUndo(std::unique_ptr<SdrUndoAction, std::default_delete<SdrUndoAction> >)
+ScDrawLayer::AllocModel() const
+ScDrawLayer::AllocPage(bool)
+ScDrawLayer::BeginCalcUndo(bool)
+ScDrawLayer::CopyFromClip(ScDrawLayer*, short, tools::Rectangle const&, ScAddress const&, tools::Rectangle const&)
+ScDrawLayer::CopyToClip(ScDocument*, short, tools::Rectangle const&)
+ScDrawLayer::DeleteObjectsInSelection(ScMarkData const&)
+ScDrawLayer::EnsureGraphicNames()
+ScDrawLayer::GetCalcUndo()
+ScDrawLayer::GetCellAnchorFromPosition(tools::Rectangle const&, ScDrawObjData&, ScDocument const&, short, bool)
+ScDrawLayer::GetCellRect(ScDocument const&, ScAddress const&, bool)
+ScDrawLayer::GetNamedObject(std::basic_string_view<char16_t, std::char_traits<char16_t> >, unsigned short, short&) const
+ScDrawLayer::GetNewGraphicName(long*) const
+ScDrawLayer::GetNoteCaptionData(SdrObject*, short)
+ScDrawLayer::GetObjDataTab(SdrObject*, short)
+ScDrawLayer::GetObjectsAnchoredToCols(short, short, short)
+ScDrawLayer::GetObjectsAnchoredToRows(short, int, int)
+ScDrawLayer::GetPrintArea(ScRange&, bool, bool) const
+ScDrawLayer::GetVisibleName(SdrObject const*)
+ScDrawLayer::HasObjects() const
+ScDrawLayer::HasObjectsAnchoredInRange(ScRange const&)
+ScDrawLayer::InitializeCellAnchoredObj(SdrObject*, ScDrawObjData&)
+ScDrawLayer::MirrorRTL(SdrObject*)
+ScDrawLayer::MirrorRectRTL(tools::Rectangle&)
+ScDrawLayer::MoveArea(short, short, int, short, int, short, int, bool, bool)
+ScDrawLayer::MoveCells(short, short, int, short, int, short, int, bool)
+ScDrawLayer::MoveObject(SdrObject*, ScAddress const&)
+ScDrawLayer::MoveRTL(SdrObject*)
+ScDrawLayer::ResetTab(short, short)
+ScDrawLayer::ResizeLastRectFromAnchor(SdrObject const*, ScDrawObjData&, bool, bool)
+ScDrawLayer::ScAddPage(short)
+ScDrawLayer::ScCopyPage(unsigned short, unsigned short)
+ScDrawLayer::ScDrawLayer(ScDocument*, rtl::OUString const&)
+ScDrawLayer::ScMovePage(unsigned short, unsigned short)
+ScDrawLayer::ScRemovePage(short)
+ScDrawLayer::ScRenamePage(short, rtl::OUString const&)
+ScDrawLayer::SetCellAnchored(SdrObject&, ScDrawObjData const&)
+ScDrawLayer::SetChanged(bool)
+ScDrawLayer::SetGlobalDrawPersist(SfxObjectShell*)
+ScDrawLayer::SetNonRotatedAnchor(SdrObject&, ScDrawObjData const&)
+ScDrawLayer::SetPageSize(unsigned short, Size const&, bool, ScObjectHandling)
+ScDrawLayer::UpdateCellAnchorFromPositionEnd(SdrObject const&, ScDrawObjData&, ScDocument const&, short, bool)
+ScDrawLayer::UseHyphenator()
+ScDrawLayer::createUnoModel()
+ScDrawLayer::~ScDrawLayer()
+ScDrawObjData::Clone(SdrObject*) const
+ScEditEngineDefaulter::GetDefaults()
+ScEditEngineDefaulter::RemoveParaAttribs()
+ScEditEngineDefaulter::RepeatDefaults()
+ScEditEngineDefaulter::ScEditEngineDefaulter(ScEditEngineDefaulter const&)
+ScEditEngineDefaulter::SetDefaultItem(SfxPoolItem const&)
+ScEditEngineDefaulter::SetDefaults(SfxItemSet const&, bool)
+ScEditEngineDefaulter::SetTextNewDefaults(EditTextObject const&, SfxItemSet const&, bool)
+ScEditEngineDefaulter::SetTextNewDefaults(rtl::OUString const&, SfxItemSet const&)
+ScEditWindow::CreateAccessible()
+ScEditWindow::GetEditEngine() const
+ScEditWindow::GetFocus()
+ScEditWindow::KeyInput(KeyEvent const&)
+ScEditWindow::LoseFocus()
+ScEditWindow::MouseButtonDown(MouseEvent const&)
+ScEditWindow::SetDrawingArea(weld::DrawingArea*)
+ScEditWindow::makeEditEngine()
+ScEditWindow::~ScEditWindow()
+ScExtDocOptions::GetDocSettings() const
+ScExtDocOptions::GetLastTab() const
+ScExtDocOptions::IsChanged() const
+ScExtDocOptions::operator=(ScExtDocOptions const&)
+ScExternalRefManager::Notify(SfxBroadcaster&, SfxHint const&)
+ScExternalRefManager::ScExternalRefManager(ScDocument&)
+ScExternalRefManager::addLinkListener(unsigned short, ScExternalRefManager::LinkListener*)
+ScExternalRefManager::breakLink(unsigned short)
+ScExternalRefManager::cacheNewDocShell(unsigned short, ScExternalRefManager::SrcShell&)
+ScExternalRefManager::clear()
+ScExternalRefManager::clearCache(unsigned short)
+ScExternalRefManager::enableDocTimer(bool)
+ScExternalRefManager::fillCellFormat(unsigned long, ScExternalRefCache::CellFormat*) const
+ScExternalRefManager::getAllCachedExternalFileNames() const
+ScExternalRefManager::getAllCachedNumberFormats(std::vector<unsigned int, std::allocator<unsigned int> >&) const
+ScExternalRefManager::getCacheTableName(unsigned short, unsigned long) const
+ScExternalRefManager::getCachedTabSpan(unsigned short, rtl::OUString const&, rtl::OUString const&) const
+ScExternalRefManager::getDoubleRefTokensFromSrcDoc(ScDocument const&, rtl::OUString const&, ScRange&, std::vector<ScExternalRefCache::SingleRangeData, std::allocator<ScExternalRefCache::SingleRangeData> >&)
+ScExternalRefManager::getExternalFileCount() const
+ScExternalRefManager::getExternalFileData(unsigned short) const
+ScExternalRefManager::getInMemorySrcDocument(unsigned short)
+ScExternalRefManager::getMappedNumberFormat(unsigned short, unsigned int, ScDocument const&)
+ScExternalRefManager::getOwnDocumentName() const
+ScExternalRefManager::getRangeNameTokensFromSrcDoc(unsigned short, ScDocument const&, rtl::OUString&)
+ScExternalRefManager::getRealRangeName(unsigned short, rtl::OUString const&) const
+ScExternalRefManager::getRealTableName(unsigned short, rtl::OUString const&) const
+ScExternalRefManager::getSingleRefToken(unsigned short, rtl::OUString const&, ScAddress const&, ScAddress const*, short*, ScExternalRefCache::CellFormat*)
+ScExternalRefManager::getSingleRefTokenFromSrcDoc(unsigned short, ScDocument&, ScAddress const&, ScExternalRefCache::CellFormat*)
+ScExternalRefManager::getSrcDocTable(ScDocument const&, rtl::OUString const&, short&, unsigned short) const
+ScExternalRefManager::getSrcDocument(unsigned short)
+ScExternalRefManager::hasExternalData() const
+ScExternalRefManager::hasExternalFile(rtl::OUString const&) const
+ScExternalRefManager::hasExternalFile(unsigned short) const
+ScExternalRefManager::insertRefCell(unsigned short, ScAddress const&)
+ScExternalRefManager::insertRefCellFromTemplate(ScFormulaCell*, ScFormulaCell*)
+ScExternalRefManager::isFileLoadable(rtl::OUString const&) const
+ScExternalRefManager::isOwnDocument(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+ScExternalRefManager::isValidRangeName(unsigned short, rtl::OUString const&)
+ScExternalRefManager::loadSrcDocument(unsigned short, rtl::OUString&)
+ScExternalRefManager::markUsedByLinkListeners()
+ScExternalRefManager::markUsedExternalRefCells()
+ScExternalRefManager::maybeCreateRealFileName(unsigned short)
+ScExternalRefManager::maybeLinkExternalFile(unsigned short, bool)
+ScExternalRefManager::notifyAllLinkListeners(unsigned short, ScExternalRefManager::LinkUpdateType)
+ScExternalRefManager::purgeStaleSrcDocument(int)
+ScExternalRefManager::refreshAllRefCells(unsigned short)
+ScExternalRefManager::refreshSrcDocument(unsigned short)
+ScExternalRefManager::removeLinkListener(ScExternalRefManager::LinkListener*)
+ScExternalRefManager::removeLinkListener(unsigned short, ScExternalRefManager::LinkListener*)
+ScExternalRefManager::removeRefCell(ScFormulaCell*)
+ScExternalRefManager::resetSrcFileData(rtl::OUString const&)
+ScExternalRefManager::setAllCacheTableReferencedStati(bool)
+ScExternalRefManager::setCacheTableReferenced(unsigned short, rtl::OUString const&, unsigned long)
+ScExternalRefManager::setFilterData(unsigned short, rtl::OUString const&, rtl::OUString const&)
+ScExternalRefManager::setRelativeFileName(unsigned short, rtl::OUString const&)
+ScExternalRefManager::switchSrcFile(unsigned short, rtl::OUString const&, rtl::OUString const&)
+ScExternalRefManager::transformUnsavedRefToSavedRef(SfxObjectShell*)
+ScExternalRefManager::updateAbsAfterLoad()
+ScExternalRefManager::~ScExternalRefManager()
+ScFieldEditEngine::CalcFieldValue(SvxFieldItem const&, int, int, std::optional<Color>&, std::optional<Color>&)
+ScFieldEditEngine::FieldClicked(SvxFieldItem const&)
+ScFilterCreate
+ScFilterOptions::ImplCommit()
+ScFilterOptions::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScFormatEntry::IsEqual(ScFormatEntry const&, bool) const
+ScFormatEntry::ScFormatEntry(ScDocument*)
+ScFormatEntry::endRendering()
+ScFormatEntry::operator==(ScFormatEntry const&) const
+ScFormatEntry::startRendering()
+ScFormulaCell::CalcAfterLoad(sc::CompileFormulaContext&, bool)
+ScFormulaCell::CheckComputeDependencies(sc::FormulaLogger::GroupScope&, bool, int, int, bool)
+ScFormulaCell::Clone() const
+ScFormulaCell::Clone(ScAddress const&) const
+ScFormulaCell::CompareByTokenArray(ScFormulaCell const&) const
+ScFormulaCell::Compile(rtl::OUString const&, bool, formula::FormulaGrammar::Grammar)
+ScFormulaCell::Compile(sc::CompileFormulaContext&, rtl::OUString const&, bool)
+ScFormulaCell::CompileColRowNameFormula(sc::CompileFormulaContext&)
+ScFormulaCell::CompileDBFormula(sc::CompileFormulaContext&)
+ScFormulaCell::CompileTokenArray(bool)
+ScFormulaCell::CompileTokenArray(sc::CompileFormulaContext&, bool)
+ScFormulaCell::CompileXML(sc::CompileFormulaContext&, ScProgress&)
+ScFormulaCell::CreateURLObject()
+ScFormulaCell::EndListeningTo(ScDocument&, ScTokenArray*, ScAddress)
+ScFormulaCell::EndListeningTo(sc::EndListeningContext&)
+ScFormulaCell::FindRangeNamesInUse(sc::UpdatedRangeNames&) const
+ScFormulaCell::GetErrorOrValue(FormulaError&, double&)
+ScFormulaCell::GetFormula(formula::FormulaGrammar::Grammar, ScInterpreterContext const*) const
+ScFormulaCell::GetHash() const
+ScFormulaCell::GetHybridFormula() const
+ScFormulaCell::GetMatrix()
+ScFormulaCell::GetMatrixEdge(ScDocument const&, ScAddress&) const
+ScFormulaCell::GetRawError() const
+ScFormulaCell::GetRawString() const
+ScFormulaCell::GetRawValue() const
+ScFormulaCell::GetResultDimensions(unsigned long&, unsigned long&)
+ScFormulaCell::GetResultString() const
+ScFormulaCell::GetSharedCode()
+ScFormulaCell::GetWeight() const
+ScFormulaCell::HandleStuffAfterParallelCalculation(ScInterpreter*)
+ScFormulaCell::HasHybridStringResult() const
+ScFormulaCell::HasOneReference(ScRange&) const
+ScFormulaCell::HasRefListExpressibleAsOneReference(ScRange&) const
+ScFormulaCell::HasRelNameReference() const
+ScFormulaCell::Interpret(int, int)
+ScFormulaCell::InterpretFormulaGroup(int, int)
+ScFormulaCell::InterpretFormulaGroupOpenCL(sc::FormulaLogger::GroupScope&, bool&, bool&)
+ScFormulaCell::InterpretFormulaGroupThreading(sc::FormulaLogger::GroupScope&, bool&, bool&, int, int)
+ScFormulaCell::InterpretInvariantFormulaGroup()
+ScFormulaCell::InterpretTail(ScInterpreterContext&, ScFormulaCell::ScInterpretTailParameter)
+ScFormulaCell::IsEmpty()
+ScFormulaCell::IsEmptyDisplayedAsString()
+ScFormulaCell::IsShared() const
+ScFormulaCell::IsValueNoError()
+ScFormulaCell::IsValueNoError() const
+ScFormulaCell::MarkUsedExternalReferences()
+ScFormulaCell::Notify(SfxHint const&)
+ScFormulaCell::Query(SvtListener::QueryBase&) const
+ScFormulaCell::ResetTableOpDirtyVar()
+ScFormulaCell::ScFormulaCell(ScDocument&, ScAddress const&, rtl::OUString const&, formula::FormulaGrammar::Grammar, ScMatrixMode)
+ScFormulaCell::ScFormulaCell(ScFormulaCell const&, ScDocument&, ScAddress const&, ScCloneFlags)
+ScFormulaCell::SetCellGroup(boost::intrusive_ptr<ScFormulaCellGroup> const&)
+ScFormulaCell::SetCode(std::unique_ptr<ScTokenArray, std::default_delete<ScTokenArray> >)
+ScFormulaCell::SetCompile(bool)
+ScFormulaCell::SetDirtyAfterLoad()
+ScFormulaCell::SetDirtyVar()
+ScFormulaCell::SetHybridEmptyDisplayedAsString()
+ScFormulaCell::SetHybridFormula(rtl::OUString const&, formula::FormulaGrammar::Grammar)
+ScFormulaCell::SetInChangeTrack(bool)
+ScFormulaCell::SetMatColsRows(short, int)
+ScFormulaCell::SetNeedsDirty(bool)
+ScFormulaCell::SetNeedsListening(bool)
+ScFormulaCell::SetNext(ScFormulaCell*)
+ScFormulaCell::SetNextTrack(ScFormulaCell*)
+ScFormulaCell::SetPrevious(ScFormulaCell*)
+ScFormulaCell::SetPreviousTrack(ScFormulaCell*)
+ScFormulaCell::SetResultError(FormulaError)
+ScFormulaCell::SetResultMatrix(short, int, boost::intrusive_ptr<ScMatrix const> const&, formula::FormulaToken const*)
+ScFormulaCell::SetRunning(bool)
+ScFormulaCell::SetTableOpDirty()
+ScFormulaCell::StartListeningTo(ScDocument&)
+ScFormulaCell::StartListeningTo(sc::StartListeningContext&)
+ScFormulaCell::SyncSharedCode()
+ScFormulaCell::TestTabRefAbs(short)
+ScFormulaCell::TransposeReference()
+ScFormulaCell::UpdateCompile(bool)
+ScFormulaCell::UpdateDeleteTab(sc::RefUpdateDeleteTabContext const&)
+ScFormulaCell::UpdateGrow(ScRange const&, short, int)
+ScFormulaCell::UpdateInsertTab(sc::RefUpdateInsertTabContext const&)
+ScFormulaCell::UpdateInsertTabAbs(short)
+ScFormulaCell::UpdateMoveTab(sc::RefUpdateMoveTabContext const&, short)
+ScFormulaCell::UpdatePosOnShift(sc::RefUpdateContext const&)
+ScFormulaCell::UpdateReference(sc::RefUpdateContext const&, ScDocument*, ScAddress const*)
+ScFormulaCell::UpdateReferenceOnCopy(sc::RefUpdateContext const&, ScDocument*, ScAddress const*)
+ScFormulaCell::UpdateReferenceOnMove(sc::RefUpdateContext const&, ScDocument*, ScAddress const*)
+ScFormulaCell::UpdateReferenceOnShift(sc::RefUpdateContext const&, ScDocument*, ScAddress const*)
+ScFormulaCell::UpdateTranspose(ScRange const&, ScAddress const&, ScDocument*)
+ScFormulaCellGroup::ScFormulaCellGroup()
+ScFormulaCellGroup::compileCode(ScDocument&, ScAddress const&, formula::FormulaGrammar::Grammar)
+ScFormulaCellGroup::endAllGroupListening(ScDocument&)
+ScFormulaCellGroup::getAreaListener(ScFormulaCell**, ScRange const&, bool, bool)
+ScFormulaCellGroup::setCode(ScTokenArray const&)
+ScFormulaOptions::ResetFormulaSeparators()
+ScFormulaOptions::SetDefaults()
+ScFormulaOptions::operator!=(ScFormulaOptions const&) const
+ScFormulaOptions::operator==(ScFormulaOptions const&) const
+ScGlobal::FindUnquoted(char16_t const*, char16_t)
+ScGlobal::FindUnquoted(rtl::OUString const&, char16_t, int)
+ScGlobal::GetAutoFormat()
+ScGlobal::GetStandardFormat(SvNumberFormatter&, unsigned int, SvNumFormatType)
+ScGlobal::GetStandardRowHeight()
+ScGlobal::IsQuoted(rtl::OUString const&, char16_t)
+ScIconSetFormat::CalcValue(double, double, __gnu_cxx::__normal_iterator<std::unique_ptr<ScColorScaleEntry, o3tl::default_delete<ScColorScaleEntry> > const*, std::vector<std::unique_ptr<ScColorScaleEntry, o3tl::default_delete<ScColorScaleEntry> >, std::allocator<std::unique_ptr<ScColorScaleEntry, o3tl::default_delete<ScColorScaleEntry> > > > > const&) const
+ScIconSetFormat::Clone(ScDocument*) const
+ScIconSetFormat::EnsureSize()
+ScIconSetFormat::GetIconSetData()
+ScIconSetFormat::GetMaxValue() const
+ScIconSetFormat::GetMinValue() const
+ScIconSetFormat::GetType() const
+ScIconSetFormat::ScIconSetFormat(ScDocument*, ScIconSetFormat const&)
+ScIconSetFormat::SetParent(ScConditionalFormat*)
+ScIconSetFormat::UpdateDeleteTab(sc::RefUpdateDeleteTabContext&)
+ScIconSetFormat::UpdateInsertTab(sc::RefUpdateInsertTabContext&)
+ScIconSetFormat::UpdateMoveTab(sc::RefUpdateMoveTabContext&)
+ScIconSetFormat::UpdateReference(sc::RefUpdateContext&)
+ScIconSetFormat::begin()
+ScIconSetFormat::end()
+ScIconSetFormat::getBitmap(std::map<rtl::OUString, BitmapEx, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, BitmapEx> > >&, ScIconSetType, int)
+ScIconSetFormat::getIconName(ScIconSetType, int)
+ScIconSetFormat::getIconSetElements(ScIconSetType)
+ScIconSetFormat::size() const
+ScImportExport::CountVisualWidth(rtl::OUString const&)
+ScImportExport::CountVisualWidth(rtl::OUString const&, int&, int)
+ScImportExport::Dif2Doc(SvStream&)
+ScImportExport::Doc2Dif(SvStream&)
+ScImportExport::Doc2HTML(SvStream&, rtl::OUString const&)
+ScImportExport::Doc2RTF(SvStream&)
+ScImportExport::Doc2Sylk(SvStream&)
+ScImportExport::Doc2Text(SvStream&)
+ScImportExport::EndPaste(bool)
+ScImportExport::ExportByteString(rtl::OString&, unsigned short, SotClipboardFormatId)
+ScImportExport::ExportData(rtl::OUString const&, com::sun::star::uno::Any&)
+ScImportExport::ExportStream(SvStream&, rtl::OUString const&, SotClipboardFormatId)
+ScImportExport::ExportString(rtl::OUString&, SotClipboardFormatId)
+ScImportExport::ExtText2Doc(SvStream&)
+ScImportExport::HTML2Doc(SvStream&, rtl::OUString const&)
+ScImportExport::ImportString(rtl::OUString const&, SotClipboardFormatId)
+ScImportExport::IsFormatSupported(SotClipboardFormatId)
+ScImportExport::RTF2Doc(SvStream&, rtl::OUString const&)
+ScImportExport::ScImportExport(ScDocument&)
+ScImportExport::ScImportExport(ScDocument&, ScRange const&)
+ScImportExport::ScImportExport(ScDocument&, rtl::OUString const&)
+ScImportExport::ScanNextFieldFromString(char16_t const*, rtl::OUString&, char16_t, char16_t const*, bool, bool&, bool&, bool)
+ScImportExport::SetExtOptions(ScAsciiOptions const&)
+ScImportExport::SetFilterOptions(rtl::OUString const&)
+ScImportExport::SetNoEndianSwap(SvStream&)
+ScImportExport::StartPaste()
+ScImportExport::Sylk2Doc(SvStream&)
+ScImportExport::Text2Doc(SvStream&)
+ScImportExport::WriteUnicodeOrByteEndl(SvStream&)
+ScImportExport::WriteUnicodeOrByteString(SvStream&, rtl::OUString const&, bool)
+ScImportOptions::BuildString() const
+ScImportOptions::ScImportOptions(rtl::OUString const&)
+ScIndentItem::Clone(SfxItemPool*) const
+ScIndentItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScLineBreakCell::Clone(SfxItemPool*) const
+ScLineBreakCell::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScLinkConfigItem::ImplCommit()
+ScLinkConfigItem::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ScLinkConfigItem::ScLinkConfigItem(rtl::OUString const&, ConfigItemMode)
+ScLinkConfigItem::SetCommitLink(Link<ScLinkConfigItem&, void> const&)
+ScLinkConfigItem::SetNotifyLink(Link<ScLinkConfigItem&, void> const&)
+ScMacroManager::GetUserFuncVolatile(rtl::OUString const&)
+ScMacroManager::InitUserFuncData()
+ScMarkArray::GetMark(int) const
+ScMarkArray::GetMarkEnd(int, bool) const
+ScMarkArray::GetNextMarked(int, bool) const
+ScMarkArray::HasOneMark(int&, int&) const
+ScMarkArray::Intersect(ScMarkArray const&)
+ScMarkArray::IsAllMarked(int, int) const
+ScMarkArray::Reset(bool, unsigned long)
+ScMarkArray::ScMarkArray(ScMarkArray const&)
+ScMarkArray::ScMarkArray(ScMarkArray&&)
+ScMarkArray::Set(std::vector<ScMarkEntry, std::allocator<ScMarkEntry> >&&)
+ScMarkArray::Shift(int, long)
+ScMarkArray::operator=(ScMarkArray const&)
+ScMarkArray::operator=(ScMarkArray&&)
+ScMarkArray::operator==(ScMarkArray const&) const
+ScMarkArrayIter::reset(ScMarkArray const*)
+ScMarkData::ExtendRangeListTables(ScRangeList*) const
+ScMarkData::FillRangeListWithMarks(ScRangeList*, bool, short) const
+ScMarkData::GetLastSelected() const
+ScMarkData::GetMarkedColSpans() const
+ScMarkData::GetMarkedRanges() const
+ScMarkData::GetMarkedRangesForTab(short) const
+ScMarkData::GetMarkedRowSpans() const
+ScMarkData::GetMultiMarkArea(ScRange&) const
+ScMarkData::GetTableSelect(short) const
+ScMarkData::HasAnyMultiMarks() const
+ScMarkData::MarkFromRangeList(ScRangeList const&, bool)
+ScMarkData::MarkToSimple()
+ScMarkData::ResetMark()
+ScMarkData::ScMarkData(ScSheetLimits const&, ScRangeList const&)
+ScMarkData::SetAreaTab(short)
+ScMarkData::ShiftCols(ScDocument const&, short, int)
+ScMarkData::ShiftRows(ScDocument const&, int, int)
+ScMarkData::begin()
+ScMarkData::end()
+ScMarkData::operator=(ScMarkData const&)
+ScMarkData::operator=(ScMarkData&&)
+ScMarkData::rbegin() const
+ScMatrix::AddOp(double, ScMatrix const&)
+ScMatrix::And() const
+ScMatrix::Clone() const
+ScMatrix::CloneAndExtend(unsigned long, unsigned long) const
+ScMatrix::CloneIfConst()
+ScMatrix::CollectKahan(std::vector<sc::op::Op_<std::function<void (KahanSum&, double)>, KahanSum>, std::allocator<sc::op::Op_<std::function<void (KahanSum&, double)>, KahanSum> > > const&)
+ScMatrix::CompareEqual()
+ScMatrix::CompareGreater()
+ScMatrix::CompareGreaterEqual()
+ScMatrix::CompareLess()
+ScMatrix::CompareLessEqual()
+ScMatrix::CompareMatrix(sc::Compare&, unsigned long, sc::CompareOptions*) const
+ScMatrix::CompareNotEqual()
+ScMatrix::Count(bool, bool, bool) const
+ScMatrix::DivOp(bool, double, ScMatrix const&)
+ScMatrix::ExecuteOperation(std::pair<unsigned long, unsigned long> const&, std::pair<unsigned long, unsigned long> const&, std::function<void (unsigned long, unsigned long, double)>, std::function<void (unsigned long, unsigned long, bool)>, std::function<void (unsigned long, unsigned long, svl::SharedString)>, std::function<void (unsigned long, unsigned long)>) const
+ScMatrix::FillDouble(double, unsigned long, unsigned long, unsigned long, unsigned long)
+ScMatrix::GetDouble(unsigned long) const
+ScMatrix::GetDouble(unsigned long, unsigned long) const
+ScMatrix::GetDoubleArray(std::vector<double, std::allocator<double> >&, bool) const
+ScMatrix::GetDoubleWithStringConversion(unsigned long, unsigned long) const
+ScMatrix::GetElementCount() const
+ScMatrix::GetError(unsigned long, unsigned long) const
+ScMatrix::GetGcd() const
+ScMatrix::GetLcm() const
+ScMatrix::GetMaxValue(bool, bool) const
+ScMatrix::GetMinValue(bool, bool) const
+ScMatrix::GetString(SvNumberFormatter&, unsigned long, unsigned long) const
+ScMatrix::GetString(unsigned long) const
+ScMatrix::GetString(unsigned long, unsigned long) const
+ScMatrix::IsBoolean(unsigned long, unsigned long) const
+ScMatrix::IsEmpty(unsigned long, unsigned long) const
+ScMatrix::IsEmptyCell(unsigned long, unsigned long) const
+ScMatrix::IsEmptyPath(unsigned long, unsigned long) const
+ScMatrix::IsEmptyResult(unsigned long, unsigned long) const
+ScMatrix::IsNumeric() const
+ScMatrix::IsSizeAllocatable(unsigned long, unsigned long)
+ScMatrix::IsStringOrEmpty(unsigned long) const
+ScMatrix::IsStringOrEmpty(unsigned long, unsigned long) const
+ScMatrix::IsValue(unsigned long) const
+ScMatrix::IsValue(unsigned long, unsigned long) const
+ScMatrix::IsValueOrEmpty(unsigned long, unsigned long) const
+ScMatrix::MatConcat(unsigned long, unsigned long, boost::intrusive_ptr<ScMatrix> const&, boost::intrusive_ptr<ScMatrix> const&, SvNumberFormatter&, svl::SharedStringPool&)
+ScMatrix::MatCopy(ScMatrix const&) const
+ScMatrix::MatTrans(ScMatrix const&) const
+ScMatrix::MatchDoubleInColumns(double, unsigned long, unsigned long) const
+ScMatrix::MatchStringInColumns(svl::SharedString const&, unsigned long, unsigned long) const
+ScMatrix::MergeDoubleArrayMultiply(std::vector<double, std::allocator<double> >&) const
+ScMatrix::MulOp(double, ScMatrix const&)
+ScMatrix::NegOp(ScMatrix const&)
+ScMatrix::NotOp(ScMatrix const&)
+ScMatrix::Or() const
+ScMatrix::PowOp(bool, double, ScMatrix const&)
+ScMatrix::Product(bool, bool) const
+ScMatrix::PutDouble(double const*, unsigned long, unsigned long, unsigned long)
+ScMatrix::PutDouble(double, unsigned long)
+ScMatrix::PutDoubleVector(std::vector<double, std::allocator<double> > const&, unsigned long, unsigned long)
+ScMatrix::PutEmptyPath(unsigned long, unsigned long)
+ScMatrix::PutEmptyPathVector(unsigned long, unsigned long, unsigned long)
+ScMatrix::PutEmptyResultVector(unsigned long, unsigned long, unsigned long)
+ScMatrix::PutEmptyVector(unsigned long, unsigned long, unsigned long)
+ScMatrix::PutString(svl::SharedString const&, unsigned long)
+ScMatrix::PutString(svl::SharedString const*, unsigned long, unsigned long, unsigned long)
+ScMatrix::PutStringVector(std::vector<svl::SharedString, std::allocator<svl::SharedString> > const&, unsigned long, unsigned long)
+ScMatrix::Resize(unsigned long, unsigned long, double)
+ScMatrix::ScMatrix(unsigned long, unsigned long, std::vector<double, std::allocator<double> > const&)
+ScMatrix::SetErrorInterpreter(ScInterpreter*)
+ScMatrix::SetImmutable() const
+ScMatrix::SetMutable()
+ScMatrix::SubOp(bool, double, ScMatrix const&)
+ScMatrix::Sum(bool, bool) const
+ScMatrix::SumSquare(bool, bool) const
+ScMatrix::ValidColRow(unsigned long, unsigned long) const
+ScMatrix::ValidColRowOrReplicated(unsigned long&, unsigned long&) const
+ScMatrix::ValidColRowReplicated(unsigned long&, unsigned long&) const
+ScMatrix::Xor() const
+ScMatrix::~ScMatrix()
+ScMergeAttr::Clone(SfxItemPool*) const
+ScMergeAttr::ScMergeAttr()
+ScMergeAttr::ScMergeAttr(ScMergeAttr const&)
+ScMergeAttr::dumpAsXml(_xmlTextWriter*) const
+ScMergeAttr::operator==(SfxPoolItem const&) const
+ScMergeFlagAttr::Clone(SfxItemPool*) const
+ScMergeFlagAttr::HasPivotButton() const
+ScMergeFlagAttr::HasPivotPopupButton() const
+ScMergeFlagAttr::ScMergeFlagAttr()
+ScMergeFlagAttr::dumpAsXml(_xmlTextWriter*) const
+ScModelObj::AfterXMLLoading()
+ScModelObj::BeforeXMLLoading()
+ScModelObj::CreateAndSet(ScDocShell*)
+ScModelObj::FillRenderMarkData(com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, ScMarkData&, ScPrintSelectionStatus&, rtl::OUString&, bool&) const
+ScModelObj::GetFormatSaveData()
+ScModelObj::GetFormatter()
+ScModelObj::GetSheetSaveData()
+ScModelObj::HandleCalculateEvents()
+ScModelObj::HasChangesListeners() const
+ScModelObj::Notify(SfxBroadcaster&, SfxHint const&)
+ScModelObj::NotifyChanges(rtl::OUString const&, ScRangeList const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScModelObj::RepaintRange(ScRange const&)
+ScModelObj::RepaintRange(ScRangeList const&)
+ScModelObj::ScModelObj(ScDocShell*)
+ScModelObj::acquire()
+ScModelObj::addActionLock()
+ScModelObj::addChangesListener(com::sun::star::uno::Reference<com::sun::star::util::XChangesListener> const&)
+ScModelObj::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScModelObj::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScModelObj::calculate()
+ScModelObj::calculateAll()
+ScModelObj::completeFunction(rtl::OUString const&)
+ScModelObj::consolidate(com::sun::star::uno::Reference<com::sun::star::sheet::XConsolidationDescriptor> const&)
+ScModelObj::create(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const*)
+ScModelObj::createConsolidationDescriptor(unsigned char)
+ScModelObj::createDataProvider()
+ScModelObj::createInstance(rtl::OUString const&)
+ScModelObj::createInstanceWithArguments(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+ScModelObj::disableAutomaticDeviceSelection()
+ScModelObj::disableOpcodeSubsetTest()
+ScModelObj::enableAutomaticCalculation(unsigned char)
+ScModelObj::enableAutomaticDeviceSelection(unsigned char)
+ScModelObj::enableOpcodeSubsetTest()
+ScModelObj::enableOpenCL(unsigned char)
+ScModelObj::getAvailableServiceNames()
+ScModelObj::getCellCursor(tools::JsonWriter&)
+ScModelObj::getDeviceID()
+ScModelObj::getDocWindow()
+ScModelObj::getDocumentSize()
+ScModelObj::getDrawPages()
+ScModelObj::getFormulaCellNumberLimit()
+ScModelObj::getImplementationId()
+ScModelObj::getImplementationName()
+ScModelObj::getLinks()
+ScModelObj::getOpenCLPlatforms()
+ScModelObj::getPart()
+ScModelObj::getPartHash(int)
+ScModelObj::getPartInfo(int)
+ScModelObj::getPartName(int)
+ScModelObj::getParts()
+ScModelObj::getPlatformID()
+ScModelObj::getPointer()
+ScModelObj::getPostIts(tools::JsonWriter&)
+ScModelObj::getPostItsPos(tools::JsonWriter&)
+ScModelObj::getPropertySetInfo()
+ScModelObj::getPropertyValue(rtl::OUString const&)
+ScModelObj::getRenderer(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScModelObj::getRendererCount(com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScModelObj::getRowColumnHeaders(tools::Rectangle const&, tools::JsonWriter&)
+ScModelObj::getSdrModelFromUnoModel() const
+ScModelObj::getSelection()
+ScModelObj::getSheetGeometryData(bool, bool, bool, bool, bool, bool)
+ScModelObj::getSheets()
+ScModelObj::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+ScModelObj::getStyleFamilies()
+ScModelObj::getSupportedServiceNames()
+ScModelObj::getTrackedChanges(tools::JsonWriter&)
+ScModelObj::getTypes()
+ScModelObj::getViewData()
+ScModelObj::initializeForTiledRendering(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScModelObj::isActionLocked()
+ScModelObj::isAutomaticCalculationEnabled()
+ScModelObj::isMimeTypeSupported()
+ScModelObj::isOpcodeSubsetTested()
+ScModelObj::isOpenCLEnabled()
+ScModelObj::isProtected()
+ScModelObj::lockControllers()
+ScModelObj::paintTile(VirtualDevice&, int, int, int, int, long, long)
+ScModelObj::postKeyEvent(int, int, int)
+ScModelObj::postMouseEvent(int, int, int, int, int, int)
+ScModelObj::protect(rtl::OUString const&)
+ScModelObj::queryInterface(com::sun::star::uno::Type const&)
+ScModelObj::refreshArrows()
+ScModelObj::release()
+ScModelObj::removeActionLock()
+ScModelObj::removeChangesListener(com::sun::star::uno::Reference<com::sun::star::util::XChangesListener> const&)
+ScModelObj::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScModelObj::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScModelObj::render(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScModelObj::resetActionLocks()
+ScModelObj::resetSelection()
+ScModelObj::seekGoal(com::sun::star::table::CellAddress const&, com::sun::star::table::CellAddress const&, rtl::OUString const&)
+ScModelObj::selectOpenCLDevice(int, int)
+ScModelObj::setActionLocks(short)
+ScModelObj::setClientVisibleArea(tools::Rectangle const&)
+ScModelObj::setClientZoom(int, int, int, int)
+ScModelObj::setClipboard(com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard> const&)
+ScModelObj::setFormulaCellNumberLimit(int)
+ScModelObj::setGraphicSelection(int, int, int)
+ScModelObj::setOutlineState(bool, int, int, bool)
+ScModelObj::setPart(int, bool)
+ScModelObj::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScModelObj::setTextSelection(int, int, int)
+ScModelObj::supportsService(rtl::OUString const&)
+ScModelObj::unlockControllers()
+ScModelObj::unprotect(rtl::OUString const&)
+ScModelObj::~ScModelObj()
+ScModule::CallAutomationApplicationEventSinks(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
+ScModule::Find1RefWindow(unsigned short, weld::Window const*)
+ScModule::InputEnterHandler(ScEnterMode)
+ScModule::RegisterRefController(unsigned short, std::shared_ptr<SfxDialogController>&, weld::Window*)
+ScModule::SetRefDialog(unsigned short, bool, SfxViewFrame*)
+ScModule::UnregisterRefController(unsigned short, std::shared_ptr<SfxDialogController> const&)
+ScMultiBlockUndo::BeginUndo()
+ScMultiBlockUndo::EndRedo()
+ScMultiBlockUndo::EndUndo()
+ScMultiBlockUndo::ScMultiBlockUndo(ScDocShell*, ScRangeList const&)
+ScMultiBlockUndo::ShowBlock()
+ScMultiBlockUndo::~ScMultiBlockUndo()
+ScMultiSel::GetMarkArray(short) const
+ScMultiSel::GetMultiSelArray(short) const
+ScMultiSel::GetRowSelArray() const
+ScMultiSel::IsRowRangeMarked(int, int) const
+ScMultiSel::MarkAllCols(int, int)
+ScMultiSel::Set(ScRangeList const&)
+ScMultiSel::ShiftCols(short, int)
+ScMultiSel::ShiftRows(int, int)
+ScMultiSel::operator=(ScMultiSel const&)
+ScMultiSel::operator=(ScMultiSel&&)
+ScNamedRangeObj::GetTab_Impl()
+ScNamedRangeObj::Modify_Impl(rtl::OUString const*, ScTokenArray const*, rtl::OUString const*, ScAddress const*, ScRangeData::Type const*, formula::FormulaGrammar::Grammar)
+ScNamedRangeObj::Notify(SfxBroadcaster&, SfxHint const&)
+ScNamedRangeObj::ScNamedRangeObj(rtl::Reference<ScNamedRangesObj> const&, ScDocShell*, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::container::XNamed> const&)
+ScNamedRangeObj::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScNamedRangeObj::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScNamedRangeObj::getContent()
+ScNamedRangeObj::getImplementationName()
+ScNamedRangeObj::getName()
+ScNamedRangeObj::getPropertySetInfo()
+ScNamedRangeObj::getPropertyValue(rtl::OUString const&)
+ScNamedRangeObj::getReferencePosition()
+ScNamedRangeObj::getReferredCells()
+ScNamedRangeObj::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+ScNamedRangeObj::getSupportedServiceNames()
+ScNamedRangeObj::getTokens()
+ScNamedRangeObj::getType()
+ScNamedRangeObj::getUnoTunnelId()
+ScNamedRangeObj::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ScNamedRangeObj::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ScNamedRangeObj::setContent(rtl::OUString const&)
+ScNamedRangeObj::setName(rtl::OUString const&)
+ScNamedRangeObj::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+ScNamedRangeObj::setReferencePosition(com::sun::star::table::CellAddress const&)
+ScNamedRangeObj::setTokens(com::sun::star::uno::Sequence<com::sun::star::sheet::FormulaToken> const&)
+ScNamedRangeObj::setType(int)
+ScNamedRangeObj::supportsService(rtl::OUString const&)
+ScNamedRangeObj::~ScNamedRangeObj()
+ScNoteUtil::CreateNoteFromCaption(ScDocument&, ScAddress const&, SdrCaptionObj*)
+ScNoteUtil::CreateTempCaption(ScDocument&, ScAddress const&, SdrPage&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, tools::Rectangle const&, bool)
+ScOutlineArray::DecDepth()
+ScOutlineArray::DeleteSpace(int, unsigned long)
+ScOutlineArray::ExtendBlock(unsigned long, int&, int&)
+ScOutlineArray::FindEntry(int, unsigned long&, unsigned long&, unsigned long)
+ScOutlineArray::GetEntry(unsigned long, unsigned long)
+ScOutlineArray::GetEntryIndex(unsigned long, int, unsigned long&) const
+ScOutlineArray::GetEntryIndexInRange(unsigned long, int, int, unsigned long&) const
+ScOutlineArray::InsertSpace(int, unsigned long)
+ScOutlineArray::ManualAction(int, int, bool, ScTable const&, bool)
+ScOutlineArray::PromoteSub(int, int, unsigned long)
+ScOutlineArray::Remove(int, int, bool&)
+ScOutlineArray::RemoveAll()
+ScOutlineArray::ScOutlineArray()
+ScOutlineArray::ScOutlineArray(ScOutlineArray const&)
+ScOutlineArray::SetVisibleBelow(unsigned long, unsigned long, bool, bool)
+ScOutlineArray::TestInsertSpace(unsigned long, int) const
+ScOutlineArray::dumpAsString() const
+ScOutlineArray::finalizeImport(ScTable const&)
+ScPageHFItem::Clone(SfxItemPool*) const
+ScPageHFItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+ScPageHFItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+ScPageHFItem::ScPageHFItem(ScPageHFItem const&)
+ScPageHFItem::dumpAsXml(_xmlTextWriter*) const
+ScPageHFItem::operator==(SfxPoolItem const&) const
+ScPageScaleToItem::Clone(SfxItemPool*) const
+ScPageScaleToItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScPageScaleToItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+ScPageScaleToItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+ScPageScaleToItem::dumpAsXml(_xmlTextWriter*) const
+ScPageScaleToItem::operator==(SfxPoolItem const&) const
+ScPaintHint::ScPaintHint(ScRange const&, PaintPartFlags)
+ScPaintHint::~ScPaintHint()
+ScPatternAttr::CalcHashCode() const
+ScPatternAttr::ClearItems(unsigned short const*)
+ScPatternAttr::Clone(SfxItemPool*) const
+ScPatternAttr::DeleteUnchanged(ScPatternAttr const*)
+ScPatternAttr::FillEditParaItems(SfxItemSet*) const
+ScPatternAttr::GetCellOrientation(SfxItemSet const&, SfxItemSet const*)
+ScPatternAttr::GetCellOrientation(SfxItemSet const*) const
+ScPatternAttr::GetItem(unsigned short, SfxItemSet const&, SfxItemSet const*)
+ScPatternAttr::GetKey() const
+ScPatternAttr::GetNumberFormat(SvNumberFormatter*, SfxItemSet const*) const
+ScPatternAttr::GetRotateDir(SfxItemSet const*) const
+ScPatternAttr::GetRotateVal(SfxItemSet const*) const
+ScPatternAttr::HasItemsSet(unsigned short const*) const
+ScPatternAttr::IsSymbolFont() const
+ScPatternAttr::IsVisible() const
+ScPatternAttr::IsVisibleEqual(ScPatternAttr const&) const
+ScPatternAttr::PutInPool(ScDocument*, ScDocument*) const
+ScPatternAttr::ScPatternAttr(SfxItemSet&&)
+ScPatternAttr::ScPatternAttr(SfxItemSet&&, rtl::OUString const&)
+ScPatternAttr::SetKey(unsigned long)
+ScPatternAttr::StyleToName()
+ScPatternAttr::UpdateStyleSheet(ScDocument const&)
+ScPatternAttr::operator==(SfxPoolItem const&) const
+ScPostIt::AutoStamp()
+ScPostIt::Clone(ScAddress const&, ScDocument&, ScAddress const&, bool) const
+ScPostIt::CreateCaption(ScAddress const&, SdrCaptionObj const*)
+ScPostIt::CreateCaptionFromInitData(ScAddress const&) const
+ScPostIt::ForgetCaption(bool)
+ScPostIt::GetOutlinerObject() const
+ScPostIt::HasMultiLineText() const
+ScPostIt::RemoveCaption()
+ScPostIt::ScPostIt(ScDocument&, ScAddress const&, ScNoteData const&, bool, unsigned int)
+ScPostIt::ScPostIt(ScDocument&, ScAddress const&, ScPostIt const&, unsigned int)
+ScPostIt::ScPostIt(ScDocument&, ScAddress const&, unsigned int)
+ScPostIt::SetDate(rtl::OUString const&)
+ScPostIt::ShowCaptionTemp(ScAddress const&, bool)
+ScPostIt::UpdateCaptionPos(ScAddress const&)
+ScPostIt::~ScPostIt()
+ScPreviewShell::Activate(bool)
+ScPreviewShell::AddAccessibilityObject(SfxListener&)
+ScPreviewShell::AdjustPosSizePixel(Point const&, Size const&)
+ScPreviewShell::BroadcastAccessibility(SfxHint const&)
+ScPreviewShell::Construct(vcl::Window*)
+ScPreviewShell::CreateInstance(SfxViewFrame*, SfxViewShell*)
+ScPreviewShell::CreatePrintOptionsPage(weld::Container*, weld::DialogController*, SfxItemSet const&)
+ScPreviewShell::DoScroll(unsigned short)
+ScPreviewShell::Execute(SfxRequest&)
+ScPreviewShell::ExitPreview()
+ScPreviewShell::FillFieldData(ScHeaderFieldData&)
+ScPreviewShell::GetDocument()
+ScPreviewShell::GetInterface() const
+ScPreviewShell::GetLocationData()
+ScPreviewShell::GetPageSize(Size&)
+ScPreviewShell::GetPrinter(bool)
+ScPreviewShell::GetState(SfxItemSet&)
+ScPreviewShell::GetStaticInterface()
+ScPreviewShell::HasAccessibilityObjects() const
+ScPreviewShell::HasPrintOptionsPage() const
+ScPreviewShell::InitFactory()
+ScPreviewShell::InitInterface_Impl()
+ScPreviewShell::InitStartTable(short)
+ScPreviewShell::InnerResizePixel(Point const&, Size const&, bool)
+ScPreviewShell::Notify(SfxBroadcaster&, SfxHint const&)
+ScPreviewShell::OuterResizePixel(Point const&, Size const&)
+ScPreviewShell::ReadUserData(rtl::OUString const&, bool)
+ScPreviewShell::ReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScPreviewShell::RegisterFactory(o3tl::strong_int<unsigned short, SfxInterfaceIdTag>)
+ScPreviewShell::RegisterInterface(SfxModule const*)
+ScPreviewShell::RemoveAccessibilityObject(SfxListener&)
+ScPreviewShell::ScPreviewShell(SfxViewFrame*, SfxViewShell*)
+ScPreviewShell::ScrollCommand(CommandEvent const&)
+ScPreviewShell::SetPrinter(SfxPrinter*, SfxPrinterChangeFlags)
+ScPreviewShell::UpdateNeededScrollBars(bool)
+ScPreviewShell::UpdateScrollBars()
+ScPreviewShell::WriteUserData(rtl::OUString&, bool)
+ScPreviewShell::WriteUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+ScPreviewShell::~ScPreviewShell()
+ScPrintOptions::SetDefaults()
+ScPrintOptions::operator==(ScPrintOptions const&) const
+ScProgress::CreateInterpretProgress(ScDocument*, bool)
+ScProgress::DeleteInterpretProgress()
+ScProgress::ScProgress()
+ScProtectionAttr::Clone(SfxItemPool*) const
+ScProtectionAttr::CreateDefault()
+ScProtectionAttr::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScProtectionAttr::GetValueText() const
+ScProtectionAttr::PutValue(com::sun::star::uno::Any const&, unsigned char)
+ScProtectionAttr::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+ScProtectionAttr::ScProtectionAttr(ScProtectionAttr const&)
+ScProtectionAttr::dumpAsXml(_xmlTextWriter*) const
+ScQueryEntry::Clear()
+ScQueryEntry::GetSearchTextPtr(utl::SearchParam::SearchType, bool, bool) const
+ScQueryEntry::ScQueryEntry(ScQueryEntry const&)
+ScQueryEntry::SetQueryByBackgroundColor(Color)
+ScQueryEntry::SetQueryByTextColor(Color)
+ScQueryEntry::operator==(ScQueryEntry const&) const
+ScQueryItem::Clone(SfxItemPool*) const
+ScQueryItem::GetAdvancedQuerySource(ScRange&) const
+ScQueryItem::ScQueryItem(ScQueryItem const&)
+ScQueryItem::ScQueryItem(unsigned short, ScViewData*, ScQueryParam const*)
+ScQueryItem::SetAdvancedQuerySource(ScRange const*)
+ScQueryItem::operator==(SfxPoolItem const&) const
+ScQueryItem::~ScQueryItem()
+ScQueryParam::Clear()
+ScQueryParam::ClearDestParams()
+ScQueryParam::MoveToDest()
+ScQueryParam::ScQueryParam(ScDBQueryParamInternal const&)
+ScQueryParam::operator=(ScQueryParam const&)
+ScQueryParam::operator==(ScQueryParam const&) const
+ScQueryParamBase::RemoveAllEntriesByField(int)
+ScRange::IncColIfNotLessThan(ScDocument const&, short, short)
+ScRange::IncEndColSticky(ScDocument const&, short)
+ScRange::IncEndRowSticky(ScDocument const&, int)
+ScRange::IncRowIfNotLessThan(ScDocument const&, int, int)
+ScRange::Intersection(ScRange const&) const
+ScRange::MoveSticky(ScDocument const&, short, int, short, ScRange&)
+ScRangeData::GetErrCode() const
+ScRangeData::GetSymbol(ScAddress const&, formula::FormulaGrammar::Grammar) const
+ScRangeList::AddAndPartialCombine(ScRange const&)
+ScRangeList::InsertCol(short, short)
+ScRangeList::Intersects(ScRange const&) const
+ScRangeList::ScRangeList(ScRangeList&&)
+ScRangeList::operator=(ScRangeList&&)
+ScRangeList::swap(ScRangeList&)
+ScRangeManagerTable::CheckForFormulaString()
+ScRangeManagerTable::DeleteSelectedEntries()
+ScRangeManagerTable::GetCurrentLine(ScRangeNameLine&)
+ScRangeManagerTable::GetLine(ScRangeNameLine&, weld::TreeIter const&)
+ScRangeManagerTable::Init()
+ScRangeManagerTable::IsMultiSelection() const
+ScRangeManagerTable::SetEntry(ScRangeNameLine const&)
+ScRangeManagerTable::addEntry(ScRangeNameLine const&, bool)
+ScRangeManagerTable::findRangeData(ScRangeNameLine const&)
+ScRangeName::begin()
+ScRangeName::end()
+ScRangePairList::Clone() const
+ScRangePairList::CreateNameSortedArray(ScDocument&) const
+ScRangePairList::DeleteOnTab(short)
+ScRangePairList::Find(ScAddress const&)
+ScRangePairList::Find(ScRange const&)
+ScRangePairList::Join(ScRangePair const&, bool)
+ScRangePairList::Remove(ScRangePair const&)
+ScRangePairList::Remove(unsigned long)
+ScRangePairList::UpdateReference(UpdateRefMode, ScDocument const*, ScRange const&, short, int, short)
+ScRangePairList::operator[](unsigned long) const
+ScRangePairList::~ScRangePairList()
+ScRangeStringConverter::AppendTableName(rtl::OUStringBuffer&, rtl::OUString const&)
+ScRangeStringConverter::AssignString(rtl::OUString&, rtl::OUString const&, bool, char16_t)
+ScRangeStringConverter::GetAddressFromString(ScAddress&, rtl::OUString const&, ScDocument const&, formula::FormulaGrammar::AddressConvention, int&, char16_t, char16_t)
+ScRangeStringConverter::GetAreaFromString(ScArea&, rtl::OUString const&, ScDocument const&, formula::FormulaGrammar::AddressConvention, int&, char16_t)
+ScRangeStringConverter::GetRangeDataFromString(rtl::OUString const&, short, ScDocument const&, formula::FormulaGrammar::AddressConvention)
+ScRangeStringConverter::GetRangeFromString(ScRange&, rtl::OUString const&, ScDocument const&, formula::FormulaGrammar::AddressConvention, int&, char16_t, char16_t)
+ScRangeStringConverter::GetRangeFromString(com::sun::star::table::CellRangeAddress&, rtl::OUString const&, ScDocument const&, formula::FormulaGrammar::AddressConvention, int&, char16_t)
+ScRangeStringConverter::GetStringFromAddress(rtl::OUString&, ScAddress const&, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t, bool, ScRefFlags)
+ScRangeStringConverter::GetStringFromAddress(rtl::OUString&, com::sun::star::table::CellAddress const&, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t, bool)
+ScRangeStringConverter::GetStringFromArea(rtl::OUString&, ScArea const&, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t, bool, ScRefFlags)
+ScRangeStringConverter::GetStringFromRange(rtl::OUString&, ScRange const&, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t, bool, ScRefFlags)
+ScRangeStringConverter::GetStringFromRange(rtl::OUString&, com::sun::star::table::CellRangeAddress const&, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t, bool, ScRefFlags)
+ScRangeStringConverter::GetStringFromRangeList(rtl::OUString&, ScRangeList const*, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t)
+ScRangeStringConverter::GetStringFromRangeList(rtl::OUString&, com::sun::star::uno::Sequence<com::sun::star::table::CellRangeAddress> const&, ScDocument const*, formula::FormulaGrammar::AddressConvention, char16_t)
+ScRangeStringConverter::GetStringFromXMLRangeString(rtl::OUString&, rtl::OUString const&, ScDocument const&)
+ScRangeStringConverter::GetTokenByOffset(rtl::OUString&, rtl::OUString const&, int&, char16_t, char16_t)
+ScRangeStringConverter::GetTokenCount(rtl::OUString const&, char16_t)
+ScRangeStringConverter::IndexOf(rtl::OUString const&, char16_t, int, char16_t)
+ScRangeStringConverter::IndexOfDifferent(rtl::OUString const&, char16_t, int)
+ScRangeUtil::CutPosString(rtl::OUString const&, rtl::OUString&)
+ScRangeUtil::IsAbsTabArea(rtl::OUString const&, ScDocument const*, std::unique_ptr<ScArea [], std::default_delete<ScArea []> >*, unsigned short*, bool, ScAddress::Details const&)
+ScRangeUtil::MakeArea(rtl::OUString const&, ScArea&, ScDocument const&, short, ScAddress::Details const&)
+ScRangeUtil::MakeRangeFromName(rtl::OUString const&, ScDocument const&, short, ScRange&, RutlNameScope, ScAddress::Details const&, bool)
+ScRefCellValue::ScRefCellValue(EditTextObject const*)
+ScRefCellValue::ScRefCellValue(ScFormulaCell*)
+ScRefCellValue::ScRefCellValue(double)
+ScRefCellValue::ScRefCellValue(svl::SharedString const*)
+ScRefCellValue::assign(ScDocument&, ScAddress const&, sc::ColumnBlockPosition&)
+ScRefCellValue::clear()
+ScRefCellValue::commit(ScDocument&, ScAddress const&) const
+ScRefCellValue::equalsWithoutFormat(ScRefCellValue const&) const
+ScRefCellValue::getRawString(ScDocument const&) const
+ScRefCellValue::getRawValue() const
+ScRefCellValue::getValue()
+ScRefCellValue::hasEmptyValue()
+ScRefCellValue::hasError() const
+ScRefCellValue::hasString() const
+ScRefTokenHelper::intersects(ScDocument const*, std::vector<boost::intrusive_ptr<formula::FormulaToken>, std::allocator<boost::intrusive_ptr<formula::FormulaToken> > > const&, boost::intrusive_ptr<formula::FormulaToken> const&, ScAddress const&)
+ScRefTokenHelper::isExternalRef(boost::intrusive_ptr<formula::FormulaToken> const&)
+ScRefUndoData::DeleteUnchanged(ScDocument const*)
+ScRefUndoData::DoUndo(ScDocument*, bool)
+ScRefUndoData::ScRefUndoData(ScDocument const*)
+ScRefUndoData::~ScRefUndoData()
+ScRefreshTimer::Invoke()
+ScRotateValueItem::Clone(SfxItemPool*) const
+ScRotateValueItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScSetStringParam::setNumericInput()
+ScSheetDPData::CalcResults(ScDPTableData::CalcInfo&, bool)
+ScSheetDPData::CreateCacheTable()
+ScSheetDPData::DisposeData()
+ScSheetDPData::FilterCacheTable(std::vector<ScDPFilteredCache::Criterion, std::allocator<ScDPFilteredCache::Criterion> >&&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> >&&)
+ScSheetDPData::GetCacheTable() const
+ScSheetDPData::GetColumnCount()
+ScSheetDPData::GetDrillDownData(std::vector<ScDPFilteredCache::Criterion, std::allocator<ScDPFilteredCache::Criterion> >&&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> >&&, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<com::sun::star::uno::Any> >&)
+ScSheetDPData::GetNumberFormat(int)
+ScSheetDPData::IsDateDimension(int)
+ScSheetDPData::IsRepeatIfEmpty()
+ScSheetDPData::ReloadCacheTable()
+ScSheetDPData::SetEmptyFlags(bool, bool)
+ScSheetDPData::getDimensionName(int)
+ScSheetDPData::getIsDataLayoutDimension(int)
+ScShrinkToFitCell::Clone(SfxItemPool*) const
+ScShrinkToFitCell::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScSimpleUndo::BeginRedo()
+ScSimpleUndo::BeginUndo()
+ScSimpleUndo::BroadcastChanges(ScRange const&)
+ScSimpleUndo::BroadcastChanges(std::map<short, std::unique_ptr<sc::ColumnSpanSet, std::default_delete<sc::ColumnSpanSet> >, std::less<short>, std::allocator<std::pair<short const, std::unique_ptr<sc::ColumnSpanSet, std::default_delete<sc::ColumnSpanSet> > > > > const&)
+ScSimpleUndo::EndRedo()
+ScSimpleUndo::EndUndo()
+ScSimpleUndo::GetViewShellId() const
+ScSimpleUndo::Merge(SfxUndoAction*)
+ScSimpleUndo::ScSimpleUndo(ScDocShell*)
+ScSimpleUndo::SetViewMarkData(ScMarkData const&)
+ScSimpleUndo::ShowTable(ScRange const&)
+ScSimpleUndo::ShowTable(short)
+ScSingleRefData::ColValid(ScDocument const&) const
+ScSingleRefData::IncCol(short)
+ScSingleRefData::IncRow(int)
+ScSingleRefData::IncTab(short)
+ScSingleRefData::InitAddress(short, int, short)
+ScSingleRefData::InitAddressRel(ScDocument const&, ScAddress const&, ScAddress const&)
+ScSingleRefData::InitFromRefAddress(ScDocument const&, ScRefAddress const&, ScAddress const&)
+ScSingleRefData::PutInOrder(ScSingleRefData&, ScSingleRefData&, ScAddress const&)
+ScSingleRefData::RowValid(ScDocument const&) const
+ScSingleRefData::TabValid() const
+ScSingleRefData::Valid(ScDocument const&) const
+ScSingleRefData::ValidExternal(ScDocument const&) const
+ScSingleRefData::operator!=(ScSingleRefData const&) const
+ScSingleRefData::operator==(ScSingleRefData const&) const
+ScSingleRefData::toAbs(ScSheetLimits const&, ScAddress const&) const
+ScSortItem::Clone(SfxItemPool*) const
+ScSortItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+ScSortItem::operator==(SfxPoolItem const&) const
+ScSortParam::Clear()
+ScSortParam::MoveToDest()
+ScSortParam::ScSortParam(ScQueryParam const&, short)
+ScSortParam::ScSortParam(ScSubTotalParam const&, ScSortParam const&)
+ScSortParam::operator==(ScSortParam const&) const
+ScStringUtil::isMultiline(rtl::OUString const&)
+ScStyleSheetPool::CopyStdStylesFrom(ScStyleSheetPool*)
+ScStyleSheetPool::CopyStyleFrom(ScStyleSheetPool*, rtl::OUString const&, SfxStyleFamily)
+ScStyleSheetPool::Create(SfxStyleSheetBase const&)
+ScStyleSheetPool::Create(rtl::OUString const&, SfxStyleFamily, SfxStyleSearchBits)
+ScStyleSheetPool::Remove(SfxStyleSheetBase*)
+ScStyleSheetPool::ScStyleSheetPool(SfxItemPool const&, ScDocument*)
+ScStyleSheetPool::SetDocument(ScDocument*)
+ScStyleSheetPool::setAllParaStandard()
+ScStyleSheetPool::~ScStyleSheetPool()
+ScSubTotalItem::Clone(SfxItemPool*) const
+ScSubTotalItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+ScSubTotalItem::operator==(SfxPoolItem const&) const
+ScSubTotalParam::Clear()
+ScSubTotalParam::operator==(ScSubTotalParam const&) const
+ScTabEditEngine::Init(ScPatternAttr const&)
+ScTabEditEngine::ScTabEditEngine(ScDocument*)
+ScTabOpParam::ScTabOpParam(ScRefAddress const&, ScRefAddress const&, ScRefAddress const&, ScRefAddress const&, ScTabOpParam::Mode)
+ScTabOpParam::ScTabOpParam(ScTabOpParam const&)
+ScTabOpParam::operator=(ScTabOpParam const&)
+ScTabOpParam::operator==(ScTabOpParam const&) const
+ScTabView::SetTabNo(short, bool, bool, bool)
+ScTabViewShell::Activate(bool)
+ScTabViewShell::ActivateObject(SdrOle2Obj*, int)
+ScTabViewShell::AddAccessibilityObject(SfxListener&)
+ScTabViewShell::BroadcastAccessibility(SfxHint const&)
+ScTabViewShell::ClearFormEditData()
+ScTabViewShell::ConnectObject(SdrOle2Obj const*)
+ScTabViewShell::Construct(TriState)
+ScTabViewShell::CreateInstance(SfxViewFrame*, SfxViewShell*)
+ScTabViewShell::CreatePrintOptionsPage(weld::Container*, weld::DialogController*, SfxItemSet const&)
+ScTabViewShell::CreateRefDialogController(SfxBindings*, SfxChildWindow*, SfxChildWinInfo const*, weld::Window*, unsigned short)
+ScTabViewShell::Deactivate(bool)
+ScTabViewShell::DeactivateOle()
+ScTabViewShell::DoAutoSum(bool&, bool&, OpCode)
+ScTabViewShell::DoReadUserData(rtl::OUString const&)
+ScTabViewShell::DoReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScTabViewShell::DoVerb(int)
+ScTabViewShell::EnableEditHyperlink()
+ScTabViewShell::ExecChildWin(SfxRequest const&)
+ScTabViewShell::ExecDrawIns(SfxRequest&)
+ScTabViewShell::ExecDrawOpt(SfxRequest const&)
+ScTabViewShell::ExecGallery(SfxRequest const&)
+ScTabViewShell::ExecImageMap(SfxRequest&)
+ScTabViewShell::ExecSearch(SfxRequest&)
+ScTabViewShell::ExecuteCellFormatDlg(SfxRequest&, rtl::OString const&)
+ScTabViewShell::ExecuteInputDirect()
+ScTabViewShell::ExecuteObject(SfxRequest const&)
+ScTabViewShell::ExecuteRetypePassDlg(ScPasswordHash)
+ScTabViewShell::ExecuteSave(SfxRequest&)
+ScTabViewShell::ExecuteTable(SfxRequest&)
+ScTabViewShell::ExecuteUndo(SfxRequest&)
+ScTabViewShell::FillFieldData(ScHeaderFieldData&)
+ScTabViewShell::GetActiveViewShell()
+ScTabViewShell::GetDialogParent()
+ScTabViewShell::GetDrawInsState(SfxItemSet&)
+ScTabViewShell::GetDrawOptState(SfxItemSet&)
+ScTabViewShell::GetDrawState(SfxItemSet&)
+ScTabViewShell::GetDrawView() const
+ScTabViewShell::GetFormula(ScAddress const&)
+ScTabViewShell::GetFunction(rtl::OUString&, FormulaError)
+ScTabViewShell::GetImageMapState(SfxItemSet&)
+ScTabViewShell::GetInterface() const
+ScTabViewShell::GetMySubShell() const
+ScTabViewShell::GetNavigatorSettings()
+ScTabViewShell::GetObjectState(SfxItemSet&)
+ScTabViewShell::GetPrinter(bool)
+ScTabViewShell::GetSaveState(SfxItemSet&)
+ScTabViewShell::GetSelectionText(bool)
+ScTabViewShell::GetStateTable(SfxItemSet&)
+ScTabViewShell::GetStaticInterface()
+ScTabViewShell::GetUndoState(SfxItemSet&)
+ScTabViewShell::HasAccessibilityObjects() const
+ScTabViewShell::HasPrintOptionsPage() const
+ScTabViewShell::HasSelection(bool) const
+ScTabViewShell::InitFactory()
+ScTabViewShell::InitFormEditData()
+ScTabViewShell::InitInterface_Impl()
+ScTabViewShell::InnerResizePixel(Point const&, Size const&, bool)
+ScTabViewShell::InsertURL(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, unsigned short)
+ScTabViewShell::InsertURLButton(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, Point const*)
+ScTabViewShell::InsertURLField(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+ScTabViewShell::IsAuditShell() const
+ScTabViewShell::IsDrawTextShell() const
+ScTabViewShell::IsQRCodeSelected()
+ScTabViewShell::IsRefInputMode() const
+ScTabViewShell::IsSignatureLineSelected()
+ScTabViewShell::IsSignatureLineSigned()
+ScTabViewShell::KeyInput(KeyEvent const&)
+ScTabViewShell::MakeNumberInfoItem(ScDocument&, ScViewData const&)
+ScTabViewShell::Move()
+ScTabViewShell::Notify(SfxBroadcaster&, SfxHint const&)
+ScTabViewShell::NotifyCursor(SfxViewShell*) const
+ScTabViewShell::OuterResizePixel(Point const&, Size const&)
+ScTabViewShell::PrepareClose(bool)
+ScTabViewShell::QueryObjAreaPixel(tools::Rectangle&) const
+ScTabViewShell::ReadUserData(rtl::OUString const&, bool)
+ScTabViewShell::ReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScTabViewShell::RegisterFactory(o3tl::strong_int<unsigned short, SfxInterfaceIdTag>)
+ScTabViewShell::RegisterInterface(SfxModule const*)
+ScTabViewShell::RemoveAccessibilityObject(SfxListener&)
+ScTabViewShell::ScTabViewShell(SfxViewFrame*, SfxViewShell*)
+ScTabViewShell::SetActive()
+ScTabViewShell::SetAuditShell(bool)
+ScTabViewShell::SetChartShell(bool)
+ScTabViewShell::SetCurRefDlgId(unsigned short)
+ScTabViewShell::SetCurSubShell(ObjectSelectionType, bool)
+ScTabViewShell::SetDefaultFrameLine(editeng::SvxBorderLine const*)
+ScTabViewShell::SetDialogDPObject(std::unique_ptr<ScDPObject, std::default_delete<ScDPObject> >)
+ScTabViewShell::SetDrawFormShell(bool)
+ScTabViewShell::SetDrawShellOrSub()
+ScTabViewShell::SetDrawTextShell(bool)
+ScTabViewShell::SetDrawTextUndo(SfxUndoManager*)
+ScTabViewShell::SetEditShell(EditView*, bool)
+ScTabViewShell::SetFormShellAtTop(bool)
+ScTabViewShell::SetGraphicShell(bool)
+ScTabViewShell::SetMediaShell(bool)
+ScTabViewShell::SetOleObjectShell(bool)
+ScTabViewShell::SetPivotShell(bool)
+ScTabViewShell::SetPrinter(SfxPrinter*, SfxPrinterChangeFlags)
+ScTabViewShell::SetZoomFactor(Fraction const&, Fraction const&)
+ScTabViewShell::SfxKeyInput(KeyEvent const&)
+ScTabViewShell::ShouldDisableEditHyperlink() const
+ScTabViewShell::ShowCursor(bool)
+ScTabViewShell::StartSimpleRefDialog(rtl::OUString const&, rtl::OUString const&, bool, bool, bool)
+ScTabViewShell::StopEditShell()
+ScTabViewShell::StopSimpleRefDialog()
+ScTabViewShell::SwitchBetweenRefDialogs(SfxModelessDialogController*)
+ScTabViewShell::TabKeyInput(KeyEvent const&)
+ScTabViewShell::UIDeactivated(SfxInPlaceClient*)
+ScTabViewShell::UpdateDrawShell()
+ScTabViewShell::UpdateInputHandler(bool, bool)
+ScTabViewShell::UpdateInputHandlerCellAdjust(SvxCellHorJustify)
+ScTabViewShell::UpdateNumberFormatter(SvxNumberInfoItem const&)
+ScTabViewShell::UpdateOleZoom()
+ScTabViewShell::UseSubTotal(ScRangeList*)
+ScTabViewShell::WindowChanged()
+ScTabViewShell::WriteUserData(rtl::OUString&, bool)
+ScTabViewShell::WriteUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+ScTabViewShell::afterCallbackRegistered()
+ScTabViewShell::getLOKVisibleArea() const
+ScTabViewShell::getPart() const
+ScTabViewShell::getSelectedXShapes()
+ScTabViewShell::isAnyEditViewInRange(SfxViewShell const*, bool, int, int)
+ScTabViewShell::notifyAllViewsHeaderInvalidation(SfxViewShell const*, HeaderType, short)
+ScTabViewShell::notifyAllViewsSheetGeomInvalidation(SfxViewShell const*, bool, bool, bool, bool, bool, bool, short)
+ScTabViewShell::~ScTabViewShell()
+ScTableProtection::hasPasswordHash(ScPasswordHash, ScPasswordHash) const
+ScTableProtection::isPasswordEmpty() const
+ScTableProtection::isProtectedWithPass() const
+ScTableProtection::isSelectionEditable(ScRangeList const&) const
+ScTableProtection::setPassword(rtl::OUString const&)
+ScTableProtection::updateReference(UpdateRefMode, ScDocument const&, ScRange const&, short, int, short)
+ScTableSheetObj::GetItemPropertyMap()
+ScTableSheetObj::GetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+ScTableSheetObj::GetTab_Impl() const
+ScTableSheetObj::InitInsertSheet(ScDocShell*, short)
+ScTableSheetObj::PrintAreaUndo_Impl(std::unique_ptr<ScPrintRangeSaver, std::default_delete<ScPrintRangeSaver> >)
+ScTableSheetObj::ScTableSheetObj(ScDocShell*, short)
+ScTableSheetObj::SetOnePropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+ScTableSheetObj::acquire()
+ScTableSheetObj::addRanges(com::sun::star::uno::Sequence<com::sun::star::table::CellRangeAddress> const&)
+ScTableSheetObj::apply()
+ScTableSheetObj::autoOutline(com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::clearArrows()
+ScTableSheetObj::clearOutline()
+ScTableSheetObj::copyRange(com::sun::star::table::CellAddress const&, com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::createCursor()
+ScTableSheetObj::createCursorByRange(com::sun::star::uno::Reference<com::sun::star::sheet::XSheetCellRange> const&)
+ScTableSheetObj::getCellByPosition(int, int)
+ScTableSheetObj::getCellRangeByName(rtl::OUString const&)
+ScTableSheetObj::getCellRangeByPosition(int, int, int, int)
+ScTableSheetObj::getCharts()
+ScTableSheetObj::getColumnPageBreaks()
+ScTableSheetObj::getDataPilotTables()
+ScTableSheetObj::getDrawPage()
+ScTableSheetObj::getEvents()
+ScTableSheetObj::getImplementationId()
+ScTableSheetObj::getImplementationName()
+ScTableSheetObj::getIsScenario()
+ScTableSheetObj::getLinkMode()
+ScTableSheetObj::getLinkSheetName()
+ScTableSheetObj::getLinkUrl()
+ScTableSheetObj::getName()
+ScTableSheetObj::getPivotCharts()
+ScTableSheetObj::getPrintAreas()
+ScTableSheetObj::getPrintTitleColumns()
+ScTableSheetObj::getPrintTitleRows()
+ScTableSheetObj::getPropertySetInfo()
+ScTableSheetObj::getRanges()
+ScTableSheetObj::getRowPageBreaks()
+ScTableSheetObj::getScenarioComment()
+ScTableSheetObj::getScenarios()
+ScTableSheetObj::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+ScTableSheetObj::getSpreadsheet()
+ScTableSheetObj::getSupportedServiceNames()
+ScTableSheetObj::getTitleColumns()
+ScTableSheetObj::getTitleRows()
+ScTableSheetObj::getTypes()
+ScTableSheetObj::getUnoTunnelId()
+ScTableSheetObj::group(com::sun::star::table::CellRangeAddress const&, com::sun::star::table::TableOrientation)
+ScTableSheetObj::hideDependents(com::sun::star::table::CellAddress const&)
+ScTableSheetObj::hideDetail(com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::hidePrecedents(com::sun::star::table::CellAddress const&)
+ScTableSheetObj::insertCells(com::sun::star::table::CellRangeAddress const&, com::sun::star::sheet::CellInsertMode)
+ScTableSheetObj::isProtected()
+ScTableSheetObj::link(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::sheet::SheetLinkMode)
+ScTableSheetObj::moveRange(com::sun::star::table::CellAddress const&, com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::protect(rtl::OUString const&)
+ScTableSheetObj::queryInterface(com::sun::star::uno::Type const&)
+ScTableSheetObj::release()
+ScTableSheetObj::removeAllManualPageBreaks()
+ScTableSheetObj::removeRange(com::sun::star::table::CellRangeAddress const&, com::sun::star::sheet::CellDeleteMode)
+ScTableSheetObj::setExternalName(rtl::OUString const&, rtl::OUString const&)
+ScTableSheetObj::setLinkMode(com::sun::star::sheet::SheetLinkMode)
+ScTableSheetObj::setLinkSheetName(rtl::OUString const&)
+ScTableSheetObj::setLinkUrl(rtl::OUString const&)
+ScTableSheetObj::setName(rtl::OUString const&)
+ScTableSheetObj::setPrintAreas(com::sun::star::uno::Sequence<com::sun::star::table::CellRangeAddress> const&)
+ScTableSheetObj::setPrintTitleColumns(unsigned char)
+ScTableSheetObj::setPrintTitleRows(unsigned char)
+ScTableSheetObj::setScenarioComment(rtl::OUString const&)
+ScTableSheetObj::setTitleColumns(com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::setTitleRows(com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::showDependents(com::sun::star::table::CellAddress const&)
+ScTableSheetObj::showDetail(com::sun::star::table::CellRangeAddress const&)
+ScTableSheetObj::showErrors(com::sun::star::table::CellAddress const&)
+ScTableSheetObj::showInvalid()
+ScTableSheetObj::showLevel(short, com::sun::star::table::TableOrientation)
+ScTableSheetObj::showPrecedents(com::sun::star::table::CellAddress const&)
+ScTableSheetObj::supportsService(rtl::OUString const&)
+ScTableSheetObj::ungroup(com::sun::star::table::CellRangeAddress const&, com::sun::star::table::TableOrientation)
+ScTableSheetObj::unprotect(rtl::OUString const&)
+ScTableSheetObj::~ScTableSheetObj()
+ScTokenArray::AddDBRange(unsigned short)
+ScTokenArray::AddFormulaToken(com::sun::star::sheet::FormulaToken const&, svl::SharedStringPool&, formula::ExternalReferenceHelper*)
+ScTokenArray::AddMatrixSingleReference(ScSingleRefData const&)
+ScTokenArray::AddRawToken(ScRawToken const&)
+ScTokenArray::AdjustAbsoluteRefs(ScDocument const&, ScAddress const&, ScAddress const&, bool)
+ScTokenArray::AdjustReferenceInMovedName(sc::RefUpdateContext const&, ScAddress const&)
+ScTokenArray::AdjustReferenceInName(sc::RefUpdateContext const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnCopy(ScAddress const&)
+ScTokenArray::AdjustReferenceOnDeletedTab(sc::RefUpdateDeleteTabContext const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnInsertedTab(sc::RefUpdateInsertTabContext const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnMove(sc::RefUpdateContext const&, ScAddress const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnMovedOrigin(ScAddress const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnMovedOriginIfOtherSheet(ScAddress const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnMovedTab(sc::RefUpdateMoveTabContext const&, ScAddress const&)
+ScTokenArray::AdjustReferenceOnShift(sc::RefUpdateContext const&, ScAddress const&)
+ScTokenArray::AdjustSheetLocalNameReferences(short, short)
+ScTokenArray::AssignXMLString(rtl::OUString const&, rtl::OUString const&)
+ScTokenArray::CheckExpandReferenceBounds(sc::RefUpdateContext const&, ScAddress const&, int, std::vector<int, std::allocator<int> >&) const
+ScTokenArray::CheckForThreading(formula::FormulaToken const&)
+ScTokenArray::CheckRelativeReferenceBounds(ScAddress const&, int, ScRange const&, std::vector<int, std::allocator<int> >&) const
+ScTokenArray::CheckRelativeReferenceBounds(sc::RefUpdateContext const&, ScAddress const&, int, std::vector<int, std::allocator<int> >&) const
+ScTokenArray::CheckToken(formula::FormulaToken const&)
+ScTokenArray::ClearTabDeleted(ScAddress const&, short, short)
+ScTokenArray::EqualTokens(ScTokenArray const*) const
+ScTokenArray::GetAdjacentExtendOfOuterFuncRefs(int&, ScAddress const&, ScDirection)
+ScTokenArray::GetWeight() const
+ScTokenArray::ImplGetReference(ScRange&, ScAddress const&, bool) const
+ScTokenArray::IsFormulaVectorDisabled() const
+ScTokenArray::IsInvariant() const
+ScTokenArray::MergeArray()
+ScTokenArray::MergeRangeReference(ScAddress const&)
+ScTokenArray::MoveReferenceColReorder(ScAddress const&, short, int, int, sc::ColRowReorderMapType const&)
+ScTokenArray::MoveReferenceRowReorder(ScAddress const&, short, short, short, sc::ColRowReorderMapType const&)
+ScTokenArray::ReadjustAbsolute3DReferences(ScDocument const&, ScDocument&, ScAddress const&, bool)
+ScTokenArray::ReferencesSheet(short, short) const
+ScTokenArray::ResetVectorState()
+ScTokenArray::ScTokenArray(ScSheetLimits&)
+ScTokenArray::operator=(ScTokenArray const&)
+ScTokenArray::operator=(ScTokenArray&&)
+ScTpCalcItem::Clone(SfxItemPool*) const
+ScTpCalcItem::operator==(SfxPoolItem const&) const
+ScTpDefaultsItem::Clone(SfxItemPool*) const
+ScTpDefaultsItem::operator==(SfxPoolItem const&) const
+ScTpFormulaItem::Clone(SfxItemPool*) const
+ScTpFormulaItem::operator==(SfxPoolItem const&) const
+ScTpPrintItem::Clone(SfxItemPool*) const
+ScTpPrintItem::operator==(SfxPoolItem const&) const
+ScTpViewItem::Clone(SfxItemPool*) const
+ScTpViewItem::operator==(SfxPoolItem const&) const
+ScUndoCut::CanRepeat(SfxRepeatTarget&) const
+ScUndoCut::DoChange(bool)
+ScUndoCut::GetComment() const
+ScUndoCut::Redo()
+ScUndoCut::Repeat(SfxRepeatTarget&)
+ScUndoCut::ScUndoCut(ScDocShell*, ScRange const&, ScAddress const&, ScMarkData const&, std::unique_ptr<ScDocument, o3tl::default_delete<ScDocument> >)
+ScUndoCut::SetChangeTrack()
+ScUndoCut::Undo()
+ScUndoCut::~ScUndoCut()
+ScUndoPaste::CanRepeat(SfxRepeatTarget&) const
+ScUndoPaste::DoChange(bool)
+ScUndoPaste::GetComment() const
+ScUndoPaste::Redo()
+ScUndoPaste::Repeat(SfxRepeatTarget&)
+ScUndoPaste::ScUndoPaste(ScDocShell*, ScRangeList const&, ScMarkData const&, std::unique_ptr<ScDocument, o3tl::default_delete<ScDocument> >, std::unique_ptr<ScDocument, o3tl::default_delete<ScDocument> >, InsertDeleteFlags, std::unique_ptr<ScRefUndoData, std::default_delete<ScRefUndoData> >, bool, ScUndoPasteOptions const*)
+ScUndoPaste::SetChangeTrack()
+ScUndoPaste::Undo()
+ScUndoPaste::~ScUndoPaste()
+ScUnoAddInCollection::Clear()
+ScUnoAddInCollection::FillFunctionDesc(long, ScFuncDesc&)
+ScUnoAddInCollection::FillFunctionDescFromData(ScUnoAddInFuncData const&, ScFuncDesc&)
+ScUnoAddInCollection::FindFunction(rtl::OUString const&, bool)
+ScUnoAddInCollection::GetFuncCount()
+ScUnoAddInCollection::GetFuncData(long)
+ScUnoAddInCollection::GetFuncData(rtl::OUString const&, bool)
+ScUnoAddInCollection::Initialize()
+ScUnoAddInCollection::LoadComponent(ScUnoAddInFuncData const&)
+ScUnoAddInCollection::LocalizeString(rtl::OUString&)
+ScUnoAddInCollection::ReadConfiguration()
+ScUnoAddInCollection::ReadFromAddIn(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+ScUnoAddInCollection::ScUnoAddInCollection()
+ScUnoAddInCollection::UpdateFromAddIn(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ScUnoAddInCollection::~ScUnoAddInCollection()
+ScUnoHelpFunctions::GetBoolProperty(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, bool)
+ScUnoHelpFunctions::GetEnumFromAny(com::sun::star::uno::Any const&)
+ScUnoHelpFunctions::GetEnumPropertyImpl(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, int)
+ScUnoHelpFunctions::GetInt16FromAny(com::sun::star::uno::Any const&)
+ScUnoHelpFunctions::GetInt32FromAny(com::sun::star::uno::Any const&)
+ScUnoHelpFunctions::GetLongProperty(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&)
+ScUnoHelpFunctions::GetShortProperty(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, short)
+ScUnoHelpFunctions::GetStringProperty(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, rtl::OUString const&)
+ScUnoHelpFunctions::SetOptionalPropertyValue(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, char const*, com::sun::star::uno::Any const&)
+ScUserList::HasEntry(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+ScUserList::operator==(ScUserList const&) const
+ScUserList::operator[](unsigned long) const
+ScUserListData::Compare(rtl::OUString const&, rtl::OUString const&) const
+ScUserListData::ICompare(rtl::OUString const&, rtl::OUString const&) const
+ScUserListData::ScUserListData(ScUserListData const&)
+ScUserListItem::Clone(SfxItemPool*) const
+ScUserListItem::ScUserListItem(ScUserListItem const&)
+ScUserListItem::operator==(SfxPoolItem const&) const
+ScValidationData::DoCalcError(ScFormulaCell*) const
+ScValidationData::DoError(weld::Window*, rtl::OUString const&, ScAddress const&) const
+ScValidationData::DoMacro(ScAddress const&, rtl::OUString const&, ScFormulaCell*, weld::Window*) const
+ScValidationData::DoScript(ScAddress const&, rtl::OUString const&, ScFormulaCell*, weld::Window*) const
+ScValidationData::GetSelectionFromFormula(std::vector<ScTypedStrData, std::allocator<ScTypedStrData> >*, ScRefCellValue&, ScAddress const&, ScTokenArray const&, int&) const
+ScValidationData::HasSelectionList() const
+ScValidationData::IsDataValid(rtl::OUString const&, ScPatternAttr const&, ScAddress const&) const
+ScValidationData::IsDataValidCustom(rtl::OUString const&, ScPatternAttr const&, ScAddress const&, ScValidationData::CustomValidationPrivateAccess const&) const
+ScValidationData::IsDataValidTextLen(rtl::OUString const&, ScAddress const&, ScValidationDataIsNumeric*) const
+ScValidationData::IsEmpty() const
+ScValidationData::IsEqualToTokenArray(ScRefCellValue&, ScAddress const&, ScTokenArray const&) const
+ScValidationData::IsListValid(ScRefCellValue&, ScAddress const&) const
+ScValidationData::ScValidationData(ScDocument&, ScValidationData const&)
+ScVbaPropValue::getValue()
+ScVbaPropValue::setValue(com::sun::star::uno::Any const&)
+ScVbaShape::addListeners()
+ScVbaShape::removeShapeListener()
+ScVbaShape::removeShapesListener()
+ScVbaShapeRange::Group()
+ScVbaShapeRange::IncrementLeft(double)
+ScVbaShapeRange::IncrementRotation(double)
+ScVbaShapeRange::IncrementTop(double)
+ScVbaShapeRange::Select()
+ScVbaShapeRange::TextFrame()
+ScVbaShapeRange::WrapFormat()
+ScVbaShapeRange::ZOrder(int)
+ScVbaShapeRange::createCollectionObject(com::sun::star::uno::Any const&)
+ScVbaShapeRange::createEnumeration()
+ScVbaShapeRange::getElementType()
+ScVbaShapeRange::getFill()
+ScVbaShapeRange::getHeight()
+ScVbaShapeRange::getLeft()
+ScVbaShapeRange::getLine()
+ScVbaShapeRange::getLockAnchor()
+ScVbaShapeRange::getLockAspectRatio()
+ScVbaShapeRange::getName()
+ScVbaShapeRange::getRelativeHorizontalPosition()
+ScVbaShapeRange::getRelativeVerticalPosition()
+ScVbaShapeRange::getServiceImplName()
+ScVbaShapeRange::getServiceNames()
+ScVbaShapeRange::getShapes()
+ScVbaShapeRange::getTop()
+ScVbaShapeRange::getWidth()
+ScVbaShapeRange::setHeight(double)
+ScVbaShapeRange::setLeft(double)
+ScVbaShapeRange::setLockAnchor(unsigned char)
+ScVbaShapeRange::setLockAspectRatio(unsigned char)
+ScVbaShapeRange::setName(rtl::OUString const&)
+ScVbaShapeRange::setRelativeHorizontalPosition(int)
+ScVbaShapeRange::setRelativeVerticalPosition(int)
+ScVbaShapeRange::setTop(double)
+ScVbaShapeRange::setWidth(double)
+ScVbaShapes::AddEllipse(int, int, int, int)
+ScVbaShapes::AddLine(int, int, int, int)
+ScVbaShapes::AddRectangle(int, int, int, int)
+ScVbaShapes::AddShape(int, int, int, int, int)
+ScVbaShapes::AddTextbox(int, int, int, int, int)
+ScVbaShapes::AddTextboxInWriter(int, int, int, int)
+ScVbaShapes::Range(com::sun::star::uno::Any const&)
+ScVbaShapes::SelectAll()
+ScVbaShapes::createCollectionObject(com::sun::star::uno::Any const&)
+ScVbaShapes::createEnumeration()
+ScVbaShapes::createName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ScVbaShapes::createShape(rtl::OUString const&)
+ScVbaShapes::getElementType()
+ScVbaShapes::getServiceImplName()
+ScVbaShapes::getServiceNames()
+ScVbaShapes::getShapesByArrayIndices(com::sun::star::uno::Any const&)
+ScVbaShapes::initBaseCollection()
+ScVbaShapes::setDefaultShapeProperties(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+ScVbaShapes::setShape_NameProperty(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, rtl::OUString const&)
+ScVerticalStackCell::Clone(SfxItemPool*) const
+ScVerticalStackCell::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScViewData::AddPixelsWhile(long&, long, int&, int, double, ScDocument const*, short)
+ScViewData::AddPixelsWhileBackward(long&, long, int&, int, double, ScDocument const*, short)
+ScViewData::CellsAtX(short, short, ScHSplitPos, unsigned short) const
+ScViewData::CellsAtY(int, int, ScVSplitPos, unsigned short) const
+ScViewData::CopyTab(short, short)
+ScViewData::DeleteTab(short)
+ScViewData::DeleteTabs(short, short)
+ScViewData::DeriveLOKFreezeAllSheets()
+ScViewData::DeriveLOKFreezeIfNeeded(short)
+ScViewData::EditGrowX()
+ScViewData::EditGrowY(bool)
+ScViewData::GetActiveWin() const
+ScViewData::GetBindings()
+ScViewData::GetCurPos() const
+ScViewData::GetCurXForTab(short) const
+ScViewData::GetCurYForTab(short) const
+ScViewData::GetDialogParent()
+ScViewData::GetDocFunc() const
+ScViewData::GetEditArea(ScSplitPos, short, int, vcl::Window*, ScPatternAttr const*, bool, bool)
+ScViewData::GetEditView(ScSplitPos, EditView*&, short&, int&)
+ScViewData::GetFillData(short&, int&, short&, int&)
+ScViewData::GetLOKHeightHelper(short)
+ScViewData::GetLOKSheetFreezeIndex(bool) const
+ScViewData::GetLOKWidthHelper(short)
+ScViewData::GetLogicMode()
+ScViewData::GetLogicMode(ScSplitPos)
+ScViewData::GetMarkData() const
+ScViewData::GetMergeSizePixel(short, int, long&, long&) const
+ScViewData::GetMergeSizePrintTwips(short, int, long&, long&) const
+ScViewData::GetMousePosPixel()
+ScViewData::GetMouseQuadrant(Point const&, ScSplitPos, short, int, bool&, bool&)
+ScViewData::GetMultiArea(tools::SvRef<ScRangeList>&) const
+ScViewData::GetOldCurX() const
+ScViewData::GetOldCurY() const
+ScViewData::GetPosFromPixel(long, long, ScSplitPos, short&, int&, bool, bool, short)
+ScViewData::GetPrintTwipsPos(short, int) const
+ScViewData::GetPrintTwipsPosFromTileTwips(Point const&) const
+ScViewData::GetScrPos(short, int, ScHSplitPos) const
+ScViewData::GetScrPos(short, int, ScVSplitPos) const
+ScViewData::GetSimpleArea(ScRange&, ScMarkData&) const
+ScViewData::InsertTab(short)
+ScViewData::InsertTabs(short, short)
+ScViewData::IsMinimized() const
+ScViewData::IsMultiMarked() const
+ScViewData::IsOle() const
+ScViewData::KillEditView()
+ScViewData::MoveTab(short, short)
+ScViewData::OverrideWithLOKFreeze(ScSplitMode&, ScSplitMode&, short&, int&, long&, long&, short) const
+ScViewData::PrevCellsX(ScHSplitPos) const
+ScViewData::PrevCellsY(ScVSplitPos) const
+ScViewData::ReadExtOptions(ScExtDocOptions const&)
+ScViewData::ReadUserData(rtl::OUString const&)
+ScViewData::ReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+ScViewData::RecalcPixPos()
+ScViewData::RefreshZoom()
+ScViewData::RemoveLOKFreeze()
+ScViewData::ResetEditView()
+ScViewData::ResetFillMode()
+ScViewData::ResetOldCursor()
+ScViewData::ScViewData(ScDocShell&, ScTabViewShell*)
+ScViewData::ScViewData(ScDocument&)
+ScViewData::ScViewData(ScDocument*, ScDocShell*, ScTabViewShell*)
+ScViewData::SelectionFillDOOM(ScRange const&)
+ScViewData::SelectionForbidsCellFill()
+ScViewData::SelectionForbidsPaste(ScDocument*)
+ScViewData::SelectionForbidsPaste(short, int)
+ScViewData::SetActivePart(ScSplitPos)
+ScViewData::SetCurXForTab(short, short)
+ScViewData::SetCurYForTab(short, short)
+ScViewData::SetDragMode(short, int, short, int, ScFillMode)
+ScViewData::SetEditEngine(ScSplitPos, ScEditEngineDefaulter*, vcl::Window*, short, int)
+ScViewData::SetFillMode(short, int, short, int)
+ScViewData::SetLOKSheetFreezeIndex(int, bool, short)
+ScViewData::SetMaxTiledCol(short)
+ScViewData::SetMaxTiledRow(int)
+ScViewData::SetOldCursor(short, int)
+ScViewData::SetOptions(ScViewOptions const&)
+ScViewData::SetPagebreakMode(bool)
+ScViewData::SetPosX(ScHSplitPos, short)
+ScViewData::SetPosY(ScVSplitPos, int)
+ScViewData::SetRefEnd(short, int, short)
+ScViewData::SetRefStart(short, int, short)
+ScViewData::SetScreen(short, int, short, int)
+ScViewData::SetScreen(tools::Rectangle const&)
+ScViewData::SetScreenPos(Point const&)
+ScViewData::SetShowGrid(bool)
+ScViewData::SetTabNo(short)
+ScViewData::SetZoom(Fraction const&, Fraction const&, bool)
+ScViewData::SetZoomType(SvxZoomType, bool)
+ScViewData::SetZoomType(SvxZoomType, std::vector<short, std::allocator<short> >&)
+ScViewData::SimpleColMarked()
+ScViewData::SimpleRowMarked()
+ScViewData::UpdateFixX(short)
+ScViewData::UpdateFixY(short)
+ScViewData::UpdateInputHandler(bool)
+ScViewData::UpdateOutlinerFlags(Outliner&) const
+ScViewData::UpdateScreenZoom(Fraction const&, Fraction const&)
+ScViewData::VisibleCellsX(ScHSplitPos) const
+ScViewData::VisibleCellsY(ScVSplitPos) const
+ScViewData::WriteUserData(rtl::OUString&)
+ScViewData::WriteUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&) const
+ScViewData::describeCellCursorAt(short, int, bool) const
+ScViewData::~ScViewData()
+ScViewFunc::CopyToClip(ScDocument*, ScRangeList const&, bool, bool, bool, bool)
+ScViewFunc::GetSelectionPattern()
+ScViewFunc::PasteFromSystem(SotClipboardFormatId, bool)
+ScViewObjectModeItem::Clone(SfxItemPool*) const
+ScViewObjectModeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+ScViewObjectModeItem::GetValueCount() const
+ScViewObjectModeItem::ScViewObjectModeItem(unsigned short)
+ScViewOptions::CreateGridItem() const
+ScViewOptions::SetDefaults()
+ScViewOptions::operator==(ScViewOptions const&) const
+ScViewUtil::ExecuteCharMap(SvxFontItem const&, ScTabViewShell const&)
+ScViewUtil::FitToUnfilteredRows(ScRange&, ScDocument const&, unsigned long)
+ScViewUtil::GetEffLanguage(ScDocument&, ScAddress const&)
+ScViewUtil::GetTransliterationType(unsigned short)
+ScViewUtil::HasFiltered(ScRange const&, ScDocument const&)
+ScViewUtil::HideDisabledSlot(SfxItemSet&, SfxBindings&, unsigned short)
+ScViewUtil::IsActionShown(ScChangeAction const&, ScChangeViewSettings const&, ScDocument&)
+ScViewUtil::PutItemScript(SfxItemSet&, SfxItemSet const&, unsigned short, SvtScriptType)
+ScViewUtil::SetFullScreen(SfxViewShell const&, bool)
+ScViewUtil::UnmarkFiltered(ScMarkData&, ScDocument const&)
+SchXMLExportHelper::SchXMLExportHelper(SvXMLExport&, SvXMLAutoStylePoolP&)
+SchXMLExportHelper::SetDestinationShellID(rtl::OUString const&)
+SchXMLExportHelper::SetSourceShellID(rtl::OUString const&)
+SchXMLExportHelper::~SchXMLExportHelper()
+SchXMLSeriesHelper::getDataSeriesFromDiagram(com::sun::star::uno::Reference<com::sun::star::chart2::XDiagram> const&)
+SchXMLSeriesHelper::getDataSeriesIndexMapFromDiagram(com::sun::star::uno::Reference<com::sun::star::chart2::XDiagram> const&)
+SchXMLSeriesHelper::isCandleStickSeries(com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> const&, com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+Scheduler::CallbackTaskScheduling()
+Scheduler::GetDeterministicMode()
+Scheduler::ImplDeInitScheduler()
+Scheduler::ImplStartTimer(unsigned long, bool, unsigned long)
+Scheduler::Lock()
+Scheduler::Unlock()
+ScreenSaverInhibitor::inhibitDPMS(bool, _XDisplay*)
+ScreenSaverInhibitor::inhibitFDO(bool, char const*, char const*)
+ScreenSaverInhibitor::inhibitFDOPM(bool, char const*, char const*)
+ScreenSaverInhibitor::inhibitGSM(bool, char const*, char const*, unsigned int)
+ScreenSaverInhibitor::inhibitMSM(bool, char const*, char const*, unsigned int)
+ScreenSaverInhibitor::inhibitXAutoLock(bool, _XDisplay*)
+ScreenSaverInhibitor::inhibitXScreenSaver(bool, _XDisplay*)
+ScrollBar::Scroll()
+ScrollBarBox::ApplySettings(OutputDevice&)
+ScrollBarBox::DataChanged(DataChangedEvent const&)
+ScrollBarBox::StateChanged(StateChangedType)
+SdAbstractDialogFactory::Create()
+SdCreateDialogFactory
+SdCustomShow::ReplacePage(SdPage const*, SdPage const*)
+SdCustomShow::SdCustomShow(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+SdCustomShow::getUnoCustomShow()
+SdDLL::RegisterControllers(SdModule*)
+SdDLL::RegisterFactorys()
+SdDLL::RegisterInterfaces(SdModule const*)
+SdDLL::RegisterRemotes()
+SdDrawDocument::AdaptPageSizeForAllPages(Size const&, PageKind, SdUndoGroup*, long, long, long, long, bool, Orientation, unsigned short, bool)
+SdDrawDocument::CreateFirstPages(SdDrawDocument const*)
+SdDrawDocument::GetActiveSdPageCount() const
+SdDrawDocument::GetDefaultWritingMode() const
+SdDrawDocument::IsPageNameUnique(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SdDrawDocument::SetMasterPage(unsigned short, std::basic_string_view<char16_t, std::char_traits<char16_t> >, SdDrawDocument*, bool, bool)
+SdDrawDocument::adaptSizeAndBorderForAllPages(Size const&, long, long, long, long)
+SdHeaderFooterUndoAction::Redo()
+SdHeaderFooterUndoAction::Undo()
+SdHeaderFooterUndoAction::~SdHeaderFooterUndoAction()
+SdInsertLayerDlg::~SdInsertLayerDlg()
+SdNavigatorWin::FirstFocus()
+SdNavigatorWin::FreshTree(SdDrawDocument const*)
+SdNavigatorWin::GetDocInfo()
+SdNavigatorWin::GetDragTypeSdBmpId(NavigatorDragType)
+SdNavigatorWin::GetFrameWeld() const
+SdNavigatorWin::GetNavigatorDragType()
+SdNavigatorWin::InsertFile(rtl::OUString const&)
+SdNavigatorWin::RefreshDocumentLB(rtl::OUString const*)
+SdNavigatorWin::SetDragImage()
+SdNavigatorWin::SetUpdateRequestFunctor(std::function<void ()> const&)
+SdNavigatorWin::~SdNavigatorWin()
+SdOpenSoundFileDialog::IsInsertAsLinkSelected() const
+SdOptionsGeneric::SdOptionsGeneric(bool, rtl::OUString const&)
+SdOptionsGeneric::Store()
+SdOptionsGeneric::isMetricSystem()
+SdOptionsGeneric::operator=(SdOptionsGeneric const&)
+SdOptionsItem::GetProperties(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SdOptionsItem::ImplCommit()
+SdOptionsItem::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SdOptionsItem::PutProperties(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SdOptionsItem::SdOptionsItem(SdOptionsGeneric const&, rtl::OUString const&)
+SdOptionsItem::~SdOptionsItem()
+SdOptionsLayout::GetPropNameArray(char const**&, unsigned long&) const
+SdOptionsLayout::ReadData(com::sun::star::uno::Any const*)
+SdOptionsLayout::SdOptionsLayout(bool, bool)
+SdOptionsLayout::WriteData(com::sun::star::uno::Any*) const
+SdOptionsLayout::operator==(SdOptionsLayout const&) const
+SdOptionsLayoutItem::Clone(SfxItemPool*) const
+SdOptionsLayoutItem::SdOptionsLayoutItem(SdOptions const*, sd::FrameView const*)
+SdOptionsLayoutItem::SetOptions(SdOptions*) const
+SdOptionsLayoutItem::operator==(SfxPoolItem const&) const
+SdOptionsMisc::GetDisplay() const
+SdOptionsMisc::GetPropNameArray(char const**&, unsigned long&) const
+SdOptionsMisc::ReadData(com::sun::star::uno::Any const*)
+SdOptionsMisc::SdOptionsMisc(bool, bool)
+SdOptionsMisc::SetDisplay(int)
+SdOptionsMisc::WriteData(com::sun::star::uno::Any*) const
+SdOptionsMisc::operator==(SdOptionsMisc const&) const
+SdOptionsMiscItem::Clone(SfxItemPool*) const
+SdOptionsMiscItem::SdOptionsMiscItem(SdOptions const*, sd::FrameView const*)
+SdOptionsMiscItem::SetOptions(SdOptions*) const
+SdOptionsMiscItem::operator==(SfxPoolItem const&) const
+SdOptionsPrint::GetPropNameArray(char const**&, unsigned long&) const
+SdOptionsPrint::ReadData(com::sun::star::uno::Any const*)
+SdOptionsPrint::SdOptionsPrint(bool, bool)
+SdOptionsPrint::WriteData(com::sun::star::uno::Any*) const
+SdOptionsPrint::operator==(SdOptionsPrint const&) const
+SdOptionsPrintItem::Clone(SfxItemPool*) const
+SdOptionsPrintItem::SdOptionsPrintItem(SdOptions const*)
+SdOptionsPrintItem::SetOptions(SdOptions*) const
+SdOptionsPrintItem::operator==(SfxPoolItem const&) const
+SdOptionsSnap::GetPropNameArray(char const**&, unsigned long&) const
+SdOptionsSnap::ReadData(com::sun::star::uno::Any const*)
+SdOptionsSnap::SdOptionsSnap(bool, bool)
+SdOptionsSnap::WriteData(com::sun::star::uno::Any*) const
+SdOptionsSnap::operator==(SdOptionsSnap const&) const
+SdOptionsSnapItem::Clone(SfxItemPool*) const
+SdOptionsSnapItem::SdOptionsSnapItem(SdOptions const*, sd::FrameView const*)
+SdOptionsSnapItem::SetOptions(SdOptions*) const
+SdOptionsSnapItem::operator==(SfxPoolItem const&) const
+SdPage::CalculateHandoutAreas(SdDrawDocument&, AutoLayout, bool, std::vector<tools::Rectangle, std::allocator<tools::Rectangle> >&)
+SdPage::Changed(SdrObject const&, SdrUserCallType, tools::Rectangle const&)
+SdPage::ConnectLink()
+SdPage::CreateTitleAndLayout(bool, bool)
+SdPage::DisconnectLink()
+SdPage::EndListenOutlineText()
+SdPage::EnsureMasterPageDefaultBackground()
+SdPage::Equals(SdPage const&) const
+SdPage::GetFadeEffect() const
+SdPage::GetHashCode() const
+SdPage::GetLayoutRect() const
+SdPage::GetOrientation() const
+SdPage::GetPresObjKind(SdrObject*) const
+SdPage::GetTextStyleSheetForObject(SdrObject*) const
+SdPage::GetTitleRect() const
+SdPage::InsertAutoLayoutShape(SdrObject*, PresObjKind, bool, tools::Rectangle const&, bool)
+SdPage::IsPresObj(SdrObject const*)
+SdPage::IsReadOnly() const
+SdPage::NbcRemoveObject(unsigned long)
+SdPage::RemoveEmptyPresentationObjects()
+SdPage::RemovePresObj(SdrObject const*)
+SdPage::ReplaceObject(SdrObject*, unsigned long)
+SdPage::RestoreDefaultText(SdrObject*)
+SdPage::ScaleObjects(Size const&, tools::Rectangle const&, bool)
+SdPage::SdPage(SdDrawDocument&, bool)
+SdPage::SetBorder(int, int, int, int)
+SdPage::SetLeftBorder(int)
+SdPage::SetLowerBorder(int)
+SdPage::SetOrientation(Orientation)
+SdPage::SetPrecious(bool)
+SdPage::SetRightBorder(int)
+SdPage::SetSize(Size const&)
+SdPage::SetUpperBorder(int)
+SdPage::addAnnotation(com::sun::star::uno::Reference<com::sun::star::office::XAnnotation> const&, int)
+SdPage::checkVisibility(sdr::contact::ViewObjectContact const&, sdr::contact::DisplayInfo const&, bool)
+SdPage::cloneAnimations(SdPage&) const
+SdPage::createAnnotation(com::sun::star::uno::Reference<com::sun::star::office::XAnnotation>&)
+SdPage::createUnoPage()
+SdPage::dumpAsXml(_xmlTextWriter*) const
+SdPage::getAlienAttributes(com::sun::star::uno::Any&)
+SdPage::getAnimationNode()
+SdPage::getGraphicsForPrefetch(std::vector<Graphic*, std::allocator<Graphic*> >&) const
+SdPage::getOrCreateItems()
+SdPage::getPresentationStyle(unsigned int) const
+SdPage::hasAnimationNode() const
+SdPage::lateInit(SdPage const&)
+SdPage::notifyObjectRenamed(SdrObject const*)
+SdPage::onEndTextEdit(SdrObject*)
+SdPage::onParagraphInserted(Outliner const*, Paragraph const*, SdrObject*)
+SdPage::onParagraphRemoving(Outliner const*, Paragraph const*, SdrObject*)
+SdPage::onRemoveObject(SdrObject*)
+SdPage::removeAnimations(SdrObject const*)
+SdPage::removeAnnotation(com::sun::star::uno::Reference<com::sun::star::office::XAnnotation> const&)
+SdPage::setAlienAttributes(com::sun::star::uno::Any const&)
+SdPage::setAnimationNode(com::sun::star::uno::Reference<com::sun::star::animations::XAnimationNode> const&)
+SdPage::setTransitionDirection(bool)
+SdPage::~SdPage()
+SdPageObjsTLV::AddShapeList(SdrObjList const&, SdrObject*, rtl::OUString const&, bool, weld::TreeIter const*)
+SdPageObjsTLV::AddShapeToTransferable(SdTransferable&, SdrObject const&) const
+SdPageObjsTLV::CloseBookmarkDoc()
+SdPageObjsTLV::DoDrag()
+SdPageObjsTLV::GetObjectName(SdrObject const*, bool) const
+SdPageObjsTLV::GetViewShellForDocShell(sd::DrawDocShell&)
+SdPageObjsTLV::HasSelectedChildren(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SdPageObjsTLV::IsEqualToShapeList(std::unique_ptr<weld::TreeIter, std::default_delete<weld::TreeIter> >&, SdrObjList const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SdPageObjsTLV::IsInDrag()
+SdPageObjsTLV::LinkStubMousePressHdl(void*, MouseEvent const&)
+SdPageObjsTLV::LinkStubMouseReleaseHdl(void*, MouseEvent const&)
+SdPageObjsTLV::OnDragFinished()
+SdPageObjsTLV::PageBelongsToCurrentShow(SdPage const*) const
+SdPageObjsTLV::SetSdNavigator(SdNavigatorWin*)
+SdPageObjsTLV::SetShowAllShapes(bool, bool)
+SdPageObjsTLV::StartDrag()
+SdResId(TranslateNId, int)
+SdUndoAction::GetViewShellId() const
+SdUndoGroup::Merge(SfxUndoAction*)
+SdUndoGroup::Redo()
+SdUndoGroup::Undo()
+SdXImpressDocument::GetModel(SdDrawDocument const&)
+SdXImpressDocument::GetViewShell()
+SdXImpressDocument::InsertSdPage(unsigned short, bool)
+SdXImpressDocument::Notify(SfxBroadcaster&, SfxHint const&)
+SdXImpressDocument::SdXImpressDocument(SdDrawDocument*, bool)
+SdXImpressDocument::SdXImpressDocument(sd::DrawDocShell*, bool)
+SdXImpressDocument::SetModified()
+SdXImpressDocument::acquire()
+SdXImpressDocument::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SdXImpressDocument::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SdXImpressDocument::create(rtl::OUString const&, rtl::OUString const&)
+SdXImpressDocument::createAnyCompareByName(rtl::OUString const&)
+SdXImpressDocument::createInstance(rtl::OUString const&)
+SdXImpressDocument::createInstanceWithArguments(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SdXImpressDocument::dispose()
+SdXImpressDocument::duplicate(com::sun::star::uno::Reference<com::sun::star::drawing::XDrawPage> const&)
+SdXImpressDocument::getAvailableServiceNames()
+SdXImpressDocument::getCustomPresentations()
+SdXImpressDocument::getDocumentSize()
+SdXImpressDocument::getForbiddenCharsTable()
+SdXImpressDocument::getHandoutMasterPage()
+SdXImpressDocument::getImplementationId()
+SdXImpressDocument::getImplementationName()
+SdXImpressDocument::getLayerManager()
+SdXImpressDocument::getLinks()
+SdXImpressDocument::getMasterPages()
+SdXImpressDocument::getPartInfo(int)
+SdXImpressDocument::getPointer()
+SdXImpressDocument::getPostIts(tools::JsonWriter&)
+SdXImpressDocument::getPresentation()
+SdXImpressDocument::getPropertySetInfo()
+SdXImpressDocument::getPropertyValue(rtl::OUString const&)
+SdXImpressDocument::getRenderer(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SdXImpressDocument::getRendererCount(com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SdXImpressDocument::getSdrModelFromUnoModel() const
+SdXImpressDocument::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SdXImpressDocument::getStyleFamilies()
+SdXImpressDocument::getSupportedServiceNames()
+SdXImpressDocument::getTypes()
+SdXImpressDocument::getUnoTunnelId()
+SdXImpressDocument::getViewData()
+SdXImpressDocument::hasControllersLocked()
+SdXImpressDocument::initializeDocument()
+SdXImpressDocument::isMimeTypeSupported()
+SdXImpressDocument::lockControllers()
+SdXImpressDocument::moveSelectedParts(int, bool)
+SdXImpressDocument::paintTile(VirtualDevice&, int, int, int, int, long, long)
+SdXImpressDocument::queryInterface(com::sun::star::uno::Type const&)
+SdXImpressDocument::release()
+SdXImpressDocument::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SdXImpressDocument::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SdXImpressDocument::render(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SdXImpressDocument::selectPart(int, int)
+SdXImpressDocument::setClientVisibleArea(tools::Rectangle const&)
+SdXImpressDocument::setClipboard(com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard> const&)
+SdXImpressDocument::setPartMode(int)
+SdXImpressDocument::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SdXImpressDocument::setViewData(com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&)
+SdXImpressDocument::supportsService(rtl::OUString const&)
+SdXImpressDocument::unlockControllers()
+SdXImpressDocument::~SdXImpressDocument()
+SdrAngleItem::Clone(SfxItemPool*) const
+SdrAttrObj::CreateObjectSpecificProperties()
+SdrAttrObj::HasFill() const
+SdrAttrObj::HasLine() const
+SdrAttrObj::ImpGetLineWdt() const
+SdrAttrObj::SdrAttrObj(SdrModel&)
+SdrAttrObj::SdrAttrObj(SdrModel&, SdrAttrObj const&)
+SdrAttrObj::~SdrAttrObj()
+SdrCaptionEscDirItem::Clone(SfxItemPool*) const
+SdrCaptionEscDirItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrCaptionEscDirItem::GetValueCount() const
+SdrCaptionEscDirItem::GetValueTextByPos(unsigned short)
+SdrCaptionEscIsRelItem::Clone(SfxItemPool*) const
+SdrCaptionEscRelItem::Clone(SfxItemPool*) const
+SdrCaptionFitLineLenItem::Clone(SfxItemPool*) const
+SdrCaptionLineLenItem::Clone(SfxItemPool*) const
+SdrCaptionObj::AddToHdlList(SdrHdlList&) const
+SdrCaptionObj::BckCreate(SdrDragStat&)
+SdrCaptionObj::BegCreate(SdrDragStat&)
+SdrCaptionObj::BrkCreate(SdrDragStat&)
+SdrCaptionObj::CloneSdrObject(SdrModel&) const
+SdrCaptionObj::CreateObjectSpecificProperties()
+SdrCaptionObj::CreateObjectSpecificViewContact()
+SdrCaptionObj::DoConvertToPolyObj(bool, bool) const
+SdrCaptionObj::EndCreate(SdrDragStat&, SdrCreateCmd)
+SdrCaptionObj::GetCreatePointer() const
+SdrCaptionObj::GetHdlCount() const
+SdrCaptionObj::GetObjIdentifier() const
+SdrCaptionObj::GetRelativePos() const
+SdrCaptionObj::GetSnapPoint(unsigned int) const
+SdrCaptionObj::GetSnapPointCount() const
+SdrCaptionObj::MovCreate(SdrDragStat&)
+SdrCaptionObj::NbcMove(Size const&)
+SdrCaptionObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrCaptionObj::NbcSetLogicRect(tools::Rectangle const&)
+SdrCaptionObj::NbcSetRelativePos(Point const&)
+SdrCaptionObj::NbcSetTailPos(Point const&)
+SdrCaptionObj::NewGeoData() const
+SdrCaptionObj::Notify(SfxBroadcaster&, SfxHint const&)
+SdrCaptionObj::RestoreGeoData(SdrObjGeoData const&)
+SdrCaptionObj::SaveGeoData(SdrObjGeoData&) const
+SdrCaptionObj::SdrCaptionObj(SdrModel&)
+SdrCaptionObj::SdrCaptionObj(SdrModel&, SdrCaptionObj const&)
+SdrCaptionObj::TRSetBaseGeometry(basegfx::B2DHomMatrix const&, basegfx::B2DPolyPolygon const&)
+SdrCaptionObj::TakeCreatePoly(SdrDragStat const&) const
+SdrCaptionObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrCaptionObj::TakeObjNamePlural() const
+SdrCaptionObj::TakeObjNameSingul() const
+SdrCaptionObj::TakeXorPoly() const
+SdrCaptionObj::applySpecialDrag(SdrDragStat&)
+SdrCaptionObj::beginSpecialDrag(SdrDragStat&) const
+SdrCaptionObj::getSpecialDragComment(SdrDragStat const&) const
+SdrCaptionObj::hasSpecialDrag() const
+SdrCaptionObj::~SdrCaptionObj()
+SdrCaptionTypeItem::Clone(SfxItemPool*) const
+SdrCaptionTypeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrCaptionTypeItem::GetValueCount() const
+SdrCaptionTypeItem::GetValueTextByPos(unsigned short)
+SdrCircObj::AddToHdlList(SdrHdlList&) const
+SdrCircObj::BckCreate(SdrDragStat&)
+SdrCircObj::BegCreate(SdrDragStat&)
+SdrCircObj::BrkCreate(SdrDragStat&)
+SdrCircObj::CloneSdrObject(SdrModel&) const
+SdrCircObj::CreateObjectSpecificProperties()
+SdrCircObj::CreateObjectSpecificViewContact()
+SdrCircObj::DoConvertToPolyObj(bool, bool) const
+SdrCircObj::EndCreate(SdrDragStat&, SdrCreateCmd)
+SdrCircObj::GetCreatePointer() const
+SdrCircObj::GetHdlCount() const
+SdrCircObj::GetObjIdentifier() const
+SdrCircObj::GetSnapPoint(unsigned int) const
+SdrCircObj::GetSnapPointCount() const
+SdrCircObj::MovCreate(SdrDragStat&)
+SdrCircObj::NbcMirror(Point const&, Point const&)
+SdrCircObj::NbcMove(Size const&)
+SdrCircObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrCircObj::NbcSetSnapRect(tools::Rectangle const&)
+SdrCircObj::NbcShear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrCircObj::NewGeoData() const
+SdrCircObj::Notify(SfxBroadcaster&, SfxHint const&)
+SdrCircObj::RecalcSnapRect()
+SdrCircObj::RestoreGeoData(SdrObjGeoData const&)
+SdrCircObj::SaveGeoData(SdrObjGeoData&) const
+SdrCircObj::SdrCircObj(SdrModel&, SdrCircKind)
+SdrCircObj::SdrCircObj(SdrModel&, SdrCircObj const&)
+SdrCircObj::TakeCreatePoly(SdrDragStat const&) const
+SdrCircObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrCircObj::TakeObjNamePlural() const
+SdrCircObj::TakeObjNameSingul() const
+SdrCircObj::TakeUnrotatedSnapRect(tools::Rectangle&) const
+SdrCircObj::TakeXorPoly() const
+SdrCircObj::applySpecialDrag(SdrDragStat&)
+SdrCircObj::beginSpecialDrag(SdrDragStat&) const
+SdrCircObj::getSpecialDragComment(SdrDragStat const&) const
+SdrCircObj::hasSpecialDrag() const
+SdrCircObj::~SdrCircObj()
+SdrCreateView::BckCreateObj()
+SdrCreateView::GetAttributes(SfxItemSet&, bool) const
+SdrCreateView::HideConnectMarker()
+SdrCreateView::HideCreateObj()
+SdrCreateView::ImpBegCreateObj(SdrInventor, SdrObjKind, Point const&, OutputDevice*, short, tools::Rectangle const&, SdrObject*)
+SdrCreateView::ImpClearConnectMarker()
+SdrCreateView::IsEdgeTool() const
+SdrCreateView::IsMeasureTool() const
+SdrCreateView::IsTextTool() const
+SdrCreateView::MouseMove(MouseEvent const&, OutputDevice*)
+SdrCreateView::SdrCreateView(SdrModel&, OutputDevice*)
+SdrCreateView::SetConnectMarker(SdrObjConnection const&)
+SdrCreateView::ShowCreateObj()
+SdrCreateView::~SdrCreateView()
+SdrCropHdl::CreateB2dIAObject()
+SdrCropHdl::GetBitmapForHandle(BitmapEx const&, int)
+SdrCustomShapeGeometryItem::Clone(SfxItemPool*) const
+SdrCustomShapeGeometryItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrCustomShapeGeometryItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrCustomShapeGeometryItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrCustomShapeGeometryItem::SdrCustomShapeGeometryItem()
+SdrCustomShapeGeometryItem::operator==(SfxPoolItem const&) const
+SdrDragEntryPolyPolygon::createPrimitive2DSequenceInCurrentState(SdrDragMethod&)
+SdrDragEntryPolyPolygon::~SdrDragEntryPolyPolygon()
+SdrDragMethod::AddConnectorOverlays()
+SdrDragMethod::DoAddConnectorOverlays()
+SdrDragMethod::GetDragPV() const
+SdrDragMethod::ImpGetDescriptionStr(TranslateId) const
+SdrDragMethod::clearSdrDragEntries()
+SdrDragMethod::createSdrDragEntries_GlueDrag()
+SdrDragMethod::createSdrDragEntries_PointDrag()
+SdrDragMethod::createSdrDragEntries_PolygonDrag()
+SdrDragMethod::createSdrDragEntries_SolidDrag()
+SdrDragMethod::destroyOverlayGeometry()
+SdrDragMethod::getCurrentRange() const
+SdrDragMethod::resetSdrDragEntries()
+SdrDragMove::BeginSdrDrag()
+SdrDragMove::EndSdrDrag(bool)
+SdrDragMove::ImpCheckSnap(Point const&)
+SdrDragObjOwn::EndSdrDrag(bool)
+SdrDragResize::EndSdrDrag(bool)
+SdrDragStat::Clear()
+SdrDragStat::NextPoint()
+SdrDragStat::PrevPoint()
+SdrDragStat::Reset()
+SdrDragStat::Reset(Point const&)
+SdrDragStat::TakeCreateRect(tools::Rectangle&) const
+SdrDragStat::~SdrDragStat()
+SdrDragView::BckAction()
+SdrDragView::BrkAction()
+SdrDragView::EndAction()
+SdrDragView::HideDragObj()
+SdrDragView::IsAction() const
+SdrDragView::IsInsGluePointPossible() const
+SdrDragView::IsInsObjPointPossible() const
+SdrDragView::IsOrthoDesired() const
+SdrDragView::MovAction(Point const&)
+SdrDragView::SdrDragView(SdrModel&, OutputDevice*)
+SdrDragView::ShowDragObj()
+SdrDragView::TakeActionRect(tools::Rectangle&) const
+SdrDragView::~SdrDragView()
+SdrDropMarkerOverlay::ImplCreateOverlays(SdrView const&, basegfx::B2DPolyPolygon const&)
+SdrEdgeKindItem::Clone(SfxItemPool*) const
+SdrEdgeKindItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrEdgeKindItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrEdgeKindItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrEdgeNode1HorzDistItem::Clone(SfxItemPool*) const
+SdrEdgeNode1HorzDistItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrEdgeNode1HorzDistItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrEdgeNode1VertDistItem::Clone(SfxItemPool*) const
+SdrEdgeNode1VertDistItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrEdgeNode1VertDistItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrEdgeNode2HorzDistItem::Clone(SfxItemPool*) const
+SdrEdgeNode2HorzDistItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrEdgeNode2HorzDistItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrEdgeNode2VertDistItem::Clone(SfxItemPool*) const
+SdrEdgeNode2VertDistItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrEdgeNode2VertDistItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrEdgeObj::AddToHdlList(SdrHdlList&) const
+SdrEdgeObj::BckCreate(SdrDragStat&)
+SdrEdgeObj::BegCreate(SdrDragStat&)
+SdrEdgeObj::BrkCreate(SdrDragStat&)
+SdrEdgeObj::CheckNodeConnection(bool) const
+SdrEdgeObj::CreateObjectSpecificProperties()
+SdrEdgeObj::CreateObjectSpecificViewContact()
+SdrEdgeObj::DisconnectFromNode(bool)
+SdrEdgeObj::DoConvertToPolyObj(bool, bool) const
+SdrEdgeObj::EndCreate(SdrDragStat&, SdrCreateCmd)
+SdrEdgeObj::ForceGluePointList()
+SdrEdgeObj::GetCornerGluePoint(unsigned short) const
+SdrEdgeObj::GetCreatePointer() const
+SdrEdgeObj::GetCurrentBoundRect() const
+SdrEdgeObj::GetEdgeTrackPath() const
+SdrEdgeObj::GetGluePointList() const
+SdrEdgeObj::GetHdlCount() const
+SdrEdgeObj::GetObjIdentifier() const
+SdrEdgeObj::GetPoint(unsigned int) const
+SdrEdgeObj::GetPointCount() const
+SdrEdgeObj::GetSnapPoint(unsigned int) const
+SdrEdgeObj::GetSnapPointCount() const
+SdrEdgeObj::GetSnapRect() const
+SdrEdgeObj::GetTailPoint(bool) const
+SdrEdgeObj::GetVertexGluePoint(unsigned short) const
+SdrEdgeObj::ImpCalcEdgeTrack(Point const&, long, tools::Rectangle const&, tools::Rectangle const&, Point const&, long, tools::Rectangle const&, tools::Rectangle const&, unsigned long*, SdrEdgeInfoRec*) const
+SdrEdgeObj::ImpCalcEdgeTrack(XPolygon const&, SdrObjConnection&, SdrObjConnection&, SdrEdgeInfoRec*) const
+SdrEdgeObj::ImpCalcEscAngle(SdrObject const*, Point const&)
+SdrEdgeObj::ImpCalcObjToCenter(Point const&, long, tools::Rectangle const&, Point const&)
+SdrEdgeObj::ImpDirtyEdgeTrack()
+SdrEdgeObj::ImpFindConnector(Point const&, SdrPageView const&, SdrObjConnection&, SdrEdgeObj const*, OutputDevice*, SdrDragStat*)
+SdrEdgeObj::ImpRecalcEdgeTrack()
+SdrEdgeObj::ImpSetAttrToEdgeInfo()
+SdrEdgeObj::ImpSetEdgeInfoToAttr()
+SdrEdgeObj::ImpSetTailPoint(bool, Point const&)
+SdrEdgeObj::ImpUndirtyEdgeTrack()
+SdrEdgeObj::ImplAddConnectorOverlay(SdrDragMethod&, bool, bool, bool) const
+SdrEdgeObj::IsPolyObj() const
+SdrEdgeObj::MovCreate(SdrDragStat&)
+SdrEdgeObj::NbcMirror(Point const&, Point const&)
+SdrEdgeObj::NbcMove(Size const&)
+SdrEdgeObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrEdgeObj::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrEdgeObj::NbcSetAnchorPos(Point const&)
+SdrEdgeObj::NbcSetPoint(Point const&, unsigned int)
+SdrEdgeObj::NbcSetSnapRect(tools::Rectangle const&)
+SdrEdgeObj::NbcShear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrEdgeObj::NewGeoData() const
+SdrEdgeObj::Notify(SfxBroadcaster&, SfxHint const&)
+SdrEdgeObj::RecalcSnapRect()
+SdrEdgeObj::Reformat()
+SdrEdgeObj::RestoreGeoData(SdrObjGeoData const&)
+SdrEdgeObj::SaveGeoData(SdrObjGeoData&) const
+SdrEdgeObj::SdrEdgeObj(SdrModel&, SdrEdgeObj const&)
+SdrEdgeObj::TRGetBaseGeometry(basegfx::B2DHomMatrix&, basegfx::B2DPolyPolygon&) const
+SdrEdgeObj::TRSetBaseGeometry(basegfx::B2DHomMatrix const&, basegfx::B2DPolyPolygon const&)
+SdrEdgeObj::TakeCreatePoly(SdrDragStat const&) const
+SdrEdgeObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrEdgeObj::TakeObjNamePlural() const
+SdrEdgeObj::TakeObjNameSingul() const
+SdrEdgeObj::TakeUnrotatedSnapRect(tools::Rectangle&) const
+SdrEdgeObj::TakeXorPoly() const
+SdrEdgeObj::applySpecialDrag(SdrDragStat&)
+SdrEdgeObj::beginSpecialDrag(SdrDragStat&) const
+SdrEdgeObj::getEdgeTrack() const
+SdrEdgeObj::getFullDragClone() const
+SdrEdgeObj::getGluePointIndex(bool)
+SdrEdgeObj::getSpecialDragComment(SdrDragStat const&) const
+SdrEdgeObj::handlePageChange(SdrPage*, SdrPage*)
+SdrEdgeObj::hasSpecialDrag() const
+SdrEdgeObj::setGluePointIndex(bool, int)
+SdrEdgeObj::~SdrEdgeObj()
+SdrEditView::AddUndoActions(std::vector<std::unique_ptr<SdrUndoAction, std::default_delete<SdrUndoAction> >, std::allocator<std::unique_ptr<SdrUndoAction, std::default_delete<SdrUndoAction> > > >)
+SdrEditView::ConvertMarkedToPolyObj()
+SdrEditView::CreateConnectorUndo(SdrObject const&)
+SdrEditView::CrookMarkedObj(Point const&, Point const&, SdrCrookMode, bool, bool, bool)
+SdrEditView::DeleteMarkedList(SdrMarkList const&)
+SdrEditView::DistortMarkedObj(tools::Rectangle const&, XPolygon const&, bool, bool)
+SdrEditView::EndTextEditCurrentView()
+SdrEditView::GetAttributes(SfxItemSet&, bool) const
+SdrEditView::GetMarkedObjRotate() const
+SdrEditView::GetMarkedObjShear() const
+SdrEditView::GetStyleSheet() const
+SdrEditView::ImpBroadcastEdgesOfMarkedNodes()
+SdrEditView::ImpCanConvertForCombine(SdrObject const*)
+SdrEditView::ImpCanConvertForCombine1(SdrObject const*)
+SdrEditView::ImpCanDismantle(SdrObject const*, bool)
+SdrEditView::ImpCanDismantle(basegfx::B2DPolyPolygon const&, bool)
+SdrEditView::ImpCheckToTopBtmPossible()
+SdrEditView::ImpCombineToSinglePolygon(basegfx::B2DPolyPolygon const&)
+SdrEditView::ImpConvertOneObj(SdrObject*, bool, bool)
+SdrEditView::ImpConvertTo(bool, bool)
+SdrEditView::ImpCopyAttributes(SdrObject const*, SdrObject*) const
+SdrEditView::ImpCrookObj(SdrObject*, Point const&, Point const&, SdrCrookMode, bool, bool, bool, tools::Rectangle const&)
+SdrEditView::ImpDelLayerCheck(SdrObjList const*, o3tl::strong_int<unsigned char, SdrLayerIDTag>) const
+SdrEditView::ImpDelLayerDelObjs(SdrObjList*, o3tl::strong_int<unsigned char, SdrLayerIDTag>)
+SdrEditView::ImpDismantleOneObject(SdrObject const*, SdrObjList&, unsigned long&, SdrPageView*, bool)
+SdrEditView::ImpDistortObj(SdrObject*, tools::Rectangle const&, XPolygon const&, bool)
+SdrEditView::ImpGetPolyPolygon(SdrObject const*)
+SdrEditView::ImpGetPolyPolygon1(SdrObject const*)
+SdrEditView::IsCropAllowed() const
+SdrEditView::MarkListHasChanged()
+SdrEditView::MergeNotPersistAttrFromMarked(SfxItemSet&) const
+SdrEditView::MirrorMarkedObj(Point const&, Point const&, bool)
+SdrEditView::ModelHasChanged()
+SdrEditView::ResizeMultMarkedObj(Point const&, Fraction const&, Fraction const&, bool, bool)
+SdrEditView::SdrEditView(SdrModel&, OutputDevice*)
+SdrEditView::SetAttributes(SfxItemSet const&, bool)
+SdrEditView::SetNotPersistAttrToMarked(SfxItemSet const&)
+SdrEditView::SetStyleSheet(SfxStyleSheet*, bool)
+SdrEditView::SetStyleSheetToMarked(SfxStyleSheet*, bool)
+SdrEditView::ShearMarkedObj(Point const&, o3tl::strong_int<int, FractionTag<100> >, bool, bool)
+SdrEditView::~SdrEditView()
+SdrEmbedObjectLink::Closed()
+SdrEmbedObjectLink::DataChanged(rtl::OUString const&, com::sun::star::uno::Any const&)
+SdrEmbedObjectLink::SdrEmbedObjectLink(SdrOle2Obj*)
+SdrEmbedObjectLink::~SdrEmbedObjectLink()
+SdrEscherImport::GetColorFromPalette(unsigned short, Color&) const
+SdrEscherImport::GetFontEnityAtom(unsigned int) const
+SdrEscherImport::GetSlideLayoutAtom() const
+SdrEscherImport::ImportHeaderFooterContainer(DffRecordHeader const&, HeaderFooterEntry&)
+SdrEscherImport::ReadObjText(PPTTextObj*, SdrObject*, SdPageCapsule) const
+SdrEscherImport::RecolorGraphic(SvStream&, unsigned int, Graphic&)
+SdrEscherImport::SdrEscherImport(PowerPointImportParam&, rtl::OUString const&)
+SdrEscherImport::SeekToShape(SvStream&, SvxMSDffClientData*, unsigned int) const
+SdrEscherImport::~SdrEscherImport()
+SdrExchangeView::ImpGetPasteLayer(SdrObjList const*, o3tl::strong_int<unsigned char, SdrLayerIDTag>&) const
+SdrExchangeView::ImpGetPasteObjList(Point&, SdrObjList*&)
+SdrExchangeView::ImpLimitToWorkArea(Point&) const
+SdrExchangeView::ImpPasteObject(SdrObject*, SdrObjList&, Point const&, Size const&, MapMode const&, SdrInsertFlags)
+SdrExchangeView::SdrExchangeView(SdrModel&, OutputDevice*)
+SdrFormatter::GetStr(long) const
+SdrFormatter::GetUnitStr(MapUnit)
+SdrGlobalData::GetSysLocale()
+SdrGlobalData::SdrGlobalData()
+SdrGlueEditView::DeleteMarkedGluePoints()
+SdrGlueEditView::ImpCopyMarkedGluePoints()
+SdrGlueEditView::ImpDoMarkedGluePoints(void (*)(SdrGluePoint&, SdrObject const*, void const*, void const*, void const*, void const*), bool, void const*, void const*, void const*, void const*)
+SdrGlueEditView::ImpTransformMarkedGluePoints(void (*)(Point&, void const*, void const*, void const*, void const*), void const*, void const*, void const*, void const*)
+SdrGlueEditView::MoveMarkedGluePoints(Size const&, bool)
+SdrGlueEditView::ResizeMarkedGluePoints(Point const&, Fraction const&, Fraction const&, bool)
+SdrGlueEditView::RotateMarkedGluePoints(Point const&, o3tl::strong_int<int, FractionTag<100> >, bool)
+SdrGlueEditView::SdrGlueEditView(SdrModel&, OutputDevice*)
+SdrGlueEditView::~SdrGlueEditView()
+SdrGluePoint::EscAngleToDir(o3tl::strong_int<int, FractionTag<100> >)
+SdrGluePoint::EscDirToAngle(SdrEscapeDirection)
+SdrGluePoint::GetAlignAngle() const
+SdrGluePoint::Invalidate(vcl::Window&, SdrObject const*) const
+SdrGluePoint::IsHit(Point const&, OutputDevice const&, SdrObject const*) const
+SdrGluePoint::Mirror(Point const&, Point const&, o3tl::strong_int<int, FractionTag<100> >, SdrObject const*)
+SdrGluePoint::Rotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double, SdrObject const*)
+SdrGluePoint::SetAbsolutePos(Point const&, SdrObject const&)
+SdrGluePoint::SetAlignAngle(o3tl::strong_int<int, FractionTag<100> >)
+SdrGluePoint::SetReallyAbsolute(bool, SdrObject const&)
+SdrGluePoint::Shear(Point const&, double, bool, SdrObject const*)
+SdrGluePointList::HitTest(Point const&, OutputDevice const&, SdrObject const*) const
+SdrGluePointList::Invalidate(vcl::Window&, SdrObject const*) const
+SdrGluePointList::Mirror(Point const&, Point const&, SdrObject const*)
+SdrGluePointList::Mirror(Point const&, Point const&, o3tl::strong_int<int, FractionTag<100> >, SdrObject const*)
+SdrGluePointList::Rotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double, SdrObject const*)
+SdrGluePointList::SetReallyAbsolute(bool, SdrObject const&)
+SdrGluePointList::Shear(Point const&, double, bool, SdrObject const*)
+SdrGluePointList::operator=(SdrGluePointList const&)
+SdrGrafBlueItem::Clone(SfxItemPool*) const
+SdrGrafContrastItem::Clone(SfxItemPool*) const
+SdrGrafCropItem::Clone(SfxItemPool*) const
+SdrGrafGamma100Item::Clone(SfxItemPool*) const
+SdrGrafGamma100Item::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrGrafGamma100Item::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrGrafGreenItem::Clone(SfxItemPool*) const
+SdrGrafLuminanceItem::Clone(SfxItemPool*) const
+SdrGrafModeItem::Clone(SfxItemPool*) const
+SdrGrafModeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrGrafModeItem::GetValueCount() const
+SdrGrafModeItem::GetValueTextByPos(unsigned short)
+SdrGrafObj::AddToHdlList(SdrHdlList&) const
+SdrGrafObj::CreateObjectSpecificProperties()
+SdrGrafObj::CreateObjectSpecificViewContact()
+SdrGrafObj::DoConvertToPolyObj(bool, bool) const
+SdrGrafObj::ForceSwapIn() const
+SdrGrafObj::GetGrafPrefMapMode() const
+SdrGrafObj::GetGrafPrefSize() const
+SdrGrafObj::GetGrafStreamURL() const
+SdrGrafObj::GetHdlCount() const
+SdrGrafObj::GetMetaFile(GraphicType&) const
+SdrGrafObj::GetObjIdentifier() const
+SdrGrafObj::GetReplacementGraphicObject() const
+SdrGrafObj::ImpDeregisterLink()
+SdrGrafObj::ImpRegisterLink()
+SdrGrafObj::ImpSetAttrToGrafInfo()
+SdrGrafObj::ImpSetLinkedGraphic(Graphic const&)
+SdrGrafObj::NbcMirror(Point const&, Point const&)
+SdrGrafObj::NbcSetGraphic(Graphic const&)
+SdrGrafObj::NewGeoData() const
+SdrGrafObj::Notify(SfxBroadcaster&, SfxHint const&)
+SdrGrafObj::RestoreGeoData(SdrObjGeoData const&)
+SdrGrafObj::SaveGeoData(SdrObjGeoData&) const
+SdrGrafObj::SdrGrafObj(SdrModel&, SdrGrafObj const&)
+SdrGrafObj::SetGrafAnimationAllowed(bool)
+SdrGrafObj::SetGrafStreamURL(rtl::OUString const&)
+SdrGrafObj::SetMirrored(bool)
+SdrGrafObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrGrafObj::TakeObjNamePlural() const
+SdrGrafObj::TakeObjNameSingul() const
+SdrGrafObj::addCropHandles(SdrHdlList&) const
+SdrGrafObj::getFullDragClone() const
+SdrGrafObj::getInputStream() const
+SdrGrafObj::handlePageChange(SdrPage*, SdrPage*)
+SdrGrafObj::onGraphicChanged()
+SdrGrafObj::~SdrGrafObj()
+SdrGrafRedItem::Clone(SfxItemPool*) const
+SdrGrafTransparenceItem::Clone(SfxItemPool*) const
+SdrHdl::CreateOverlayObject(basegfx::B2DPoint const&, BitmapColorIndex, BitmapMarkerKind, Point)
+SdrHdl::GetNextBigger(BitmapMarkerKind)
+SdrHdl::IsHdlHit(Point const&) const
+SdrHdl::SdrHdl()
+SdrHdl::Set1PixMore(bool)
+SdrHdl::SetHdlList(SdrHdlList*)
+SdrHdl::SetMoveOutside(bool)
+SdrHdl::SetRotationAngle(o3tl::strong_int<int, FractionTag<100> >)
+SdrHdl::createGluePointBitmap()
+SdrHdlColor::SdrHdlColor(Point const&, Color, Size const&, bool)
+SdrHdlColor::~SdrHdlColor()
+SdrHdlList::IsHdlListHit(Point const&) const
+SdrHdlList::RemoveHdl(unsigned long)
+SdrHdlList::SetDistortShear(bool)
+SdrHdlList::SetHdlSize(unsigned short)
+SdrHdlList::SetMoveOutside(bool)
+SdrHdlList::SetRotateShear(bool)
+SdrHdlList::Sort()
+SdrHelpLineList::HitTest(Point const&, unsigned short, OutputDevice const&) const
+SdrHint::SdrHint(SdrHintKind, SdrObject const&, SdrPage const*)
+SdrItemPool::Clone() const
+SdrItemPool::GetItemName(unsigned short)
+SdrItemPool::GetPresentation(SfxPoolItem const&, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrItemPool::SdrItemPool(SdrItemPool const&)
+SdrItemPool::~SdrItemPool()
+SdrLayer::SdrLayer(o3tl::strong_int<unsigned char, SdrLayerIDTag>, rtl::OUString const&)
+SdrLayer::operator==(SdrLayer const&) const
+SdrLayerAdmin::Broadcast() const
+SdrLayerAdmin::ClearLayers()
+SdrLayerAdmin::GetLayerPos(SdrLayer const*) const
+SdrLayerAdmin::GetUniqueLayerID() const
+SdrLayerAdmin::InsertLayer(std::unique_ptr<SdrLayer, std::default_delete<SdrLayer> >, unsigned short)
+SdrLayerAdmin::RemoveLayer(unsigned short)
+SdrLayerAdmin::SdrLayerAdmin(SdrLayerAdmin*)
+SdrLayerAdmin::SetModel(SdrModel*)
+SdrLayerAdmin::operator=(SdrLayerAdmin const&)
+SdrLayerIDSet::IsEmpty() const
+SdrLayerIDSet::operator&=(SdrLayerIDSet const&)
+SdrMark::ObjectInDestruction(SdrObject const&)
+SdrMark::SdrMark(SdrMark const&)
+SdrMark::SetMarkedSdrObj(SdrObject*)
+SdrMark::operator=(SdrMark const&)
+SdrMark::setTime()
+SdrMarkList::DeletePageView(SdrPageView const&)
+SdrMarkList::InsertPageView(SdrPageView const&)
+SdrMarkList::Merge(SdrMarkList const&, bool)
+SdrMarkList::ReplaceMark(SdrMark const&, unsigned long)
+SdrMarkList::TakeSnapRect(SdrPageView const*, tools::Rectangle&) const
+SdrMarkView::AddDragModeHdl(SdrDragMode)
+SdrMarkView::BckAction()
+SdrMarkView::BrkAction()
+SdrMarkView::BrkMarkGluePoints()
+SdrMarkView::BrkMarkObj()
+SdrMarkView::BrkMarkPoints()
+SdrMarkView::CheckSingleSdrObjectHit(Point const&, unsigned short, SdrObjList const*, SdrPageView*, SdrSearchOptions, SdrLayerIDSet const*, SdrObject*&) const
+SdrMarkView::CheckSingleSdrObjectHit(Point const&, unsigned short, SdrObjList const*, SdrPageView*, SdrSearchOptions, SdrLayerIDSet const*, SdrObject*&, SdrMarkList const*) const
+SdrMarkView::EndAction()
+SdrMarkView::EndMarkGluePoints()
+SdrMarkView::ForceRefToMarked()
+SdrMarkView::GetMarkedGluePointsRect() const
+SdrMarkView::GetMarkedPointsRect() const
+SdrMarkView::HasMarkableGluePoints() const
+SdrMarkView::HasMarkedGluePoints() const
+SdrMarkView::HideSdrPage()
+SdrMarkView::ImpGetDescriptionString(TranslateId, ImpGetDescriptionOptions) const
+SdrMarkView::ImpIsFrameHandles() const
+SdrMarkView::ImpMarkPoint(SdrHdl*, SdrMark*, bool)
+SdrMarkView::IsAction() const
+SdrMarkView::MarkListHasChanged()
+SdrMarkView::MarkNextGluePoint()
+SdrMarkView::MarkNextPoint()
+SdrMarkView::MarkObj(tools::Rectangle const&, bool)
+SdrMarkView::ModelHasChanged()
+SdrMarkView::MouseMove(MouseEvent const&, OutputDevice*)
+SdrMarkView::MovAction(Point const&)
+SdrMarkView::MovMarkGluePoints(Point const&)
+SdrMarkView::MovMarkObj(Point const&)
+SdrMarkView::Notify(SfxBroadcaster&, SfxHint const&)
+SdrMarkView::PickMarkedObj(Point const&, SdrObject*&, SdrPageView*&, SdrSearchOptions) const
+SdrMarkView::PickObj(Point const&, short, SdrPageView*&, SdrSearchOptions, SdrObject**, bool*) const
+SdrMarkView::SdrMarkView(SdrModel&, OutputDevice*)
+SdrMarkView::SetMarkHandles(SfxViewShell*)
+SdrMarkView::SetMarkHandlesForLOKit(tools::Rectangle const&, SfxViewShell const*)
+SdrMarkView::SetMarkRects()
+SdrMarkView::SetMoveOutside(bool)
+SdrMarkView::SetRef1(Point const&)
+SdrMarkView::SetRef2(Point const&)
+SdrMarkView::TakeActionRect(tools::Rectangle&) const
+SdrMarkView::dumpGluePointsToJSON(boost::property_tree::basic_ptree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)
+SdrMarkView::getPossibleGridOffsetForPosition(basegfx::B2DVector&, basegfx::B2DPoint const&, SdrPageView const*) const
+SdrMarkView::getPossibleGridOffsetForSdrObject(basegfx::B2DVector&, SdrObject const*, SdrPageView const*) const
+SdrMarkView::modelHasChangedLOKit()
+SdrMarkView::~SdrMarkView()
+SdrMeasureBelowRefEdgeItem::Clone(SfxItemPool*) const
+SdrMeasureDecimalPlacesItem::Clone(SfxItemPool*) const
+SdrMeasureField::Clone() const
+SdrMeasureField::operator==(SvxFieldData const&) const
+SdrMeasureObj::AddToHdlList(SdrHdlList&) const
+SdrMeasureObj::BckCreate(SdrDragStat&)
+SdrMeasureObj::BegCreate(SdrDragStat&)
+SdrMeasureObj::BegTextEdit(SdrOutliner&)
+SdrMeasureObj::BrkCreate(SdrDragStat&)
+SdrMeasureObj::CalcFieldValue(SvxFieldItem const&, int, unsigned short, bool, std::optional<Color>&, std::optional<Color>&, rtl::OUString&) const
+SdrMeasureObj::CloneSdrObject(SdrModel&) const
+SdrMeasureObj::CreateObjectSpecificProperties()
+SdrMeasureObj::CreateObjectSpecificViewContact()
+SdrMeasureObj::DoConvertToPolyObj(bool, bool) const
+SdrMeasureObj::EndCreate(SdrDragStat&, SdrCreateCmd)
+SdrMeasureObj::GetCreatePointer() const
+SdrMeasureObj::GetHdlCount() const
+SdrMeasureObj::GetObjIdentifier() const
+SdrMeasureObj::GetOutlinerParaObject() const
+SdrMeasureObj::GetOutlinerViewAnchorMode() const
+SdrMeasureObj::GetPointCount() const
+SdrMeasureObj::GetRotateAngle() const
+SdrMeasureObj::GetSnapPoint(unsigned int) const
+SdrMeasureObj::GetSnapPointCount() const
+SdrMeasureObj::GetTextSize() const
+SdrMeasureObj::ImpCalcGeometrics(ImpMeasureRec const&, ImpMeasurePoly&) const
+SdrMeasureObj::ImpCalcXPoly(ImpMeasurePoly const&)
+SdrMeasureObj::ImpEvalDrag(ImpMeasureRec&, SdrDragStat const&) const
+SdrMeasureObj::ImpTakeAttr(ImpMeasureRec&) const
+SdrMeasureObj::IsPolyObj() const
+SdrMeasureObj::MovCreate(SdrDragStat&)
+SdrMeasureObj::NbcMirror(Point const&, Point const&)
+SdrMeasureObj::NbcMove(Size const&)
+SdrMeasureObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrMeasureObj::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrMeasureObj::NbcSetOutlinerParaObject(std::optional<OutlinerParaObject>)
+SdrMeasureObj::NbcSetPoint(Point const&, unsigned int)
+SdrMeasureObj::NbcShear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrMeasureObj::NewGeoData() const
+SdrMeasureObj::RecalcSnapRect()
+SdrMeasureObj::RestoreGeoData(SdrObjGeoData const&)
+SdrMeasureObj::SaveGeoData(SdrObjGeoData&) const
+SdrMeasureObj::SdrMeasureObj(SdrModel&)
+SdrMeasureObj::SdrMeasureObj(SdrModel&, SdrMeasureObj const&)
+SdrMeasureObj::TRGetBaseGeometry(basegfx::B2DHomMatrix&, basegfx::B2DPolyPolygon&) const
+SdrMeasureObj::TRSetBaseGeometry(basegfx::B2DHomMatrix const&, basegfx::B2DPolyPolygon const&)
+SdrMeasureObj::TakeCreatePoly(SdrDragStat const&) const
+SdrMeasureObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrMeasureObj::TakeObjNamePlural() const
+SdrMeasureObj::TakeObjNameSingul() const
+SdrMeasureObj::TakeRepresentation(SdrMeasureFieldKind) const
+SdrMeasureObj::TakeTextAnchorRect(tools::Rectangle&) const
+SdrMeasureObj::TakeTextEditArea(Size*, Size*, tools::Rectangle*, tools::Rectangle*) const
+SdrMeasureObj::TakeTextRect(SdrOutliner&, tools::Rectangle&, bool, tools::Rectangle*, bool) const
+SdrMeasureObj::TakeXorPoly() const
+SdrMeasureObj::UndirtyText() const
+SdrMeasureObj::applySpecialDrag(SdrDragStat&)
+SdrMeasureObj::beginSpecialDrag(SdrDragStat&) const
+SdrMeasureObj::getSpecialDragComment(SdrDragStat const&) const
+SdrMeasureObj::hasSpecialDrag() const
+SdrMeasureObj::~SdrMeasureObj()
+SdrMeasureTextHPosItem::Clone(SfxItemPool*) const
+SdrMeasureTextHPosItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrMeasureTextHPosItem::GetValueCount() const
+SdrMeasureTextHPosItem::GetValueTextByPos(unsigned short)
+SdrMeasureTextHPosItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrMeasureTextHPosItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrMeasureTextRota90Item::Clone(SfxItemPool*) const
+SdrMeasureTextVPosItem::Clone(SfxItemPool*) const
+SdrMeasureTextVPosItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrMeasureTextVPosItem::GetValueCount() const
+SdrMeasureTextVPosItem::GetValueTextByPos(unsigned short)
+SdrMeasureTextVPosItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrMeasureTextVPosItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrMeasureUnitItem::Clone(SfxItemPool*) const
+SdrMeasureUnitItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrMeasureUnitItem::GetValueCount() const
+SdrMeasureUnitItem::GetValueTextByPos(unsigned short)
+SdrMeasureUnitItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrMeasureUnitItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrMediaObj::CloneSdrObject(SdrModel&) const
+SdrMediaObj::CreateObjectSpecificViewContact()
+SdrMediaObj::GetObjIdentifier() const
+SdrMediaObj::HasTextEdit() const
+SdrMediaObj::SdrMediaObj(SdrModel&)
+SdrMediaObj::SdrMediaObj(SdrModel&, SdrMediaObj const&)
+SdrMediaObj::SetInputStream(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&)
+SdrMediaObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrMediaObj::TakeObjNamePlural() const
+SdrMediaObj::TakeObjNameSingul() const
+SdrMediaObj::mediaPropertiesChanged(avmedia::MediaItem const&)
+SdrMediaObj::setMediaProperties(avmedia::MediaItem const&)
+SdrMediaObj::~SdrMediaObj()
+SdrMetricItem::Clone(SfxItemPool*) const
+SdrModel::BegUndo(rtl::OUString const&, rtl::OUString const&, SdrRepeatFunc)
+SdrModel::CopyPages(unsigned short, unsigned short, unsigned short, bool, bool)
+SdrModel::GetAngleString(o3tl::strong_int<int, FractionTag<100> >)
+SdrModel::GetChainingOutliner(SdrTextObj const*) const
+SdrModel::GetDocumentStream(rtl::OUString const&, comphelper::LifecycleProxy const&) const
+SdrModel::GetMetricString(long, bool, int) const
+SdrModel::GetPercentString(Fraction const&)
+SdrModel::GetTextChain() const
+SdrModel::GetUnitString(FieldUnit)
+SdrModel::IsAnchoredTextOverflowLegacy() const
+SdrModel::RefDeviceChanged()
+SdrModel::Repeat(SfxRepeatTarget&)
+SdrModel::SetMaxUndoActionCount(unsigned int)
+SdrModel::SetScaleUnit(MapUnit, Fraction const&)
+SdrModel::SetUndoComment(rtl::OUString const&)
+SdrModel::SetUndoComment(rtl::OUString const&, rtl::OUString const&)
+SdrModel::createOutliner(OutlinerMode)
+SdrModel::disposeOutliner(std::unique_ptr<SdrOutliner, std::default_delete<SdrOutliner> >)
+SdrObjCustomShape::GetCustomShapeEngine() const
+SdrObjCustomShape::GetObjIdentifier() const
+SdrObjCustomShape::GetSdrObjectFromCustomShape() const
+SdrObjCustomShape::ImpCalculateTextFrame(bool, bool)
+SdrObjCustomShape::ImpCheckCustomGluePointsAreAdded()
+SdrObjCustomShape::InvalidateRenderGeometry()
+SdrObjCustomShape::SdrObjCustomShape(SdrModel&, SdrObjCustomShape const&)
+SdrObjCustomShape::SetMirroredX(bool)
+SdrObjCustomShape::SetMirroredY(bool)
+SdrObjEditView::ApplyFormatPaintBrushToText(SfxItemSet const&, SdrTextObj&, SdrText*, bool, bool)
+SdrObjEditView::BckAction()
+SdrObjEditView::BeginPasteOrDropHdl(PasteOrDropInfos*)
+SdrObjEditView::BrkAction()
+SdrObjEditView::BrkMacroObj()
+SdrObjEditView::Command(CommandEvent const&, vcl::Window*)
+SdrObjEditView::EndAction()
+SdrObjEditView::EndMacroObj()
+SdrObjEditView::EndPasteOrDropHdl(PasteOrDropInfos*)
+SdrObjEditView::GetAttributes(SfxItemSet&, bool) const
+SdrObjEditView::GetStyleSheet() const
+SdrObjEditView::ImpChainingEventHdl()
+SdrObjEditView::ImpFindOutlinerView(vcl::Window const*) const
+SdrObjEditView::ImpHandleMotionThroughBoxesKeyInput(KeyEvent const&, bool*)
+SdrObjEditView::ImpInvalidateOutlinerView(OutlinerView const&) const
+SdrObjEditView::ImpIsTextEditAllSelected() const
+SdrObjEditView::ImpMacroDown(Point const&)
+SdrObjEditView::ImpMacroUp(Point const&)
+SdrObjEditView::ImpMakeOutlinerView(vcl::Window*, OutlinerView*, SfxViewShell*) const
+SdrObjEditView::ImpMakeTextCursorAreaVisible()
+SdrObjEditView::ImpMoveCursorAfterChainingEvent(TextChainCursorManager*)
+SdrObjEditView::ImpPaintOutlinerView(OutlinerView&, tools::Rectangle const&, OutputDevice&) const
+SdrObjEditView::IsAction() const
+SdrObjEditView::IsTextEditInSelectionMode() const
+SdrObjEditView::KeyInput(KeyEvent const&, vcl::Window*)
+SdrObjEditView::MouseButtonDown(MouseEvent const&, OutputDevice*)
+SdrObjEditView::MouseButtonUp(MouseEvent const&, OutputDevice*)
+SdrObjEditView::MouseMove(MouseEvent const&, OutputDevice*)
+SdrObjEditView::MovAction(Point const&)
+SdrObjEditView::MovMacroObj(Point const&)
+SdrObjEditView::SdrObjEditView(SdrModel&, OutputDevice*)
+SdrObjEditView::SetAttributes(SfxItemSet const&, bool)
+SdrObjEditView::SetStyleSheet(SfxStyleSheet*, bool)
+SdrObjEditView::SetTextEditWin(vcl::Window*)
+SdrObjEditView::TakeActionRect(tools::Rectangle&) const
+SdrObjEditView::TextEditDrawing(SdrPaintWindow&)
+SdrObjEditView::~SdrObjEditView()
+SdrObjGeoData::SdrObjGeoData()
+SdrObjGroup::BegCreate(SdrDragStat&)
+SdrObjGroup::CloneSdrObject(SdrModel&) const
+SdrObjGroup::CreateObjectSpecificProperties()
+SdrObjGroup::CreateObjectSpecificViewContact()
+SdrObjGroup::DoConvertToPolyObj(bool, bool) const
+SdrObjGroup::GetObjIdentifier() const
+SdrObjGroup::GetRotateAngle() const
+SdrObjGroup::GetShearAngle(bool) const
+SdrObjGroup::GetSnapRect() const
+SdrObjGroup::Mirror(Point const&, Point const&)
+SdrObjGroup::Move(Size const&)
+SdrObjGroup::NbcMirror(Point const&, Point const&)
+SdrObjGroup::NbcReformatText()
+SdrObjGroup::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrObjGroup::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrObjGroup::NbcSetAnchorPos(Point const&)
+SdrObjGroup::NbcSetLayer(o3tl::strong_int<unsigned char, SdrLayerIDTag>)
+SdrObjGroup::NbcSetLogicRect(tools::Rectangle const&)
+SdrObjGroup::NbcSetRelativePos(Point const&)
+SdrObjGroup::NbcSetSnapRect(tools::Rectangle const&)
+SdrObjGroup::NbcShear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrObjGroup::RecalcSnapRect()
+SdrObjGroup::Resize(Point const&, Fraction const&, Fraction const&, bool)
+SdrObjGroup::Rotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrObjGroup::SdrObjGroup(SdrModel&, SdrObjGroup const&)
+SdrObjGroup::SetAnchorPos(Point const&)
+SdrObjGroup::SetBoundRectDirty()
+SdrObjGroup::SetLogicRect(tools::Rectangle const&)
+SdrObjGroup::SetRelativePos(Point const&)
+SdrObjGroup::SetSnapRect(tools::Rectangle const&)
+SdrObjGroup::Shear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrObjGroup::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrObjGroup::TakeObjNamePlural() const
+SdrObjGroup::TakeObjNameSingul() const
+SdrObjGroup::TakeXorPoly() const
+SdrObjGroup::beginSpecialDrag(SdrDragStat&) const
+SdrObjGroup::dumpAsXml(_xmlTextWriter*) const
+SdrObjGroup::getChildrenOfSdrObject() const
+SdrObjGroup::getSdrObjectFromSdrObjList() const
+SdrObjGroup::getSdrPageFromSdrObjList() const
+SdrObjGroup::handlePageChange(SdrPage*, SdrPage*)
+SdrObjGroup::~SdrObjGroup()
+SdrObjList::BurnInStyleSheetAttributes()
+SdrObjList::CopyObjects(SdrObjList const&)
+SdrObjList::FlattenGroups()
+SdrObjList::GetAllObjSnapRect() const
+SdrObjList::GetObjectForNavigationPosition(unsigned int) const
+SdrObjList::InsertObjectIntoContainer(SdrObject&, unsigned int)
+SdrObjList::NbcReformatAllTextObjects()
+SdrObjList::RecalcNavigationPositions()
+SdrObjList::RecalcRects()
+SdrObjList::ReformatAllEdgeObjects()
+SdrObjList::ReformatAllTextObjects()
+SdrObjList::RemoveObjectFromContainer(unsigned int)
+SdrObjList::ReplaceObjectInContainer(SdrObject&, unsigned int)
+SdrObjList::SdrObjList()
+SdrObjList::SetExistingObjectOrdNum(SdrObject*, unsigned long)
+SdrObjList::UnGroupObj(unsigned long)
+SdrObjList::dumpAsXml(_xmlTextWriter*) const
+SdrObjList::getSdrPageFromSdrObjList() const
+SdrObjList::impChildInserted(SdrObject const&)
+SdrObjList::impClearSdrObjList(bool)
+SdrObjList::sort(std::vector<int, std::allocator<int> >&)
+SdrObjList::~SdrObjList()
+SdrObjListIter::ImpProcessMarkList(SdrMarkList const&, SdrIterMode)
+SdrObjListIter::ImpProcessObj(SdrObject const&, SdrIterMode)
+SdrObjListIter::ImpProcessObjectList(SdrObjList const&, SdrIterMode)
+SdrObject::AddReference(SdrVirtObj&)
+SdrObject::ApplyNotPersistAttr(SfxItemSet const&)
+SdrObject::BurnInStyleSheetAttributes()
+SdrObject::CreateObjectSpecificViewContact()
+SdrObject::DelReference(SdrVirtObj&)
+SdrObject::GetBroadcaster() const
+SdrObject::GetMetrStr(long) const
+SdrObject::GetObjIdentifier() const
+SdrObject::GetObjInventor() const
+SdrObject::GetObjectItem(unsigned short) const
+SdrObject::ImpConvertToContourObj(bool)
+SdrObject::ImpDragCalcRect(SdrDragStat const&) const
+SdrObject::ImpForcePlusData()
+SdrObject::ImpGetDescriptionStr(TranslateId) const
+SdrObject::InsertedStateChange()
+SdrObject::IsInDestruction() const
+SdrObject::IsMacroHit(SdrObjMacroHitRec const&) const
+SdrObject::LineGeometryUsageIsNecessary() const
+SdrObject::MakeNameUnique(std::unordered_set<rtl::OUString, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<rtl::OUString> >&)
+SdrObject::NbcApplyNotPersistAttr(SfxItemSet const&)
+SdrObject::NbcMirrorGluePoints(Point const&, Point const&)
+SdrObject::NbcRotateGluePoints(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrObject::NbcShearGluePoints(Point const&, double, bool)
+SdrObject::RemoveListener(SfxListener&)
+SdrObject::SdrObject(SdrModel&, SdrObject const&)
+SdrObject::SetGlueReallyAbsolute(bool)
+SdrObject::SetGrabBagItem(com::sun::star::uno::Any const&)
+SdrObject::SetNavigationPosition(unsigned int)
+SdrObject::SetObjectItem(SfxPoolItem const&)
+SdrObject::SetObjectItemSet(SfxItemSet const&)
+SdrObject::TakeNotPersistAttr(SfxItemSet&) const
+SdrObject::getBackgroundFillSet() const
+SdrObject::getMergedHierarchySdrLayerIDSet(SdrLayerIDSet&) const
+SdrObject::getSvxShape()
+SdrOle2Obj::BreakFileLink_Impl()
+SdrOle2Obj::CalculateNewScaling(Fraction&, Fraction&, Size&)
+SdrOle2Obj::CanUnloadRunningObj(com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&, long)
+SdrOle2Obj::CheckFileLink_Impl()
+SdrOle2Obj::CloneSdrObject(SdrModel&) const
+SdrOle2Obj::DisconnectFileLink_Impl()
+SdrOle2Obj::GetNewReplacement()
+SdrOle2Obj::GetObjIdentifier() const
+SdrOle2Obj::GetParentXModel() const
+SdrOle2Obj::ObjectLoaded()
+SdrOle2Obj::SetClosedObj(bool)
+SdrOle2Obj::SetGraphicToObj(Graphic const&)
+SdrOle2Obj::UpdateLinkURL_Impl()
+SdrOle2Obj::getEmbeddedObjectRef() const
+SdrOle2Obj::isInplaceActive() const
+SdrOle2Obj::isUiActive() const
+SdrOnOffItem::Clone(SfxItemPool*) const
+SdrOnOffItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrOnOffItem::GetValueTextByVal(bool) const
+SdrOnOffItem::dumpAsXml(_xmlTextWriter*) const
+SdrOutliner::SetTextObj(SdrTextObj const*)
+SdrOutliner::SetTextObjNoInit(SdrTextObj const*)
+SdrOutliner::hasEditViewCallbacks() const
+SdrPage::CloneSdrPage(SdrModel&) const
+SdrPage::CreateObjectSpecificViewContact()
+SdrPage::GetLayerAdmin()
+SdrPage::GetLayerAdmin() const
+SdrPage::GetViewContact() const
+SdrPage::MakePageObjectsNamesUnique()
+SdrPage::SetPageNum(unsigned short)
+SdrPage::TRG_ImpMasterPageRemoved(SdrPage const&)
+SdrPage::getCorrectSdrPageProperties() const
+SdrPage::getSdrPageProperties() const
+SdrPageObj::CloneSdrObject(SdrModel&) const
+SdrPageObj::CreateObjectSpecificProperties()
+SdrPageObj::CreateObjectSpecificViewContact()
+SdrPageObj::GetObjIdentifier() const
+SdrPageObj::PageInDestruction(SdrPage const&)
+SdrPageObj::SdrPageObj(SdrModel&, SdrPageObj const&)
+SdrPageObj::SetBoundRectDirty()
+SdrPageObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrPageObj::TakeObjNamePlural() const
+SdrPageObj::TakeObjNameSingul() const
+SdrPageObj::~SdrPageObj()
+SdrPageProperties::ImpAddStyleSheet(SfxStyleSheet&)
+SdrPageProperties::ImpRemoveStyleSheet()
+SdrPageProperties::Notify(SfxBroadcaster&, SfxHint const&)
+SdrPageProperties::SdrPageProperties(SdrPage&)
+SdrPageProperties::dumpAsXml(_xmlTextWriter*) const
+SdrPageProperties::isUsedByModel() const
+SdrPageProperties::~SdrPageProperties()
+SdrPageView::AddPaintWindowToPageView(SdrPaintWindow&)
+SdrPageView::CheckCurrentGroup()
+SdrPageView::CompleteRedraw(SdrPaintWindow&, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*)
+SdrPageView::FindPageWindow(SdrPaintWindow const&) const
+SdrPageView::FindPatchedPageWindow(OutputDevice const&) const
+SdrPageView::GetEnteredLevel() const
+SdrPageView::Hide()
+SdrPageView::ImpInvalidateHelpLineArea(unsigned short) const
+SdrPageView::IsReadOnly() const
+SdrPageView::LeaveAllGroup()
+SdrPageView::LeaveOneGroup()
+SdrPageView::ModelHasChanged()
+SdrPageView::PrePaint()
+SdrPageView::RemovePaintWindowFromPageView(SdrPaintWindow&)
+SdrPageView::SdrPageView(SdrPage*, SdrView&)
+SdrPageView::SetApplicationBackgroundColor(Color)
+SdrPageView::SetCurrentGroupAndList(SdrObject*, SdrObjList*)
+SdrPageView::SetDesignMode(bool) const
+SdrPageView::Show()
+SdrPageView::setPreparedPageWindow(SdrPageWindow*)
+SdrPageView::~SdrPageView()
+SdrPageWindow::GetOriginalPaintWindow() const
+SdrPageWindow::GetPageView() const
+SdrPageWindow::HasObjectContact() const
+SdrPageWindow::InvalidatePageWindow(basegfx::B2DRange const&)
+SdrPageWindow::PrePaint()
+SdrPageWindow::PrepareRedraw(vcl::Region const&)
+SdrPageWindow::RedrawAll(sdr::contact::ViewObjectContactRedirector*)
+SdrPageWindow::RedrawLayer(o3tl::strong_int<unsigned char, SdrLayerIDTag> const*, sdr::contact::ViewObjectContactRedirector*, basegfx::B2IRange const*)
+SdrPageWindow::ResetObjectContact()
+SdrPageWindow::SdrPageWindow(SdrPageView&, SdrPaintWindow&)
+SdrPageWindow::SetDesignMode(bool) const
+SdrPageWindow::~SdrPageWindow()
+SdrPaintView::AddWindowToPaintView(OutputDevice*, vcl::Window*)
+SdrPaintView::BckAction()
+SdrPaintView::BrkAction()
+SdrPaintView::ClearPageView()
+SdrPaintView::ConfigurationChanged(utl::ConfigurationBroadcaster*, ConfigurationHints)
+SdrPaintView::DeletePaintWindow(SdrPaintWindow const&)
+SdrPaintView::DeleteWindowFromPaintView(OutputDevice*)
+SdrPaintView::EndAction()
+SdrPaintView::FindPaintWindow(OutputDevice const&) const
+SdrPaintView::GetAttributes(SfxItemSet&, bool) const
+SdrPaintView::GetStyleSheet() const
+SdrPaintView::HideSdrPage()
+SdrPaintView::ImpFormLayerDrawing(SdrPaintWindow&)
+SdrPaintView::ImpGetHitTolLogic(short, OutputDevice const*) const
+SdrPaintView::ImpGetMinMovLogic(short, OutputDevice const*) const
+SdrPaintView::InvalidateAllWin(tools::Rectangle const&)
+SdrPaintView::IsAction() const
+SdrPaintView::IsBufferedOutputAllowed() const
+SdrPaintView::IsTextEdit() const
+SdrPaintView::KeyInput(KeyEvent const&, vcl::Window*)
+SdrPaintView::MergeNotPersistDefaultAttr(SfxItemSet&) const
+SdrPaintView::ModelHasChanged()
+SdrPaintView::MovAction(Point const&)
+SdrPaintView::Notify(SfxBroadcaster&, SfxHint const&)
+SdrPaintView::OptimizeDrawLayersRegion(OutputDevice const*, vcl::Region const&, bool)
+SdrPaintView::SdrPaintView(SdrModel&, OutputDevice*)
+SdrPaintView::SetAnimationTimer(unsigned int)
+SdrPaintView::SetAttributes(SfxItemSet const&, bool)
+SdrPaintView::SetDefaultStyleSheet(SfxStyleSheet*, bool)
+SdrPaintView::SetNotPersistDefaultAttr(SfxItemSet const&)
+SdrPaintView::SetStyleSheet(SfxStyleSheet*, bool)
+SdrPaintView::ShowSdrPage(SdrPage*)
+SdrPaintView::TakeActionRect(tools::Rectangle&) const
+SdrPaintView::VisAreaChanged()
+SdrPaintView::onChangeColorConfig()
+SdrPaintView::~SdrPaintView()
+SdrPaintWindow::DestroyPreRenderDevice()
+SdrPaintWindow::DrawOverlay(vcl::Region const&)
+SdrPaintWindow::OutputPreRenderDevice(vcl::Region const&)
+SdrPaintWindow::OutputToRecordingMetaFile() const
+SdrPaintWindow::PreparePreRenderDevice()
+SdrPaintWindow::SetRedrawRegion(vcl::Region const&)
+SdrPaintWindow::impCreateOverlayManager()
+SdrPathObj::BckCreate(SdrDragStat&)
+SdrPathObj::BegCreate(SdrDragStat&)
+SdrPathObj::BrkCreate(SdrDragStat&)
+SdrPathObj::CloneSdrObject(SdrModel&) const
+SdrPathObj::CreateObjectSpecificViewContact()
+SdrPathObj::DoConvertToPolyObj(bool, bool) const
+SdrPathObj::EndCreate(SdrDragStat&, SdrCreateCmd)
+SdrPathObj::GetCreatePointer() const
+SdrPathObj::GetHdlCount() const
+SdrPathObj::GetObjIdentifier() const
+SdrPathObj::GetSnapPoint(unsigned int) const
+SdrPathObj::GetSnapPointCount() const
+SdrPathObj::ImpForceKind()
+SdrPathObj::ImpForceLineAngle()
+SdrPathObj::ImpSetClosed(bool)
+SdrPathObj::IsPolyObj() const
+SdrPathObj::MovCreate(SdrDragStat&)
+SdrPathObj::NbcInsPoint(Point const&, bool)
+SdrPathObj::NbcMirror(Point const&, Point const&)
+SdrPathObj::NbcMove(Size const&)
+SdrPathObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrPathObj::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrPathObj::NbcSetPathPoly(basegfx::B2DPolyPolygon const&)
+SdrPathObj::NbcSetPoint(Point const&, unsigned int)
+SdrPathObj::NbcSetSnapRect(tools::Rectangle const&)
+SdrPathObj::NbcShear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrPathObj::NewGeoData() const
+SdrPathObj::RecalcSnapRect()
+SdrPathObj::RestoreGeoData(SdrObjGeoData const&)
+SdrPathObj::RipPoint(unsigned int, unsigned int&)
+SdrPathObj::SaveGeoData(SdrObjGeoData&) const
+SdrPathObj::SdrPathObj(SdrModel&, SdrPathObj const&)
+SdrPathObj::SetHandleScale(bool)
+SdrPathObj::TRGetBaseGeometry(basegfx::B2DHomMatrix&, basegfx::B2DPolyPolygon&) const
+SdrPathObj::TRSetBaseGeometry(basegfx::B2DHomMatrix const&, basegfx::B2DPolyPolygon const&)
+SdrPathObj::TakeCreatePoly(SdrDragStat const&) const
+SdrPathObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrPathObj::TakeObjNamePlural() const
+SdrPathObj::TakeObjNameSingul() const
+SdrPathObj::TakeUnrotatedSnapRect(tools::Rectangle&) const
+SdrPathObj::TakeXorPoly() const
+SdrPathObj::applySpecialDrag(SdrDragStat&)
+SdrPathObj::beginSpecialDrag(SdrDragStat&) const
+SdrPathObj::getDragPolyPolygon(SdrDragStat const&) const
+SdrPathObj::getObjectPolyPolygon(SdrDragStat const&) const
+SdrPathObj::getSpecialDragComment(SdrDragStat const&) const
+SdrPathObj::getSpecialDragPoly(SdrDragStat const&) const
+SdrPathObj::hasSpecialDrag() const
+SdrPathObj::impGetDAC() const
+SdrPathObj::~SdrPathObj()
+SdrPercentItem::Clone(SfxItemPool*) const
+SdrPercentItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrPercentItem::dumpAsXml(_xmlTextWriter*) const
+SdrPolyEditView::MoveMarkedPoints(Size const&)
+SdrPolyEditView::ResizeMarkedPoints(Point const&, Fraction const&, Fraction const&)
+SdrPolyEditView::RotateMarkedPoints(Point const&, o3tl::strong_int<int, FractionTag<100> >)
+SdrPolyEditView::SdrPolyEditView(SdrModel&, OutputDevice*)
+SdrPolyEditView::~SdrPolyEditView()
+SdrPowerPointImport::CreateTable(SdrObject*, unsigned int const*, SvxMSDffSolverContainer*)
+SdrPowerPointImport::GetCurrentPageId()
+SdrPowerPointImport::GetMasterPageId(unsigned short, PptPageKind) const
+SdrPowerPointImport::GetPageSize() const
+SdrPowerPointImport::ImportExOleObjStg(unsigned int, unsigned int&) const
+SdrPowerPointImport::IsNoteOrHandout(unsigned short) const
+SdrPowerPointImport::IsVerticalText() const
+SdrPowerPointImport::ReadFontCollection()
+SdrRectObj::CloneSdrObject(SdrModel&) const
+SdrRectObj::CreateObjectSpecificViewContact()
+SdrRectObj::GetObjIdentifier() const
+SdrRectObj::GetXPoly() const
+SdrRectObj::ImpCalcXPoly(tools::Rectangle const&, long) const
+SdrRectObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrRectObj::SdrRectObj(SdrModel&)
+SdrRectObj::SdrRectObj(SdrModel&, SdrRectObj const&)
+SdrRectObj::SetXPolyDirty()
+SdrRectObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrRectObj::TakeObjNamePlural() const
+SdrRectObj::TakeObjNameSingul() const
+SdrRectObj::~SdrRectObj()
+SdrSignedPercentItem::Clone(SfxItemPool*) const
+SdrSignedPercentItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrSnapView::BckAction()
+SdrSnapView::BrkAction()
+SdrSnapView::BrkDragHelpLine()
+SdrSnapView::BrkSetPageOrg()
+SdrSnapView::CheckSnap(Point const&, long&, long&, bool&, bool&) const
+SdrSnapView::EndAction()
+SdrSnapView::EndSetPageOrg()
+SdrSnapView::GetDraggedHelpLinePointer() const
+SdrSnapView::IsAction() const
+SdrSnapView::MovAction(Point const&)
+SdrSnapView::MovSetPageOrg(Point const&)
+SdrSnapView::SdrSnapView(SdrModel&, OutputDevice*)
+SdrSnapView::SnapPos(Point&, SdrPageView const*) const
+SdrSnapView::TakeActionRect(tools::Rectangle&) const
+SdrSnapView::~SdrSnapView()
+SdrText::CheckPortionInfo(SdrOutliner const&)
+SdrText::ForceOutlinerParaObject(OutlinerMode)
+SdrText::GetObjectItemSet()
+SdrText::GetOutlinerParaObject() const
+SdrText::GetStyleSheet() const
+SdrText::ReformatText()
+SdrText::RemoveOutlinerParaObject()
+SdrText::SdrText(SdrTextObj&)
+SdrText::SetOutlinerParaObject(std::optional<OutlinerParaObject>)
+SdrText::dumpAsXml(_xmlTextWriter*) const
+SdrText::~SdrText()
+SdrTextAniAmountItem::Clone(SfxItemPool*) const
+SdrTextAniAmountItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextAniAmountItem::HasMetrics() const
+SdrTextAniAmountItem::ScaleMetrics(long, long)
+SdrTextAniDelayItem::Clone(SfxItemPool*) const
+SdrTextAniDelayItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextAniDirectionItem::Clone(SfxItemPool*) const
+SdrTextAniDirectionItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextAniDirectionItem::GetValueCount() const
+SdrTextAniDirectionItem::GetValueTextByPos(unsigned short)
+SdrTextAniDirectionItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrTextAniDirectionItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrTextAniKindItem::Clone(SfxItemPool*) const
+SdrTextAniKindItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextAniKindItem::GetValueCount() const
+SdrTextAniKindItem::GetValueTextByPos(unsigned short)
+SdrTextAniKindItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrTextAniKindItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrTextAniStartInsideItem::Clone(SfxItemPool*) const
+SdrTextAniStopInsideItem::Clone(SfxItemPool*) const
+SdrTextFitToSizeTypeItem::Clone(SfxItemPool*) const
+SdrTextFitToSizeTypeItem::GetBoolValue() const
+SdrTextFitToSizeTypeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextFitToSizeTypeItem::GetValueCount() const
+SdrTextFitToSizeTypeItem::GetValueTextByPos(unsigned short)
+SdrTextFitToSizeTypeItem::HasBoolValue() const
+SdrTextFitToSizeTypeItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrTextFitToSizeTypeItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrTextFitToSizeTypeItem::SetBoolValue(bool)
+SdrTextFitToSizeTypeItem::operator==(SfxPoolItem const&) const
+SdrTextHorzAdjustItem::Clone(SfxItemPool*) const
+SdrTextHorzAdjustItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextHorzAdjustItem::GetValueCount() const
+SdrTextHorzAdjustItem::GetValueTextByPos(unsigned short)
+SdrTextHorzAdjustItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SdrTextHorzAdjustItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrTextObj::AddToHdlList(SdrHdlList&) const
+SdrTextObj::AdjustRectToTextDistance(tools::Rectangle&) const
+SdrTextObj::CloneSdrObject(SdrModel&) const
+SdrTextObj::CreateObjectSpecificProperties()
+SdrTextObj::CreateObjectSpecificViewContact()
+SdrTextObj::DoConvertToPolyObj(bool, bool) const
+SdrTextObj::GetEckenradius() const
+SdrTextObj::GetHdlCount() const
+SdrTextObj::GetMaxTextFrameHeight() const
+SdrTextObj::GetMaxTextFrameWidth() const
+SdrTextObj::GetMinTextFrameWidth() const
+SdrTextObj::GetNextLinkInChain() const
+SdrTextObj::GetObjIdentifier() const
+SdrTextObj::GetPrevLinkInChain() const
+SdrTextObj::GetPreventChainable() const
+SdrTextObj::GetTextChain() const
+SdrTextObj::GetTextHorizontalAdjust(SfxItemSet const&) const
+SdrTextObj::GetTextLeftDistance() const
+SdrTextObj::GetTextLowerDistance() const
+SdrTextObj::GetTextRightDistance() const
+SdrTextObj::GetTextScrollMetaFileAndRectangle(tools::Rectangle&, tools::Rectangle&)
+SdrTextObj::GetTextUpperDistance() const
+SdrTextObj::GetTextVerticalAdjust(SfxItemSet const&) const
+SdrTextObj::HasTextColumnsNumber() const
+SdrTextObj::HasTextColumnsSpacing() const
+SdrTextObj::HasTextImpl(SdrOutliner const*)
+SdrTextObj::ImpAutoFitText(SdrOutliner&) const
+SdrTextObj::ImpAutoFitText(SdrOutliner&, Size const&, bool) const
+SdrTextObj::ImpCanConvTextToCurve() const
+SdrTextObj::ImpCheckShear()
+SdrTextObj::ImpConvertAddText(std::unique_ptr<SdrObject, SdrObjectFreeOp>, bool) const
+SdrTextObj::ImpConvertMakeObj(basegfx::B2DPolyPolygon const&, bool, bool) const
+SdrTextObj::ImpDragCalcRect(SdrDragStat const&) const
+SdrTextObj::ImpJustifyRect(tools::Rectangle&)
+SdrTextObj::ImpSetCharStretching(SdrOutliner&, Size const&, Size const&, Fraction&)
+SdrTextObj::ImpSetContourPolygon(SdrOutliner&, tools::Rectangle const&, bool) const
+SdrTextObj::ImpSetTextEditParams() const
+SdrTextObj::ImpSetTextStyleSheetListeners()
+SdrTextObj::IsChainable() const
+SdrTextObj::IsContourTextFrame() const
+SdrTextObj::IsFitToSize() const
+SdrTextObj::IsHideContour() const
+SdrTextObj::IsTopToBottom() const
+SdrTextObj::LoadText(rtl::OUString const&, unsigned short)
+SdrTextObj::NbcMirror(Point const&, Point const&)
+SdrTextObj::NbcMove(Size const&)
+SdrTextObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrTextObj::NbcRotate(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, double)
+SdrTextObj::NbcSetEckenradius(long)
+SdrTextObj::NbcSetSnapRect(tools::Rectangle const&)
+SdrTextObj::NbcSetText(SvStream&, rtl::OUString const&, EETextFormat)
+SdrTextObj::NbcShear(Point const&, o3tl::strong_int<int, FractionTag<100> >, double, bool)
+SdrTextObj::ReleaseTextLink()
+SdrTextObj::ReloadLinkedText(bool)
+SdrTextObj::RemoveOutlinerCharacterAttribs(std::vector<unsigned short, std::allocator<unsigned short> > const&)
+SdrTextObj::RestoreGeoData(SdrObjGeoData const&)
+SdrTextObj::SdrTextObj(SdrModel&)
+SdrTextObj::SdrTextObj(SdrModel&, SdrObjKind)
+SdrTextObj::SdrTextObj(SdrModel&, SdrObjKind, tools::Rectangle const&)
+SdrTextObj::SdrTextObj(SdrModel&, SdrTextObj const&)
+SdrTextObj::SdrTextObj(SdrModel&, tools::Rectangle const&)
+SdrTextObj::SetNextLinkInChain(SdrTextObj*)
+SdrTextObj::SetText(SvStream&, rtl::OUString const&, EETextFormat)
+SdrTextObj::SetTextAnimationAllowed(bool)
+SdrTextObj::SetTextColumnsNumber(short)
+SdrTextObj::SetTextColumnsSpacing(int)
+SdrTextObj::SetupOutlinerFormatting(SdrOutliner&, tools::Rectangle&) const
+SdrTextObj::TakeCreatePoly(SdrDragStat const&) const
+SdrTextObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+SdrTextObj::TakeObjNamePlural() const
+SdrTextObj::TakeObjNameSingul() const
+SdrTextObj::TakeXorPoly() const
+SdrTextObj::UpdateOutlinerFormatting(SdrOutliner&, tools::Rectangle&) const
+SdrTextObj::applySpecialDrag(SdrDragStat&)
+SdrTextObj::hasSpecialDrag() const
+SdrTextObj::impDecomposeAutoFitTextPrimitive(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SdrAutoFitTextPrimitive2D const&, drawinglayer::geometry::ViewInformation2D const&) const
+SdrTextObj::impDecomposeBlockTextPrimitive(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SdrBlockTextPrimitive2D const&, drawinglayer::geometry::ViewInformation2D const&) const
+SdrTextObj::impDecomposeBlockTextPrimitiveDirect(drawinglayer::primitive2d::Primitive2DContainer&, SdrOutliner&, basegfx::B2DHomMatrix const&, basegfx::B2DHomMatrix const&, basegfx::B2DRange const&)
+SdrTextObj::impDecomposeChainedTextPrimitive(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SdrChainedTextPrimitive2D const&, drawinglayer::geometry::ViewInformation2D const&) const
+SdrTextObj::impDecomposeContourTextPrimitive(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SdrContourTextPrimitive2D const&, drawinglayer::geometry::ViewInformation2D const&) const
+SdrTextObj::impDecomposePathTextPrimitive(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SdrPathTextPrimitive2D const&, drawinglayer::geometry::ViewInformation2D const&) const
+SdrTextObj::impDecomposeStretchTextPrimitive(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SdrStretchTextPrimitive2D const&, drawinglayer::geometry::ViewInformation2D const&) const
+SdrTextObj::impGetBlinkTextTiming(drawinglayer::animation::AnimationEntryList&) const
+SdrTextObj::impGetScrollTextTiming(drawinglayer::animation::AnimationEntryList&, double, double) const
+SdrTextObj::impHandleChainingEventsDuringDecomposition(SdrOutliner&) const
+SdrTextObj::onChainingEvent()
+SdrTextObj::~SdrTextObj()
+SdrTextVertAdjustItem::Clone(SfxItemPool*) const
+SdrTextVertAdjustItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrTextVertAdjustItem::GetValueCount() const
+SdrTextVertAdjustItem::GetValueTextByPos(unsigned short)
+SdrTextVertAdjustItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SdrTextVertAdjustItem::dumpAsXml(_xmlTextWriter*) const
+SdrUndoAttrObj::ensureStyleSheetInStyleSheetPool(SfxStyleSheetBasePool&, SfxStyleSheet&)
+SdrUndoDelPage::CanSdrRepeat(SdrView&) const
+SdrUndoDelPage::GetComment() const
+SdrUndoDelPage::GetSdrRepeatComment() const
+SdrUndoDelPage::Redo()
+SdrUndoDelPage::SdrRepeat(SdrView&)
+SdrUndoDelPage::Undo()
+SdrUndoDelPage::clearFillBitmap()
+SdrUndoDelPage::queryFillBitmap(SfxItemSet const&)
+SdrUndoDelPage::restoreFillBitmap()
+SdrUndoDelPage::~SdrUndoDelPage()
+SdrUndoFactory::CreateUndoAttrObject(SdrObject&, bool, bool)
+SdrUndoFactory::CreateUndoDeleteObject(SdrObject&, bool)
+SdrUndoFactory::CreateUndoGeoObject(SdrObject&)
+SdrUndoFactory::CreateUndoObjectSetText(SdrObject&, int)
+SdrUndoFactory::CreateUndoObjectStrAttr(SdrObject&, SdrUndoObjStrAttr::ObjStrAttrType, rtl::OUString const&, rtl::OUString const&)
+SdrUndoFactory::CreateUndoRemoveObject(SdrObject&)
+SdrUndoFactory::CreateUndoReplaceObject(SdrObject&, SdrObject&)
+SdrUndoGroup::CanSdrRepeat(SdrView&) const
+SdrUndoGroup::GetComment() const
+SdrUndoGroup::GetSdrRepeatComment() const
+SdrUndoGroup::Redo()
+SdrUndoGroup::SdrRepeat(SdrView&)
+SdrUndoGroup::Undo()
+SdrUndoInsertObj::Redo()
+SdrUndoInsertObj::Undo()
+SdrUndoManager::SetEndTextEditHdl(Link<SdrUndoManager*, void> const&)
+SdrUndoMoveObj::CanSdrRepeat(SdrView&) const
+SdrUndoMoveObj::GetComment() const
+SdrUndoMoveObj::GetSdrRepeatComment() const
+SdrUndoMoveObj::Redo()
+SdrUndoMoveObj::SdrRepeat(SdrView&)
+SdrUndoMoveObj::Undo()
+SdrUndoMoveObj::~SdrUndoMoveObj()
+SdrUndoNewObj::GetComment() const
+SdrUndoNewObj::Redo()
+SdrUndoNewObj::Undo()
+SdrUndoNewPage::GetComment() const
+SdrUndoNewPage::Redo()
+SdrUndoNewPage::Undo()
+SdrUndoObj::GetDescriptionStringForObject(SdrObject const&, TranslateId, bool)
+SdrUndoObj::ImpGetDescriptionStr(TranslateId, bool) const
+SdrUndoObj::ImpShowPageOfThisObject()
+SdrUndoObjList::SetOwner(bool)
+SdrUndoObjList::~SdrUndoObjList()
+SdrUndoObjSetText::AfterSetText()
+SdrUndoObjSetText::IsDifferent() const
+SdrUndoObjectLayerChange::Redo()
+SdrUndoObjectLayerChange::Undo()
+SdrUndoPageList::~SdrUndoPageList()
+SdrUndoPageMasterPage::~SdrUndoPageMasterPage()
+SdrUndoReplaceObj::SetNewOwner(bool)
+SdrUndoReplaceObj::SetOldOwner(bool)
+SdrUnoObj::CloneSdrObject(SdrModel&) const
+SdrUnoObj::GetObjIdentifier() const
+SdrView::BegMark(Point const&, bool, bool)
+SdrView::DoMouseEvent(SdrViewEvent const&)
+SdrVirtObj::CreateObjectSpecificViewContact()
+SdrVirtObj::GetCurrentBoundRect() const
+SdrVirtObj::GetLastBoundRect() const
+SdrVirtObj::GetLogicRect() const
+SdrVirtObj::GetSnapRect() const
+SdrVirtObj::Move(Size const&)
+SdrVirtObj::NbcMove(Size const&)
+SdrVirtObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+SdrVirtObj::NbcSetLogicRect(tools::Rectangle const&)
+SdrVirtObj::NbcSetSnapRect(tools::Rectangle const&)
+SdrVirtObj::RecalcBoundRect()
+SdrVirtObj::RecalcSnapRect()
+SdrVirtObj::Resize(Point const&, Fraction const&, Fraction const&, bool)
+SdrVirtObj::SetLogicRect(tools::Rectangle const&)
+SdrVirtObj::SetSnapRect(tools::Rectangle const&)
+SdrVirtObj::TakeXorPoly() const
+SdrYesNoItem::Clone(SfxItemPool*) const
+SdrYesNoItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SdrYesNoItem::GetValueTextByVal(bool) const
+SearchAttrItemList::Clear()
+SearchAttrItemList::Put(SfxItemSet const&)
+SearchAttrItemList::SearchAttrItemList(SearchAttrItemList&&)
+SelectionEngine::CaptureMouse()
+SelectionListenerMultiplexer::acquire()
+SelectionListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+SelectionListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+SelectionListenerMultiplexer::release()
+SetExecutionEnvironment
+SfxAllEnumItem::Clone(SfxItemPool*) const
+SfxAllEnumItem::SfxAllEnumItem(SfxAllEnumItem const&)
+SfxAllEnumItem::operator==(SfxPoolItem const&) const
+SfxAllItemSet::Clone(bool, SfxItemPool*) const
+SfxAllItemSet::CloneAsValue(bool, SfxItemPool*) const
+SfxApplication::Deinitialize()
+SfxApplication::GetDdeService() const
+SfxApplication::GetFreeIndex()
+SfxApplication::GetProgress() const
+SfxApplication::GetSidebarTheme()
+SfxApplication::GetStaticInterface()
+SfxApplication::InitInterface_Impl()
+SfxApplication::InitializeDde()
+SfxApplication::Invalidate(unsigned short)
+SfxApplication::MacroOrganizer(weld::Window*, short)
+SfxApplication::RegisterInterface(SfxModule const*)
+SfxApplication::ReleaseIndex(unsigned short)
+SfxApplication::SfxApplication()
+SfxApplication::~SfxApplication()
+SfxBaseController::GetViewShell_Impl() const
+SfxBaseModel::IsInitialized() const
+SfxBaseModel::MethodEntryCheck(bool) const
+SfxBaseModel::changing()
+SfxBaseModel::getBoolPropertyValue(rtl::OUString const&)
+SfxBaseModel::getUIConfigurationManager2()
+SfxBaseModel::impl_getPrintHelper()
+SfxBindings::GetStateCache(unsigned short)
+SfxBindings::HidePopups(bool)
+SfxBindings::Register(SfxControllerItem&)
+SfxBindings::Release(SfxControllerItem&)
+SfxBindings::SetActiveFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+SfxBoolItem::Clone(SfxItemPool*) const
+SfxBroadcaster::SfxBroadcaster(SfxBroadcaster const&)
+SfxChildWindow::CreateChildWindow(unsigned short, vcl::Window*, SfxBindings*, SfxChildWinInfo const&)
+SfxChildWindow::Destroy()
+SfxChildWindow::GetFrame() const
+SfxChildWindow::GetPosition() const
+SfxChildWindow::IsHideNotDelete() const
+SfxChildWindow::SaveStatus(SfxChildWinInfo const&)
+SfxChildWindow::SetFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+SfxChildWindow::WantsFocus() const
+SfxClassificationHelper::GetBACName(SfxClassificationPolicyType) const
+SfxClassificationHelper::GetImpactLevel()
+SfxClassificationHelper::GetImpactLevelType()
+SfxClassificationHelper::GetImpactScale()
+SfxClassificationHelper::HasImpactLevel()
+SfxClassificationHelper::IsClassified(com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> const&)
+SfxClassificationHelper::PROP_DOCWATERMARK()
+SfxClassificationHelper::UpdateInfobar(SfxViewFrame&)
+SfxCommonPrintOptionsTabPage::DeactivatePage(SfxItemSet*)
+SfxCommonPrintOptionsTabPage::FillItemSet(SfxItemSet*)
+SfxCommonPrintOptionsTabPage::Reset(SfxItemSet const*)
+SfxCommonPrintOptionsTabPage::SfxCommonPrintOptionsTabPage(weld::Container*, weld::DialogController*, SfxItemSet const&)
+SfxCommonPrintOptionsTabPage::~SfxCommonPrintOptionsTabPage()
+SfxControllerItem::Bind(unsigned short, SfxBindings*)
+SfxControllerItem::ChangeItemLink(SfxControllerItem*)
+SfxControllerItem::GetItemLink()
+SfxControllerItem::GetItemState(SfxPoolItem const*)
+SfxControllerItem::IsBound() const
+SfxControllerItem::SetId(unsigned short)
+SfxDispatcher::Execute(unsigned short, SfxCallMode, SfxItemSet const*, SfxItemSet const*, unsigned short)
+SfxDispatcher::Execute_(SfxShell&, SfxSlot const&, SfxRequest&, SfxCallMode)
+SfxDispatcher::FillState_(SfxSlotServer const&, SfxItemSet&, SfxSlot const*)
+SfxDispatcher::FindServer_(unsigned short, SfxSlotServer&)
+SfxDispatcher::FlushImpl()
+SfxDispatcher::GetShellLevel(SfxShell const&)
+SfxDispatcher::GetSlot(rtl::OUString const&)
+SfxDispatcher::HideUI(bool)
+SfxDispatcher::IsActive(SfxShell const&)
+SfxDispatcher::IsAppDispatcher() const
+SfxDispatcher::IsFlushed() const
+SfxDispatcher::PostMsgHandler(std::unique_ptr<SfxRequest, std::default_delete<SfxRequest> >)
+SfxDispatcher::SfxDispatcher()
+SfxDockingWindow::CalcAlignment(Point const&, tools::Rectangle&)
+SfxDocumentInfoDialog::PageCreated(rtl::OString const&, SfxTabPage&)
+SfxDocumentInfoItem::AddCustomProperty(rtl::OUString const&, com::sun::star::uno::Any const&)
+SfxDocumentInfoItem::ClearCustomProperties()
+SfxDocumentInfoItem::Clone(SfxItemPool*) const
+SfxDocumentInfoItem::GetCustomProperties() const
+SfxDocumentInfoItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxDocumentInfoItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxDocumentInfoItem::SetCmisProperties(com::sun::star::uno::Sequence<com::sun::star::document::CmisProperty> const&)
+SfxDocumentInfoItem::SetDeleteUserData(bool)
+SfxDocumentInfoItem::SetUseThumbnailSave(bool)
+SfxDocumentInfoItem::SetUseUserData(bool)
+SfxDocumentInfoItem::SfxDocumentInfoItem()
+SfxDocumentInfoItem::SfxDocumentInfoItem(SfxDocumentInfoItem const&)
+SfxDocumentInfoItem::SfxDocumentInfoItem(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> const&, com::sun::star::uno::Sequence<com::sun::star::document::CmisProperty> const&, bool, bool)
+SfxDocumentInfoItem::UpdateDocumentInfo(com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> const&, bool) const
+SfxDocumentInfoItem::operator==(SfxPoolItem const&) const
+SfxDocumentInfoItem::resetUserData(rtl::OUString const&)
+SfxDocumentInfoItem::~SfxDocumentInfoItem()
+SfxDocumentTemplates::Copy(unsigned short, unsigned short, unsigned short, unsigned short)
+SfxDocumentTemplates::CopyFrom(unsigned short, unsigned short, rtl::OUString&)
+SfxDocumentTemplates::CopyTo(unsigned short, unsigned short, rtl::OUString const&) const
+SfxDocumentTemplates::Delete(unsigned short, unsigned short)
+SfxDocumentTemplates::GetFull(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString&)
+SfxDocumentTemplates::GetRegionName(unsigned short) const
+SfxDocumentTemplates::GetTemplateTargetURLFromComponent(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SfxDocumentTemplates::InsertDir(rtl::OUString const&, unsigned short)
+SfxDocumentTemplates::InsertTemplate(unsigned short, unsigned short, rtl::OUString const&, rtl::OUString const&)
+SfxDocumentTemplates::Move(unsigned short, unsigned short, unsigned short, unsigned short)
+SfxDocumentTemplates::ReInitFromComponent()
+SfxDocumentTemplates::SetName(rtl::OUString const&, unsigned short, unsigned short)
+SfxDocumentTemplates::Update()
+SfxErrorHandler::GetErrorString(ErrCode, rtl::OUString&) const
+SfxEventNamesItem::Clone(SfxItemPool*) const
+SfxEventNamesItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxEventNamesItem::operator==(SfxPoolItem const&) const
+SfxEventNamesList::operator=(SfxEventNamesList const&)
+SfxExtItemPropertySetInfo::getByName(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SfxExtItemPropertySetInfo::getProperties()
+SfxExtItemPropertySetInfo::getPropertyByName(rtl::OUString const&)
+SfxExtItemPropertySetInfo::hasPropertyByName(rtl::OUString const&)
+SfxExtItemPropertySetInfo::~SfxExtItemPropertySetInfo()
+SfxFilter::GetTypeFromStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SfxFilter::SfxFilter(rtl::OUString const&, rtl::OUString const&)
+SfxFilterContainer::GetAnyFilter(SfxFilterFlags, SfxFilterFlags) const
+SfxFilterMatcher::GetAnyFilter(SfxFilterFlags, SfxFilterFlags) const
+SfxFilterMatcher::GetFilter4UIName(std::basic_string_view<char16_t, std::char_traits<char16_t> >, SfxFilterFlags, SfxFilterFlags) const
+SfxFilterMatcher::GetFilterForProps(com::sun::star::uno::Sequence<com::sun::star::beans::NamedValue> const&, SfxFilterFlags, SfxFilterFlags) const
+SfxFilterMatcher::GuessFilterControlDefaultUI(SfxMedium&, std::shared_ptr<SfxFilter const>&, SfxFilterFlags, SfxFilterFlags) const
+SfxFlagItem::Clone(SfxItemPool*) const
+SfxFlagItem::GetFlagCount() const
+SfxFrame::CancelTransfers()
+SfxFrame::Create(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+SfxFrame::CreateBlankFrame()
+SfxFrame::DoClose()
+SfxFrame::GetHasTitle() const
+SfxFrame::Resize()
+SfxFrame::UpdateDescriptor(SfxObjectShell const*)
+SfxFrame::~SfxFrame()
+SfxFrameDescriptor::GetArgs()
+SfxFrameDescriptor::SetActualURL()
+SfxFrameDescriptor::SetURL(rtl::OUString const&)
+SfxFrameItem::Clone(SfxItemPool*) const
+SfxFrameItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxFrameItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxFrameItem::SfxFrameItem(SfxFrame*)
+SfxFrameItem::operator==(SfxPoolItem const&) const
+SfxGlobalNameItem::Clone(SfxItemPool*) const
+SfxGlobalNameItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxGlobalNameItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxGlobalNameItem::SfxGlobalNameItem()
+SfxGlobalNameItem::operator==(SfxPoolItem const&) const
+SfxGrabBagItem::operator==(SfxPoolItem const&) const
+SfxHelp::CreateHelpURL(rtl::OUString const&, rtl::OUString const&)
+SfxHelp::GetCurrentModuleIdentifier()
+SfxHelp::GetDefaultHelpModule()
+SfxHelp::GetHelpText(rtl::OUString const&, vcl::Window const*)
+SfxHelp::GetHelpText(rtl::OUString const&, weld::Widget const*)
+SfxHelp::SfxHelp()
+SfxHelp::~SfxHelp()
+SfxHyphenRegionItem::Clone(SfxItemPool*) const
+SfxHyphenRegionItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxHyphenRegionItem::operator==(SfxPoolItem const&) const
+SfxImageItem::Clone(SfxItemPool*) const
+SfxImageItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxImageItem::SfxImageItem(SfxImageItem const&)
+SfxImageItem::operator==(SfxPoolItem const&) const
+SfxInPlaceClient::GetObjectMiscStatus() const
+SfxInPlaceClient::Invalidate()
+SfxInPlaceClient::IsObjectUIActive() const
+SfxInPlaceClient::IsUIActive() const
+SfxInPlaceClient::ResetObject()
+SfxInPlaceClient::SetObjectState(int)
+SfxInfoBarContainerChild::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SfxInfoBarContainerChild::GetInfo() const
+SfxInfoBarContainerChild::RegisterChildWindow(bool, SfxModule*, SfxChildWindowFlags)
+SfxInfoBarContainerChild::SfxInfoBarContainerChild(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SfxInfoBarContainerChild::Update()
+SfxInfoBarContainerChild::~SfxInfoBarContainerChild()
+SfxInfoBarWindow::DoLayout()
+SfxInfoBarWindow::Layout()
+SfxInfoBarWindow::SetCloseButtonImage()
+SfxInfoBarWindow::SetForeAndBackgroundColors(InfobarType)
+SfxInfoBarWindow::SfxInfoBarWindow(vcl::Window*, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, InfobarType, bool)
+SfxInfoBarWindow::Update(rtl::OUString const&, rtl::OUString const&, InfobarType)
+SfxInfoBarWindow::dispose()
+SfxInfoBarWindow::~SfxInfoBarWindow()
+SfxInt64Item::Clone(SfxItemPool*) const
+SfxInt64Item::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxInt64Item::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxInt64Item::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxInt64Item::operator==(SfxPoolItem const&) const
+SfxIntegerListItem::Clone(SfxItemPool*) const
+SfxIntegerListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxIntegerListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxIntegerListItem::SfxIntegerListItem()
+SfxIntegerListItem::operator==(SfxPoolItem const&) const
+SfxInterface::GetChildWindowCount() const
+SfxInterface::GetChildWindowFeature(unsigned short) const
+SfxInterface::GetChildWindowId(unsigned short) const
+SfxInterface::GetObjectBarCount() const
+SfxInterface::GetObjectBarFeature(unsigned short) const
+SfxInterface::GetObjectBarFlags(unsigned short) const
+SfxInterface::GetObjectBarId(unsigned short) const
+SfxInterface::GetObjectBarPos(unsigned short) const
+SfxInterface::GetPopupMenuName() const
+SfxInterface::GetRealSlot(SfxSlot const*) const
+SfxInterface::GetStatusBarId() const
+SfxInterface::IsObjectBarVisible(unsigned short) const
+SfxInterface::SetSlotMap(SfxSlot&, unsigned short)
+SfxInterface::~SfxInterface()
+SfxItemPool::CheckItemInPool(SfxPoolItem const*) const
+SfxItemPool::FillItemIdRanges_Impl(WhichRangesContainer&) const
+SfxItemPool::GetDefaultMetric() const
+SfxItemPool::GetIndex_Impl(unsigned short) const
+SfxItemPool::GetSize_Impl() const
+SfxItemPool::IsItemPoolable(unsigned short) const
+SfxItemPool::ReleaseDefaults(std::vector<SfxPoolItem*, std::allocator<SfxPoolItem*> >*, bool)
+SfxItemPool::dumpAsXml(_xmlTextWriter*) const
+SfxItemPropertyMap::getProperties() const
+SfxItemPropertyMap::getPropertyByName(rtl::OUString const&) const
+SfxItemPropertySetInfo::getProperties()
+SfxItemPropertySetInfo::getPropertyByName(rtl::OUString const&)
+SfxItemPropertySetInfo::hasPropertyByName(rtl::OUString const&)
+SfxItemPropertySetInfo::~SfxItemPropertySetInfo()
+SfxItemSet::SfxItemSet(SfxItemPool&, SfxItemSet::SfxAllItemSetFlag)
+SfxItemSet::SfxItemSet(SfxItemPool&, WhichRangesContainer const&, unsigned long)
+SfxListUndoAction::CanRepeat(SfxRepeatTarget&) const
+SfxListUndoAction::GetComment() const
+SfxListUndoAction::GetRepeatComment(SfxRepeatTarget&) const
+SfxListUndoAction::GetViewShellId() const
+SfxListUndoAction::Merge(SfxUndoAction*)
+SfxListUndoAction::Redo()
+SfxListUndoAction::RedoWithContext(SfxUndoContext&)
+SfxListUndoAction::Repeat(SfxRepeatTarget&)
+SfxListUndoAction::SfxListUndoAction(rtl::OUString const&, rtl::OUString const&, unsigned short, o3tl::strong_int<int, ViewShellIdTag>, SfxUndoArray*)
+SfxListUndoAction::Undo()
+SfxListUndoAction::UndoWithContext(SfxUndoContext&)
+SfxListUndoAction::dumpAsXml(_xmlTextWriter*) const
+SfxListUndoAction::~SfxListUndoAction()
+SfxListener::RemoveBroadcaster_Impl(SfxBroadcaster&)
+SfxLockBytesItem::Clone(SfxItemPool*) const
+SfxLockBytesItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxLockBytesItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxLockBytesItem::SfxLockBytesItem()
+SfxLockBytesItem::operator==(SfxPoolItem const&) const
+SfxLockBytesItem::~SfxLockBytesItem()
+SfxLokHelper::createView(SfxViewFrame*, o3tl::strong_int<int, ViewShellDocIdTag>)
+SfxLokHelper::getDefaultLanguage()
+SfxLokHelper::getViewOfId(int)
+SfxLokHelper::notifyAllViews(int, rtl::OString const&)
+SfxLokHelper::notifyWindow(SfxViewShell const*, unsigned int, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::vector<std::pair<rtl::OString const, rtl::OString const>, std::allocator<std::pair<rtl::OString const, rtl::OString const> > > const&)
+SfxLokHelper::sendUnoStatus(SfxViewShell const*, SfxPoolItem const*)
+SfxMacroInfoItem::Clone(SfxItemPool*) const
+SfxMacroInfoItem::operator==(SfxPoolItem const&) const
+SfxMailModel::AddToAddress(rtl::OUString const&)
+SfxMailModel::SaveAndSend(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, rtl::OUString const&)
+SfxMailModel::SaveDocumentAsFormat(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, rtl::OUString const&, rtl::OUString&)
+SfxMailModel::ShowFilterOptionsDialog(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&, com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool, int&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+SfxMedium::AddToCheckEditableWorkerList()
+SfxMedium::CancelCheckEditableEntry(bool)
+SfxMedium::CheckCanGetLockfile() const
+SfxMedium::CheckFileDate(com::sun::star::util::DateTime const&)
+SfxMedium::CloseAndRelease()
+SfxMedium::CloseInStream()
+SfxMedium::CloseStorage()
+SfxMedium::CompleteReOpen()
+SfxMedium::CreatePasswordToModifyHash(rtl::OUString const&, bool)
+SfxMedium::CreateTempCopyWithExt(rtl::OUString const&)
+SfxMedium::CreateTempFile(bool)
+SfxMedium::CreateTempFileNoCopy()
+SfxMedium::DisableFileSync(bool)
+SfxMedium::DisableUnlockWebDAV(bool)
+SfxMedium::DocNeedsFileDateCheck() const
+SfxMedium::GetCheckEditableMutex() const
+SfxMedium::GetContent() const
+SfxMedium::GetInitFileDate(bool)
+SfxMedium::GetLastStorageCreationState() const
+SfxMedium::GetOpenMode() const
+SfxMedium::GetVersionList(bool)
+SfxMedium::GetVersionList(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SfxMedium::GetWorkerReloadEvent() const
+SfxMedium::IsExpired() const
+SfxMedium::IsInCheckIn() const
+SfxMedium::IsOpen() const
+SfxMedium::IsOriginallyLoadedReadOnly() const
+SfxMedium::IsOriginallyReadOnly() const
+SfxMedium::IsReadOnly() const
+SfxMedium::LockOrigFileOnDemand(bool, bool, bool, o3tl::enumarray<LockFileComponent, rtl::OUString>*)
+SfxMedium::ReOpen()
+SfxMedium::ResetError()
+SfxMedium::SetArgs(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SfxMedium::SetDoneLink(Link<void*, void> const&)
+SfxMedium::SetHasEmbeddedObjects(bool)
+SfxMedium::SetInCheckIn(bool)
+SfxMedium::SetName(rtl::OUString const&, bool)
+SfxMedium::SetOpenMode(StreamMode, bool)
+SfxMedium::SetOriginallyReadOnly(bool)
+SfxMedium::SetWorkerReloadEvent(ImplSVEvent*)
+SfxMedium::SetWritableForUserOnly(rtl::OUString const&)
+SfxMedium::SfxMedium(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SfxMedium::ShowLockFileProblemDialog(SfxMedium::MessageDlg)
+SfxMedium::ShowLockedDocumentDialog(o3tl::enumarray<LockFileComponent, rtl::OUString> const&, bool, bool, bool)
+SfxMedium::SwitchDocumentToFile(rtl::OUString const&)
+SfxMedium::SwitchDocumentToTempFile()
+SfxMedium::UnlockFile(bool)
+SfxModelessDialogController::Init(SfxBindings*, SfxChildWindow*)
+SfxModule::RegisterChildWindow(SfxChildWinFactory const&)
+SfxModule::RegisterInterface(SfxModule const*)
+SfxModule::RegisterStatusBarControl(SfxStbCtrlFactory const&)
+SfxModule::RegisterToolBoxControl(SfxTbxCtrlFactory const&)
+SfxNewFileDialog::GetSelectedTemplatePos() const
+SfxObjectFactory::GetDocumentServiceName() const
+SfxObjectFactory::GetFactoryURL() const
+SfxObjectFactory::GetModule() const
+SfxObjectFactory::GetViewFactoryByViewName(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SfxObjectFactory::SetStandardTemplate(rtl::OUString const&, rtl::OUString const&)
+SfxObjectFactory::SetSystemTemplate(rtl::OUString const&, rtl::OUString const&)
+SfxObjectItem::Clone(SfxItemPool*) const
+SfxObjectItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxObjectItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxObjectItem::operator==(SfxPoolItem const&) const
+SfxObjectShell::AcceptStateUpdate() const
+SfxObjectShell::AddToRecentlyUsedList()
+SfxObjectShell::AdjustMacroMode()
+SfxObjectShell::AfterSigning(bool, bool)
+SfxObjectShell::CheckIsReadonly(bool)
+SfxObjectShell::CloseInternal()
+SfxObjectShell::CopyStoragesOfUnknownMediaType(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Sequence<rtl::OUString> const&)
+SfxObjectShell::CreateAndLoadComponent(SfxItemSet const&)
+SfxObjectShell::CreateObject(rtl::OUString const&, SfxObjectCreateMode)
+SfxObjectShell::DoLoadExternal(SfxMedium*)
+SfxObjectShell::DoSave()
+SfxObjectShell::ExportTo(SfxMedium&)
+SfxObjectShell::FlushDocInfo()
+SfxObjectShell::GenerateAndStoreThumbnail(bool, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SfxObjectShell::GetAPIName() const
+SfxObjectShell::GetAutoStyleFilterIndex() const
+SfxObjectShell::GetCurrentComponent()
+SfxObjectShell::GetFirstPageSize() const
+SfxObjectShell::GetMacroCallsSeenWhileLoading() const
+SfxObjectShell::GetPreviewBitmap() const
+SfxObjectShell::GetServiceNameFromFactory(rtl::OUString const&)
+SfxObjectShell::HasValidSignatures() const
+SfxObjectShell::InitInterface_Impl()
+SfxObjectShell::IsAutoLoadLocked() const
+SfxObjectShell::IsOriginallyLoadedReadOnlyMedium() const
+SfxObjectShell::IsOriginallyReadOnlyMedium() const
+SfxObjectShell::IsReadOnlyMedium() const
+SfxObjectShell::LoadOwnFormat(SfxMedium&)
+SfxObjectShell::ModifyChanged()
+SfxObjectShell::QueryHiddenInformation(HiddenWarningFact, weld::Window*)
+SfxObjectShell::ReconnectDdeLinks(SfxObjectShell&)
+SfxObjectShell::RegisterInterface(SfxModule const*)
+SfxObjectShell::ResetFromTemplate(rtl::OUString const&, rtl::OUString const&)
+SfxObjectShell::SaveChildren(bool)
+SfxObjectShell::SetMacroCallsSeenWhileLoading()
+SfxObjectShell::SetNoName()
+SfxObjectShell::SetReadOnly()
+SfxObjectShell::SetSecurityOptOpenReadOnly(bool)
+SfxObjectShell::SignDocumentContent(weld::Window*)
+SfxObjectShell::SwitchChildrenPersistence(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, bool)
+SfxObjectShell::SwitchPersistence(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SfxObjectShell::TemplateDisconnectionAfterLoad()
+SfxObjectShell::UnTrustedScript(rtl::OUString const&)
+SfxObjectShell::UpdateDocInfoForSave()
+SfxObjectShell::WriteThumbnail(bool, com::sun::star::uno::Reference<com::sun::star::io::XStream> const&)
+SfxObjectShell::getPendingInfobars()
+SfxObjectShell::isEditDocLocked() const
+SfxObjectShell::isPrintLocked() const
+SfxObjectShell::isSaveLocked() const
+SfxObjectShell::isScriptAccessAllowed(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+SfxObjectShellItem::Clone(SfxItemPool*) const
+SfxObjectShellItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxObjectShellItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxObjectShellItem::operator==(SfxPoolItem const&) const
+SfxPasswordDialog::ModifyHdl()
+SfxPasswordDialog::SetPasswdText()
+SfxPointItem::Clone(SfxItemPool*) const
+SfxPointItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxPointItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxPointItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxPointItem::SfxPointItem()
+SfxPointItem::operator==(SfxPoolItem const&) const
+SfxPrinter::Clone() const
+SfxPrinter::dispose()
+SfxPrinter::~SfxPrinter()
+SfxProgress::Resume()
+SfxProgress::Suspend()
+SfxRangeItem::Clone(SfxItemPool*) const
+SfxRangeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxRangeItem::operator==(SfxPoolItem const&) const
+SfxRectangleItem::Clone(SfxItemPool*) const
+SfxRectangleItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxRectangleItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxRectangleItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxRectangleItem::SfxRectangleItem()
+SfxRectangleItem::operator==(SfxPoolItem const&) const
+SfxRequest::AllowRecording(bool)
+SfxRequest::AllowsRecording() const
+SfxRequest::ForgetAllArgs()
+SfxRequest::GetCallMode() const
+SfxRequest::GetMacroRecorder(SfxViewFrame const*)
+SfxRequest::IsCancelled() const
+SfxRequest::IsSynchronCall() const
+SfxRequest::ReleaseArgs()
+SfxRequest::SetSynchronCall(bool)
+SfxShell::GetDisableFlags() const
+SfxShell::GetRepeatTarget() const
+SfxShell::GetVerbs() const
+SfxShell::SetDisableFlags(SfxDisableFlags)
+SfxShell::VerbExec(SfxRequest&)
+SfxShell::VerbState(SfxItemSet&)
+SfxSingleTabDialogController::CreateOutputItemSet(SfxItemSet const&)
+SfxSlotPool::GetGroupCount() const
+SfxSlotPool::GetSlotType(unsigned short) const
+SfxSlotPool::NextSlot()
+SfxSlotPool::RegisterInterface(SfxInterface&)
+SfxSlotPool::SeekGroup(unsigned short)
+SfxSlotPool::SeekSlot(unsigned short)
+SfxSlotPool::SfxSlotPool(SfxSlotPool*)
+SfxSlotPool::~SfxSlotPool()
+SfxStatusBarControl::CreateControl(unsigned short, unsigned short, StatusBar*, SfxModule const*)
+SfxStatusBarControl::convertAwtToVCLMouseButtons(short)
+SfxStatusForwarder::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SfxStatusListener::StateChangedAtStatusListener(SfxItemState, SfxPoolItem const*)
+SfxStringItem::Clone(SfxItemPool*) const
+SfxStringListItem::Clone(SfxItemPool*) const
+SfxStringListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxStringListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxStringListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxStringListItem::SfxStringListItem()
+SfxStringListItem::operator==(SfxPoolItem const&) const
+SfxStyleSheetBasePool::Add(SfxStyleSheetBase const&)
+SfxStyleSheetBasePool::ChangeParent(std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&, SfxStyleFamily, bool)
+SfxStyleSheetBasePool::Create(rtl::OUString const&, SfxStyleFamily, SfxStyleSearchBits)
+SfxStyleSheetBasePool::GetIterator_Impl(SfxStyleFamily, SfxStyleSearchBits)
+SfxStyleSheetBasePool::SfxStyleSheetBasePool(SfxStyleSheetBasePool const&)
+SfxStyleSheetBasePool::StoreStyleSheet(rtl::Reference<SfxStyleSheetBase> const&)
+SfxStyleSheetBasePool::operator+=(SfxStyleSheetBasePool const&)
+SfxStyleSheetBasePool::operator=(SfxStyleSheetBasePool const&)
+SfxStyleSheetIterator::Find(rtl::OUString const&)
+SfxStyleSheetIterator::GetSearchFamily() const
+SfxStyleSheetIterator::GetSearchMask() const
+SfxStyleSheetModifiedHint::SfxStyleSheetModifiedHint(rtl::OUString const&, SfxStyleSheetBase&)
+SfxStyleSheetPool::Create(rtl::OUString const&, SfxStyleFamily, SfxStyleSearchBits)
+SfxTabDialogController::LinkStubOkHdl(void*, weld::Button&)
+SfxTabDialogController::RemoveStandardButton()
+SfxTabDialogController::SavePosAndId()
+SfxTabDialogItem::Clone(SfxItemPool*) const
+SfxTabDialogItem::SfxTabDialogItem(SfxTabDialogItem const&, SfxItemPool*)
+SfxTemplateItem::Clone(SfxItemPool*) const
+SfxTemplateItem::GetFlagCount() const
+SfxTemplateItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxTemplateItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxTemplateItem::SfxTemplateItem()
+SfxTemplateItem::operator==(SfxPoolItem const&) const
+SfxTemplateManagerDlg::DefaultTemplateMenuSelectHdl(std::basic_string_view<char, std::char_traits<char> >)
+SfxTemplateManagerDlg::ExtensionsActionHdl()
+SfxTemplateManagerDlg::ImportActionHdl()
+SfxTemplateManagerDlg::OnCategoryDelete()
+SfxTemplateManagerDlg::OnCategoryNew()
+SfxTemplateManagerDlg::OnCategoryRename()
+SfxTemplateManagerDlg::OnTemplateExport()
+SfxTemplateManagerDlg::OnTemplateImportCategory(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SfxTemplateManagerDlg::OnTemplateOpen()
+SfxTemplateManagerDlg::OnTemplateState(ThumbnailViewItem const*)
+SfxTemplateManagerDlg::SearchUpdate()
+SfxTemplateManagerDlg::fillFolderComboBox()
+SfxTemplateManagerDlg::getApplicationSpecificSettings()
+SfxTemplateManagerDlg::getCurrentApplicationFilter() const
+SfxTemplateManagerDlg::getTemplateViewMode() const
+SfxTemplateManagerDlg::localMoveTo(unsigned short)
+SfxTemplateManagerDlg::readSettings()
+SfxTemplateManagerDlg::setDocumentModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+SfxTemplateManagerDlg::setTemplateViewMode(TemplateViewMode)
+SfxTemplateManagerDlg::updateMenuItems()
+SfxTemplateManagerDlg::writeSettings()
+SfxTemplatePanelControl::~SfxTemplatePanelControl()
+SfxToolBoxControl::CreateControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox*, SfxModule const*)
+SfxToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SfxToolBoxControl::RegisterControl(unsigned short, SfxModule*)
+SfxUndoAction::GetDateTime() const
+SfxUndoArray::Remove(unsigned long, unsigned long)
+SfxUndoArray::~SfxUndoArray()
+SfxUndoManager::ImplAddUndoAction_NoNotify(std::unique_ptr<SfxUndoAction, std::default_delete<SfxUndoAction> >, bool, bool, svl::undo::impl::UndoManagerGuard&)
+SfxUndoManager::ImplCheckEmptyActions()
+SfxUndoManager::ImplClearCurrentLevel_NoNotify(svl::undo::impl::UndoManagerGuard&)
+SfxUndoManager::ImplClearRedo(svl::undo::impl::UndoManagerGuard&, bool)
+SfxUndoManager::ImplClearUndo(svl::undo::impl::UndoManagerGuard&)
+SfxUndoManager::ImplEnableUndo_Lock(bool)
+SfxUndoManager::ImplGetRedoActionCount_Lock(bool) const
+SfxUndoManager::ImplIsInListAction_Lock() const
+SfxUndoManager::ImplIsUndoEnabled_Lock() const
+SfxUndoManager::ImplLeaveListAction(bool, svl::undo::impl::UndoManagerGuard&)
+SfxUndoManager::ImplRedo(SfxUndoContext*)
+SfxUndoManager::ImplUndo(SfxUndoContext*)
+SfxUnoAnyItem::Clone(SfxItemPool*) const
+SfxUnoAnyItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxUnoAnyItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxUnoAnyItem::operator==(SfxPoolItem const&) const
+SfxUnoFrameItem::Clone(SfxItemPool*) const
+SfxUnoFrameItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxUnoFrameItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxUnoFrameItem::SfxUnoFrameItem()
+SfxUnoFrameItem::operator==(SfxPoolItem const&) const
+SfxUnoStyleSheet::getUnoTunnelId()
+SfxViewFactory::CreateInstance(SfxViewFrame*, SfxViewShell*)
+SfxViewFactory::GetAPIViewName() const
+SfxViewFactory::GetLegacyViewName() const
+SfxViewFrame::Activate(bool)
+SfxViewFrame::ChildWindowState(SfxItemSet&)
+SfxViewFrame::Close()
+SfxViewFrame::Deactivate(bool)
+SfxViewFrame::DoActivate(bool)
+SfxViewFrame::DoAdjustPosSizePixel(SfxViewShell*, Point const&, Size const&, bool)
+SfxViewFrame::DoDeactivate(bool, SfxViewFrame const*)
+SfxViewFrame::Get(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&, SfxObjectShell const*)
+SfxViewFrame::GetProgress() const
+SfxViewFrame::GetStaticInterface()
+SfxViewFrame::InitInterface_Impl()
+SfxViewFrame::Notify(SfxBroadcaster&, SfxHint const&)
+SfxViewFrame::RegisterInterface(SfxModule const*)
+SfxViewFrame::SetModalMode(bool)
+SfxViewFrame::SetViewFrame(SfxViewFrame*)
+SfxViewFrame::SfxViewFrame(SfxFrame&, SfxObjectShell*)
+SfxViewFrame::UpdateInfoBar(std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&, rtl::OUString const&, InfobarType)
+SfxViewFrame::UpdateTitle()
+SfxViewFrame::~SfxViewFrame()
+SfxViewFrameItem::Clone(SfxItemPool*) const
+SfxViewFrameItem::operator==(SfxPoolItem const&) const
+SfxViewShell::GetActivePrinter() const
+SfxViewShell::GetClipboardNotifier() const
+SfxViewShell::GetPrinter(bool)
+SfxViewShell::InitInterface_Impl()
+SfxViewShell::JumpToMark(rtl::OUString const&)
+SfxViewShell::OutplaceActivated(bool)
+SfxViewShell::RegisterInterface(SfxModule const*)
+SfxViewShell::SetController(SfxBaseController*)
+SfxViewShell::SetCurrentDocument() const
+SfxViewShell::SetLOKLanguageTag(rtl::OUString const&)
+SfxViewShell::SetLOKLocale(rtl::OUString const&)
+SfxViewShell::SetMargin(Size const&)
+SfxViewShell::SetPrinter(SfxPrinter*, SfxPrinterChangeFlags)
+SfxViewShell::StartPrint(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, bool, bool)
+SfxViewShell::TryContextMenuInterception(Menu&, rtl::OUString const&, com::sun::star::ui::ContextMenuExecuteEvent)
+SfxViewShell::isBlockedCommand(rtl::OUString)
+SfxViewShell::setBlockedCommandList(char const*)
+SfxVisibilityItem::Clone(SfxItemPool*) const
+SfxVisibilityItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxVisibilityItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxVisibilityItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxVisibilityItem::operator==(SfxPoolItem const&) const
+SfxVoidItem::Clone(SfxItemPool*) const
+SfxVoidItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SfxVoidItem::IsVoidItem() const
+SfxVoidItem::dumpAsXml(_xmlTextWriter*) const
+SfxVoidItem::operator==(SfxPoolItem const&) const
+SfxWatermarkItem::Clone(SfxItemPool*) const
+SfxWatermarkItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SfxWatermarkItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SfxWatermarkItem::operator==(SfxPoolItem const&) const
+SgaObject::CreateThumb(Graphic const&)
+SgaObject::ReadData(SvStream&, unsigned short&)
+SgaObject::SgaObject()
+SgaObject::SgaObject(SgaObject const&)
+SgaObject::WriteData(SvStream&, rtl::OUString const&) const
+SgaObject::createPreviewBitmapEx(Size const&) const
+ShellResource::GetAutoFormatNameLst_() const
+ShellResource::ShellResource()
+Simplify(SkPath const&, SkPath*)
+Sk3DView::Sk3DView()
+Sk3DView::applyToCanvas(SkCanvas*) const
+Sk3DView::dotWithNormal(float, float, float) const
+Sk3DView::getMatrix(SkMatrix*) const
+Sk3DView::restore()
+Sk3DView::rotateX(float)
+Sk3DView::rotateY(float)
+Sk3DView::rotateZ(float)
+Sk3DView::save()
+Sk3DView::translate(float, float, float)
+Sk3DView::~Sk3DView()
+SkAndroidCodec::MakeFromCodec(std::unique_ptr<SkCodec, std::default_delete<SkCodec> >)
+SkAndroidCodec::MakeFromData(sk_sp<SkData>, SkPngChunkReader*)
+SkAndroidCodec::MakeFromStream(std::unique_ptr<SkStream, std::default_delete<SkStream> >, SkPngChunkReader*)
+SkAndroidCodec::SkAndroidCodec(SkCodec*)
+SkAndroidCodec::computeOutputAlphaType(bool)
+SkAndroidCodec::computeOutputColorSpace(SkColorType, sk_sp<SkColorSpace>)
+SkAndroidCodec::computeOutputColorType(SkColorType)
+SkAndroidCodec::computeSampleSize(SkISize*) const
+SkAndroidCodec::getAndroidPixels(SkImageInfo const&, void*, unsigned long)
+SkAndroidCodec::getAndroidPixels(SkImageInfo const&, void*, unsigned long, SkAndroidCodec::AndroidOptions const*)
+SkAndroidCodec::getSampledDimensions(int) const
+SkAndroidCodec::getSampledSubsetDimensions(int, SkIRect const&) const
+SkAndroidCodec::getSupportedSubset(SkIRect*) const
+SkAndroidCodec::~SkAndroidCodec()
+SkAnnotateLinkToDestination(SkCanvas*, SkRect const&, SkData*)
+SkAnnotateNamedDestination(SkCanvas*, SkPoint const&, SkData*)
+SkAnnotateRectWithURL(SkCanvas*, SkRect const&, SkData*)
+SkBitmap::HeapAllocator::allocPixelRef(SkBitmap*)
+SkBitmap::SkBitmap(SkBitmap const&)
+SkBitmap::SkBitmap(SkBitmap&&)
+SkBitmap::allocPixels()
+SkBitmap::allocPixels(SkBitmap::Allocator*)
+SkBitmap::allocPixels(SkImageInfo const&)
+SkBitmap::allocPixels(SkImageInfo const&, unsigned long)
+SkBitmap::allocPixelsFlags(SkImageInfo const&, unsigned int)
+SkBitmap::erase(unsigned int, SkIRect const&) const
+SkBitmap::extractAlpha(SkBitmap*, SkPaint const*, SkBitmap::Allocator*, SkIPoint*) const
+SkBitmap::extractSubset(SkBitmap*, SkIRect const&) const
+SkBitmap::getBounds(SkIRect*) const
+SkBitmap::getBounds(SkRect*) const
+SkBitmap::getGenerationID() const
+SkBitmap::installMaskPixels(SkMask const&)
+SkBitmap::isImmutable() const
+SkBitmap::operator=(SkBitmap const&)
+SkBitmap::operator=(SkBitmap&&)
+SkBitmap::peekPixels(SkPixmap*) const
+SkBitmap::pixelRefOrigin() const
+SkBitmap::readPixels(SkImageInfo const&, void*, unsigned long, int, int) const
+SkBitmap::readPixels(SkPixmap const&, int, int) const
+SkBitmap::setAlphaType(SkAlphaType)
+SkBitmap::setInfo(SkImageInfo const&, unsigned long)
+SkBitmap::setPixelRef(sk_sp<SkPixelRef>, int, int)
+SkBitmap::setPixels(void*)
+SkBitmap::swap(SkBitmap&)
+SkBitmap::tryAllocPixels(SkBitmap::Allocator*)
+SkBitmap::tryAllocPixelsFlags(SkImageInfo const&, unsigned int)
+SkBitmap::writePixels(SkPixmap const&, int, int)
+SkBlendMode_AsCoeff(SkBlendMode, SkBlendModeCoeff*, SkBlendModeCoeff*)
+SkBlendMode_Name(SkBlendMode)
+SkBlender::Mode(SkBlendMode)
+SkBlenders::Arithmetic(float, float, float, float, bool)
+SkBlurMask::ConvertRadiusToSigma(float)
+SkBlurMask::ConvertSigmaToRadius(float)
+SkCanvas::ImageSetEntry::ImageSetEntry()
+SkCanvas::ImageSetEntry::ImageSetEntry(SkCanvas::ImageSetEntry const&)
+SkCanvas::ImageSetEntry::ImageSetEntry(sk_sp<SkImage const>, SkRect const&, SkRect const&, float, unsigned int)
+SkCanvas::ImageSetEntry::ImageSetEntry(sk_sp<SkImage const>, SkRect const&, SkRect const&, int, float, unsigned int, bool)
+SkCanvas::ImageSetEntry::operator=(SkCanvas::ImageSetEntry const&)
+SkCanvas::ImageSetEntry::~ImageSetEntry()
+SkCanvas::Layer::Layer(sk_sp<SkBaseDevice>, sk_sp<SkImageFilter>, SkPaint const&)
+SkCanvas::MCRec::MCRec(SkBaseDevice*)
+SkCanvas::MCRec::MCRec(SkCanvas::MCRec const*)
+SkCanvas::MCRec::newLayer(sk_sp<SkBaseDevice>, sk_sp<SkImageFilter>, SkPaint const&)
+SkCanvas::MCRec::reset(SkBaseDevice*)
+SkCanvas::MCRec::~MCRec()
+SkCanvas::MakeRasterDirect(SkImageInfo const&, void*, unsigned long, SkSurfaceProps const*)
+SkCanvas::SkCanvas()
+SkCanvas::SkCanvas(SkBitmap const&, SkSurfaceProps const&)
+SkCanvas::SkCanvas(SkBitmap const&, std::unique_ptr<SkRasterHandleAllocator, std::default_delete<SkRasterHandleAllocator> >, void*)
+SkCanvas::SkCanvas(SkIRect const&)
+SkCanvas::SkCanvas(int, int, SkSurfaceProps const*)
+SkCanvas::SkCanvas(sk_sp<SkBaseDevice>)
+SkCanvas::aboutToDraw(SkCanvas*, SkPaint const&, SkRect const*, SkCanvas::CheckForOverwrite, SkCanvas::ShaderOverrideOpacity)
+SkCanvas::accessTopLayerPixels(SkImageInfo*, unsigned long*, SkIPoint*)
+SkCanvas::accessTopRasterHandle() const
+SkCanvas::androidFramework_isClipAA() const
+SkCanvas::androidFramework_setDeviceClipRestriction(SkIRect const&)
+SkCanvas::canDrawBitmapAsSprite(float, float, int, int, SkSamplingOptions const&, SkPaint const&)
+SkCanvas::checkForDeferredSave()
+SkCanvas::clipRRect(SkRRect const&, SkClipOp, bool)
+SkCanvas::clipRegion(SkRegion const&, SkClipOp)
+SkCanvas::clipShader(sk_sp<SkShader>, SkClipOp)
+SkCanvas::computeDeviceClipBounds(bool) const
+SkCanvas::concat(SkM44 const&)
+SkCanvas::doSave()
+SkCanvas::drawAnnotation(SkRect const&, char const*, SkData*)
+SkCanvas::drawArc(SkRect const&, float, float, bool, SkPaint const&)
+SkCanvas::drawAtlas(SkImage const*, SkRSXform const*, SkRect const*, unsigned int const*, int, SkBlendMode, SkSamplingOptions const&, SkRect const*, SkPaint const*)
+SkCanvas::drawCircle(float, float, float, SkPaint const&)
+SkCanvas::drawClippedToSaveBehind(SkPaint const&)
+SkCanvas::drawDRRect(SkRRect const&, SkRRect const&, SkPaint const&)
+SkCanvas::drawDrawable(SkDrawable*, SkMatrix const*)
+SkCanvas::drawDrawable(SkDrawable*, float, float)
+SkCanvas::drawGlyphs(int, unsigned short const*, SkPoint const*, SkPoint, SkFont const&, SkPaint const&)
+SkCanvas::drawGlyphs(int, unsigned short const*, SkPoint const*, unsigned int const*, int, char const*, SkPoint, SkFont const&, SkPaint const&)
+SkCanvas::drawGlyphs(int, unsigned short const*, SkRSXform const*, SkPoint, SkFont const&, SkPaint const&)
+SkCanvas::drawImageLattice(SkImage const*, SkCanvas::Lattice const&, SkRect const&, SkFilterMode, SkPaint const*)
+SkCanvas::drawImageNine(SkImage const*, SkIRect const&, SkRect const&, SkFilterMode, SkPaint const*)
+SkCanvas::drawOval(SkRect const&, SkPaint const&)
+SkCanvas::drawPatch(SkPoint const*, unsigned int const*, SkPoint const*, SkBlendMode, SkPaint const&)
+SkCanvas::drawPicture(SkPicture const*, SkMatrix const*, SkPaint const*)
+SkCanvas::drawPoints(SkCanvas::PointMode, unsigned long, SkPoint const*, SkPaint const&)
+SkCanvas::drawRRect(SkRRect const&, SkPaint const&)
+SkCanvas::drawRegion(SkRegion const&, SkPaint const&)
+SkCanvas::drawRoundRect(SkRect const&, float, float, SkPaint const&)
+SkCanvas::drawSimpleText(void const*, unsigned long, SkTextEncoding, float, float, SkFont const&, SkPaint const&)
+SkCanvas::drawVertices(SkVertices const*, SkBlendMode, SkPaint const&)
+SkCanvas::drawVertices(sk_sp<SkVertices> const&, SkBlendMode, SkPaint const&)
+SkCanvas::experimental_DrawEdgeAAImageSet(SkCanvas::ImageSetEntry const*, int, SkPoint const*, SkMatrix const*, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkCanvas::experimental_DrawEdgeAAQuad(SkRect const&, SkPoint const*, SkCanvas::QuadAAFlags, SkRGBA4f<(SkAlphaType)3> const&, SkBlendMode)
+SkCanvas::findMarkedCTM(char const*, SkM44*) const
+SkCanvas::getBaseLayerSize() const
+SkCanvas::getDeviceClipBounds() const
+SkCanvas::getLocalClipBounds() const
+SkCanvas::getLocalToDevice() const
+SkCanvas::getProps(SkSurfaceProps*) const
+SkCanvas::getSurface() const
+SkCanvas::getTotalMatrix() const
+SkCanvas::imageInfo() const
+SkCanvas::init(sk_sp<SkBaseDevice>)
+SkCanvas::internalConcat44(SkM44 const&)
+SkCanvas::internalDrawDeviceWithFilter(SkBaseDevice*, SkBaseDevice*, SkImageFilter const*, SkPaint const&, SkCanvas::DeviceCompatibleWithFilter, float)
+SkCanvas::internalDrawPaint(SkPaint const&)
+SkCanvas::internalQuickReject(SkRect const&, SkPaint const&, SkMatrix const*)
+SkCanvas::internalRestore()
+SkCanvas::internalSave()
+SkCanvas::internalSaveBehind(SkRect const*)
+SkCanvas::internalSaveLayer(SkCanvas::SaveLayerRec const&, SkCanvas::SaveLayerStrategy)
+SkCanvas::internalSetMatrix(SkM44 const&)
+SkCanvas::internal_private_resetClip()
+SkCanvas::isClipEmpty() const
+SkCanvas::isClipRect() const
+SkCanvas::makeSurface(SkImageInfo const&, SkSurfaceProps const*)
+SkCanvas::markCTM(char const*)
+SkCanvas::onAccessTopLayerPixels(SkPixmap*)
+SkCanvas::onClipPath(SkPath const&, SkClipOp, SkCanvas::ClipEdgeStyle)
+SkCanvas::onClipRRect(SkRRect const&, SkClipOp, SkCanvas::ClipEdgeStyle)
+SkCanvas::onClipRect(SkRect const&, SkClipOp, SkCanvas::ClipEdgeStyle)
+SkCanvas::onClipRegion(SkRegion const&, SkClipOp)
+SkCanvas::onClipShader(sk_sp<SkShader>, SkClipOp)
+SkCanvas::onDiscard()
+SkCanvas::onDrawAnnotation(SkRect const&, char const*, SkData*)
+SkCanvas::onDrawArc(SkRect const&, float, float, bool, SkPaint const&)
+SkCanvas::onDrawAtlas2(SkImage const*, SkRSXform const*, SkRect const*, unsigned int const*, int, SkBlendMode, SkSamplingOptions const&, SkRect const*, SkPaint const*)
+SkCanvas::onDrawBehind(SkPaint const&)
+SkCanvas::onDrawDRRect(SkRRect const&, SkRRect const&, SkPaint const&)
+SkCanvas::onDrawDrawable(SkDrawable*, SkMatrix const*)
+SkCanvas::onDrawEdgeAAImageSet2(SkCanvas::ImageSetEntry const*, int, SkPoint const*, SkMatrix const*, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkCanvas::onDrawEdgeAAQuad(SkRect const&, SkPoint const*, SkCanvas::QuadAAFlags, SkRGBA4f<(SkAlphaType)3> const&, SkBlendMode)
+SkCanvas::onDrawGlyphRunList(SkGlyphRunList const&, SkPaint const&)
+SkCanvas::onDrawImage2(SkImage const*, float, float, SkSamplingOptions const&, SkPaint const*)
+SkCanvas::onDrawImageLattice2(SkImage const*, SkCanvas::Lattice const&, SkRect const&, SkFilterMode, SkPaint const*)
+SkCanvas::onDrawImageRect2(SkImage const*, SkRect const&, SkRect const&, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkCanvas::onDrawOval(SkRect const&, SkPaint const&)
+SkCanvas::onDrawPaint(SkPaint const&)
+SkCanvas::onDrawPatch(SkPoint const*, unsigned int const*, SkPoint const*, SkBlendMode, SkPaint const&)
+SkCanvas::onDrawPath(SkPath const&, SkPaint const&)
+SkCanvas::onDrawPicture(SkPicture const*, SkMatrix const*, SkPaint const*)
+SkCanvas::onDrawPoints(SkCanvas::PointMode, unsigned long, SkPoint const*, SkPaint const&)
+SkCanvas::onDrawRRect(SkRRect const&, SkPaint const&)
+SkCanvas::onDrawRect(SkRect const&, SkPaint const&)
+SkCanvas::onDrawRegion(SkRegion const&, SkPaint const&)
+SkCanvas::onDrawShadowRec(SkPath const&, SkDrawShadowRec const&)
+SkCanvas::onDrawTextBlob(SkTextBlob const*, float, float, SkPaint const&)
+SkCanvas::onDrawVerticesObject(SkVertices const*, SkBlendMode, SkPaint const&)
+SkCanvas::onFlush()
+SkCanvas::onGetProps(SkSurfaceProps*) const
+SkCanvas::onImageInfo() const
+SkCanvas::onNewSurface(SkImageInfo const&, SkSurfaceProps const&)
+SkCanvas::onPeekPixels(SkPixmap*)
+SkCanvas::onResetClip()
+SkCanvas::only_axis_aligned_saveBehind(SkRect const*)
+SkCanvas::peekPixels(SkPixmap*)
+SkCanvas::predrawNotify(SkRect const*, SkPaint const*, SkCanvas::ShaderOverrideOpacity)
+SkCanvas::predrawNotify(bool)
+SkCanvas::private_draw_shadow_rec(SkPath const&, SkDrawShadowRec const&)
+SkCanvas::quickReject(SkPath const&) const
+SkCanvas::quickReject(SkRect const&) const
+SkCanvas::readPixels(SkBitmap const&, int, int)
+SkCanvas::readPixels(SkImageInfo const&, void*, unsigned long, int, int)
+SkCanvas::readPixels(SkPixmap const&, int, int)
+SkCanvas::recordingContext()
+SkCanvas::resetForNextPicture(SkIRect const&)
+SkCanvas::resetMatrix()
+SkCanvas::rotate(float)
+SkCanvas::rotate(float, float, float)
+SkCanvas::saveLayer(SkCanvas::SaveLayerRec const&)
+SkCanvas::saveLayer(SkRect const*, SkPaint const*)
+SkCanvas::saveLayerAlpha(SkRect const*, unsigned int)
+SkCanvas::setMatrix(SkM44 const&)
+SkCanvas::setMatrix(SkMatrix const&)
+SkCanvas::skew(float, float)
+SkCanvas::temporary_internal_getRgnClip(SkRegion*)
+SkCanvas::topDevice() const
+SkCanvas::translate(float, float)
+SkCanvas::validateClip() const
+SkCanvas::wouldOverwriteEntireSurface(SkRect const*, SkPaint const*, SkCanvas::ShaderOverrideOpacity) const
+SkCanvas::writePixels(SkBitmap const&, int, int)
+SkCanvas::writePixels(SkImageInfo const&, void const*, unsigned long, int, int)
+SkCanvasStateUtils::CaptureCanvasState(SkCanvas*)
+SkCanvasStateUtils::MakeFromCanvasState(SkCanvasState const*)
+SkCanvasStateUtils::ReleaseCanvasState(SkCanvasState*)
+SkCodec::MakeFromData(sk_sp<SkData>, SkPngChunkReader*)
+SkCodec::MakeFromStream(std::unique_ptr<SkStream, std::default_delete<SkStream> >, SkCodec::Result*, SkPngChunkReader*, SkCodec::SelectionPolicy)
+SkCodec::Register(bool (*)(void const*, unsigned long), std::unique_ptr<SkCodec, std::default_delete<SkCodec> > (*)(std::unique_ptr<SkStream, std::default_delete<SkStream> >, SkCodec::Result*))
+SkCodec::ResultToString(SkCodec::Result)
+SkCodec::SkCodec(SkEncodedInfo&&, skcms_PixelFormat, std::unique_ptr<SkStream, std::default_delete<SkStream> >, SkEncodedOrigin)
+SkCodec::applyColorXform(void*, void const*, int) const
+SkCodec::conversionSupported(SkImageInfo const&, bool, bool)
+SkCodec::fillIncompleteImage(SkImageInfo const&, void*, unsigned long, SkCodec::ZeroInitialized, int, int)
+SkCodec::getFrameInfo()
+SkCodec::getImage()
+SkCodec::getImage(SkImageInfo const&, SkCodec::Options const*)
+SkCodec::getPixels(SkImageInfo const&, void*, unsigned long, SkCodec::Options const*)
+SkCodec::getScanlines(void*, int, unsigned long)
+SkCodec::getYUVAPlanes(SkYUVAPixmaps const&)
+SkCodec::handleFrameIndex(SkImageInfo const&, void*, unsigned long, SkCodec::Options const&, SkAndroidCodec*)
+SkCodec::initializeColorXform(SkImageInfo const&, SkEncodedInfo::Alpha, bool)
+SkCodec::onOutputScanline(int) const
+SkCodec::outputScanline(int) const
+SkCodec::queryYUVAInfo(SkYUVAPixmapInfo::SupportedDataTypes const&, SkYUVAPixmapInfo*) const
+SkCodec::rewindIfNeeded()
+SkCodec::skipScanlines(int)
+SkCodec::startIncrementalDecode(SkImageInfo const&, void*, unsigned long, SkCodec::Options const*)
+SkCodec::startScanlineDecode(SkImageInfo const&, SkCodec::Options const*)
+SkCodec::~SkCodec()
+SkColorFilter::Deserialize(void const*, unsigned long, SkDeserialProcs const*)
+SkColorFilter::asAColorMatrix(float*) const
+SkColorFilter::asAColorMode(unsigned int*, SkBlendMode*) const
+SkColorFilter::filterColor(unsigned int) const
+SkColorFilter::filterColor4f(SkRGBA4f<(SkAlphaType)3> const&, SkColorSpace*, SkColorSpace*) const
+SkColorFilter::isAlphaUnchanged() const
+SkColorFilter::makeComposed(sk_sp<SkColorFilter>) const
+SkColorFilters::Blend(unsigned int, SkBlendMode)
+SkColorFilters::HSLAMatrix(SkColorMatrix const&)
+SkColorFilters::HSLAMatrix(float const*)
+SkColorFilters::Lerp(float, sk_sp<SkColorFilter>, sk_sp<SkColorFilter>)
+SkColorFilters::LinearToSRGBGamma()
+SkColorFilters::Matrix(float const*)
+SkColorFilters::SRGBToLinearGamma()
+SkColorInfo::shiftPerPixel() const
+SkColorMatrix::RGBtoYUV(SkYUVColorSpace)
+SkColorMatrix::YUVtoRGB(SkYUVColorSpace)
+SkColorMatrix::postTranslate(float, float, float, float)
+SkColorMatrix::setConcat(SkColorMatrix const&, SkColorMatrix const&)
+SkColorMatrix::setIdentity()
+SkColorMatrix::setSaturation(float)
+SkColorMatrix::setScale(float, float, float, float)
+SkColorMatrixFilter::MakeLightingFilter(unsigned int, unsigned int)
+SkColorSpace::Deserialize(void const*, unsigned long)
+SkColorSpace::Equals(SkColorSpace const*, SkColorSpace const*)
+SkColorSpace::Make(skcms_ICCProfile const&)
+SkColorSpace::MakeRGB(skcms_TransferFunction const&, skcms_Matrix3x3 const&)
+SkColorSpace::MakeSRGB()
+SkColorSpace::MakeSRGBLinear()
+SkColorSpace::SkColorSpace(skcms_TransferFunction const&, skcms_Matrix3x3 const&)
+SkColorSpace::computeLazyDstFields() const
+SkColorSpace::gammaCloseToSRGB() const
+SkColorSpace::gammaIsLinear() const
+SkColorSpace::gamutTransformTo(SkColorSpace const*, skcms_Matrix3x3*) const
+SkColorSpace::invTransferFn(skcms_TransferFunction*) const
+SkColorSpace::isNumericalTransferFn(skcms_TransferFunction*) const
+SkColorSpace::isSRGB() const
+SkColorSpace::makeColorSpin() const
+SkColorSpace::makeLinearGamma() const
+SkColorSpace::makeSRGBGamma() const
+SkColorSpace::serialize() const
+SkColorSpace::toProfile(skcms_ICCProfile*) const
+SkColorSpace::toXYZD50(skcms_Matrix3x3*) const
+SkColorSpace::transferFn(float*) const
+SkColorSpace::transferFn(skcms_TransferFunction*) const
+SkColorSpace::writeToMemory(void*) const
+SkColorSpacePrimaries::toXYZD50(skcms_Matrix3x3*) const
+SkColorTypeIsAlwaysOpaque(SkColorType)
+SkColorTypeValidateAlphaType(SkColorType, SkAlphaType, SkAlphaType*)
+SkConic::chopIntoQuadsPOW2(SkPoint*, int) const
+SkConic::computeQuadPOW2(float) const
+SkContourMeasure::Segment::getScalarT() const
+SkContourMeasure::SkContourMeasure(SkTDArray<SkContourMeasure::Segment>&&, SkTDArray<SkPoint>&&, float, bool)
+SkContourMeasure::distanceToSegment(float, float*) const
+SkContourMeasure::getMatrix(float, SkMatrix*, SkContourMeasure::MatrixFlags) const
+SkContourMeasure::getPosTan(float, SkPoint*, SkPoint*) const
+SkContourMeasure::getSegment(float, float, SkPath*, bool) const
+SkContourMeasureIter::Impl::buildSegments()
+SkContourMeasureIter::Impl::compute_conic_segs(SkConic const&, float, int, SkPoint const&, int, SkPoint const&, unsigned int)
+SkContourMeasureIter::Impl::compute_cubic_segs(SkPoint const*, float, int, int, unsigned int)
+SkContourMeasureIter::Impl::compute_line_seg(SkPoint, SkPoint, float, unsigned int)
+SkContourMeasureIter::Impl::compute_quad_segs(SkPoint const*, float, int, int, unsigned int)
+SkContourMeasureIter::SkContourMeasureIter()
+SkContourMeasureIter::SkContourMeasureIter(SkPath const&, bool, float)
+SkContourMeasureIter::next()
+SkContourMeasureIter::reset(SkPath const&, bool, float)
+SkContourMeasureIter::~SkContourMeasureIter()
+SkCornerPathEffect::Make(float)
+SkCornerPathEffect::RegisterFlattenables()
+SkCubicMap::SkCubicMap(SkPoint, SkPoint)
+SkCubicMap::computeFromT(float) const
+SkCubicMap::computeYFromX(float) const
+SkData::MakeEmpty()
+SkData::MakeFromFD(int)
+SkData::MakeFromFILE(_IO_FILE*)
+SkData::MakeFromFileName(char const*)
+SkData::MakeFromMalloc(void const*, unsigned long)
+SkData::MakeFromStream(SkStream*, unsigned long)
+SkData::MakeSubset(SkData const*, unsigned long, unsigned long)
+SkData::MakeUninitialized(unsigned long)
+SkData::MakeWithCString(char const*)
+SkData::MakeWithCopy(void const*, unsigned long)
+SkData::MakeWithProc(void const*, unsigned long, void (*)(void const*, void*), void*)
+SkData::NoopReleaseProc(void const*, void*)
+SkData::PrivateNewWithCopy(void const*, unsigned long)
+SkData::SkData(unsigned long)
+SkData::SkData(void const*, unsigned long, void (*)(void const*, void*), void*)
+SkData::copyRange(unsigned long, unsigned long, void*) const
+SkData::equals(SkData const*) const
+SkDataTable::MakeArrayProc(void const*, unsigned long, int, void (*)(void*), void*)
+SkDataTable::MakeCopyArray(void const*, unsigned long, int)
+SkDataTable::MakeCopyArrays(void const* const*, unsigned long const*, int)
+SkDataTable::MakeEmpty()
+SkDataTable::SkDataTable()
+SkDataTable::SkDataTable(SkDataTable::Dir const*, int, void (*)(void*), void*)
+SkDataTable::SkDataTable(void const*, unsigned long, int, void (*)(void*), void*)
+SkDataTable::at(int, unsigned long*) const
+SkDataTable::atSize(int) const
+SkDataTable::~SkDataTable()
+SkDebugf(char const*, ...)
+SkDeferredDisplayList::ProgramIterator::ProgramIterator(GrDirectContext*, SkDeferredDisplayList*)
+SkDeferredDisplayList::ProgramIterator::compile()
+SkDeferredDisplayList::ProgramIterator::done() const
+SkDeferredDisplayList::ProgramIterator::next()
+SkDeferredDisplayList::ProgramIterator::~ProgramIterator()
+SkDeferredDisplayList::SkDeferredDisplayList(SkSurfaceCharacterization const&, sk_sp<GrRenderTargetProxy>, sk_sp<SkDeferredDisplayList::LazyProxyData>)
+SkDeferredDisplayList::~SkDeferredDisplayList()
+SkDeferredDisplayListRecorder::SkDeferredDisplayListRecorder(SkSurfaceCharacterization const&)
+SkDeferredDisplayListRecorder::detach()
+SkDeferredDisplayListRecorder::getCanvas()
+SkDeferredDisplayListRecorder::init()
+SkDeferredDisplayListRecorder::makePromiseTexture(GrBackendFormat const&, int, int, GrMipmapped, GrSurfaceOrigin, SkColorType, SkAlphaType, sk_sp<SkColorSpace>, sk_sp<SkPromiseImageTexture> (*)(void*), void (*)(void*), void*)
+SkDeferredDisplayListRecorder::makeYUVAPromiseTexture(GrYUVABackendTextureInfo const&, sk_sp<SkColorSpace>, sk_sp<SkPromiseImageTexture> (*)(void*), void (*)(void*), void**)
+SkDeferredDisplayListRecorder::~SkDeferredDisplayListRecorder()
+SkDeque::Iter::Iter()
+SkDeque::Iter::Iter(SkDeque const&, SkDeque::Iter::IterStart)
+SkDeque::Iter::next()
+SkDeque::Iter::prev()
+SkDeque::Iter::reset(SkDeque const&, SkDeque::Iter::IterStart)
+SkDeque::SkDeque(unsigned long, int)
+SkDeque::SkDeque(unsigned long, void*, unsigned long, int)
+SkDeque::allocateBlock(int)
+SkDeque::freeBlock(SkDeque::Block*)
+SkDeque::numBlocksAllocated() const
+SkDeque::pop_back()
+SkDeque::pop_front()
+SkDeque::push_back()
+SkDeque::push_front()
+SkDeque::~SkDeque()
+SkDiscretePathEffect::Make(float, float, unsigned int)
+SkDiscretePathEffect::RegisterFlattenables()
+SkDocument::SkDocument(SkWStream*)
+SkDocument::abort()
+SkDocument::beginPage(float, float, SkRect const*)
+SkDocument::close()
+SkDocument::endPage()
+SkDocument::~SkDocument()
+SkDrawable::SkDrawable()
+SkDrawable::draw(SkCanvas*, SkMatrix const*)
+SkDrawable::draw(SkCanvas*, float, float)
+SkDrawable::getBounds()
+SkDrawable::getGenerationID()
+SkDrawable::newPictureSnapshot()
+SkDrawable::notifyDrawingChanged()
+SkDrawable::onNewPictureSnapshot()
+SkDynamicMemoryWStream::SkDynamicMemoryWStream(SkDynamicMemoryWStream&&)
+SkDynamicMemoryWStream::bytesWritten() const
+SkDynamicMemoryWStream::copyTo(void*) const
+SkDynamicMemoryWStream::copyToAndReset(void*)
+SkDynamicMemoryWStream::detachAsData()
+SkDynamicMemoryWStream::detachAsStream()
+SkDynamicMemoryWStream::operator=(SkDynamicMemoryWStream&&)
+SkDynamicMemoryWStream::padToAlign4()
+SkDynamicMemoryWStream::prependToAndReset(SkDynamicMemoryWStream*)
+SkDynamicMemoryWStream::read(void*, unsigned long, unsigned long)
+SkDynamicMemoryWStream::reset()
+SkDynamicMemoryWStream::write(void const*, unsigned long)
+SkDynamicMemoryWStream::writeToAndReset(SkDynamicMemoryWStream*)
+SkDynamicMemoryWStream::writeToAndReset(SkWStream*)
+SkDynamicMemoryWStream::writeToStream(SkWStream*) const
+SkDynamicMemoryWStream::~SkDynamicMemoryWStream()
+SkEncodeBitmap(SkBitmap const&, SkEncodedImageFormat, int)
+SkEncodeImage(SkWStream*, SkBitmap const&, SkEncodedImageFormat, int)
+SkEncodeImage(SkWStream*, SkPixmap const&, SkEncodedImageFormat, int)
+SkEncodePixmap(SkPixmap const&, SkEncodedImageFormat, int)
+SkEncoder::encodeRows(int)
+SkEventTracer::GetInstance()
+SkEventTracer::SetInstance(SkEventTracer*)
+SkExecutor::GetDefault()
+SkExecutor::MakeFIFOThreadPool(int, bool)
+SkExecutor::MakeLIFOThreadPool(int, bool)
+SkExecutor::SetDefault(SkExecutor*)
+SkExecutor::~SkExecutor()
+SkFILEStream::SkFILEStream(_IO_FILE*)
+SkFILEStream::SkFILEStream(_IO_FILE*, unsigned long)
+SkFILEStream::SkFILEStream(_IO_FILE*, unsigned long, unsigned long)
+SkFILEStream::SkFILEStream(char const*)
+SkFILEStream::SkFILEStream(std::shared_ptr<_IO_FILE>, unsigned long, unsigned long)
+SkFILEStream::SkFILEStream(std::shared_ptr<_IO_FILE>, unsigned long, unsigned long, unsigned long)
+SkFILEStream::close()
+SkFILEStream::getLength() const
+SkFILEStream::getPosition() const
+SkFILEStream::isAtEnd() const
+SkFILEStream::move(long)
+SkFILEStream::onDuplicate() const
+SkFILEStream::onFork() const
+SkFILEStream::read(void*, unsigned long)
+SkFILEStream::rewind()
+SkFILEStream::seek(unsigned long)
+SkFILEStream::~SkFILEStream()
+SkFILEWStream::SkFILEWStream(char const*)
+SkFILEWStream::bytesWritten() const
+SkFILEWStream::flush()
+SkFILEWStream::fsync()
+SkFILEWStream::write(void const*, unsigned long)
+SkFILEWStream::~SkFILEWStream()
+SkFlattenable::Deserialize(SkFlattenable::Type, void const*, unsigned long, SkDeserialProcs const*)
+SkFlattenable::FactoryToName(sk_sp<SkFlattenable> (*)(SkReadBuffer&))
+SkFlattenable::Finalize()
+SkFlattenable::NameToFactory(char const*)
+SkFlattenable::PrivateInitializer::InitEffects()
+SkFlattenable::PrivateInitializer::InitImageFilters()
+SkFlattenable::Register(char const*, sk_sp<SkFlattenable> (*)(SkReadBuffer&))
+SkFlattenable::RegisterFlattenablesIfNeeded()
+SkFlattenable::serialize(SkSerialProcs const*) const
+SkFlattenable::serialize(void*, unsigned long, SkSerialProcs const*) const
+SkFont::SkFont()
+SkFont::SkFont(sk_sp<SkTypeface>, float)
+SkFont::SkFont(sk_sp<SkTypeface>, float, float, float)
+SkFont::dump() const
+SkFont::getIntercepts(unsigned short const*, int, SkPoint const*, float, float, SkPaint const*) const
+SkFont::getMetrics(SkFontMetrics*) const
+SkFont::getPath(unsigned short, SkPath*) const
+SkFont::getPaths(unsigned short const*, int, void (*)(SkPath const*, SkMatrix const&, void*), void*) const
+SkFont::getPos(unsigned short const*, int, SkPoint*, SkPoint) const
+SkFont::getTypefaceOrDefault() const
+SkFont::getWidthsBounds(unsigned short const*, int, float*, SkRect*, SkPaint const*) const
+SkFont::getXPos(unsigned short const*, int, float*, float) const
+SkFont::hasSomeAntiAliasing() const
+SkFont::makeWithSize(float) const
+SkFont::measureText(void const*, unsigned long, SkTextEncoding, SkRect*, SkPaint const*) const
+SkFont::operator==(SkFont const&) const
+SkFont::refTypefaceOrDefault() const
+SkFont::setBaselineSnap(bool)
+SkFont::setEmbeddedBitmaps(bool)
+SkFont::setForceAutoHinting(bool)
+SkFont::setHinting(SkFontHinting)
+SkFont::setLinearMetrics(bool)
+SkFont::setSubpixel(bool)
+SkFont::setupForAsPaths(SkPaint*)
+SkFont::textToGlyphs(void const*, unsigned long, SkTextEncoding, unsigned short*, int) const
+SkFont::unicharToGlyph(int) const
+SkFont::unicharsToGlyphs(int const*, int, unsigned short*) const
+SkFontConfigInterface::FontIdentity::readFromMemory(void const*, unsigned long)
+SkFontConfigInterface::FontIdentity::writeToMemory(void*) const
+SkFontConfigInterface::GetSingletonDirectInterface()
+SkFontConfigInterface::RefGlobal()
+SkFontConfigInterface::SetGlobal(sk_sp<SkFontConfigInterface>)
+SkFontMgr::Factory()
+SkFontMgr::RefDefault()
+SkFontMgr::countFamilies() const
+SkFontMgr::createStyleSet(int) const
+SkFontMgr::getFamilyName(int, SkString*) const
+SkFontMgr::legacyMakeTypeface(char const*, SkFontStyle) const
+SkFontMgr::makeFromData(sk_sp<SkData>, int) const
+SkFontMgr::makeFromFile(char const*, int) const
+SkFontMgr::makeFromStream(std::unique_ptr<SkStreamAsset, std::default_delete<SkStreamAsset> >, SkFontArguments const&) const
+SkFontMgr::makeFromStream(std::unique_ptr<SkStreamAsset, std::default_delete<SkStreamAsset> >, int) const
+SkFontMgr::matchFamily(char const*) const
+SkFontMgr::matchFamilyStyle(char const*, SkFontStyle const&) const
+SkFontMgr::matchFamilyStyleCharacter(char const*, SkFontStyle const&, char const**, int, int) const
+SkFontMgr_New_FCI(sk_sp<SkFontConfigInterface>)
+SkFontStyleSet::CreateEmpty()
+SkFontStyleSet::matchStyleCSS3(SkFontStyle const&)
+SkGradientShader::MakeLinear(SkPoint const*, SkRGBA4f<(SkAlphaType)3> const*, sk_sp<SkColorSpace>, float const*, int, SkTileMode, unsigned int, SkMatrix const*)
+SkGradientShader::MakeRadial(SkPoint const&, float, SkRGBA4f<(SkAlphaType)3> const*, sk_sp<SkColorSpace>, float const*, int, SkTileMode, unsigned int, SkMatrix const*)
+SkGradientShader::MakeSweep(float, float, SkRGBA4f<(SkAlphaType)3> const*, sk_sp<SkColorSpace>, float const*, int, SkTileMode, float, float, unsigned int, SkMatrix const*)
+SkGradientShader::MakeSweep(float, float, unsigned int const*, float const*, int, SkTileMode, float, float, unsigned int, SkMatrix const*)
+SkGradientShader::MakeTwoPointConical(SkPoint const&, float, SkPoint const&, float, SkRGBA4f<(SkAlphaType)3> const*, sk_sp<SkColorSpace>, float const*, int, SkTileMode, unsigned int, SkMatrix const*)
+SkGradientShader::MakeTwoPointConical(SkPoint const&, float, SkPoint const&, float, unsigned int const*, float const*, int, SkTileMode, unsigned int, SkMatrix const*)
+SkGradientShader::RegisterFlattenables()
+SkGraphics::AllowJIT()
+SkGraphics::DumpMemoryStatistics(SkTraceMemoryDump*)
+SkGraphics::GetFontCacheCountLimit()
+SkGraphics::GetFontCacheCountUsed()
+SkGraphics::GetFontCacheLimit()
+SkGraphics::GetFontCacheUsed()
+SkGraphics::GetResourceCacheSingleAllocationByteLimit()
+SkGraphics::GetResourceCacheTotalByteLimit()
+SkGraphics::GetResourceCacheTotalBytesUsed()
+SkGraphics::PurgeAllCaches()
+SkGraphics::PurgeFontCache()
+SkGraphics::PurgeResourceCache()
+SkGraphics::SetFlags(char const*)
+SkGraphics::SetFontCacheCountLimit(int)
+SkGraphics::SetFontCacheLimit(unsigned long)
+SkGraphics::SetImageGeneratorFromEncodedDataFactory(std::unique_ptr<SkImageGenerator, std::default_delete<SkImageGenerator> > (*)(sk_sp<SkData>))
+SkGraphics::SetResourceCacheSingleAllocationByteLimit(unsigned long)
+SkGraphics::SetResourceCacheTotalByteLimit(unsigned long)
+SkHSVToColor(unsigned int, float const*)
+SkHighContrastFilter::Make(SkHighContrastConfig const&)
+SkImage::MakeBackendTextureFromSkImage(GrDirectContext*, sk_sp<SkImage>, GrBackendTexture*, std::function<void (GrBackendTexture)>*)
+SkImage::MakeCrossContextFromPixmap(GrDirectContext*, SkPixmap const&, bool, bool)
+SkImage::MakeFromAdoptedTexture(GrRecordingContext*, GrBackendTexture const&, GrSurfaceOrigin, SkColorType, SkAlphaType, sk_sp<SkColorSpace>)
+SkImage::MakeFromCompressedTexture(GrRecordingContext*, GrBackendTexture const&, GrSurfaceOrigin, SkAlphaType, sk_sp<SkColorSpace>, void (*)(void*), void*)
+SkImage::MakeFromEncoded(sk_sp<SkData>)
+SkImage::MakeFromGenerator(std::unique_ptr<SkImageGenerator, std::default_delete<SkImageGenerator> >)
+SkImage::MakeFromPicture(sk_sp<SkPicture>, SkISize const&, SkMatrix const*, SkPaint const*, SkImage::BitDepth, sk_sp<SkColorSpace>)
+SkImage::MakeFromRaster(SkPixmap const&, void (*)(void const*, void*), void*)
+SkImage::MakeFromTexture(GrRecordingContext*, GrBackendTexture const&, GrSurfaceOrigin, SkColorType, SkAlphaType, sk_sp<SkColorSpace>, void (*)(void*), void*)
+SkImage::MakeFromYUVAPixmaps(GrRecordingContext*, SkYUVAPixmaps const&, GrMipmapped, bool, sk_sp<SkColorSpace>)
+SkImage::MakeFromYUVATextures(GrRecordingContext*, GrYUVABackendTextures const&, sk_sp<SkColorSpace>, void (*)(void*), void*)
+SkImage::MakePromiseTexture(sk_sp<GrContextThreadSafeProxy>, GrBackendFormat const&, SkISize, GrMipmapped, GrSurfaceOrigin, SkColorType, SkAlphaType, sk_sp<SkColorSpace>, sk_sp<SkPromiseImageTexture> (*)(void*), void (*)(void*), void*)
+SkImage::MakePromiseYUVATexture(sk_sp<GrContextThreadSafeProxy>, GrYUVABackendTextureInfo const&, sk_sp<SkColorSpace>, sk_sp<SkPromiseImageTexture> (*)(void*), void (*)(void*), void**)
+SkImage::MakeRasterCopy(SkPixmap const&)
+SkImage::MakeRasterData(SkImageInfo const&, sk_sp<SkData>, unsigned long)
+SkImage::MakeRasterFromCompressed(sk_sp<SkData>, int, int, SkImage::CompressionType)
+SkImage::MakeTextureFromCompressed(GrDirectContext*, sk_sp<SkData>, int, int, SkImage::CompressionType, GrMipmapped, GrProtected)
+SkImage::SkImage(SkImageInfo const&, unsigned int)
+SkImage::alphaType() const
+SkImage::asLegacyBitmap(SkBitmap*, SkImage::LegacyBitmapMode) const
+SkImage::asyncRescaleAndReadPixels(SkImageInfo const&, SkIRect const&, SkImage::RescaleGamma, SkImage::RescaleMode, void (*)(void*, std::unique_ptr<SkImage::AsyncReadResult const, std::default_delete<SkImage::AsyncReadResult const> >), void*) const
+SkImage::asyncRescaleAndReadPixelsYUV420(SkYUVColorSpace, sk_sp<SkColorSpace>, SkIRect const&, SkISize const&, SkImage::RescaleGamma, SkImage::RescaleMode, void (*)(void*, std::unique_ptr<SkImage::AsyncReadResult const, std::default_delete<SkImage::AsyncReadResult const> >), void*) const
+SkImage::colorSpace() const
+SkImage::colorType() const
+SkImage::encodeToData() const
+SkImage::flush(GrDirectContext*, GrFlushInfo const&) const
+SkImage::flushAndSubmit(GrDirectContext*) const
+SkImage::getBackendTexture(bool, GrSurfaceOrigin*) const
+SkImage::hasMipmaps() const
+SkImage::isAlphaOnly() const
+SkImage::isLazyGenerated() const
+SkImage::isValid(GrRecordingContext*) const
+SkImage::makeColorSpace(sk_sp<SkColorSpace>, GrDirectContext*) const
+SkImage::makeColorTypeAndColorSpace(SkColorType, sk_sp<SkColorSpace>, GrDirectContext*) const
+SkImage::makeNonTextureImage() const
+SkImage::makeRasterImage(SkImage::CachingHint) const
+SkImage::makeSubset(SkIRect const&, GrDirectContext*) const
+SkImage::makeTextureImage(GrDirectContext*, GrMipmapped, SkBudgeted) const
+SkImage::makeWithFilter(GrRecordingContext*, SkImageFilter const*, SkIRect const&, SkIRect const&, SkIRect*, SkIPoint*) const
+SkImage::readPixels(GrDirectContext*, SkImageInfo const&, void*, unsigned long, int, int, SkImage::CachingHint) const
+SkImage::readPixels(GrDirectContext*, SkPixmap const&, int, int, SkImage::CachingHint) const
+SkImage::readPixels(SkImageInfo const&, void*, unsigned long, int, int, SkImage::CachingHint) const
+SkImage::readPixels(SkPixmap const&, int, int, SkImage::CachingHint) const
+SkImage::refColorSpace() const
+SkImage::refEncodedData() const
+SkImage::reinterpretColorSpace(sk_sp<SkColorSpace>) const
+SkImage::scalePixels(SkPixmap const&, SkSamplingOptions const&, SkImage::CachingHint) const
+SkImage::textureSize() const
+SkImage::withDefaultMipmaps() const
+SkImage::withMipmaps(sk_sp<SkMipmap>) const
+SkImageFilter::asAColorFilter(SkColorFilter**) const
+SkImageFilter::canComputeFastBounds() const
+SkImageFilter::computeFastBounds(SkRect const&) const
+SkImageFilter::countInputs() const
+SkImageFilter::filterBounds(SkIRect const&, SkMatrix const&, SkImageFilter::MapDirection, SkIRect const*) const
+SkImageFilter::getInput(int) const
+SkImageFilter::isColorFilterNode(SkColorFilter**) const
+SkImageFilter::makeWithLocalMatrix(SkMatrix const&) const
+SkImageFilters::AlphaThreshold(SkRegion const&, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Arithmetic(float, float, float, float, bool, sk_sp<SkImageFilter>, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Blend(SkBlendMode, sk_sp<SkImageFilter>, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Blend(sk_sp<SkBlender>, sk_sp<SkImageFilter>, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Blur(float, float, SkTileMode, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::ColorFilter(sk_sp<SkColorFilter>, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Compose(sk_sp<SkImageFilter>, sk_sp<SkImageFilter>)
+SkImageFilters::Dilate(float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::DisplacementMap(SkColorChannel, SkColorChannel, float, sk_sp<SkImageFilter>, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::DistantLitDiffuse(SkPoint3 const&, unsigned int, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::DistantLitSpecular(SkPoint3 const&, unsigned int, float, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::DropShadow(float, float, float, float, unsigned int, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::DropShadowOnly(float, float, float, float, unsigned int, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Erode(float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Image(sk_sp<SkImage>, SkRect const&, SkRect const&, SkSamplingOptions const&)
+SkImageFilters::Magnifier(SkRect const&, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::MatrixConvolution(SkISize const&, float const*, float, float, SkIPoint const&, SkTileMode, bool, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::MatrixTransform(SkMatrix const&, SkSamplingOptions const&, sk_sp<SkImageFilter>)
+SkImageFilters::Merge(sk_sp<SkImageFilter>*, int, SkImageFilters::CropRect const&)
+SkImageFilters::Offset(float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Paint(SkPaint const&, SkImageFilters::CropRect const&)
+SkImageFilters::Picture(sk_sp<SkPicture>, SkRect const&)
+SkImageFilters::PointLitDiffuse(SkPoint3 const&, unsigned int, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::PointLitSpecular(SkPoint3 const&, unsigned int, float, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Shader(sk_sp<SkShader>, SkImageFilters::Dither, SkImageFilters::CropRect const&)
+SkImageFilters::SpotLitDiffuse(SkPoint3 const&, SkPoint3 const&, float, float, unsigned int, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::SpotLitSpecular(SkPoint3 const&, SkPoint3 const&, float, float, unsigned int, float, float, float, sk_sp<SkImageFilter>, SkImageFilters::CropRect const&)
+SkImageFilters::Tile(SkRect const&, SkRect const&, sk_sp<SkImageFilter>)
+SkImageGenerator::MakeFromEncoded(sk_sp<SkData>)
+SkImageGenerator::MakeFromEncodedImpl(sk_sp<SkData>)
+SkImageGenerator::MakeFromPicture(SkISize const&, sk_sp<SkPicture>, SkMatrix const*, SkPaint const*, SkImage::BitDepth, sk_sp<SkColorSpace>)
+SkImageGenerator::SkImageGenerator(SkImageInfo const&, unsigned int)
+SkImageGenerator::generateTexture(GrRecordingContext*, SkImageInfo const&, SkIPoint const&, GrMipmapped, GrImageTexGenPolicy)
+SkImageGenerator::getPixels(SkImageInfo const&, void*, unsigned long)
+SkImageGenerator::getYUVAPlanes(SkYUVAPixmaps const&)
+SkImageGenerator::onGenerateTexture(GrRecordingContext*, SkImageInfo const&, SkIPoint const&, GrMipmapped, GrImageTexGenPolicy)
+SkImageGenerator::queryYUVAInfo(SkYUVAPixmapInfo::SupportedDataTypes const&, SkYUVAPixmapInfo*) const
+SkImageInfo::computeByteSize(unsigned long) const
+SkImageInfo::computeOffset(int, int, unsigned long) const
+SkJpegEncoder::Encode(SkWStream*, SkPixmap const&, SkJpegEncoder::Options const&)
+SkJpegEncoder::Make(SkWStream*, SkPixmap const&, SkJpegEncoder::Options const&)
+SkLatticeIter::SkLatticeIter(SkCanvas::Lattice const&, SkRect const&)
+SkLatticeIter::SkLatticeIter(int, int, SkIRect const&, SkRect const&)
+SkLatticeIter::Valid(int, int, SkCanvas::Lattice const&)
+SkLatticeIter::Valid(int, int, SkIRect const&)
+SkLatticeIter::mapDstScaleTranslate(SkMatrix const&)
+SkLatticeIter::next(SkIRect*, SkRect*, bool*, unsigned int*)
+SkLine2DPathEffect::Make(float, SkMatrix const&)
+SkLine2DPathEffect::RegisterFlattenables()
+SkLumaColorFilter::Make()
+SkM44::LookAt(SkV3 const&, SkV3 const&, SkV3 const&)
+SkM44::Perspective(float, float, float)
+SkM44::RectToRect(SkRect const&, SkRect const&)
+SkM44::dump() const
+SkM44::getRowMajor(float*) const
+SkM44::invert(SkM44*) const
+SkM44::map(float, float, float, float) const
+SkM44::normalizePerspective()
+SkM44::operator==(SkM44 const&) const
+SkM44::postTranslate(float, float, float)
+SkM44::preConcat(SkMatrix const&)
+SkM44::preScale(float, float)
+SkM44::preScale(float, float, float)
+SkM44::preTranslate(float, float, float)
+SkM44::setConcat(SkM44 const&, SkM44 const&)
+SkM44::setRotate(SkV3, float)
+SkM44::setRotateUnitSinCos(SkV3, float, float)
+SkM44::transpose() const
+SkMakeCropImageFilter(SkRect const&, sk_sp<SkImageFilter>)
+SkMakeImageFromRasterBitmap(SkBitmap const&, SkCopyPixelsMode)
+SkMakeMultiPictureDocument(SkWStream*, SkSerialProcs const*, std::function<void (SkPicture const*)>)
+SkMakeNullCanvas()
+SkMakeRuntimeImageFilter(sk_sp<SkRuntimeEffect>, sk_sp<SkData>, sk_sp<SkImageFilter>)
+SkMallocPixelRef::MakeAllocate(SkImageInfo const&, unsigned long)
+SkMallocPixelRef::MakeWithData(SkImageInfo const&, unsigned long, sk_sp<SkData>)
+SkMaskFilter::Deserialize(void const*, unsigned long, SkDeserialProcs const*)
+SkMaskFilter::MakeBlur(SkBlurStyle, float, bool)
+SkMaskFilter::RegisterFlattenables()
+SkMaskFilter::approximateFilteredBounds(SkRect const&) const
+SkMatrix::Affine_vpts(SkMatrix const&, SkPoint*, SkPoint const*, int)
+SkMatrix::ComputeInv(float*, float const*, double, bool)
+SkMatrix::I()
+SkMatrix::Identity_pts(SkMatrix const&, SkPoint*, SkPoint const*, int)
+SkMatrix::Identity_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::InvalidMatrix()
+SkMatrix::Persp_pts(SkMatrix const&, SkPoint*, SkPoint const*, int)
+SkMatrix::Persp_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::Poly2Proc(SkPoint const*, SkMatrix*)
+SkMatrix::Poly3Proc(SkPoint const*, SkMatrix*)
+SkMatrix::Poly4Proc(SkPoint const*, SkMatrix*)
+SkMatrix::RotTrans_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::Rot_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::ScaleTrans_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::Scale_pts(SkMatrix const&, SkPoint*, SkPoint const*, int)
+SkMatrix::Scale_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::SetAffineIdentity(float*)
+SkMatrix::Trans_pts(SkMatrix const&, SkPoint*, SkPoint const*, int)
+SkMatrix::Trans_xy(SkMatrix const&, float, float, SkPoint*)
+SkMatrix::asAffine(float*) const
+SkMatrix::computePerspectiveTypeMask() const
+SkMatrix::decomposeScale(SkSize*, SkMatrix*) const
+SkMatrix::doNormalizePerspective()
+SkMatrix::dump() const
+SkMatrix::getMaxScale() const
+SkMatrix::getMinMaxScales(float*) const
+SkMatrix::getMinScale() const
+SkMatrix::invertNonIdentity(SkMatrix*) const
+SkMatrix::isSimilarity(float) const
+SkMatrix::mapHomogeneousPoints(SkPoint3*, SkPoint const*, int) const
+SkMatrix::mapHomogeneousPoints(SkPoint3*, SkPoint3 const*, int) const
+SkMatrix::mapPoints(SkPoint*, SkPoint const*, int) const
+SkMatrix::mapRadius(float) const
+SkMatrix::mapRect(SkRect*, SkRect const&, SkApplyPerspectiveClip) const
+SkMatrix::mapRectScaleTranslate(SkRect*, SkRect const&) const
+SkMatrix::mapVectors(SkPoint*, SkPoint const*, int) const
+SkMatrix::mapXY(float, float, SkPoint*) const
+SkMatrix::postConcat(SkMatrix const&)
+SkMatrix::postIDiv(int, int)
+SkMatrix::postRotate(float)
+SkMatrix::postRotate(float, float, float)
+SkMatrix::postScale(float, float, float, float)
+SkMatrix::postSkew(float, float)
+SkMatrix::postSkew(float, float, float, float)
+SkMatrix::postTranslate(float, float)
+SkMatrix::preConcat(SkMatrix const&)
+SkMatrix::preRotate(float)
+SkMatrix::preRotate(float, float, float)
+SkMatrix::preScale(float, float)
+SkMatrix::preScale(float, float, float, float)
+SkMatrix::preSkew(float, float)
+SkMatrix::preSkew(float, float, float, float)
+SkMatrix::preTranslate(float, float)
+SkMatrix::preservesRightAngles(float) const
+SkMatrix::readFromMemory(void const*, unsigned long)
+SkMatrix::reset()
+SkMatrix::set9(float const*)
+SkMatrix::setAffine(float const*)
+SkMatrix::setPolyToPoly(SkPoint const*, SkPoint const*, int)
+SkMatrix::setRSXform(SkRSXform const&)
+SkMatrix::setRectToRect(SkRect const&, SkRect const&, SkMatrix::ScaleToFit)
+SkMatrix::setRotate(float, float, float)
+SkMatrix::setScale(float, float, float, float)
+SkMatrix::setSinCos(float, float)
+SkMatrix::setSinCos(float, float, float, float)
+SkMatrix::setSkew(float, float)
+SkMatrix::setSkew(float, float, float, float)
+SkMatrix::writeToMemory(void*) const
+SkMatrixPathEffect::Make(SkMatrix const&)
+SkMatrixPathEffect::MakeTranslate(float, float)
+SkMemoryStream::Make(sk_sp<SkData>)
+SkMemoryStream::MakeCopy(void const*, unsigned long)
+SkMemoryStream::MakeDirect(void const*, unsigned long)
+SkMemoryStream::SkMemoryStream()
+SkMemoryStream::SkMemoryStream(sk_sp<SkData>)
+SkMemoryStream::SkMemoryStream(unsigned long)
+SkMemoryStream::SkMemoryStream(void const*, unsigned long, bool)
+SkMemoryStream::getAtPos()
+SkMemoryStream::getLength() const
+SkMemoryStream::getMemoryBase()
+SkMemoryStream::getPosition() const
+SkMemoryStream::isAtEnd() const
+SkMemoryStream::move(long)
+SkMemoryStream::onDuplicate() const
+SkMemoryStream::onFork() const
+SkMemoryStream::peek(void*, unsigned long) const
+SkMemoryStream::read(void*, unsigned long)
+SkMemoryStream::rewind()
+SkMemoryStream::seek(unsigned long)
+SkMemoryStream::setData(sk_sp<SkData>)
+SkMemoryStream::setMemory(void const*, unsigned long, bool)
+SkMemoryStream::setMemoryOwned(void const*, unsigned long)
+SkMemoryStream::skipToAlign4()
+SkMergePathEffect::Make(sk_sp<SkPathEffect>, sk_sp<SkPathEffect>, SkPathOp)
+SkMultiPictureDocumentRead(SkStreamSeekable*, SkDocumentPage*, int, SkDeserialProcs const*)
+SkMultiPictureDocumentReadPageCount(SkStreamSeekable*)
+SkNWayCanvas::SkNWayCanvas(int, int)
+SkNWayCanvas::addCanvas(SkCanvas*)
+SkNWayCanvas::didConcat44(SkM44 const&)
+SkNWayCanvas::didScale(float, float)
+SkNWayCanvas::didSetM44(SkM44 const&)
+SkNWayCanvas::didTranslate(float, float)
+SkNWayCanvas::getSaveLayerStrategy(SkCanvas::SaveLayerRec const&)
+SkNWayCanvas::onClipPath(SkPath const&, SkClipOp, SkCanvas::ClipEdgeStyle)
+SkNWayCanvas::onClipRRect(SkRRect const&, SkClipOp, SkCanvas::ClipEdgeStyle)
+SkNWayCanvas::onClipRect(SkRect const&, SkClipOp, SkCanvas::ClipEdgeStyle)
+SkNWayCanvas::onClipRegion(SkRegion const&, SkClipOp)
+SkNWayCanvas::onClipShader(sk_sp<SkShader>, SkClipOp)
+SkNWayCanvas::onDoSaveBehind(SkRect const*)
+SkNWayCanvas::onDrawAnnotation(SkRect const&, char const*, SkData*)
+SkNWayCanvas::onDrawArc(SkRect const&, float, float, bool, SkPaint const&)
+SkNWayCanvas::onDrawAtlas2(SkImage const*, SkRSXform const*, SkRect const*, unsigned int const*, int, SkBlendMode, SkSamplingOptions const&, SkRect const*, SkPaint const*)
+SkNWayCanvas::onDrawBehind(SkPaint const&)
+SkNWayCanvas::onDrawDRRect(SkRRect const&, SkRRect const&, SkPaint const&)
+SkNWayCanvas::onDrawDrawable(SkDrawable*, SkMatrix const*)
+SkNWayCanvas::onDrawEdgeAAImageSet2(SkCanvas::ImageSetEntry const*, int, SkPoint const*, SkMatrix const*, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkNWayCanvas::onDrawEdgeAAQuad(SkRect const&, SkPoint const*, SkCanvas::QuadAAFlags, SkRGBA4f<(SkAlphaType)3> const&, SkBlendMode)
+SkNWayCanvas::onDrawGlyphRunList(SkGlyphRunList const&, SkPaint const&)
+SkNWayCanvas::onDrawImage2(SkImage const*, float, float, SkSamplingOptions const&, SkPaint const*)
+SkNWayCanvas::onDrawImageLattice2(SkImage const*, SkCanvas::Lattice const&, SkRect const&, SkFilterMode, SkPaint const*)
+SkNWayCanvas::onDrawImageRect2(SkImage const*, SkRect const&, SkRect const&, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkNWayCanvas::onDrawOval(SkRect const&, SkPaint const&)
+SkNWayCanvas::onDrawPaint(SkPaint const&)
+SkNWayCanvas::onDrawPatch(SkPoint const*, unsigned int const*, SkPoint const*, SkBlendMode, SkPaint const&)
+SkNWayCanvas::onDrawPath(SkPath const&, SkPaint const&)
+SkNWayCanvas::onDrawPicture(SkPicture const*, SkMatrix const*, SkPaint const*)
+SkNWayCanvas::onDrawPoints(SkCanvas::PointMode, unsigned long, SkPoint const*, SkPaint const&)
+SkNWayCanvas::onDrawRRect(SkRRect const&, SkPaint const&)
+SkNWayCanvas::onDrawRect(SkRect const&, SkPaint const&)
+SkNWayCanvas::onDrawRegion(SkRegion const&, SkPaint const&)
+SkNWayCanvas::onDrawShadowRec(SkPath const&, SkDrawShadowRec const&)
+SkNWayCanvas::onDrawTextBlob(SkTextBlob const*, float, float, SkPaint const&)
+SkNWayCanvas::onDrawVerticesObject(SkVertices const*, SkBlendMode, SkPaint const&)
+SkNWayCanvas::onFlush()
+SkNWayCanvas::onMarkCTM(char const*)
+SkNWayCanvas::onResetClip()
+SkNWayCanvas::removeAll()
+SkNWayCanvas::removeCanvas(SkCanvas*)
+SkNWayCanvas::willRestore()
+SkNWayCanvas::willSave()
+SkNWayCanvas::~SkNWayCanvas()
+SkNoDrawCanvas::SkNoDrawCanvas(SkIRect const&)
+SkNoDrawCanvas::SkNoDrawCanvas(int, int)
+SkNoDrawCanvas::SkNoDrawCanvas(sk_sp<SkBaseDevice>)
+SkNoDrawCanvas::getSaveLayerStrategy(SkCanvas::SaveLayerRec const&)
+SkNoDrawCanvas::onDoSaveBehind(SkRect const*)
+SkOSFile::Iter::Iter()
+SkOSFile::Iter::Iter(char const*, char const*)
+SkOSFile::Iter::next(SkString*, bool)
+SkOSFile::Iter::reset(char const*, char const*)
+SkOSFile::Iter::~Iter()
+SkOpBuilder::FixWinding(SkPath*)
+SkOpBuilder::ReversePath(SkPath*)
+SkOpBuilder::add(SkPath const&, SkPathOp)
+SkOpBuilder::reset()
+SkOpBuilder::resolve(SkPath*)
+SkOrderedFontMgr::SkOrderedFontMgr()
+SkOrderedFontMgr::append(sk_sp<SkFontMgr>)
+SkOrderedFontMgr::onCountFamilies() const
+SkOrderedFontMgr::onCreateStyleSet(int) const
+SkOrderedFontMgr::onGetFamilyName(int, SkString*) const
+SkOrderedFontMgr::onLegacyMakeTypeface(char const*, SkFontStyle) const
+SkOrderedFontMgr::onMakeFromData(sk_sp<SkData>, int) const
+SkOrderedFontMgr::onMakeFromFile(char const*, int) const
+SkOrderedFontMgr::onMakeFromStreamArgs(std::unique_ptr<SkStreamAsset, std::default_delete<SkStreamAsset> >, SkFontArguments const&) const
+SkOrderedFontMgr::onMakeFromStreamIndex(std::unique_ptr<SkStreamAsset, std::default_delete<SkStreamAsset> >, int) const
+SkOrderedFontMgr::onMatchFamily(char const*) const
+SkOrderedFontMgr::onMatchFamilyStyle(char const*, SkFontStyle const&) const
+SkOrderedFontMgr::onMatchFamilyStyleCharacter(char const*, SkFontStyle const&, char const**, int, int) const
+SkOrderedFontMgr::~SkOrderedFontMgr()
+SkOverdrawCanvas::SkOverdrawCanvas(SkCanvas*)
+SkOverdrawCanvas::onDrawAnnotation(SkRect const&, char const*, SkData*)
+SkOverdrawCanvas::onDrawArc(SkRect const&, float, float, bool, SkPaint const&)
+SkOverdrawCanvas::onDrawAtlas2(SkImage const*, SkRSXform const*, SkRect const*, unsigned int const*, int, SkBlendMode, SkSamplingOptions const&, SkRect const*, SkPaint const*)
+SkOverdrawCanvas::onDrawBehind(SkPaint const&)
+SkOverdrawCanvas::onDrawDRRect(SkRRect const&, SkRRect const&, SkPaint const&)
+SkOverdrawCanvas::onDrawDrawable(SkDrawable*, SkMatrix const*)
+SkOverdrawCanvas::onDrawEdgeAAImageSet2(SkCanvas::ImageSetEntry const*, int, SkPoint const*, SkMatrix const*, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkOverdrawCanvas::onDrawEdgeAAQuad(SkRect const&, SkPoint const*, SkCanvas::QuadAAFlags, SkRGBA4f<(SkAlphaType)3> const&, SkBlendMode)
+SkOverdrawCanvas::onDrawGlyphRunList(SkGlyphRunList const&, SkPaint const&)
+SkOverdrawCanvas::onDrawImage2(SkImage const*, float, float, SkSamplingOptions const&, SkPaint const*)
+SkOverdrawCanvas::onDrawImageLattice2(SkImage const*, SkCanvas::Lattice const&, SkRect const&, SkFilterMode, SkPaint const*)
+SkOverdrawCanvas::onDrawImageRect2(SkImage const*, SkRect const&, SkRect const&, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkOverdrawCanvas::onDrawOval(SkRect const&, SkPaint const&)
+SkOverdrawCanvas::onDrawPaint(SkPaint const&)
+SkOverdrawCanvas::onDrawPatch(SkPoint const*, unsigned int const*, SkPoint const*, SkBlendMode, SkPaint const&)
+SkOverdrawCanvas::onDrawPath(SkPath const&, SkPaint const&)
+SkOverdrawCanvas::onDrawPicture(SkPicture const*, SkMatrix const*, SkPaint const*)
+SkOverdrawCanvas::onDrawPoints(SkCanvas::PointMode, unsigned long, SkPoint const*, SkPaint const&)
+SkOverdrawCanvas::onDrawRRect(SkRRect const&, SkPaint const&)
+SkOverdrawCanvas::onDrawRect(SkRect const&, SkPaint const&)
+SkOverdrawCanvas::onDrawRegion(SkRegion const&, SkPaint const&)
+SkOverdrawCanvas::onDrawShadowRec(SkPath const&, SkDrawShadowRec const&)
+SkOverdrawCanvas::onDrawTextBlob(SkTextBlob const*, float, float, SkPaint const&)
+SkOverdrawCanvas::onDrawVerticesObject(SkVertices const*, SkBlendMode, SkPaint const&)
+SkOverdrawColorFilter::MakeWithSkColors(unsigned int const*)
+SkPaint::SkPaint(SkPaint const&)
+SkPaint::SkPaint(SkPaint&&)
+SkPaint::SkPaint(SkRGBA4f<(SkAlphaType)3> const&, SkColorSpace*)
+SkPaint::asBlendMode() const
+SkPaint::canComputeFastBounds() const
+SkPaint::doComputeFastBounds(SkRect const&, SkRect*, SkPaint::Style) const
+SkPaint::getBlendMode_or(SkBlendMode) const
+SkPaint::getFillPath(SkPath const&, SkPath*, SkRect const*, SkMatrix const&) const
+SkPaint::getFillPath(SkPath const&, SkPath*, SkRect const*, float) const
+SkPaint::isSrcOver() const
+SkPaint::nothingToDraw() const
+SkPaint::operator=(SkPaint const&)
+SkPaint::operator=(SkPaint&&)
+SkPaint::refBlender() const
+SkPaint::refColorFilter() const
+SkPaint::refImageFilter() const
+SkPaint::refMaskFilter() const
+SkPaint::refPathEffect() const
+SkPaint::reset()
+SkPaint::setARGB(unsigned int, unsigned int, unsigned int, unsigned int)
+SkPaint::setAlphaf(float)
+SkPaint::setColor(SkRGBA4f<(SkAlphaType)3> const&, SkColorSpace*)
+SkPaint::setImageFilter(sk_sp<SkImageFilter>)
+SkPaint::setMaskFilter(sk_sp<SkMaskFilter>)
+SkPaint::setStroke(bool)
+SkPaintFilterCanvas::SkPaintFilterCanvas(SkCanvas*)
+SkPaintFilterCanvas::onAccessTopLayerPixels(SkPixmap*)
+SkPaintFilterCanvas::onDrawAnnotation(SkRect const&, char const*, SkData*)
+SkPaintFilterCanvas::onDrawArc(SkRect const&, float, float, bool, SkPaint const&)
+SkPaintFilterCanvas::onDrawAtlas2(SkImage const*, SkRSXform const*, SkRect const*, unsigned int const*, int, SkBlendMode, SkSamplingOptions const&, SkRect const*, SkPaint const*)
+SkPaintFilterCanvas::onDrawBehind(SkPaint const&)
+SkPaintFilterCanvas::onDrawDRRect(SkRRect const&, SkRRect const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawDrawable(SkDrawable*, SkMatrix const*)
+SkPaintFilterCanvas::onDrawEdgeAAImageSet2(SkCanvas::ImageSetEntry const*, int, SkPoint const*, SkMatrix const*, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkPaintFilterCanvas::onDrawEdgeAAQuad(SkRect const&, SkPoint const*, SkCanvas::QuadAAFlags, SkRGBA4f<(SkAlphaType)3> const&, SkBlendMode)
+SkPaintFilterCanvas::onDrawGlyphRunList(SkGlyphRunList const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawImage2(SkImage const*, float, float, SkSamplingOptions const&, SkPaint const*)
+SkPaintFilterCanvas::onDrawImageLattice2(SkImage const*, SkCanvas::Lattice const&, SkRect const&, SkFilterMode, SkPaint const*)
+SkPaintFilterCanvas::onDrawImageRect2(SkImage const*, SkRect const&, SkRect const&, SkSamplingOptions const&, SkPaint const*, SkCanvas::SrcRectConstraint)
+SkPaintFilterCanvas::onDrawOval(SkRect const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawPaint(SkPaint const&)
+SkPaintFilterCanvas::onDrawPatch(SkPoint const*, unsigned int const*, SkPoint const*, SkBlendMode, SkPaint const&)
+SkPaintFilterCanvas::onDrawPath(SkPath const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawPicture(SkPicture const*, SkMatrix const*, SkPaint const*)
+SkPaintFilterCanvas::onDrawPoints(SkCanvas::PointMode, unsigned long, SkPoint const*, SkPaint const&)
+SkPaintFilterCanvas::onDrawRRect(SkRRect const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawRect(SkRect const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawRegion(SkRegion const&, SkPaint const&)
+SkPaintFilterCanvas::onDrawShadowRec(SkPath const&, SkDrawShadowRec const&)
+SkPaintFilterCanvas::onDrawTextBlob(SkTextBlob const*, float, float, SkPaint const&)
+SkPaintFilterCanvas::onDrawVerticesObject(SkVertices const*, SkBlendMode, SkPaint const&)
+SkPaintFilterCanvas::onGetProps(SkSurfaceProps*) const
+SkPaintFilterCanvas::onImageInfo() const
+SkPaintFilterCanvas::onNewSurface(SkImageInfo const&, SkSurfaceProps const&)
+SkPaintFilterCanvas::onPeekPixels(SkPixmap*)
+SkParse::Count(char const*)
+SkParse::Count(char const*, char)
+SkParse::FindBool(char const*, bool*)
+SkParse::FindColor(char const*, unsigned int*)
+SkParse::FindHex(char const*, unsigned int*)
+SkParse::FindList(char const*, char const*)
+SkParse::FindMSec(char const*, unsigned int*)
+SkParse::FindNamedColor(char const*, unsigned long, unsigned int*)
+SkParse::FindS32(char const*, int*)
+SkParse::FindScalar(char const*, float*)
+SkParse::FindScalars(char const*, float*, int)
+SkParsePath::FromSVGString(char const*, SkPath*)
+SkParsePath::ToSVGString(SkPath const&, SkString*, SkParsePath::PathEncoding)
+SkPath1DPathEffect::Make(SkPath const&, float, float, SkPath1DPathEffect::Style)
+SkPath1DPathEffect::RegisterFlattenables()
+SkPath2DPathEffect::Make(SkMatrix const&, SkPath const&)
+SkPath2DPathEffect::RegisterFlattenables()
+SkPath::Circle(float, float, float, SkPathDirection)
+SkPath::ConvertConicToQuads(SkPoint const&, SkPoint const&, SkPoint const&, float, SkPoint*, int)
+SkPath::IsCubicDegenerate(SkPoint const&, SkPoint const&, SkPoint const&, SkPoint const&, bool)
+SkPath::IsLineDegenerate(SkPoint const&, SkPoint const&, bool)
+SkPath::IsQuadDegenerate(SkPoint const&, SkPoint const&, SkPoint const&, bool)
+SkPath::Iter::Iter()
+SkPath::Iter::Iter(SkPath const&, bool)
+SkPath::Iter::autoClose(SkPoint*)
+SkPath::Iter::isClosedContour() const
+SkPath::Iter::next(SkPoint*)
+SkPath::Iter::setPath(SkPath const&, bool)
+SkPath::Make(SkPoint const*, int, unsigned char const*, int, float const*, int, SkPathFillType, bool)
+SkPath::Oval(SkRect const&, SkPathDirection)
+SkPath::Oval(SkRect const&, SkPathDirection, unsigned int)
+SkPath::Polygon(SkPoint const*, int, bool, SkPathFillType, bool)
+SkPath::RRect(SkRRect const&, SkPathDirection)
+SkPath::RRect(SkRRect const&, SkPathDirection, unsigned int)
+SkPath::RRect(SkRect const&, float, float, SkPathDirection)
+SkPath::RawIter::next(SkPoint*)
+SkPath::RawIter::setPath(SkPath const&)
+SkPath::Rect(SkRect const&, SkPathDirection, unsigned int)
+SkPath::SkPath(SkPath const&)
+SkPath::SkPath(sk_sp<SkPathRef>, SkPathFillType, bool, SkPathConvexity, SkPathFirstDirection)
+SkPath::addArc(SkRect const&, float, float)
+SkPath::addCircle(float, float, float, SkPathDirection)
+SkPath::addOval(SkRect const&, SkPathDirection)
+SkPath::addOval(SkRect const&, SkPathDirection, unsigned int)
+SkPath::addPath(SkPath const&, SkMatrix const&, SkPath::AddPathMode)
+SkPath::addPath(SkPath const&, float, float, SkPath::AddPathMode)
+SkPath::addPoly(SkPoint const*, int, bool)
+SkPath::addRRect(SkRRect const&, SkPathDirection)
+SkPath::addRRect(SkRRect const&, SkPathDirection, unsigned int)
+SkPath::addRoundRect(SkRect const&, float const*, SkPathDirection)
+SkPath::addRoundRect(SkRect const&, float, float, SkPathDirection)
+SkPath::approximateBytesUsed() const
+SkPath::arcTo(SkRect const&, float, float, bool)
+SkPath::arcTo(float, float, float, SkPath::ArcSize, SkPathDirection, float, float)
+SkPath::arcTo(float, float, float, float, float)
+SkPath::computeConvexity() const
+SkPath::computeTightBounds() const
+SkPath::conicTo(float, float, float, float, float)
+SkPath::conservativelyContainsRect(SkRect const&) const
+SkPath::contains(float, float) const
+SkPath::copyFields(SkPath const&)
+SkPath::countPoints() const
+SkPath::countVerbs() const
+SkPath::dirtyAfterEdit()
+SkPath::dump(SkWStream*, bool) const
+SkPath::dumpArrays(SkWStream*, bool) const
+SkPath::getConvexity() const
+SkPath::getFirstDirection() const
+SkPath::getGenerationID() const
+SkPath::getLastPt(SkPoint*) const
+SkPath::getPoint(int) const
+SkPath::getPoints(SkPoint*, int) const
+SkPath::getVerbs(unsigned char*, int) const
+SkPath::interpolate(SkPath const&, float, SkPath*) const
+SkPath::isConvexityAccurate() const
+SkPath::isInterpolatable(SkPath const&) const
+SkPath::isLastContourClosed() const
+SkPath::isLine(SkPoint*) const
+SkPath::isOval(SkRect*) const
+SkPath::isRRect(SkRRect*) const
+SkPath::isRect(SkRect*, bool*, SkPathDirection*) const
+SkPath::isValidImpl() const
+SkPath::isZeroLengthSincePoint(int) const
+SkPath::operator=(SkPath const&)
+SkPath::quadTo(float, float, float, float)
+SkPath::rArcTo(float, float, float, SkPath::ArcSize, SkPathDirection, float, float)
+SkPath::rConicTo(float, float, float, float, float)
+SkPath::rCubicTo(float, float, float, float, float, float)
+SkPath::rLineTo(float, float)
+SkPath::rMoveTo(float, float)
+SkPath::rQuadTo(float, float, float, float)
+SkPath::readAsRRect(void const*, unsigned long)
+SkPath::readFromMemory(void const*, unsigned long)
+SkPath::readFromMemory_EQ4Or5(void const*, unsigned long)
+SkPath::reset()
+SkPath::resetFields()
+SkPath::reverseAddPath(SkPath const&)
+SkPath::reversePathTo(SkPath const&)
+SkPath::rewind()
+SkPath::serialize() const
+SkPath::setConvexity(SkPathConvexity)
+SkPath::setConvexity(SkPathConvexity) const
+SkPath::setFirstDirection(SkPathFirstDirection) const
+SkPath::setLastPt(float, float)
+SkPath::setPt(int, float, float)
+SkPath::shrinkToFit()
+SkPath::swap(SkPath&)
+SkPath::transform(SkMatrix const&, SkPath*, SkApplyPerspectiveClip) const
+SkPath::writeToMemory(void*) const
+SkPath::writeToMemoryAsRRect(void*) const
+SkPathBuilder::SkPathBuilder()
+SkPathBuilder::SkPathBuilder(SkPath const&)
+SkPathBuilder::SkPathBuilder(SkPathFillType)
+SkPathBuilder::addArc(SkRect const&, float, float)
+SkPathBuilder::addCircle(float, float, float, SkPathDirection)
+SkPathBuilder::addOval(SkRect const&, SkPathDirection, unsigned int)
+SkPathBuilder::addPath(SkPath const&)
+SkPathBuilder::addPolygon(SkPoint const*, int, bool)
+SkPathBuilder::addRRect(SkRRect const&, SkPathDirection, unsigned int)
+SkPathBuilder::addRect(SkRect const&, SkPathDirection, unsigned int)
+SkPathBuilder::arcTo(SkPoint, SkPoint, float)
+SkPathBuilder::arcTo(SkPoint, float, SkPathBuilder::ArcSize, SkPathDirection, SkPoint)
+SkPathBuilder::arcTo(SkRect const&, float, float, bool)
+SkPathBuilder::close()
+SkPathBuilder::computeBounds() const
+SkPathBuilder::conicTo(SkPoint, SkPoint, float)
+SkPathBuilder::cubicTo(SkPoint, SkPoint, SkPoint)
+SkPathBuilder::detach()
+SkPathBuilder::incReserve(int, int)
+SkPathBuilder::lineTo(SkPoint)
+SkPathBuilder::make(sk_sp<SkPathRef>) const
+SkPathBuilder::moveTo(SkPoint)
+SkPathBuilder::offset(float, float)
+SkPathBuilder::operator=(SkPath const&)
+SkPathBuilder::polylineTo(SkPoint const*, int)
+SkPathBuilder::privateReverseAddPath(SkPath const&)
+SkPathBuilder::quadTo(SkPoint, SkPoint)
+SkPathBuilder::rConicTo(SkPoint, SkPoint, float)
+SkPathBuilder::rCubicTo(SkPoint, SkPoint, SkPoint)
+SkPathBuilder::rLineTo(SkPoint)
+SkPathBuilder::rQuadTo(SkPoint, SkPoint)
+SkPathBuilder::reset()
+SkPathBuilder::snapshot() const
+SkPathBuilder::~SkPathBuilder()
+SkPathEffect::Deserialize(void const*, unsigned long, SkDeserialProcs const*)
+SkPathEffect::MakeCompose(sk_sp<SkPathEffect>, sk_sp<SkPathEffect>)
+SkPathEffect::MakeSum(sk_sp<SkPathEffect>, sk_sp<SkPathEffect>)
+SkPathEffect::asADash(SkPathEffect::DashInfo*) const
+SkPathEffect::filterPath(SkPath*, SkPath const&, SkStrokeRec*, SkRect const*) const
+SkPathEffect::filterPath(SkPath*, SkPath const&, SkStrokeRec*, SkRect const*, SkMatrix const&) const
+SkPathEffect::needsCTM() const
+SkPathMeasure::SkPathMeasure()
+SkPathMeasure::SkPathMeasure(SkPath const&, bool, float)
+SkPathMeasure::getLength()
+SkPathMeasure::getMatrix(float, SkMatrix*, SkPathMeasure::MatrixFlags)
+SkPathMeasure::getPosTan(float, SkPoint*, SkPoint*)
+SkPathMeasure::getSegment(float, float, SkPath*, bool)
+SkPathMeasure::isClosed()
+SkPathMeasure::nextContour()
+SkPathMeasure::setPath(SkPath const*, bool)
+SkPathMeasure::~SkPathMeasure()
+SkPathRef::CreateEmpty()
+SkPathRef::CreateTransformedCopy(sk_sp<SkPathRef>*, SkPathRef const&, SkMatrix const&)
+SkPathRef::Editor::Editor(sk_sp<SkPathRef>*, int, int)
+SkPathRef::Iter::Iter()
+SkPathRef::Iter::Iter(SkPathRef const&)
+SkPathRef::Iter::next(SkPoint*)
+SkPathRef::Iter::peek() const
+SkPathRef::Iter::setPathRef(SkPathRef const&)
+SkPathRef::Rewind(sk_sp<SkPathRef>*)
+SkPathRef::addGenIDChangeListener(sk_sp<SkIDChangeListener>)
+SkPathRef::approximateBytesUsed() const
+SkPathRef::callGenIDChangeListeners()
+SkPathRef::copy(SkPathRef const&, int, int)
+SkPathRef::dataMatchesVerbs() const
+SkPathRef::genID() const
+SkPathRef::genIDChangeListenerCount()
+SkPathRef::getRRect() const
+SkPathRef::growForRepeatedVerb(int, int, float**)
+SkPathRef::growForVerb(int, float)
+SkPathRef::growForVerbsInPath(SkPathRef const&)
+SkPathRef::interpolate(SkPathRef const&, float, SkPathRef*) const
+SkPathRef::isValid() const
+SkPathRef::operator==(SkPathRef const&) const
+SkPathRef::writeSize() const
+SkPathRef::writeToBuffer(SkWBuffer*) const
+SkPathRef::~SkPathRef()
+SkPerlinNoiseShader::MakeFractalNoise(float, float, int, float, SkISize const*)
+SkPerlinNoiseShader::MakeTurbulence(float, float, int, float, SkISize const*)
+SkPerlinNoiseShader::RegisterFlattenables()
+SkPicture::BufferIsSKP(SkReadBuffer*, SkPictInfo*)
+SkPicture::Forwardport(SkPictInfo const&, SkPictureData const*, SkReadBuffer*)
+SkPicture::IsValidPictInfo(SkPictInfo const&)
+SkPicture::MakeFromData(SkData const*, SkDeserialProcs const*)
+SkPicture::MakeFromData(void const*, unsigned long, SkDeserialProcs const*)
+SkPicture::MakeFromStream(SkStream*, SkDeserialProcs const*)
+SkPicture::MakeFromStream(SkStream*, SkDeserialProcs const*, SkTypefacePlayback*)
+SkPicture::MakePlaceholder(SkRect)
+SkPicture::SkPicture()
+SkPicture::StreamIsSKP(SkStream*, SkPictInfo*)
+SkPicture::backport() const
+SkPicture::createHeader() const
+SkPicture::makeShader(SkTileMode, SkTileMode, SkFilterMode, SkMatrix const*, SkRect const*) const
+SkPicture::serialize(SkSerialProcs const*) const
+SkPicture::serialize(SkWStream*, SkSerialProcs const*) const
+SkPicture::serialize(SkWStream*, SkSerialProcs const*, SkRefCntSet*, bool) const
+SkPicture::~SkPicture()
+SkPictureRecorder::SkPictureRecorder()
+SkPictureRecorder::beginRecording(SkRect const&, SkBBHFactory*)
+SkPictureRecorder::beginRecording(SkRect const&, sk_sp<SkBBoxHierarchy>)
+SkPictureRecorder::finishRecordingAsDrawable()
+SkPictureRecorder::finishRecordingAsPicture()
+SkPictureRecorder::finishRecordingAsPictureWithCull(SkRect const&)
+SkPictureRecorder::getRecordingCanvas()
+SkPictureRecorder::partialReplay(SkCanvas*) const
+SkPictureRecorder::~SkPictureRecorder()
+SkPixelRef::SkPixelRef(int, int, void*, unsigned long)
+SkPixelRef::addGenIDChangeListener(sk_sp<SkIDChangeListener>)
+SkPixelRef::android_only_reset(int, int, unsigned long)
+SkPixelRef::callGenIDChangeListeners()
+SkPixelRef::getGenerationID() const
+SkPixelRef::needsNewGenID()
+SkPixelRef::notifyPixelsChanged()
+SkPixelRef::restoreMutability()
+SkPixelRef::setImmutable()
+SkPixelRef::setImmutableWithID(unsigned int)
+SkPixelRef::setTemporarilyImmutable()
+SkPixelRef::~SkPixelRef()
+SkPixmap::computeIsOpaque() const
+SkPixmap::erase(SkRGBA4f<(SkAlphaType)3> const&, SkColorSpace*, SkIRect const*) const
+SkPixmap::erase(unsigned int, SkIRect const&) const
+SkPixmap::extractSubset(SkPixmap*, SkIRect const&) const
+SkPixmap::getAlphaf(int, int) const
+SkPixmap::readPixels(SkImageInfo const&, void*, unsigned long, int, int) const
+SkPixmap::reset()
+SkPixmap::reset(SkImageInfo const&, void const*, unsigned long)
+SkPixmap::reset(SkMask const&)
+SkPixmap::scalePixels(SkPixmap const&, SkSamplingOptions const&) const
+SkPixmap::setColorSpace(sk_sp<SkColorSpace>)
+SkPngEncoder::Encode(SkWStream*, SkPixmap const&, SkPngEncoder::Options const&)
+SkPngEncoder::Make(SkWStream*, SkPixmap const&, SkPngEncoder::Options const&)
+SkPngEncoder::SkPngEncoder(std::unique_ptr<SkPngEncoderMgr, std::default_delete<SkPngEncoderMgr> >, SkPixmap const&)
+SkPngEncoder::onEncodeRows(int)
+SkPngEncoder::~SkPngEncoder()
+SkPoint3::Length(float, float, float)
+SkPoint3::normalize()
+SkPoint::Length(float, float)
+SkPoint::Normalize(SkPoint*)
+SkPoint::normalize()
+SkPoint::scale(float, SkPoint*) const
+SkPoint::setLength(float)
+SkPoint::setLength(float, float, float)
+SkPoint::setNormalize(float, float)
+SkPreMultiplyColor(unsigned int)
+SkPromiseImageTexture::SkPromiseImageTexture(GrBackendTexture const&)
+SkPromiseImageTexture::addKeyToInvalidate(unsigned int, GrUniqueKey const&)
+SkPromiseImageTexture::~SkPromiseImageTexture()
+SkRGBA4f<(SkAlphaType)3>::toSkColor() const
+SkRGBToHSV(unsigned int, unsigned int, unsigned int, float*)
+SkRRect::AreRectAndRadiiValid(SkRect const&, SkPoint const*)
+SkRRect::checkCornerContainment(float, float) const
+SkRRect::computeType()
+SkRRect::contains(SkRect const&) const
+SkRRect::dump(bool) const
+SkRRect::dumpToString(bool) const
+SkRRect::initializeRect(SkRect const&)
+SkRRect::inset(float, float, SkRRect*) const
+SkRRect::isValid() const
+SkRRect::readFromMemory(void const*, unsigned long)
+SkRRect::scaleRadii()
+SkRRect::setNinePatch(SkRect const&, float, float, float, float)
+SkRRect::setOval(SkRect const&)
+SkRRect::setRectRadii(SkRect const&, SkPoint const*)
+SkRRect::setRectXY(SkRect const&, float, float)
+SkRRect::transform(SkMatrix const&, SkRRect*) const
+SkRRect::writeToMemory(void*) const
+SkRTreeFactory::operator()() const
+SkRasterHandleAllocator::MakeCanvas(std::unique_ptr<SkRasterHandleAllocator, std::default_delete<SkRasterHandleAllocator> >, SkImageInfo const&, SkRasterHandleAllocator::Rec const*)
+SkRasterHandleAllocator::allocBitmap(SkImageInfo const&, SkBitmap*)
+SkRect::dump(bool) const
+SkRect::intersect(SkRect const&)
+SkRect::intersect(SkRect const&, SkRect const&)
+SkRect::join(SkRect const&)
+SkRect::setBoundsNoCheck(SkPoint const*, int)
+SkRect::toQuad(SkPoint*) const
+SkRegion::BuildRectRuns(SkIRect const&, int*)
+SkRegion::Cliperator::Cliperator(SkRegion const&, SkIRect const&)
+SkRegion::Cliperator::next()
+SkRegion::Iterator::reset(SkRegion const&)
+SkRegion::Iterator::rewind()
+SkRegion::Oper(SkRegion const&, SkRegion const&, SkRegion::Op, SkRegion*)
+SkRegion::RunsAreARect(int const*, int, SkIRect*)
+SkRegion::SkRegion(SkIRect const&)
+SkRegion::SkRegion(SkRegion const&)
+SkRegion::Spanerator::Spanerator(SkRegion const&, int, int, int)
+SkRegion::Spanerator::next(int*, int*)
+SkRegion::allocateRuns(SkRegion::RunHead const&)
+SkRegion::allocateRuns(int)
+SkRegion::allocateRuns(int, int, int)
+SkRegion::computeRegionComplexity() const
+SkRegion::contains(SkIRect const&) const
+SkRegion::contains(SkRegion const&) const
+SkRegion::contains(int, int) const
+SkRegion::count_runtype_values(int*, int*) const
+SkRegion::freeRuns()
+SkRegion::getBoundaryPath(SkPath*) const
+SkRegion::getRuns(int*, int*) const
+SkRegion::intersects(SkRegion const&) const
+SkRegion::isValid() const
+SkRegion::op(SkIRect const&, SkRegion const&, SkRegion::Op)
+SkRegion::op(SkRegion const&, SkRegion const&, SkRegion::Op)
+SkRegion::operator=(SkRegion const&)
+SkRegion::operator==(SkRegion const&) const
+SkRegion::readFromMemory(void const*, unsigned long)
+SkRegion::setPath(SkPath const&, SkRegion const&)
+SkRegion::setRect(SkIRect const&)
+SkRegion::setRegion(SkRegion const&)
+SkRegion::setRuns(int*, int)
+SkRegion::swap(SkRegion&)
+SkRegion::translate(int, int, SkRegion*) const
+SkRegion::writeToMemory(void*) const
+SkRemotableFontIdentitySet::NewEmpty()
+SkRemotableFontIdentitySet::SkRemotableFontIdentitySet(int, SkFontIdentity**)
+SkRuntimeBlendBuilder::SkRuntimeBlendBuilder(sk_sp<SkRuntimeEffect>)
+SkRuntimeBlendBuilder::makeBlender()
+SkRuntimeBlendBuilder::~SkRuntimeBlendBuilder()
+SkRuntimeEffect::ChildPtr::blender() const
+SkRuntimeEffect::ChildPtr::colorFilter() const
+SkRuntimeEffect::ChildPtr::shader() const
+SkRuntimeEffect::ChildPtr::type() const
+SkRuntimeEffect::MakeForBlender(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >)
+SkRuntimeEffect::MakeForBlender(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >, SkRuntimeEffect::Options const&)
+SkRuntimeEffect::MakeForColorFilter(SkString, SkRuntimeEffect::Options const&)
+SkRuntimeEffect::MakeForColorFilter(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >)
+SkRuntimeEffect::MakeForColorFilter(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >, SkRuntimeEffect::Options const&)
+SkRuntimeEffect::MakeForShader(SkString, SkRuntimeEffect::Options const&)
+SkRuntimeEffect::MakeForShader(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >)
+SkRuntimeEffect::MakeForShader(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >, SkRuntimeEffect::Options const&)
+SkRuntimeEffect::MakeFromDSL(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >, SkRuntimeEffect::Options const&, SkSL::ProgramKind)
+SkRuntimeEffect::MakeFromSource(SkString, SkRuntimeEffect::Options const&, SkSL::ProgramKind)
+SkRuntimeEffect::MakeInternal(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >, SkRuntimeEffect::Options const&, SkSL::ProgramKind)
+SkRuntimeEffect::RegisterFlattenables()
+SkRuntimeEffect::SkRuntimeEffect(std::unique_ptr<SkSL::Program, std::default_delete<SkSL::Program> >, SkRuntimeEffect::Options const&, SkSL::FunctionDefinition const&, std::vector<SkRuntimeEffect::Uniform, std::allocator<SkRuntimeEffect::Uniform> >&&, std::vector<SkRuntimeEffect::Child, std::allocator<SkRuntimeEffect::Child> >&&, std::vector<SkSL::SampleUsage, std::allocator<SkSL::SampleUsage> >&&, unsigned int)
+SkRuntimeEffect::Uniform::sizeInBytes() const
+SkRuntimeEffect::findChild(char const*) const
+SkRuntimeEffect::findUniform(char const*) const
+SkRuntimeEffect::getFilterColorProgram()
+SkRuntimeEffect::makeColorFilter(sk_sp<SkData>) const
+SkRuntimeEffect::makeColorFilter(sk_sp<SkData>, SkSpan<SkRuntimeEffect::ChildPtr>) const
+SkRuntimeEffect::makeColorFilter(sk_sp<SkData>, sk_sp<SkColorFilter>*, unsigned long) const
+SkRuntimeEffect::makeImage(GrRecordingContext*, sk_sp<SkData>, SkSpan<SkRuntimeEffect::ChildPtr>, SkMatrix const*, SkImageInfo, bool) const
+SkRuntimeEffect::makeShader(sk_sp<SkData>, SkSpan<SkRuntimeEffect::ChildPtr>, SkMatrix const*, bool) const
+SkRuntimeEffect::makeShader(sk_sp<SkData>, sk_sp<SkShader>*, unsigned long, SkMatrix const*, bool) const
+SkRuntimeEffect::source[abi:cxx11]() const
+SkRuntimeEffect::uniformSize() const
+SkRuntimeEffect::~SkRuntimeEffect()
+SkRuntimeShaderBuilder::SkRuntimeShaderBuilder(sk_sp<SkRuntimeEffect>)
+SkRuntimeShaderBuilder::makeImage(GrRecordingContext*, SkMatrix const*, SkImageInfo, bool)
+SkRuntimeShaderBuilder::makeShader(SkMatrix const*, bool)
+SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder()
+SkSL::Compiler::Compiler(GrShaderCaps const*)
+SkSL::Compiler::convertIdentifier(int, skstd::string_view)
+SkSL::Compiler::convertProgram(SkSL::ProgramKind, SkSL::String, SkSL::ProgramSettings)
+SkSL::Compiler::errorText(bool)
+SkSL::Compiler::finalize(SkSL::Program&)
+SkSL::Compiler::handleError(skstd::string_view, SkSL::PositionInfo)
+SkSL::Compiler::loadFragmentModule()
+SkSL::Compiler::loadGPUModule()
+SkSL::Compiler::loadModule(SkSL::ProgramKind, SkSL::Compiler::ModuleData, std::shared_ptr<SkSL::SymbolTable>, bool)
+SkSL::Compiler::loadPublicModule()
+SkSL::Compiler::loadRuntimeShaderModule()
+SkSL::Compiler::loadVertexModule()
+SkSL::Compiler::makePrivateSymbolTable(std::shared_ptr<SkSL::SymbolTable>)
+SkSL::Compiler::makeRootSymbolTable()
+SkSL::Compiler::moduleForProgramKind(SkSL::ProgramKind)
+SkSL::Compiler::optimize(SkSL::LoadedModule&)
+SkSL::Compiler::optimize(SkSL::Program&)
+SkSL::Compiler::parseModule(SkSL::ProgramKind, SkSL::Compiler::ModuleData, SkSL::ParsedModule const&)
+SkSL::Compiler::runInliner(std::vector<std::unique_ptr<SkSL::ProgramElement, std::default_delete<SkSL::ProgramElement> >, std::allocator<std::unique_ptr<SkSL::ProgramElement, std::default_delete<SkSL::ProgramElement> > > > const&, std::shared_ptr<SkSL::SymbolTable>, SkSL::ProgramUsage*)
+SkSL::Compiler::toGLSL(SkSL::Program&, SkSL::OutputStream&)
+SkSL::Compiler::toGLSL(SkSL::Program&, SkSL::String*)
+SkSL::Compiler::toHLSL(SkSL::Program&, SkSL::String*)
+SkSL::Compiler::toMetal(SkSL::Program&, SkSL::OutputStream&)
+SkSL::Compiler::toMetal(SkSL::Program&, SkSL::String*)
+SkSL::Compiler::toSPIRV(SkSL::Program&, SkSL::OutputStream&)
+SkSL::Compiler::toSPIRV(SkSL::Program&, SkSL::String*)
+SkSL::Compiler::writeErrorCount()
+SkSL::Compiler::~Compiler()
+SkSL::String::appendf(char const*, ...)
+SkSL::String::consumeSuffix(char const*)
+SkSL::String::operator+(SkSL::String const&) const
+SkSL::String::operator+(char const*) const
+SkSL::String::operator+(skstd::string_view) const
+SkSL::String::operator+=(SkSL::String const&)
+SkSL::String::operator+=(char const*)
+SkSL::String::operator+=(char)
+SkSL::String::operator+=(skstd::string_view)
+SkSL::String::printf(char const*, ...)
+SkSL::String::vappendf(char const*, __va_list_tag*)
+SkSemaphore::osSignal(int)
+SkSemaphore::osWait()
+SkSemaphore::try_wait()
+SkSemaphore::~SkSemaphore()
+SkShader::asAGradient(SkShader::GradientInfo*) const
+SkShader::isAImage(SkMatrix*, SkTileMode*) const
+SkShader::makeWithColorFilter(sk_sp<SkColorFilter>) const
+SkShader::makeWithLocalMatrix(SkMatrix const&) const
+SkShaderMaskFilter::Make(sk_sp<SkShader>)
+SkShaderMaskFilter::RegisterFlattenables()
+SkShaders::Blend(sk_sp<SkBlender>, sk_sp<SkShader>, sk_sp<SkShader>)
+SkShaders::Color(SkRGBA4f<(SkAlphaType)3> const&, sk_sp<SkColorSpace>)
+SkShaders::Empty()
+SkShadowUtils::ComputeTonalColors(unsigned int, unsigned int, unsigned int*, unsigned int*)
+SkShadowUtils::DrawShadow(SkCanvas*, SkPath const&, SkPoint3 const&, SkPoint3 const&, float, unsigned int, unsigned int, unsigned int)
+SkShadowUtils::GetLocalBounds(SkMatrix const&, SkPath const&, SkPoint3 const&, SkPoint3 const&, float, unsigned int, SkRect*)
+SkSpinlock::contendedAcquire()
+SkStream::MakeFromFile(char const*)
+SkStream::readPackedUInt(unsigned long*)
+SkStream::readS16(short*)
+SkStream::readS32(int*)
+SkStream::readS8(signed char*)
+SkStream::readScalar(float*)
+SkStrikeClient::SkStrikeClient(sk_sp<SkStrikeClient::DiscardableHandleManager>, bool, SkStrikeCache*)
+SkStrikeClient::deserializeTypeface(void const*, unsigned long)
+SkStrikeClient::readStrikeData(void const volatile*, unsigned long)
+SkStrikeClient::~SkStrikeClient()
+SkStrikeServer::SkStrikeServer(SkStrikeServer::DiscardableHandleManager*)
+SkStrikeServer::makeAnalysisCanvas(int, int, SkSurfaceProps const&, sk_sp<SkColorSpace>, bool)
+SkStrikeServer::serializeTypeface(SkTypeface*)
+SkStrikeServer::writeStrikeData(std::vector<unsigned char, std::allocator<unsigned char> >*)
+SkStrikeServer::~SkStrikeServer()
+SkString::Rec::Make(char const*, unsigned long)
+SkString::Rec::ref() const
+SkString::Rec::unique() const
+SkString::Rec::unref() const
+SkString::SkString()
+SkString::SkString(SkString const&)
+SkString::SkString(char const*, unsigned long)
+SkString::SkString(skstd::string_view)
+SkString::SkString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+SkString::SkString(unsigned long)
+SkString::appendVAList(char const*, __va_list_tag*)
+SkString::appendf(char const*, ...)
+SkString::equals(SkString const&) const
+SkString::equals(char const*) const
+SkString::equals(char const*, unsigned long) const
+SkString::insert(unsigned long, char const*)
+SkString::insert(unsigned long, char const*, unsigned long)
+SkString::insertHex(unsigned long, unsigned int, int)
+SkString::insertS32(unsigned long, int)
+SkString::insertS64(unsigned long, long, int)
+SkString::insertScalar(unsigned long, float)
+SkString::insertU32(unsigned long, unsigned int)
+SkString::insertU64(unsigned long, unsigned long, int)
+SkString::insertUnichar(unsigned long, int)
+SkString::operator=(SkString const&)
+SkString::operator=(SkString&&)
+SkString::operator=(char const*)
+SkString::prependVAList(char const*, __va_list_tag*)
+SkString::prependf(char const*, ...)
+SkString::printVAList(char const*, __va_list_tag*)
+SkString::printf(char const*, ...)
+SkString::remove(unsigned long, unsigned long)
+SkString::reset()
+SkString::resize(unsigned long)
+SkString::set(char const*)
+SkString::set(char const*, unsigned long)
+SkString::swap(SkString&)
+SkString::writable_str()
+SkStrokeAndFillPathEffect::Make()
+SkStrokePathEffect::Make(float, SkPaint::Join, SkPaint::Cap, float)
+SkStrokeRec::GetInflationRadius(SkPaint const&, SkPaint::Style)
+SkStrokeRec::GetInflationRadius(SkPaint::Join, float, SkPaint::Cap, float)
+SkStrokeRec::SkStrokeRec(SkPaint const&, SkPaint::Style, float)
+SkStrokeRec::SkStrokeRec(SkPaint const&, float)
+SkStrokeRec::SkStrokeRec(SkStrokeRec::InitStyle)
+SkStrokeRec::applyToPaint(SkPaint*) const
+SkStrokeRec::applyToPath(SkPath*, SkPath const&) const
+SkStrokeRec::getInflationRadius() const
+SkStrokeRec::getStyle() const
+SkStrokeRec::init(SkPaint const&, SkPaint::Style, float)
+SkStrokeRec::setFillStyle()
+SkStrokeRec::setHairlineStyle()
+SkStrokeRec::setStrokeStyle(float, bool)
+SkSurface::MakeFromBackendRenderTarget(GrRecordingContext*, GrBackendRenderTarget const&, GrSurfaceOrigin, SkColorType, sk_sp<SkColorSpace>, SkSurfaceProps const*, void (*)(void*), void*)
+SkSurface::MakeFromBackendTexture(GrRecordingContext*, GrBackendTexture const&, GrSurfaceOrigin, int, SkColorType, sk_sp<SkColorSpace>, SkSurfaceProps const*, void (*)(void*), void*)
+SkSurface::MakeNull(int, int)
+SkSurface::MakeRasterDirect(SkImageInfo const&, void*, unsigned long, SkSurfaceProps const*)
+SkSurface::MakeRasterDirectReleaseProc(SkImageInfo const&, void*, unsigned long, void (*)(void*, void*), void*, SkSurfaceProps const*)
+SkSurface::MakeRasterN32Premul(int, int, SkSurfaceProps const*)
+SkSurface::MakeRenderTarget(GrRecordingContext*, SkSurfaceCharacterization const&, SkBudgeted)
+SkSurface::SkSurface(SkImageInfo const&, SkSurfaceProps const*)
+SkSurface::SkSurface(int, int, SkSurfaceProps const*)
+SkSurface::asyncRescaleAndReadPixels(SkImageInfo const&, SkIRect const&, SkImage::RescaleGamma, SkImage::RescaleMode, void (*)(void*, std::unique_ptr<SkImage::AsyncReadResult const, std::default_delete<SkImage::AsyncReadResult const> >), void*)
+SkSurface::asyncRescaleAndReadPixelsYUV420(SkYUVColorSpace, sk_sp<SkColorSpace>, SkIRect const&, SkISize const&, SkImage::RescaleGamma, SkImage::RescaleMode, void (*)(void*, std::unique_ptr<SkImage::AsyncReadResult const, std::default_delete<SkImage::AsyncReadResult const> >), void*)
+SkSurface::characterize(SkSurfaceCharacterization*) const
+SkSurface::draw(SkCanvas*, float, float, SkSamplingOptions const&, SkPaint const*)
+SkSurface::draw(sk_sp<SkDeferredDisplayList const>, int, int)
+SkSurface::flush(GrFlushInfo const&, GrBackendSurfaceMutableState const*)
+SkSurface::flush(SkSurface::BackendSurfaceAccess, GrFlushInfo const&)
+SkSurface::generationID()
+SkSurface::getBackendRenderTarget(SkSurface::BackendHandleAccess)
+SkSurface::getBackendTexture(SkSurface::BackendHandleAccess)
+SkSurface::isCompatible(SkSurfaceCharacterization const&) const
+SkSurface::makeSurface(SkImageInfo const&)
+SkSurface::makeSurface(int, int)
+SkSurface::notifyContentWillChange(SkSurface::ContentChangeMode)
+SkSurface::peekPixels(SkPixmap*)
+SkSurface::readPixels(SkImageInfo const&, void*, unsigned long, int, int)
+SkSurface::readPixels(SkPixmap const&, int, int)
+SkSurface::recordingContext()
+SkSurface::replaceBackendTexture(GrBackendTexture const&, GrSurfaceOrigin, SkSurface::ContentChangeMode, void (*)(void*), void*)
+SkSurface::wait(int, GrBackendSemaphore const*, bool)
+SkSurface::writePixels(SkBitmap const&, int, int)
+SkSurface::writePixels(SkPixmap const&, int, int)
+SkSurfaceCharacterization::createBackendFormat(SkColorType, GrBackendFormat const&) const
+SkSurfaceCharacterization::createColorSpace(sk_sp<SkColorSpace>) const
+SkSurfaceCharacterization::createFBO0(bool) const
+SkSurfaceCharacterization::createResized(int, int) const
+SkSurfaceCharacterization::isCompatible(GrBackendTexture const&) const
+SkSurfaceCharacterization::operator==(SkSurfaceCharacterization const&) const
+SkSurfaceProps::SkSurfaceProps(SkSurfaceProps const&)
+SkSwapRB(unsigned int*, unsigned int const*, int)
+SkTableColorFilter::Make(unsigned char const*)
+SkTableColorFilter::MakeARGB(unsigned char const*, unsigned char const*, unsigned char const*, unsigned char const*)
+SkTableColorFilter::RegisterFlattenables()
+SkTableMaskFilter::Create(unsigned char const*)
+SkTableMaskFilter::CreateClip(unsigned char, unsigned char)
+SkTableMaskFilter::CreateGamma(float)
+SkTableMaskFilter::MakeClipTable(unsigned char*, unsigned char, unsigned char)
+SkTableMaskFilter::MakeGammaTable(unsigned char*, float)
+SkTextBlob::Deserialize(void const*, unsigned long, SkDeserialProcs const&)
+SkTextBlob::Iter::Iter(SkTextBlob const&)
+SkTextBlob::Iter::experimentalNext(SkTextBlob::Iter::ExperimentalRun*)
+SkTextBlob::Iter::next(SkTextBlob::Iter::Run*)
+SkTextBlob::MakeFromPosText(void const*, unsigned long, SkPoint const*, SkFont const&, SkTextEncoding)
+SkTextBlob::MakeFromPosTextH(void const*, unsigned long, float const*, float, SkFont const&, SkTextEncoding)
+SkTextBlob::MakeFromText(void const*, unsigned long, SkFont const&, SkTextEncoding)
+SkTextBlob::RunRecord::First(SkTextBlob const*)
+SkTextBlob::RunRecord::Next(SkTextBlob::RunRecord const*)
+SkTextBlob::RunRecord::NextUnchecked(SkTextBlob::RunRecord const*)
+SkTextBlob::RunRecord::PosCount(unsigned int, SkTextBlob::GlyphPositioning, SkSafeMath*)
+SkTextBlob::RunRecord::StorageSize(unsigned int, unsigned int, SkTextBlob::GlyphPositioning, SkSafeMath*)
+SkTextBlob::RunRecord::grow(unsigned int)
+SkTextBlob::RunRecord::textSizePtr() const
+SkTextBlob::RunRecord::validate(unsigned char const*) const
+SkTextBlob::ScalarsPerGlyph(SkTextBlob::GlyphPositioning)
+SkTextBlob::SkTextBlob(SkRect const&)
+SkTextBlob::getIntercepts(float const*, float*, SkPaint const*) const
+SkTextBlob::operator new(unsigned long)
+SkTextBlob::operator new(unsigned long, void*)
+SkTextBlob::serialize(SkSerialProcs const&) const
+SkTextBlob::serialize(SkSerialProcs const&, void*, unsigned long) const
+SkTextBlobBuilder::ConservativeRunBounds(SkTextBlob::RunRecord const&)
+SkTextBlobBuilder::SkTextBlobBuilder()
+SkTextBlobBuilder::TightRunBounds(SkTextBlob::RunRecord const&)
+SkTextBlobBuilder::allocInternal(SkFont const&, SkTextBlob::GlyphPositioning, int, int, SkPoint, SkRect const*)
+SkTextBlobBuilder::allocRun(SkFont const&, int, float, float, SkRect const*)
+SkTextBlobBuilder::allocRunPos(SkFont const&, int, SkRect const*)
+SkTextBlobBuilder::allocRunPosH(SkFont const&, int, float, SkRect const*)
+SkTextBlobBuilder::allocRunRSXform(SkFont const&, int)
+SkTextBlobBuilder::allocRunText(SkFont const&, int, float, float, int, SkRect const*)
+SkTextBlobBuilder::allocRunTextPos(SkFont const&, int, int, SkRect const*)
+SkTextBlobBuilder::allocRunTextPosH(SkFont const&, int, float, int, SkRect const*)
+SkTextBlobBuilder::allocRunTextRSXform(SkFont const&, int, int, SkRect const*)
+SkTextBlobBuilder::make()
+SkTextBlobBuilder::mergeRun(SkFont const&, SkTextBlob::GlyphPositioning, unsigned int, SkPoint)
+SkTextBlobBuilder::reserve(unsigned long)
+SkTextBlobBuilder::updateDeferredBounds()
+SkTextBlobBuilder::~SkTextBlobBuilder()
+SkTextUtils::Draw(SkCanvas*, void const*, unsigned long, SkTextEncoding, float, float, SkFont const&, SkPaint const&, SkTextUtils::Align)
+SkTextUtils::GetPath(void const*, unsigned long, SkTextEncoding, float, float, SkFont const&, SkPath*)
+SkTime::DateTime::toISO8601(SkString*) const
+SkTime::GetDateTime(SkTime::DateTime*)
+SkTime::GetNSecs()
+SkTrimPathEffect::Make(float, float, SkTrimPathEffect::Mode)
+SkTypeface::Equal(SkTypeface const*, SkTypeface const*)
+SkTypeface::FromOldStyle(SkTypeface::Style)
+SkTypeface::GetDefaultTypeface(SkTypeface::Style)
+SkTypeface::MakeDefault()
+SkTypeface::MakeDeserialize(SkStream*)
+SkTypeface::MakeFromData(sk_sp<SkData>, int)
+SkTypeface::MakeFromFile(char const*, int)
+SkTypeface::MakeFromName(char const*, SkFontStyle)
+SkTypeface::MakeFromStream(std::unique_ptr<SkStreamAsset, std::default_delete<SkStreamAsset> >, int)
+SkTypeface::SkTypeface(SkFontStyle const&, bool)
+SkTypeface::UniqueID(SkTypeface const*)
+SkTypeface::copyTableData(unsigned int) const
+SkTypeface::countGlyphs() const
+SkTypeface::countTables() const
+SkTypeface::createFamilyNameIterator() const
+SkTypeface::createScalerContext(SkScalerContextEffects const&, SkDescriptor const*) const
+SkTypeface::getAdvancedMetrics() const
+SkTypeface::getBounds() const
+SkTypeface::getFamilyName(SkString*) const
+SkTypeface::getGlyphToUnicodeMap(int*) const
+SkTypeface::getKerningPairAdjustments(unsigned short const*, int, int*) const
+SkTypeface::getPostScriptName(SkString*) const
+SkTypeface::getTableData(unsigned int, unsigned long, unsigned long, void*) const
+SkTypeface::getTableSize(unsigned int) const
+SkTypeface::getTableTags(unsigned int*) const
+SkTypeface::getUnitsPerEm() const
+SkTypeface::getVariationDesignParameters(SkFontParameters::Variation::Axis*, int) const
+SkTypeface::getVariationDesignPosition(SkFontArguments::VariationPosition::Coordinate*, int) const
+SkTypeface::glyphMaskNeedsCurrentColor() const
+SkTypeface::makeClone(SkFontArguments const&) const
+SkTypeface::onComputeBounds(SkRect*) const
+SkTypeface::onCopyTableData(unsigned int) const
+SkTypeface::onGetAdvancedMetrics() const
+SkTypeface::onGetKerningPairAdjustments(unsigned short const*, int, int*) const
+SkTypeface::openStream(int*) const
+SkTypeface::serialize(SkTypeface::SerializeBehavior) const
+SkTypeface::serialize(SkWStream*, SkTypeface::SerializeBehavior) const
+SkTypeface::textToGlyphs(void const*, unsigned long, SkTextEncoding, unsigned short*, int) const
+SkTypeface::unicharToGlyph(int) const
+SkTypeface::unicharsToGlyphs(int const*, int, unsigned short*) const
+SkTypeface::~SkTypeface()
+SkUTF::CountUTF16(unsigned short const*, unsigned long)
+SkUTF::CountUTF32(int const*, unsigned long)
+SkUTF::CountUTF8(char const*, unsigned long)
+SkUTF::NextUTF16(unsigned short const**, unsigned short const*)
+SkUTF::NextUTF32(int const**, int const*)
+SkUTF::NextUTF8(char const**, char const*)
+SkUTF::ToUTF16(int, unsigned short*)
+SkUTF::ToUTF8(int, char*)
+SkUTF::UTF16ToUTF8(char*, int, unsigned short const*, unsigned long)
+SkUTF::UTF8ToUTF16(unsigned short*, int, char const*, unsigned long)
+SkUnPreMultiply::PMColorToColor(unsigned int)
+SkVertices::Builder::Builder(SkVertices::Desc const&)
+SkVertices::Builder::Builder(SkVertices::VertexMode, int, int, unsigned int)
+SkVertices::Builder::colors()
+SkVertices::Builder::detach()
+SkVertices::Builder::indices()
+SkVertices::Builder::init(SkVertices::Desc const&)
+SkVertices::Builder::positions()
+SkVertices::Builder::texCoords()
+SkVertices::MakeCopy(SkVertices::VertexMode, int, SkPoint const*, SkPoint const*, unsigned int const*, int, unsigned short const*)
+SkVertices::approximateSize() const
+SkVertices::getSizes() const
+SkVertices::operator delete(void*)
+SkWStream::SizeOfPackedUInt(unsigned long)
+SkWStream::flush()
+SkWStream::writeBigDecAsText(long, int)
+SkWStream::writeDecAsText(int)
+SkWStream::writeHexAsText(unsigned int, int)
+SkWStream::writePackedUInt(unsigned long)
+SkWStream::writeScalar(float)
+SkWStream::writeScalarAsText(float)
+SkWStream::writeStream(SkStream*, unsigned long)
+SkWStream::~SkWStream()
+SkWebpEncoder::Encode(SkWStream*, SkPixmap const&, SkWebpEncoder::Options const&)
+SkWriteICCProfile(skcms_TransferFunction const&, skcms_Matrix3x3 const&)
+SkYUVAInfo::GetYUVALocations(SkYUVAInfo::PlaneConfig, unsigned int const*)
+SkYUVAInfo::HasAlpha(SkYUVAInfo::PlaneConfig)
+SkYUVAInfo::PlaneDimensions(SkISize, SkYUVAInfo::PlaneConfig, SkYUVAInfo::Subsampling, SkEncodedOrigin, SkISize*)
+SkYUVAInfo::PlaneSubsamplingFactors(SkYUVAInfo::PlaneConfig, SkYUVAInfo::Subsampling, int)
+SkYUVAInfo::SkYUVAInfo(SkISize, SkYUVAInfo::PlaneConfig, SkYUVAInfo::Subsampling, SkYUVColorSpace, SkEncodedOrigin, SkYUVAInfo::Siting, SkYUVAInfo::Siting)
+SkYUVAInfo::SubsamplingFactors(SkYUVAInfo::Subsampling)
+SkYUVAInfo::computeTotalBytes(unsigned long const*, unsigned long*) const
+SkYUVAInfo::makeDimensions(SkISize) const
+SkYUVAInfo::makeSubsampling(SkYUVAInfo::Subsampling) const
+SkYUVAInfo::operator==(SkYUVAInfo const&) const
+SkYUVAInfo::toYUVALocations(unsigned int const*) const
+SkYUVAPixmapInfo::NumChannelsAndDataType(SkColorType)
+SkYUVAPixmapInfo::SkYUVAPixmapInfo(SkYUVAInfo const&, SkColorType const*, unsigned long const*)
+SkYUVAPixmapInfo::SkYUVAPixmapInfo(SkYUVAInfo const&, SkYUVAPixmapInfo::DataType, unsigned long const*)
+SkYUVAPixmapInfo::SupportedDataTypes::SupportedDataTypes(GrImageContext const&)
+SkYUVAPixmapInfo::SupportedDataTypes::enableDataType(SkYUVAPixmapInfo::DataType, int)
+SkYUVAPixmapInfo::computeTotalBytes(unsigned long*) const
+SkYUVAPixmapInfo::initPixmapsFromSingleAllocation(void*, SkPixmap*) const
+SkYUVAPixmapInfo::isSupported(SkYUVAPixmapInfo::SupportedDataTypes const&) const
+SkYUVAPixmapInfo::operator==(SkYUVAPixmapInfo const&) const
+SkYUVAPixmaps::Allocate(SkYUVAPixmapInfo const&)
+SkYUVAPixmaps::FromData(SkYUVAPixmapInfo const&, sk_sp<SkData>)
+SkYUVAPixmaps::FromExternalMemory(SkYUVAPixmapInfo const&, void*)
+SkYUVAPixmaps::FromExternalPixmaps(SkYUVAInfo const&, SkPixmap const*)
+SkYUVAPixmaps::MakeCopy(SkYUVAPixmaps const&)
+SkYUVAPixmaps::RecommendedRGBAColorType(SkYUVAPixmapInfo::DataType)
+SkYUVAPixmaps::SkYUVAPixmaps(SkYUVAInfo const&, SkYUVAPixmapInfo::DataType, SkPixmap const*)
+SkYUVAPixmaps::SkYUVAPixmaps(SkYUVAPixmapInfo const&, sk_sp<SkData>)
+SkYUVAPixmaps::pixmapsInfo() const
+SkYUVAPixmaps::toYUVALocations() const
+SkiaHelper::createSkImage(SkBitmap const&)
+SkiaHelper::dump(SkBitmap const&, char const*)
+SkiaHelper::dump(sk_sp<SkImage> const&, char const*)
+SkiaHelper::dump(sk_sp<SkSurface> const&, char const*)
+SkiaHelper::makeCheckedImageSnapshot(sk_sp<SkSurface>)
+SkiaHelper::makeCheckedImageSnapshot(sk_sp<SkSurface>, SkIRect const&)
+SkiaHelper::setPixelGeometry(SkPixelGeometry)
+SkiaHelper::surfaceProps()
+SkiaSalBitmap::AlphaBlendWith(SalBitmap const&)
+SkiaSalBitmap::ComputeScanlineSize()
+SkiaSalBitmap::ConserveMemory() const
+SkiaSalBitmap::ConvertToGreyscale()
+SkiaSalBitmap::Create(SalBitmap const&, SalGraphics*)
+SkiaSalBitmap::Create(SalBitmap const&, vcl::PixelFormat)
+SkiaSalBitmap::Create(com::sun::star::uno::Reference<com::sun::star::rendering::XBitmapCanvas> const&, Size&, bool)
+SkiaSalBitmap::CreateBitmapData()
+SkiaSalBitmap::Destroy()
+SkiaSalBitmap::EnsureBitmapData()
+SkiaSalBitmap::EnsureBitmapUniqueData()
+SkiaSalBitmap::EraseInternal(Color const&)
+SkiaSalBitmap::GetAlphaImageKey(SkiaHelper::DirectImage) const
+SkiaSalBitmap::GetAlphaSkShader(SkSamplingOptions const&, SkiaHelper::DirectImage) const
+SkiaSalBitmap::GetAsSkBitmap() const
+SkiaSalBitmap::GetBitCount() const
+SkiaSalBitmap::GetImageKey(SkiaHelper::DirectImage) const
+SkiaSalBitmap::GetSkShader(SkSamplingOptions const&, SkiaHelper::DirectImage) const
+SkiaSalBitmap::GetSystemData(BitmapSystemData&)
+SkiaSalBitmap::IsAllBlack() const
+SkiaSalBitmap::IsFullyOpaqueAsAlpha() const
+SkiaSalBitmap::PerformErase()
+SkiaSalBitmap::ReleaseBuffer(BitmapBuffer*, BitmapAccessMode, bool)
+SkiaSalBitmap::Replace(Color const&, Color const&, unsigned char)
+SkiaSalBitmap::ResetAllData()
+SkiaSalBitmap::ResetPendingScaling()
+SkiaSalBitmap::ResetToBuffer()
+SkiaSalBitmap::ResetToSkImage(sk_sp<SkImage>)
+SkiaSalBitmap::ScalingSupported() const
+SkiaSalBitmap::TryDirectConvertToAlphaNoScaling()
+SkiaSalBitmap::alphaType() const
+SkiaSalBitmap::dump(char const*) const
+SkiaSalGraphicsImpl::applyXor()
+SkiaSalGraphicsImpl::checkPendingDrawing()
+SkiaSalGraphicsImpl::checkSurface()
+SkiaSalGraphicsImpl::createOffscreenSurface()
+SkiaSalGraphicsImpl::createWindowSurface(bool)
+SkiaSalGraphicsImpl::delayDrawPolyPolygon(basegfx::B2DPolyPolygon const&, double)
+SkiaSalGraphicsImpl::destroySurface()
+SkiaSalGraphicsImpl::drawBitmap(SalTwoRect const&, SkiaSalBitmap const&, SkBlendMode)
+SkiaSalGraphicsImpl::drawImage(SalTwoRect const&, sk_sp<SkImage> const&, int, SkBlendMode)
+SkiaSalGraphicsImpl::drawShader(SalTwoRect const&, sk_sp<SkShader> const&, SkBlendMode)
+SkiaSalGraphicsImpl::dump(char const*) const
+SkiaSalGraphicsImpl::flushDrawing()
+SkiaSalGraphicsImpl::getClipRegion() const
+SkiaSalGraphicsImpl::getXorCanvas()
+SkiaSalGraphicsImpl::invert(basegfx::B2DPolygon const&, SalInvert)
+SkiaSalGraphicsImpl::makeCachedImageKey(SkiaSalBitmap const&, SkiaSalBitmap const*, Size const&, SkiaHelper::DirectImage, SkiaHelper::DirectImage)
+SkiaSalGraphicsImpl::mergeCacheBitmaps(SkiaSalBitmap const&, SkiaSalBitmap const*, Size const&)
+SkiaSalGraphicsImpl::performDrawPolyPolygon(basegfx::B2DPolyPolygon const&, double, bool)
+SkiaSalGraphicsImpl::postDraw()
+SkiaSalGraphicsImpl::preDraw()
+SkiaSalGraphicsImpl::privateCopyBits(SalTwoRect const&, SkiaSalGraphicsImpl*)
+SkiaSalGraphicsImpl::privateDrawAlphaRect(long, long, long, long, double, bool)
+SkiaSalGraphicsImpl::resetCanvasScalingAndClipping()
+SkiaSalGraphicsImpl::scheduleFlush()
+SkiaSalGraphicsImpl::setCanvasClipRegion(SkCanvas*, vcl::Region const&)
+SkiaSalGraphicsImpl::setCanvasScalingAndClipping()
+SkiaTextRender::ClearDevFontCache()
+SkiaTextRender::DrawTextLayout(GenericSalLayout const&, SalGraphics const&)
+SkiaZone::checkDebug(int, CrashWatchdogTimingsValues const&)
+SkiaZone::getCrashWatchdogTimingsValues()
+SkiaZone::hardDisable()
+SmDocShell::ArrangeFormula()
+SmDocShell::ConvertFrom(SfxMedium&)
+SmDocShell::Draw(OutputDevice*, JobSetup const&, unsigned short)
+SmDocShell::DrawFormula(OutputDevice&, Point&, bool)
+SmDocShell::Execute(SfxRequest&)
+SmDocShell::Factory()
+SmDocShell::FillClass(SvGlobalName*, SotClipboardFormatId*, rtl::OUString*, int, bool) const
+SmDocShell::GetAccessibleText()
+SmDocShell::GetComment() const
+SmDocShell::GetCursor()
+SmDocShell::GetEditEngine()
+SmDocShell::GetInterface() const
+SmDocShell::GetPool()
+SmDocShell::GetPrt()
+SmDocShell::GetRefDev()
+SmDocShell::GetSize()
+SmDocShell::GetState(SfxItemSet&)
+SmDocShell::GetStaticInterface()
+SmDocShell::GetUndoManager()
+SmDocShell::HasCursor() const
+SmDocShell::InitInterface_Impl()
+SmDocShell::InitNew(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SmDocShell::InvalidateCursor()
+SmDocShell::Load(SfxMedium&)
+SmDocShell::LoadSymbols()
+SmDocShell::Notify(SfxBroadcaster&, SfxHint const&)
+SmDocShell::OnDocumentPrinterChanged(Printer*)
+SmDocShell::Parse()
+SmDocShell::RegisterInterface(SfxModule const*)
+SmDocShell::Repaint()
+SmDocShell::ReplaceBadChars()
+SmDocShell::Save()
+SmDocShell::SaveAs(SfxMedium&)
+SmDocShell::SaveSymbols()
+SmDocShell::SetFormat(SmFormat const&)
+SmDocShell::SetModified(bool)
+SmDocShell::SetPrinter(SfxPrinter*)
+SmDocShell::SetSmSyntaxVersion(unsigned short)
+SmDocShell::SetVisArea(tools::Rectangle const&)
+SmDocShell::UpdateEditEngineDefaultFonts()
+SmDocShell::UpdateText()
+SmDocShell::WriteAsMathType3(SfxMedium&)
+SmDocShell::readFormulaOoxml(oox::formulaimport::XmlStream&)
+SmDocShell::writeFormulaOoxml(std::shared_ptr<sax_fastparser::FastSerializerHelper> const&, oox::core::OoxmlVersion, oox::drawingml::DocumentType, signed char)
+SmDocShell::writeFormulaRtf(rtl::OStringBuffer&, unsigned short)
+SmDocShell::~SmDocShell()
+SmartTagMgr::AssociateActionsWithRecognizers()
+SmartTagMgr::LoadLibraries()
+SmartTagMgr::PrepareConfiguration(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SmartTagMgr::ReadConfiguration(bool, bool)
+SmartTagMgr::RegisterListener()
+SotObject::DoClose()
+SotStorage::CreateStorage(bool, StreamMode)
+SotStorageStream::FlushData()
+SotStorageStream::GetData(void*, unsigned long)
+SotStorageStream::PutData(void const*, unsigned long)
+SotStorageStream::ResetError()
+SotStorageStream::SeekPos(unsigned long)
+SotStorageStream::SotStorageStream(BaseStorageStream*)
+SotStorageStream::~SotStorageStream()
+SotTempStream::~SotTempStream()
+SpinButton::Down()
+SpinButton::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+SpinButton::GetFocus()
+SpinButton::KeyInput(KeyEvent const&)
+SpinButton::LoseFocus()
+SpinButton::MouseButtonDown(MouseEvent const&)
+SpinButton::MouseButtonUp(MouseEvent const&)
+SpinButton::MouseMove(MouseEvent const&)
+SpinButton::Paint(OutputDevice&, tools::Rectangle const&)
+SpinButton::PreNotify(NotifyEvent&)
+SpinButton::Resize()
+SpinButton::SetRange(Range const&)
+SpinButton::StateChanged(StateChangedType)
+SpinButton::Up()
+SpinField::CalcMinimumSize() const
+SpinField::CalcMinimumSizeForText(rtl::OUString const&) const
+SpinField::CalcSize(int) const
+SpinField::DataChanged(DataChangedEvent const&)
+SpinField::Down()
+SpinField::Draw(OutputDevice*, Point const&, SystemTextColorFlags)
+SpinField::EndDropDown()
+SpinField::EventNotify(NotifyEvent&)
+SpinField::FillLayoutData() const
+SpinField::First()
+SpinField::GetOptimalSize() const
+SpinField::GetUITestFactory() const
+SpinField::ImplFindPartRect(Point const&)
+SpinField::Last()
+SpinField::MouseButtonDown(MouseEvent const&)
+SpinField::MouseButtonUp(MouseEvent const&)
+SpinField::MouseMove(MouseEvent const&)
+SpinField::Paint(OutputDevice&, tools::Rectangle const&)
+SpinField::PreNotify(NotifyEvent&)
+SpinField::Resize()
+SpinField::ShowDropDown(bool)
+SpinField::StateChanged(StateChangedType)
+SpinField::Up()
+SpinField::dispose()
+SpinField::~SpinField()
+SpinListenerMultiplexer::SpinListenerMultiplexer(cppu::OWeakObject&)
+SpinListenerMultiplexer::acquire()
+SpinListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+SpinListenerMultiplexer::down(com::sun::star::awt::SpinEvent const&)
+SpinListenerMultiplexer::first(com::sun::star::awt::SpinEvent const&)
+SpinListenerMultiplexer::last(com::sun::star::awt::SpinEvent const&)
+SpinListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+SpinListenerMultiplexer::release()
+SpinListenerMultiplexer::up(com::sun::star::awt::SpinEvent const&)
+SplitWindow::SplitItem(unsigned short, long, bool, bool)
+Splitter::EndSplit()
+Splitter::SetHorizontal(bool)
+Splitter::Split()
+Splitter::StartDrag()
+Splitter::StartSplit()
+StarBASIC::BreakHdl()
+StarBASIC::CError(ErrCode, rtl::OUString const&, int, int, int)
+StarBASIC::ClearAllModuleVars()
+StarBASIC::DeInitAllModules()
+StarBASIC::Error(ErrCode, rtl::OUString const&)
+StarBASIC::ErrorHdl()
+StarBASIC::FatalError(ErrCode, rtl::OUString const&)
+StarBASIC::GetErl()
+StarBASIC::GetErrorMsg()
+StarBASIC::GetSfxFromVBError(unsigned short)
+StarBASIC::GetUNOConstant(rtl::OUString const&, com::sun::star::uno::Any&)
+StarBASIC::GetVBErrorCode(ErrCode)
+StarBASIC::InitAllModules(StarBASIC const*)
+StarBASIC::Insert(SbxVariable*)
+StarBASIC::LoadData(SvStream&, unsigned short)
+StarBASIC::MakeErrorText(ErrCode, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+StarBASIC::MakeModule(rtl::OUString const&, com::sun::star::script::ModuleInfo const&, rtl::OUString const&)
+StarBASIC::Remove(SbxVariable*)
+StarBASIC::SetErrorData(ErrCode, unsigned short, unsigned short, unsigned short)
+StarBASIC::SetVBAEnabled(bool)
+StarBASIC::StoreData(SvStream&) const
+StarBASIC::VBAFind(rtl::OUString const&, SbxClassType)
+StarBASIC::getUnoListeners()
+StarBASIC::isVBAEnabled() const
+StarBASIC::~StarBASIC()
+StatusBar::Click()
+StatusBar::DoubleClick()
+StatusBar::GetQuickHelpText(unsigned short) const
+StgReader::GetReaderType()
+Storage::Commit()
+Storage::CopyTo(BaseStorage*) const
+Storage::CopyTo(rtl::OUString const&, BaseStorage*, rtl::OUString const&)
+Storage::Equals(BaseStorage const&) const
+Storage::FillInfoList(std::vector<SvStorageInfo, std::allocator<SvStorageInfo> >*) const
+Storage::GetClassName()
+Storage::GetName() const
+Storage::Init(bool)
+Storage::IsContained(rtl::OUString const&) const
+Storage::IsStorage(rtl::OUString const&) const
+Storage::IsStorageFile(SvStream*)
+Storage::IsStorageFile(rtl::OUString const&)
+Storage::IsStream(rtl::OUString const&) const
+Storage::OpenOLEStorage(rtl::OUString const&, StreamMode, bool)
+Storage::OpenStorage(rtl::OUString const&, StreamMode, bool)
+Storage::OpenStream(rtl::OUString const&, StreamMode, bool)
+Storage::OpenUCBStorage(rtl::OUString const&, StreamMode, bool)
+Storage::Remove(rtl::OUString const&)
+Storage::Revert()
+Storage::SetClass(SvGlobalName const&, SotClipboardFormatId, rtl::OUString const&)
+Storage::SetClassId(SvGUID const&)
+Storage::SetDirty()
+Storage::Storage(StgIo*, StgDirEntry*, StreamMode)
+Storage::Storage(UCBStorageStream&, bool)
+Storage::Storage(rtl::OUString const&, StreamMode, bool)
+Storage::Validate(bool) const
+Storage::ValidateFAT()
+Storage::ValidateMode(StreamMode) const
+Storage::ValidateMode(StreamMode, StgDirEntry const*) const
+Storage::~Storage()
+StringRangeEnumerator::checkValue(int, o3tl::sorted_vector<int, std::less<int>, o3tl::find_unique, true> const*) const
+StringRangeEnumerator::insertJoinedRanges(std::vector<int, std::allocator<int> > const&)
+StringRangeEnumerator::insertRange(int, int, bool)
+StringRangeEnumerator::setRange(rtl::OUString const&)
+StyleSettings::CopyData()
+StyleSettings::GetActionButtonPressedRolloverTextColor() const
+StyleSettings::GetActionButtonRolloverTextColor() const
+StyleSettings::GetActionButtonTextColor() const
+StyleSettings::GetAlternatingRowColor() const
+StyleSettings::GetAntialiasingMinPixelHeight() const
+StyleSettings::GetBorderSize()
+StyleSettings::GetButtonPressedRolloverTextColor() const
+StyleSettings::GetDefaultActionButtonPressedRolloverTextColor() const
+StyleSettings::GetDefaultActionButtonRolloverTextColor() const
+StyleSettings::GetDefaultActionButtonTextColor() const
+StyleSettings::GetDefaultButtonPressedRolloverTextColor() const
+StyleSettings::GetDefaultButtonRolloverTextColor() const
+StyleSettings::GetDefaultButtonTextColor() const
+StyleSettings::GetDisplayOptions() const
+StyleSettings::GetFlatButtonPressedRolloverTextColor() const
+StyleSettings::GetFlatButtonRolloverTextColor() const
+StyleSettings::GetFlatButtonTextColor() const
+StyleSettings::GetFloatTitleHeight() const
+StyleSettings::GetHideDisabledMenuItems() const
+StyleSettings::GetIconFont() const
+StyleSettings::GetMenuBarHighlightTextColor() const
+StyleSettings::GetMenuBarRolloverColor() const
+StyleSettings::GetMenuBarRolloverTextColor() const
+StyleSettings::GetMinThumbSize() const
+StyleSettings::GetPersonaFooter() const
+StyleSettings::GetPreferredContextMenuShortcuts() const
+StyleSettings::GetPreferredUseImagesInMenus() const
+StyleSettings::GetPrimaryButtonWarpsSlider() const
+StyleSettings::GetSkipDisabledInMenus() const
+StyleSettings::GetSpinSize() const
+StyleSettings::GetTabHighlightTextColor() const
+StyleSettings::GetTabRolloverTextColor() const
+StyleSettings::GetTabTextColor() const
+StyleSettings::GetToolTextColor() const
+StyleSettings::GetToolbarIconSizePixel() const
+StyleSettings::GetUseFlatBorders() const
+StyleSettings::GetUseFlatMenus() const
+StyleSettings::Set3DColors(Color const&)
+StyleSettings::SetCheckedColorSpecialCase()
+StyleSettings::SetFloatTitleHeight(int)
+StyleSettings::SetHideDisabledMenuItems(bool)
+StyleSettings::SetIconFont(vcl::Font const&)
+StyleSettings::SetListBoxPreviewDefaultLogicSize(Size const&)
+StyleSettings::SetSpinSize(int)
+StyleSettings::SetTitleHeight(int)
+StyleSettings::SetUseFlatBorders(bool)
+StyleSettings::SetUseFlatMenus(bool)
+StyleSettings::operator!=(StyleSettings const&) const
+StyleSettings::operator==(StyleSettings const&) const
+SvBaseEventDescriptor::getMacroID(rtl::OUString const&) const
+SvBaseEventDescriptor::mapNameToEventID(rtl::OUString const&) const
+SvDetachedEventDescriptor::getImplementationName()
+SvDetachedEventDescriptor::getIndex(SvMacroItemId) const
+SvEmbedTransferHelper::AddSupportedFormats()
+SvEmbedTransferHelper::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+SvEmbedTransferHelper::ObjectReleased()
+SvEmbedTransferHelper::~SvEmbedTransferHelper()
+SvFileStream::FlushData()
+SvFileStream::GetData(void*, unsigned long)
+SvFileStream::LockFile()
+SvFileStream::PutData(void const*, unsigned long)
+SvFileStream::ResetError()
+SvFileStream::SeekPos(unsigned long)
+SvFileStream::SetSize(unsigned long)
+SvFileStream::UnlockFile()
+SvHeaderTabListBox::ConvertPointToCellAddress(int&, unsigned short&, Point const&)
+SvHeaderTabListBox::ConvertPointToColumnHeader(unsigned short&, Point const&)
+SvHeaderTabListBox::ConvertPointToControlIndex(int&, Point const&)
+SvHeaderTabListBox::ConvertPointToRowHeader(int&, Point const&)
+SvHeaderTabListBox::CreateAccessible()
+SvHeaderTabListBox::CreateAccessibleCell(int, unsigned short)
+SvHeaderTabListBox::CreateAccessibleColumnHeader(unsigned short)
+SvHeaderTabListBox::CreateAccessibleControl(int)
+SvHeaderTabListBox::CreateAccessibleRowHeader(int)
+SvHeaderTabListBox::DumpAsPropertyTree(tools::JsonWriter&)
+SvHeaderTabListBox::FillAccessibleStateSet(utl::AccessibleStateSetHelper&, AccessibleBrowseBoxObjType) const
+SvHeaderTabListBox::FillAccessibleStateSetForCell(utl::AccessibleStateSetHelper&, int, unsigned short) const
+SvHeaderTabListBox::GetAccessible()
+SvHeaderTabListBox::GetAccessibleCellText(int, unsigned short) const
+SvHeaderTabListBox::GetAccessibleControlCount() const
+SvHeaderTabListBox::GetAccessibleObjectDescription(AccessibleBrowseBoxObjType, int) const
+SvHeaderTabListBox::GetAccessibleObjectName(AccessibleBrowseBoxObjType, int) const
+SvHeaderTabListBox::GetAccessibleParentWindow() const
+SvHeaderTabListBox::GetAllSelectedColumns(com::sun::star::uno::Sequence<int>&) const
+SvHeaderTabListBox::GetAllSelectedRows(com::sun::star::uno::Sequence<int>&) const
+SvHeaderTabListBox::GetColumnCount() const
+SvHeaderTabListBox::GetColumnDescription(unsigned short) const
+SvHeaderTabListBox::GetCurrColumn() const
+SvHeaderTabListBox::GetCurrRow() const
+SvHeaderTabListBox::GetFieldCharacterBounds(int, int, int)
+SvHeaderTabListBox::GetFieldIndexAtPoint(int, int, Point const&)
+SvHeaderTabListBox::GetFieldRectPixelAbs(int, unsigned short, bool, bool)
+SvHeaderTabListBox::GetGlyphBoundRects(Point const&, rtl::OUString const&, int, int, std::vector<tools::Rectangle, std::allocator<tools::Rectangle> >&)
+SvHeaderTabListBox::GetHeaderBar()
+SvHeaderTabListBox::GetRowCount() const
+SvHeaderTabListBox::GetRowDescription(int) const
+SvHeaderTabListBox::GetSelectedColumnCount() const
+SvHeaderTabListBox::GetSelectedRowCount() const
+SvHeaderTabListBox::GetWindowExtentsRelative(vcl::Window const*) const
+SvHeaderTabListBox::GetWindowInstance()
+SvHeaderTabListBox::GoToCell(int, unsigned short)
+SvHeaderTabListBox::GrabFocus()
+SvHeaderTabListBox::GrabTableFocus()
+SvHeaderTabListBox::HasRowHeader() const
+SvHeaderTabListBox::InitHeaderBar(HeaderBar*)
+SvHeaderTabListBox::Insert(SvTreeListEntry*, SvTreeListEntry*, unsigned int)
+SvHeaderTabListBox::Insert(SvTreeListEntry*, unsigned int)
+SvHeaderTabListBox::InsertEntryToColumn(rtl::OUString const&, SvTreeListEntry*, unsigned int, unsigned short, void*)
+SvHeaderTabListBox::IsCellVisible(int, unsigned short) const
+SvHeaderTabListBox::IsColumnSelected(int) const
+SvHeaderTabListBox::IsRowSelected(int) const
+SvHeaderTabListBox::Paint(OutputDevice&, tools::Rectangle const&)
+SvHeaderTabListBox::RecalculateAccessibleChildren()
+SvHeaderTabListBox::SelectAll()
+SvHeaderTabListBox::SelectColumn(unsigned short, bool)
+SvHeaderTabListBox::SelectRow(int, bool, bool)
+SvHeaderTabListBox::SetNoSelection()
+SvHeaderTabListBox::SvHeaderTabListBox(vcl::Window*, long)
+SvHeaderTabListBox::calcHeaderRect(bool, bool)
+SvHeaderTabListBox::calcTableRect(bool)
+SvHeaderTabListBox::dispose()
+SvHeaderTabListBox::~SvHeaderTabListBox()
+SvKeyValueIterator::GetFirst(SvKeyValue&)
+SvKeyValueIterator::GetNext(SvKeyValue&)
+SvLBoxContextBmp::SetModeImages(Image const&, Image const&)
+SvLBoxContextBmp::SvLBoxContextBmp()
+SvLBoxContextBmp::implGetImageStore(bool)
+SvLBoxItem::GetHeight(SvViewDataEntry const*, unsigned short)
+SvLBoxItem::GetWidth(SvTreeListBox const*, SvViewDataEntry const*, unsigned short) const
+SvLBoxItem::SvLBoxItem()
+SvLBoxItem::~SvLBoxItem()
+SvLBoxString::Clone(SvLBoxItem const*) const
+SvLBoxString::InitViewData(SvTreeListBox*, SvTreeListEntry*, SvViewDataItem*)
+SvLBoxString::Paint(Point const&, SvTreeListBox&, OutputDevice&, SvViewDataEntry const*, SvTreeListEntry const&)
+SvLBoxString::SvLBoxString()
+SvListView::Clear()
+SvListView::CollapseListEntry(SvTreeListEntry*)
+SvListView::ExpandListEntry(SvTreeListEntry*)
+SvListView::GetViewData(SvTreeListEntry const*) const
+SvListView::GetViewData(SvTreeListEntry*)
+SvListView::HasViewData() const
+SvListView::InitViewData(SvViewDataEntry*, SvTreeListEntry*)
+SvListView::IsAllExpanded(SvTreeListEntry*) const
+SvListView::ModelHasCleared()
+SvListView::ModelHasEntryInvalidated(SvTreeListEntry*)
+SvListView::ModelHasInserted(SvTreeListEntry*)
+SvListView::ModelHasInsertedTree(SvTreeListEntry*)
+SvListView::ModelHasMoved(SvTreeListEntry*)
+SvListView::ModelHasRemoved(SvTreeListEntry*)
+SvListView::ModelIsMoving(SvTreeListEntry*)
+SvListView::ModelIsRemoving(SvTreeListEntry*)
+SvListView::ModelNotification(SvListAction, SvTreeListEntry*, SvTreeListEntry*, unsigned int)
+SvListView::SelectListEntry(SvTreeListEntry*, bool)
+SvListView::SetEntryFocus(SvTreeListEntry*, bool)
+SvListView::SvListView()
+SvListView::dispose()
+SvListView::~SvListView()
+SvMacroTableEventDescriptor::~SvMacroTableEventDescriptor()
+SvMemoryStream::AllocateMemory(unsigned long)
+SvMemoryStream::FreeMemory()
+SvNumberFormatsSupplierObj::getSharedMutex() const
+SvNumberFormatter::ExpandTwoDigitYear(unsigned short, unsigned short)
+SvNumberFormatter::FillKeywordTable(NfKeywordTable&, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvNumberFormatter::GetFormatScanner() const
+SvNumberFormatter::GetGlobalMutex()
+SvNumberFormatter::GetLangDecimalSep(o3tl::strong_int<unsigned short, LanguageTypeTag>) const
+SvNumberFormatter::GetNoZero() const
+SvNumberFormatter::GetNumDecimalSepAlt() const
+SvNumberFormatter::GetNumThousandSep() const
+SvNumberFormatter::GetTimeFormat(double, o3tl::strong_int<unsigned short, LanguageTypeTag>, bool)
+SvNumberFormatter::GetTransliteration() const
+SvNumberFormatter::GetUserDefColor(unsigned short)
+SvNumberFormatter::ImpLookupCurrencyEntryLoopBody(NfCurrencyEntry const*&, bool&, NfCurrencyEntry const*, unsigned short, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvNumberFormatter::ImpPosToken(rtl::OUStringBuffer const&, char16_t, int) const
+SvNumberFormatter::ImpSubstituteEntry(SvNumberformat*, unsigned int*)
+SvNumberFormatter::InvalidateDateAcceptancePatterns()
+SvNumberFormatter::IsDecimalSep(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SvNumberFormatter::IsLocaleInstalled(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvNumberFormatter::IsSpecialStandardFormat(unsigned int, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvNumberFormatter::PutandConvertEntrySystem(rtl::OUString&, int&, SvNumFormatType&, unsigned int&, o3tl::strong_int<unsigned short, LanguageTypeTag>, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvNumberFormatter::ReplaceSystemCL(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvNumberFormatter::ResetDefaultSystemCurrency()
+SvNumberFormatter::SetDefaultSystemCurrency(std::basic_string_view<char16_t, std::char_traits<char16_t> >, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvNumberFormatter::SetNoZero(bool)
+SvNumberformat::GetCal() const
+SvNumberformat::GetDateOrder() const
+SvNumberformat::GetExactDateOrder() const
+SvNumberformat::GetFormatStringForTimePrecision(int) const
+SvNumberformat::GetFormatter() const
+SvNumberformat::GetOutputString(std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString&, Color const**)
+SvNumberformat::GetPercentString(unsigned short) const
+SvNumberformat::HasPositiveBracketPlaceholder() const
+SvNumberformat::HasStringNegativeSign(rtl::OUString const&)
+SvNumberformat::IsInQuote(rtl::OUString const&, int, char16_t, char16_t, char16_t)
+SvNumberformat::IsMinuteSecondFormat() const
+SvNumberformat::IsNegativeInBracket() const
+SvNumberformat::IsNegativeWithoutSign() const
+SvNumberformat::StripNewCurrencyDelimiters(rtl::OUString const&)
+SvNumberformat::SvNumberformat(SvNumberformat const&, ImpSvNumberformatScan&)
+SvNumberformat::SvNumberformat(rtl::OUString&, ImpSvNumberformatScan*, ImpSvNumberInputScan*, int&, o3tl::strong_int<unsigned short, LanguageTypeTag>&, bool)
+SvNumberformat::SwitchToGregorianCalendar(rtl::OUString const&, double) const
+SvNumberformat::SwitchToOtherCalendar(rtl::OUString&, double&) const
+SvNumberformat::rChrCls() const
+SvNumberformat::rLoc() const
+SvObjectServerList::Get(SvGlobalName const&) const
+SvRTFParser::GetHexValue()
+SvRTFParser::ScanText()
+SvTabListBox::DumpAsPropertyTree(tools::JsonWriter&)
+SvTabListBox::GetCellText(unsigned int, unsigned short) const
+SvTabListBox::GetChildOnPos(SvTreeListEntry*, unsigned int, unsigned int&) const
+SvTabListBox::GetEntryOnPos(unsigned int) const
+SvTabListBox::GetEntryText(SvTreeListEntry const*, unsigned short)
+SvTabListBox::GetEntryText(SvTreeListEntry*) const
+SvTabListBox::GetEntryText(unsigned int, unsigned short) const
+SvTabListBox::GetLogicTab(unsigned short)
+SvTabListBox::GetTabEntryText(unsigned int, unsigned short) const
+SvTabListBox::GetToken(rtl::OUString const&, int&)
+SvTabListBox::InitEntry(SvTreeListEntry*, rtl::OUString const&, Image const&, Image const&)
+SvTabListBox::InsertEntry(rtl::OUString const&, SvTreeListEntry*, bool, unsigned int, void*)
+SvTabListBox::InsertEntryToColumn(rtl::OUString const&, SvTreeListEntry*, unsigned int, unsigned short, void*)
+SvTabListBox::SetTabEditable(unsigned short, bool)
+SvTabListBox::SetTabJustify(unsigned short, SvTabJustify)
+SvTabListBox::SetTabs()
+SvTabListBox::SetTabs(unsigned short, long const*, MapUnit)
+SvTabListBox::SvTabListBox(vcl::Window*, long)
+SvTabListBox::dispose()
+SvTabListBox::~SvTabListBox()
+SvTreeList::Broadcast(SvListAction, SvTreeListEntry*, SvTreeListEntry*, unsigned int)
+SvTreeList::Clear()
+SvTreeList::Clone(SvTreeListEntry*, unsigned int&) const
+SvTreeList::CloneEntry(SvTreeListEntry*) const
+SvTreeList::Compare(SvTreeListEntry const*, SvTreeListEntry const*) const
+SvTreeList::Copy(SvTreeListEntry*, SvTreeListEntry*, unsigned int)
+SvTreeList::EnableInvalidate(bool)
+SvTreeList::FirstChild(SvTreeListEntry*) const
+SvTreeList::GetAbsPos(SvTreeListEntry const*) const
+SvTreeList::GetChildCount(SvTreeListEntry const*) const
+SvTreeList::GetChildList(SvTreeListEntry*)
+SvTreeList::GetChildList(SvTreeListEntry*) const
+SvTreeList::GetChildSelectionCount(SvListView const*, SvTreeListEntry*) const
+SvTreeList::GetDepth(SvTreeListEntry const*) const
+SvTreeList::GetEntry(SvTreeListEntry*, unsigned int) const
+SvTreeList::GetEntry(unsigned int) const
+SvTreeList::GetEntryAtAbsPos(unsigned int) const
+SvTreeList::GetEntryAtVisPos(SvListView const*, unsigned int) const
+SvTreeList::GetParent(SvTreeListEntry const*) const
+SvTreeList::GetParent(SvTreeListEntry*)
+SvTreeList::GetRelPos(SvTreeListEntry const*)
+SvTreeList::GetRootLevelParent(SvTreeListEntry*) const
+SvTreeList::GetVisibleChildCount(SvListView const*, SvTreeListEntry*) const
+SvTreeList::GetVisibleCount(SvListView*) const
+SvTreeList::GetVisiblePos(SvListView const*, SvTreeListEntry const*) const
+SvTreeList::Insert(SvTreeListEntry*, SvTreeListEntry*, unsigned int)
+SvTreeList::InsertTree(SvTreeListEntry*, SvTreeListEntry*, unsigned int)
+SvTreeList::IsAtRootDepth(SvTreeListEntry const*) const
+SvTreeList::IsChild(SvTreeListEntry const*, SvTreeListEntry const*) const
+SvTreeList::Last() const
+SvTreeList::LastVisible(SvListView const*) const
+SvTreeList::Move(SvTreeListEntry*, SvTreeListEntry*)
+SvTreeList::NextVisible(SvListView const*, SvTreeListEntry*, unsigned short&) const
+SvTreeList::NextVisible(SvListView const*, SvTreeListEntry*, unsigned short*) const
+SvTreeList::Prev(SvTreeListEntry*) const
+SvTreeList::PrevVisible(SvListView const*, SvTreeListEntry*) const
+SvTreeList::PrevVisible(SvListView const*, SvTreeListEntry*, unsigned short&) const
+SvTreeList::Resort()
+SvTreeList::SvTreeList(SvListView&)
+SvTreeList::~SvTreeList()
+SvTreeListBox::AddTab(long, SvLBoxTabFlags)
+SvTreeListBox::AdjustEntryHeightAndRecalc()
+SvTreeListBox::CallImplEventListeners(VclEventId, void*)
+SvTreeListBox::CancelTextEditing()
+SvTreeListBox::CheckButtonHdl()
+SvTreeListBox::CheckDragAndDropMode(SvTreeListBox const*, signed char)
+SvTreeListBox::ClearTabList()
+SvTreeListBox::CloneEntry(SvTreeListEntry*)
+SvTreeListBox::CopySelection(SvTreeListBox*, SvTreeListEntry*)
+SvTreeListBox::DefaultCompare(SvLBoxString const*, SvLBoxString const*)
+SvTreeListBox::DeselectHdl()
+SvTreeListBox::DoubleClickHdl()
+SvTreeListBox::EditItemText(SvTreeListEntry*, SvLBoxString*, Selection const&)
+SvTreeListBox::EditText(rtl::OUString const&, tools::Rectangle const&, Selection const&)
+SvTreeListBox::EditedText(rtl::OUString const&)
+SvTreeListBox::EnableCheckButton(SvLBoxButtonData*)
+SvTreeListBox::EnableSelectionAsDropTarget(bool)
+SvTreeListBox::ExecuteDrop(ExecuteDropEvent const&, SvTreeListBox*)
+SvTreeListBox::ExpandedHdl()
+SvTreeListBox::ExpandingHdl()
+SvTreeListBox::GetCollapsedEntryBmp(SvTreeListEntry const*)
+SvTreeListBox::GetDefaultCollapsedEntryBmp() const
+SvTreeListBox::GetDefaultExpandedEntryBmp() const
+SvTreeListBox::GetDragFinishedHdl() const
+SvTreeListBox::GetExpandedEntryBmp(SvTreeListEntry const*)
+SvTreeListBox::GetExpandedNodeBmp() const
+SvTreeListBox::GetFirstDynamicTab() const
+SvTreeListBox::GetFirstDynamicTab(unsigned short&) const
+SvTreeListBox::GetFirstEntryInView() const
+SvTreeListBox::GetFirstTab(SvLBoxTabFlags, unsigned short&)
+SvTreeListBox::GetItem(SvTreeListEntry*, long)
+SvTreeListBox::GetItem(SvTreeListEntry*, long, SvLBoxTab**)
+SvTreeListBox::GetItemPos(SvTreeListEntry*, unsigned short)
+SvTreeListBox::GetLastTab(SvLBoxTabFlags, unsigned short&)
+SvTreeListBox::GetNextEntryInView(SvTreeListEntry*) const
+SvTreeListBox::GetOutputSizePixel() const
+SvTreeListBox::GetTab(SvTreeListEntry const*, SvLBoxItem const*) const
+SvTreeListBox::GetTabPos(SvTreeListEntry const*, SvLBoxTab const*) const
+SvTreeListBox::GetViewDataEntry(SvTreeListEntry const*) const
+SvTreeListBox::GetViewDataItem(SvTreeListEntry const*, SvLBoxItem const*) const
+SvTreeListBox::ImplEditEntry(SvTreeListEntry*)
+SvTreeListBox::ImplShowTargetEmphasis(SvTreeListEntry*, bool)
+SvTreeListBox::InitSettings()
+SvTreeListBox::InvalidateEntry(SvTreeListEntry*)
+SvTreeListBox::MakeVisible(SvTreeListEntry*, bool)
+SvTreeListBox::MoveSelectionCopyFallbackPossible(SvTreeListBox*, SvTreeListEntry*, bool)
+SvTreeListBox::NotifyCopying(SvTreeListEntry*, SvTreeListEntry const*, SvTreeListEntry*&, unsigned int&)
+SvTreeListBox::NotifyMoving(SvTreeListEntry*, SvTreeListEntry const*, SvTreeListEntry*&, unsigned int&)
+SvTreeListBox::NotifyScrolled()
+SvTreeListBox::OnCurrentEntryChanged()
+SvTreeListBox::RecalcViewData()
+SvTreeListBox::RemoveEntry(SvTreeListEntry const*)
+SvTreeListBox::RemoveSelection()
+SvTreeListBox::ScrollOutputArea(short)
+SvTreeListBox::ScrollToAbsPos(long)
+SvTreeListBox::SelectChildren(SvTreeListEntry*, bool)
+SvTreeListBox::SelectHdl()
+SvTreeListBox::SetAlternatingRowColors(bool)
+SvTreeListBox::SetCheckButtonData(SvLBoxButtonData*)
+SvTreeListBox::SetCurEntry(SvTreeListEntry*)
+SvTreeListBox::SetDefaultCollapsedEntryBmp(Image const&)
+SvTreeListBox::SetDefaultExpandedEntryBmp(Image const&)
+SvTreeListBox::SetDragDropMode(DragDropMode)
+SvTreeListBox::SetDragHelper(rtl::Reference<TransferDataContainer> const&, unsigned char)
+SvTreeListBox::SetEntryText(SvTreeListEntry*, rtl::OUString const&)
+SvTreeListBox::SetEntryWidth(short)
+SvTreeListBox::SetFont(vcl::Font const&)
+SvTreeListBox::SetForceMakeVisible(bool)
+SvTreeListBox::SetHighlightRange(unsigned short, unsigned short)
+SvTreeListBox::SetNoAutoCurEntry(bool)
+SvTreeListBox::SetSpaceBetweenEntries(short)
+SvTreeListBox::SetSublistOpenWithLeftRight()
+SvTreeListBox::SetUpdateMode(bool)
+SvTreeListBox::SetupDragOrigin()
+SvTreeListBox::UnsetDropTarget()
+SvTreeListBox::getPreferredDimensions(std::vector<long, std::allocator<long> >&) const
+SvTreeListBox::set_min_width_in_chars(int)
+SvTreeListEntry::ClearChildren()
+SvTreeListEntry::Clone(SvTreeListEntry*)
+SvTreeListEntry::GetChildListPos() const
+SvTreeListEntry::GetFirstItem(SvLBoxItemType)
+SvTreeListEntry::GetFirstItem(SvLBoxItemType) const
+SvTreeListEntry::GetItem(unsigned long) const
+SvTreeListEntry::GetPos(SvLBoxItem const*) const
+SvTreeListEntry::HasChildListPos() const
+SvTreeListEntry::InvalidateChildrensListPositions()
+SvTreeListEntry::LastSibling() const
+SvTreeListEntry::PrevSibling() const
+SvTreeListEntry::ReplaceItem(std::unique_ptr<SvLBoxItem, std::default_delete<SvLBoxItem> >, unsigned long)
+SvTreeListEntry::SetFlags(SvTLEntryFlags)
+SvTreeListEntry::SetListPositions()
+SvTreeListEntry::SetUserData(void*)
+SvUnoAttributeContainer::getByName(rtl::OUString const&)
+SvUnoAttributeContainer::getElementNames()
+SvUnoAttributeContainer::getElementType()
+SvUnoAttributeContainer::getImplementationName()
+SvUnoAttributeContainer::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SvUnoAttributeContainer::getSupportedServiceNames()
+SvUnoAttributeContainer::hasByName(rtl::OUString const&)
+SvUnoAttributeContainer::hasElements()
+SvUnoAttributeContainer::insertByName(rtl::OUString const&, com::sun::star::uno::Any const&)
+SvUnoAttributeContainer::removeByName(rtl::OUString const&)
+SvUnoAttributeContainer::replaceByName(rtl::OUString const&, com::sun::star::uno::Any const&)
+SvUnoAttributeContainer::supportsService(rtl::OUString const&)
+SvXMLAttrContainerData::Remove(unsigned long)
+SvXMLAttrContainerData::SetAt(unsigned long, rtl::OUString const&, rtl::OUString const&)
+SvXMLAttrContainerData::SetAt(unsigned long, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SvXMLAttrContainerData::SetAt(unsigned long, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SvXMLAttrContainerItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvXMLAttrContainerItem::SvXMLAttrContainerItem(SvXMLAttrContainerItem const&)
+SvXMLAttrContainerItem::operator==(SfxPoolItem const&) const
+SvXMLAttributeList::SvXMLAttributeList(SvXMLAttributeList const&)
+SvXMLAttributeList::createClone()
+SvXMLAttributeList::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SvXMLAttributeList::getTypeByIndex(short)
+SvXMLAttributeList::getTypeByName(rtl::OUString const&)
+SvXMLAttributeList::getValueByIndex(short)
+SvXMLAttributeList::~SvXMLAttributeList()
+SvXMLAutoStylePoolP::GetAutoStyleEntries() const
+SvXMLAutoStylePoolP::GetRegisteredNames(com::sun::star::uno::Sequence<int>&, com::sun::star::uno::Sequence<rtl::OUString>&)
+SvXMLAutoStylePoolP::RegisterNames(com::sun::star::uno::Sequence<int> const&, com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvXMLEmbeddedObjectHelper::Init(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, comphelper::IEmbeddedHelper&, SvXMLEmbeddedObjectHelperMode)
+SvXMLEmbeddedObjectHelper::SvXMLEmbeddedObjectHelper()
+SvXMLEmbeddedObjectHelper::disposing()
+SvXMLEmbeddedObjectHelper::getByName(rtl::OUString const&)
+SvXMLEmbeddedObjectHelper::getElementNames()
+SvXMLEmbeddedObjectHelper::getElementType()
+SvXMLEmbeddedObjectHelper::hasByName(rtl::OUString const&)
+SvXMLEmbeddedObjectHelper::hasElements()
+SvXMLEmbeddedObjectHelper::resolveEmbeddedObjectURL(rtl::OUString const&)
+SvXMLEmbeddedObjectHelper::splitObjectURL(rtl::OUString const&, rtl::OUString&, rtl::OUString&)
+SvXMLEmbeddedObjectHelper::~SvXMLEmbeddedObjectHelper()
+SvXMLExport::AddAttributeXmlId(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+SvXMLExport::AddAttributesRDFa(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&)
+SvXMLExport::AddLanguageTagAttributes(unsigned short, unsigned short, LanguageTag const&, bool)
+SvXMLExport::EnsureNamespace(rtl::OUString const&)
+SvXMLExport::GetDestinationShellID() const
+SvXMLExport::GetGraphicMimeTypeFromStream(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&, rtl::OUString&)
+SvXMLExport::GetImageMapExport()
+SvXMLExport::GetODFVersionAttributeValue() const
+SvXMLExport::GetSourceShellID() const
+SvXMLExport::GetTargetStorage() const
+SvXMLExport::GetViewSettingsAndViews(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+SvXMLExport::SetError(int, com::sun::star::uno::Sequence<rtl::OUString> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XLocator> const&)
+SvXMLExport::SetNullDateOnUnitConverter()
+SvXMLExport::dataStyleForceSystemLanguage(int) const
+SvXMLExport::exportTextNumberElement() const
+SvXMLExport::writeOutlineStyleAsNormalListStyle() const
+SvXMLExportPropertyMapper::Equals(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&) const
+SvXMLExportPropertyMapper::FilterDefaults(SvXMLExport const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&) const
+SvXMLExportPropertyMapper::Filter_(SvXMLExport const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool, bool) const
+SvXMLExportPropertyMapper::GetStyleName() const
+SvXMLExportPropertyMapper::LessPartial(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&) const
+SvXMLExportPropertyMapper::SetStyleName(rtl::OUString const&)
+SvXMLExportPropertyMapper::_exportXML(SvXMLAttributeList&, XMLPropertyState const&, SvXMLUnitConverter const&, SvXMLNamespaceMap const&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const*, unsigned int) const
+SvXMLExportPropertyMapper::_exportXML(unsigned short, unsigned short&, SvXMLAttributeList&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, SvXMLUnitConverter const&, SvXMLNamespaceMap const&, std::vector<unsigned short, std::allocator<unsigned short> >*, int, int) const
+SvXMLExportPropertyMapper::exportElementItems(SvXMLExport&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, SvXmlExportFlags, std::vector<unsigned short, std::allocator<unsigned short> > const&) const
+SvXMLExportPropertyMapper::exportXML(SvXMLExport&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, SvXmlExportFlags, bool) const
+SvXMLExportPropertyMapper::exportXML(SvXMLExport&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, int, int, SvXmlExportFlags, bool) const
+SvXMLGraphicHelper::Init(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, SvXMLGraphicHelperMode, rtl::OUString const&)
+SvXMLGraphicHelper::SvXMLGraphicHelper()
+SvXMLGraphicHelper::createInputStream(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+SvXMLGraphicHelper::createOutputStream()
+SvXMLGraphicHelper::disposing()
+SvXMLGraphicHelper::getInputStream(rtl::OUString const&)
+SvXMLGraphicHelper::loadGraphic(rtl::OUString const&)
+SvXMLGraphicHelper::loadGraphicFromOutputStream(com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+SvXMLGraphicHelper::resolveGraphicObjectURL(rtl::OUString const&)
+SvXMLGraphicHelper::resolveOutputStream(com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+SvXMLGraphicHelper::saveGraphic(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+SvXMLGraphicHelper::saveGraphicByName(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&, rtl::OUString&, rtl::OUString const&)
+SvXMLGraphicHelper::~SvXMLGraphicHelper()
+SvXMLImport::AddNumberStyle(int, rtl::OUString const&)
+SvXMLImport::AddRDFa(com::sun::star::uno::Reference<com::sun::star::rdf::XMetadatable> const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SvXMLImport::ConvStarBatsCharToStarSymbol(char16_t)
+SvXMLImport::ConvStarMathCharToStarSymbol(char16_t)
+SvXMLImport::CreateChartImport()
+SvXMLImport::CreateDataStylesImport_()
+SvXMLImport::CreateFastContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+SvXMLImport::GetBitmapHelper()
+SvXMLImport::GetDashHelper()
+SvXMLImport::GetEventImport()
+SvXMLImport::GetFontDecls()
+SvXMLImport::GetFontDecls() const
+SvXMLImport::GetGradientHelper()
+SvXMLImport::GetHatchHelper()
+SvXMLImport::GetMarkerHelper()
+SvXMLImport::GetStreamForEmbeddedObjectURLFromBase64() const
+SvXMLImport::GetStyles() const
+SvXMLImport::GetTransGradientHelper()
+SvXMLImport::IsODFVersionConsistent(rtl::OUString const&)
+SvXMLImport::IsOOoXML() const
+SvXMLImport::IsPackageURL(rtl::OUString const&) const
+SvXMLImport::IsShapePositionInHoriL2R() const
+SvXMLImport::IsTextDocInOOoFileFormat() const
+SvXMLImport::NotifyMacroEventRead()
+SvXMLImport::ResolveEmbeddedObjectURL(rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvXMLImport::ResolveEmbeddedObjectURLFromBase64()
+SvXMLImport::SetError(int, com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvXMLImport::SetError(int, rtl::OUString const&)
+SvXMLImport::addEmbeddedFont(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, rtl::OUString const&, char const*, std::vector<unsigned char, std::allocator<unsigned char> > const&, bool)
+SvXMLImport::embeddedFontAlreadyProcessed(rtl::OUString const&)
+SvXMLImport::getBuildIds(int&, int&) const
+SvXMLImport::getGeneratorVersion() const
+SvXMLImport::getInterfaceToIdentifierMapper()
+SvXMLImport::getNamespacePrefixFromURI(rtl::OUString const&)
+SvXMLImport::getPrefixAndNameFromToken(int)
+SvXMLImport::getTokenFromName(rtl::OUString const&)
+SvXMLImport::getUnoTunnelId()
+SvXMLImport::initializeNamespaceMaps()
+SvXMLImport::isGeneratorVersionOlderThan(unsigned short, unsigned short)
+SvXMLImport::needFixPositionAfterZ() const
+SvXMLImport::registerNamespaces()
+SvXMLImportPropertyMapper::CheckSpecialContext(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, ContextID_Index_Pair*) const
+SvXMLImportPropertyMapper::FillMultiPropertySet_(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Reference<com::sun::star::beans::XMultiPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&, rtl::Reference<XMLPropertySetMapper> const&, ContextID_Index_Pair*)
+SvXMLImportPropertyMapper::FillPropertySequence(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&) const
+SvXMLImportPropertyMapper::FillPropertySet(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, ContextID_Index_Pair*) const
+SvXMLImportPropertyMapper::FillPropertySet_(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&, rtl::Reference<XMLPropertySetMapper> const&, SvXMLImport&, ContextID_Index_Pair*)
+SvXMLImportPropertyMapper::FillTolerantMultiPropertySet_(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Reference<com::sun::star::beans::XTolerantMultiPropertySet> const&, rtl::Reference<XMLPropertySetMapper> const&, SvXMLImport&, ContextID_Index_Pair*)
+SvXMLImportPropertyMapper::PrepareForMultiPropertySet_(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> > const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&, rtl::Reference<XMLPropertySetMapper> const&, ContextID_Index_Pair*, com::sun::star::uno::Sequence<rtl::OUString>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
+SvXMLImportPropertyMapper::importXML(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> >&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, SvXMLUnitConverter const&, SvXMLNamespaceMap const&, unsigned int, int, int) const
+SvXMLImportPropertyMapper::importXMLAttribute(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> >&, SvXMLUnitConverter const&, SvXMLNamespaceMap const&, unsigned int, int, int, com::sun::star::uno::Reference<com::sun::star::container::XNameContainer>&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&) const
+SvXMLLegacyToFastDocHandler::characters(rtl::OUString const&)
+SvXMLLegacyToFastDocHandler::endDocument()
+SvXMLLegacyToFastDocHandler::endElement(rtl::OUString const&)
+SvXMLLegacyToFastDocHandler::ignorableWhitespace(rtl::OUString const&)
+SvXMLLegacyToFastDocHandler::processingInstruction(rtl::OUString const&, rtl::OUString const&)
+SvXMLLegacyToFastDocHandler::setDocumentLocator(com::sun::star::uno::Reference<com::sun::star::xml::sax::XLocator> const&)
+SvXMLLegacyToFastDocHandler::setTargetDocument(com::sun::star::uno::Reference<com::sun::star::lang::XComponent> const&)
+SvXMLLegacyToFastDocHandler::startDocument()
+SvXMLLegacyToFastDocHandler::startElement(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList> const&)
+SvXMLMetaDocumentContext::FinishMetaElement()
+SvXMLMetaDocumentContext::setBuildId(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+SvXMLNamespaceMap::AddAtIndex(rtl::OUString const&, rtl::OUString const&, unsigned short)
+SvXMLNamespaceMap::GetAttrNameByIndex(unsigned short) const
+SvXMLNamespaceMap::GetFirstIndex() const
+SvXMLNamespaceMap::GetIndexByKey(unsigned short)
+SvXMLNamespaceMap::GetKeyByName(rtl::OUString const&) const
+SvXMLNamespaceMap::GetKeyByPrefix(rtl::OUString const&) const
+SvXMLNamespaceMap::GetNextIndex(unsigned short) const
+SvXMLNamespaceMap::GetPrefixByIndex(unsigned short) const
+SvXMLNamespaceMap::GetPrefixByKey(unsigned short) const
+SvXMLNamespaceMap::NormalizeURI(rtl::OUString&)
+SvXMLNamespaceMap::NormalizeW3URI(rtl::OUString&)
+SvXMLNamespaceMap::operator==(SvXMLNamespaceMap const&) const
+SvXMLNumFmtExport::Export(bool)
+SvXMLNumFmtExport::ForceSystemLanguage(unsigned int)
+SvXMLNumFmtExport::GetStyleName(unsigned int)
+SvXMLNumFmtExport::GetWasUsed() const
+SvXMLNumFmtExport::SetUsed(unsigned int)
+SvXMLNumFmtExport::SetWasUsed(com::sun::star::uno::Sequence<int> const&)
+SvXMLNumFmtExport::SvXMLNumFmtExport(SvXMLExport&, com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&, rtl::OUString const&)
+SvXMLNumFormatContext::AddColor(Color)
+SvXMLNumFormatContext::AddCondition(int)
+SvXMLNumFormatContext::AddCondition(rtl::OUString const&, rtl::OUString const&)
+SvXMLNumFormatContext::AddCurrency(rtl::OUString const&, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvXMLNumFormatContext::AddNfKeyword(unsigned short)
+SvXMLNumFormatContext::AddNumber(SvXMLNumberInfo const&)
+SvXMLNumFormatContext::AddToCode(char16_t)
+SvXMLNumFormatContext::AddToCode(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvXMLNumFormatContext::CreateAndInsert(SvNumberFormatter*)
+SvXMLNumFormatContext::CreateAndInsert(bool)
+SvXMLNumFormatContext::CreateAndInsert(com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&)
+SvXMLNumFormatContext::GetLocaleData() const
+SvXMLNumFormatContext::IsSystemLanguage() const
+SvXMLNumFormatContext::ReplaceNfKeyword(unsigned short, unsigned short)
+SvXMLNumFormatContext::SvXMLNumFormatContext(SvXMLImport&, int, SvXMLNumImpData*, SvXMLStylesTokens, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, SvXMLStylesContext&)
+SvXMLNumFormatContext::SvXMLNumFormatContext(SvXMLImport&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, int, o3tl::strong_int<unsigned short, LanguageTypeTag>, SvXMLStylesContext&)
+SvXMLNumFormatContext::UpdateCalendar(rtl::OUString const&)
+SvXMLNumFormatContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+SvXMLNumFormatContext::~SvXMLNumFormatContext()
+SvXMLStylesContext::GetAutoStyles(XmlStyleFamily) const
+SvXMLStylesContext::GetFamily(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvXMLStylesContext::GetStyle(unsigned int)
+SvXMLStylesContext::GetStyle(unsigned int) const
+SvXMLStylesContext::GetStyleCount() const
+SvXMLStylesContext::dispose()
+SvXMLUnitConverter::convertB3DVector(basegfx::B3DVector&, std::basic_string_view<char, std::char_traits<char> >)
+SvXMLUnitConverter::convertB3DVector(basegfx::B3DVector&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvXMLUnitConverter::convertB3DVector(rtl::OUStringBuffer&, basegfx::B3DVector const&)
+SvXMLUnitConverter::convertDateTime(double&, std::basic_string_view<char, std::char_traits<char> >) const
+SvXMLUnitConverter::convertDateTime(double&, std::basic_string_view<char, std::char_traits<char> >, com::sun::star::util::Date const&)
+SvXMLUnitConverter::convertDateTime(double&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::star::util::Date const&)
+SvXMLUnitConverter::convertDouble(double&, std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SvXMLUnitConverter::convertDouble(rtl::OUStringBuffer&, double) const
+SvXMLUnitConverter::convertEnumImpl(unsigned short&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, SvXMLEnumStringMapEntry<unsigned short> const*)
+SvXMLUnitConverter::convertHex(rtl::OUStringBuffer&, unsigned int)
+SvXMLUnitConverter::convertHex(unsigned int&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvXMLUnitConverter::convertMeasureToXML(int) const
+SvXMLUnitConverter::convertNumFormat(rtl::OUStringBuffer&, short) const
+SvXMLUnitConverter::convertNumFormat(short&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool) const
+SvXMLUnitConverter::convertNumLetterSync(rtl::OUStringBuffer&, short)
+SvXMLUnitConverter::convertPosition3D(com::sun::star::drawing::Position3D&, std::basic_string_view<char, std::char_traits<char> >) const
+SvXMLUnitConverter::convertPosition3D(rtl::OUStringBuffer&, com::sun::star::drawing::Position3D const&)
+SvXMLUnitConverter::getNumTypeInfo() const
+SvXMLUnitConverter::getSaneDefaultVersion() const
+SvXMLUnitConverter::overrideSaneDefaultVersion(SvtSaveOptions::ODFSaneDefaultVersion)
+SvdProgressInfo::ReportActions(unsigned long)
+SvdProgressInfo::ReportInserts(unsigned long)
+SvdProgressInfo::ReportRescales(unsigned long)
+SvdProgressInfo::SetActionCount(unsigned long)
+SvdProgressInfo::SetInsertCount(unsigned long)
+SvdProgressInfo::SetNextObject()
+SvmReader::ArcHandler()
+SvmReader::BmpExHandler()
+SvmReader::BmpExScaleHandler()
+SvmReader::BmpExScalePartHandler()
+SvmReader::BmpHandler()
+SvmReader::BmpScaleHandler()
+SvmReader::BmpScalePartHandler()
+SvmReader::ChordHandler()
+SvmReader::ClipRegionHandler()
+SvmReader::CommentHandler()
+SvmReader::DefaultHandler()
+SvmReader::EPSHandler()
+SvmReader::EllipseHandler()
+SvmReader::FillColorHandler()
+SvmReader::FloatTransparentHandler(ImplMetaReadData*)
+SvmReader::FontHandler(ImplMetaReadData*)
+SvmReader::GradientExHandler()
+SvmReader::GradientHandler()
+SvmReader::HatchHandler()
+SvmReader::ISectRectClipRegionHandler()
+SvmReader::ISectRegionClipRegionHandler()
+SvmReader::LayoutModeHandler()
+SvmReader::LineColorHandler()
+SvmReader::LineHandler()
+SvmReader::MapModeHandler()
+SvmReader::MaskHandler()
+SvmReader::MaskScaleHandler()
+SvmReader::MaskScalePartHandler()
+SvmReader::MetaActionHandler(ImplMetaReadData*)
+SvmReader::MoveClipRegionHandler()
+SvmReader::OverlineColorHandler()
+SvmReader::PieHandler()
+SvmReader::PixelHandler()
+SvmReader::PointHandler()
+SvmReader::PolyLineHandler()
+SvmReader::PolyPolygonHandler()
+SvmReader::PolygonHandler()
+SvmReader::PopHandler()
+SvmReader::PushHandler()
+SvmReader::RasterOpHandler()
+SvmReader::ReadColor(Color&)
+SvmReader::RectHandler()
+SvmReader::RefPointHandler()
+SvmReader::RoundRectHandler()
+SvmReader::StretchTextHandler(ImplMetaReadData const*)
+SvmReader::TextAlignHandler()
+SvmReader::TextArrayHandler(ImplMetaReadData const*)
+SvmReader::TextColorHandler()
+SvmReader::TextFillColorHandler()
+SvmReader::TextHandler(ImplMetaReadData const*)
+SvmReader::TextLanguageHandler()
+SvmReader::TextLineColorHandler()
+SvmReader::TextLineHandler()
+SvmReader::TextRectHandler(ImplMetaReadData const*)
+SvmReader::TransparentHandler()
+SvmReader::WallpaperHandler()
+SvmWriter::ActionHandler(MetaAction const*)
+SvmWriter::ArcHandler(MetaArcAction const*)
+SvmWriter::BmpExHandler(MetaBmpExAction const*)
+SvmWriter::BmpExScaleHandler(MetaBmpExScaleAction const*)
+SvmWriter::BmpExScalePartHandler(MetaBmpExScalePartAction const*)
+SvmWriter::BmpHandler(MetaBmpAction const*)
+SvmWriter::BmpScaleHandler(MetaBmpScaleAction const*)
+SvmWriter::BmpScalePartHandler(MetaBmpScalePartAction const*)
+SvmWriter::ChordHandler(MetaChordAction const*)
+SvmWriter::ClipRegionHandler(MetaClipRegionAction const*)
+SvmWriter::CommentHandler(MetaCommentAction const*)
+SvmWriter::EPSHandler(MetaEPSAction const*)
+SvmWriter::EllipseHandler(MetaEllipseAction const*)
+SvmWriter::FillColorHandler(MetaFillColorAction const*)
+SvmWriter::FloatTransparentHandler(MetaFloatTransparentAction const*)
+SvmWriter::FontHandler(MetaFontAction const*, ImplMetaWriteData*)
+SvmWriter::GradientExHandler(MetaGradientExAction const*)
+SvmWriter::GradientHandler(MetaGradientAction const*)
+SvmWriter::HatchHandler(MetaHatchAction const*)
+SvmWriter::ISectRectClipRegionHandler(MetaISectRectClipRegionAction const*)
+SvmWriter::ISectRegionClipRegionHandler(MetaISectRegionClipRegionAction const*)
+SvmWriter::LayoutModeHandler(MetaLayoutModeAction const*)
+SvmWriter::LineColorHandler(MetaLineColorAction const*)
+SvmWriter::LineHandler(MetaLineAction const*)
+SvmWriter::MapModeHandler(MetaMapModeAction const*)
+SvmWriter::MaskHandler(MetaMaskAction const*)
+SvmWriter::MaskScaleHandler(MetaMaskScaleAction const*)
+SvmWriter::MaskScalePartHandler(MetaMaskScalePartAction const*)
+SvmWriter::MetaActionHandler(MetaAction*, ImplMetaWriteData*)
+SvmWriter::MoveClipRegionHandler(MetaMoveClipRegionAction const*)
+SvmWriter::OverlineColorHandler(MetaOverlineColorAction const*)
+SvmWriter::PieHandler(MetaPieAction const*)
+SvmWriter::PixelHandler(MetaPixelAction const*)
+SvmWriter::PointHandler(MetaPointAction const*)
+SvmWriter::PolyLineHandler(MetaPolyLineAction const*)
+SvmWriter::PolyPolygonHandler(MetaPolyPolygonAction const*)
+SvmWriter::PolygonHandler(MetaPolygonAction const*)
+SvmWriter::PopHandler(MetaPopAction const*)
+SvmWriter::PushHandler(MetaPushAction const*)
+SvmWriter::RasterOpHandler(MetaRasterOpAction const*)
+SvmWriter::RectHandler(MetaRectAction const*)
+SvmWriter::RefPointHandler(MetaRefPointAction const*)
+SvmWriter::RoundRectHandler(MetaRoundRectAction const*)
+SvmWriter::StretchTextHandler(MetaStretchTextAction const*, ImplMetaWriteData const*)
+SvmWriter::TextAlignHandler(MetaTextAlignAction const*)
+SvmWriter::TextArrayHandler(MetaTextArrayAction const*, ImplMetaWriteData const*)
+SvmWriter::TextColorHandler(MetaTextColorAction const*)
+SvmWriter::TextFillColorHandler(MetaTextFillColorAction const*)
+SvmWriter::TextHandler(MetaTextAction const*, ImplMetaWriteData const*)
+SvmWriter::TextLanguageHandler(MetaTextLanguageAction const*)
+SvmWriter::TextLineColorHandler(MetaTextLineColorAction const*)
+SvmWriter::TextLineHandler(MetaTextLineAction const*)
+SvmWriter::TextRectHandler(MetaTextRectAction const*, ImplMetaWriteData const*)
+SvmWriter::TransparentHandler(MetaTransparentAction const*)
+SvmWriter::WallpaperHandler(MetaWallpaperAction const*)
+SvmWriter::WriteColor(Color)
+SvpSalBitmap::AcquireBuffer(BitmapAccessMode)
+SvpSalBitmap::Create(SalBitmap const&)
+SvpSalBitmap::Create(SalBitmap const&, SalGraphics*)
+SvpSalBitmap::Create(SalBitmap const&, vcl::PixelFormat)
+SvpSalBitmap::Create(Size const&, vcl::PixelFormat, BitmapPalette const&)
+SvpSalBitmap::Create(com::sun::star::uno::Reference<com::sun::star::rendering::XBitmapCanvas> const&, Size&, bool)
+SvpSalBitmap::Create(std::unique_ptr<BitmapBuffer, std::default_delete<BitmapBuffer> >)
+SvpSalBitmap::Destroy()
+SvpSalBitmap::GetBitCount() const
+SvpSalBitmap::GetSize() const
+SvpSalBitmap::GetSystemData(BitmapSystemData&)
+SvpSalBitmap::ReleaseBuffer(BitmapBuffer*, BitmapAccessMode)
+SvpSalBitmap::Replace(Color const&, Color const&, unsigned char)
+SvpSalBitmap::Scale(double const&, double const&, BmpScaleFlag)
+SvpSalBitmap::ScalingSupported() const
+SvpSalGraphics::CreateSurface(OutputDevice const&, int, int, int, int) const
+SvpSalGraphics::CreateSurface(std::shared_ptr<_cairo_surface> const&) const
+SvpSalGraphics::GetResolution(int&, int&)
+SvpSalGraphics::SupportsCairo() const
+SvpSalGraphics::applyColor(_cairo*, Color, double)
+SvpSalGraphics::copyWithOperator(SalTwoRect const&, _cairo_surface*, _cairo_operator)
+SvpSalGraphics::createCairoSurface(BitmapBuffer const*)
+SvpSalGraphics::createTmpCompatibleCairoContext() const
+SvpSalGraphics::invert(basegfx::B2DPolygon const&, SalInvert)
+SvpSalGraphics::releaseCairoContext(_cairo*, bool, basegfx::B2DRange const&) const
+SvpSalInstance::AddToRecentDocumentList(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SvpSalInstance::AnyInput(VclInputFlags)
+SvpSalInstance::CheckTimeout(bool)
+SvpSalInstance::CloseWakeupPipe(bool)
+SvpSalInstance::CreateChildFrame(SystemParentData*, SalFrameStyleFlags)
+SvpSalInstance::CreateFrame(SalFrame*, SalFrameStyleFlags)
+SvpSalInstance::CreateInfoPrinter(SalPrinterQueueInfo*, ImplJobSetup*)
+SvpSalInstance::CreateObject(SalFrame*, SystemWindowData*, bool)
+SvpSalInstance::CreatePrintGraphics()
+SvpSalInstance::CreatePrinter(SalInfoPrinter*)
+SvpSalInstance::CreateSalSystem()
+SvpSalInstance::CreateSalTimer()
+SvpSalInstance::CreateVirtualDevice(SalGraphics&, long&, long&, DeviceFormat, SystemGraphicsData const*)
+SvpSalInstance::CreateWakeupPipe(bool)
+SvpSalInstance::DoYield(bool, bool)
+SvpSalInstance::GetCairoFontOptions()
+SvpSalInstance::IsMainThread() const
+SvpSalInstance::StartTimer(unsigned long)
+SvpSalInstance::StopTimer()
+SvpSalInstance::Wakeup(SvpRequest)
+SvpSalVirtualDevice::AcquireGraphics()
+SvpSalVirtualDevice::CreateSurface(long, long, unsigned char*)
+SvtBroadcaster::Add(SvtListener*)
+SvtBroadcaster::Normalize() const
+SvtBroadcaster::Remove(SvtListener*)
+SvtBroadcaster::SvtBroadcaster(SvtBroadcaster const&)
+SvtCalendarBox::set_label_from_date()
+SvtFilterOptions::ImplCommit()
+SvtFilterOptions::Load()
+SvtFilterOptions::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvtFilterOptions::SvtFilterOptions()
+SvtFilterOptions::~SvtFilterOptions()
+SvtGraphicFill::setPath(tools::PolyPolygon const&)
+SvtGraphicStroke::scale(double, double)
+SvtGraphicStroke::setEndArrow(tools::PolyPolygon const&)
+SvtGraphicStroke::setPath(tools::Polygon const&)
+SvtGraphicStroke::setStartArrow(tools::PolyPolygon const&)
+SvtIconChoiceCtrl::ArrangeIcons()
+SvtIconChoiceCtrl::CallImplEventListeners(VclEventId, void*)
+SvtIconChoiceCtrl::ClickIcon()
+SvtIconChoiceCtrl::Command(CommandEvent const&)
+SvtIconChoiceCtrl::CreateAccessible()
+SvtIconChoiceCtrl::DataChanged(DataChangedEvent const&)
+SvtIconChoiceCtrl::DoKeyInput(KeyEvent const&)
+SvtIconChoiceCtrl::DrawEntryImage(SvxIconChoiceCtrlEntry const*, Point const&, OutputDevice&)
+SvtIconChoiceCtrl::FillLayoutData() const
+SvtIconChoiceCtrl::GetEntryText(SvxIconChoiceCtrlEntry const*)
+SvtIconChoiceCtrl::GetFocus()
+SvtIconChoiceCtrl::GetStyle() const
+SvtIconChoiceCtrl::InsertEntry(rtl::OUString const&, Image const&)
+SvtIconChoiceCtrl::KeyInput(KeyEvent const&)
+SvtIconChoiceCtrl::LoseFocus()
+SvtIconChoiceCtrl::MouseButtonDown(MouseEvent const&)
+SvtIconChoiceCtrl::MouseButtonUp(MouseEvent const&)
+SvtIconChoiceCtrl::MouseMove(MouseEvent const&)
+SvtIconChoiceCtrl::Paint(OutputDevice&, tools::Rectangle const&)
+SvtIconChoiceCtrl::RemoveEntry(int)
+SvtIconChoiceCtrl::RequestHelp(HelpEvent const&)
+SvtIconChoiceCtrl::Resize()
+SvtIconChoiceCtrl::SetBackground(Wallpaper const&)
+SvtIconChoiceCtrl::SetFont(vcl::Font const&)
+SvtIconChoiceCtrl::SetPointFont(vcl::Font const&)
+SvtIconChoiceCtrl::SetSelectionMode(SelectionMode)
+SvtIconChoiceCtrl::SvtIconChoiceCtrl(vcl::Window*, long)
+SvtIconChoiceCtrl::dispose()
+SvtIconChoiceCtrl::~SvtIconChoiceCtrl()
+SvtLineListBox::GetColorDist(int)
+SvtLineListBox::GetColorLine1(int)
+SvtLineListBox::GetColorLine2(int)
+SvtLineListBox::GetStylePos(int) const
+SvtLineListBox::UpdatePaintLineColor()
+SvtLinguConfig::GetDictionaryEntry(rtl::OUString const&, SvtLinguConfigDictionaryEntry&) const
+SvtLinguConfig::GetDisabledDictionaries() const
+SvtLinguConfig::GetElementNamesFor(rtl::OUString const&, com::sun::star::uno::Sequence<rtl::OUString>&) const
+SvtLinguConfig::GetMainUpdateAccess() const
+SvtLinguConfig::GetVendorImageUrl_Impl(rtl::OUString const&, rtl::OUString const&) const
+SvtListener::BroadcasterDying(SvtBroadcaster&)
+SvtListener::SvtListener(SvtListener const&)
+SvtModuleOptions::IsDataBase() const
+SvtOptionsDialogOptions::IsHidden(rtl::OUString const&) const
+SvtOptionsDrawinglayer::GetSelectionMaximumLuminancePercent()
+SvtPathOptions::UseVariable(rtl::OUString const&) const
+SvtScriptedTextHelper::SvtScriptedTextHelper(SvtScriptedTextHelper const&)
+SvtSysLocaleOptions::ConfigurationChanged(utl::ConfigurationBroadcaster*, ConfigurationHints)
+SvtSysLocaleOptions::GetCurrencyChangeLink()
+SvtTabAppearanceCfg::ImplCommit()
+SvtTabAppearanceCfg::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvtUserOptions::GetInitMutex()
+SvtViewOptions::GetVisible() const
+SvtViewOptions::impl_getSetNode(rtl::OUString const&, bool) const
+Svx3DChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+Svx3DChildWindow::GetInfo() const
+Svx3DChildWindow::Svx3DChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+Svx3DCloseBackItem::Clone(SfxItemPool*) const
+Svx3DCloseFrontItem::Clone(SfxItemPool*) const
+Svx3DLightControl::AdaptToSelectedLight()
+Svx3DLightControl::Construct2()
+Svx3DLightControl::ConstructLightObjects()
+Svx3DLightControl::GetFocusRect()
+Svx3DLightControl::GetLightColor(unsigned int) const
+Svx3DLightControl::GetLightDirection(unsigned int) const
+Svx3DLightControl::GetLightOnOff(unsigned int) const
+Svx3DLightControl::GetPosition(double&, double&)
+Svx3DLightControl::GetRotation(double&, double&, double&)
+Svx3DLightControl::IsSelectionValid()
+Svx3DLightControl::MouseButtonDown(MouseEvent const&)
+Svx3DLightControl::MouseButtonUp(MouseEvent const&)
+Svx3DLightControl::MouseMove(MouseEvent const&)
+Svx3DLightControl::Paint(OutputDevice&, tools::Rectangle const&)
+Svx3DLightControl::Resize()
+Svx3DLightControl::SetDrawingArea(weld::DrawingArea*)
+Svx3DLightControl::SetObjectType(SvxPreviewObjectType)
+Svx3DLightControl::SetPosition(double, double)
+Svx3DLightControl::SetRotation(double, double, double)
+Svx3DLightControl::TrySelection(Point)
+Svx3DPreviewControl::Construct()
+Svx3DPreviewControl::MouseButtonDown(MouseEvent const&)
+Svx3DPreviewControl::Paint(OutputDevice&, tools::Rectangle const&)
+Svx3DPreviewControl::Resize()
+Svx3DPreviewControl::Set3DAttributes(SfxItemSet const&)
+Svx3DPreviewControl::SetDrawingArea(weld::DrawingArea*)
+Svx3DPreviewControl::SetObjectType(SvxPreviewObjectType)
+Svx3DPreviewControl::Svx3DPreviewControl()
+Svx3DTextureProjectionYItem::Clone(SfxItemPool*) const
+Svx3DTextureProjectionYItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+Svx3DTextureProjectionYItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+Svx3DWin::ClickLight(LightButton const&)
+Svx3DWin::Resize()
+Svx3DWin::Svx3DWin(SfxBindings*, SfxChildWindow*, vcl::Window*)
+Svx3DWin::UpdatePreview()
+Svx3DWin::dispose()
+Svx3DWin::~Svx3DWin()
+SvxAdjustItem::GetEnumValue() const
+SvxAdjustItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxAdjustItem::GetValueCount() const
+SvxAdjustItem::GetValueTextByPos(unsigned short)
+SvxAdjustItem::SetEnumValue(unsigned short)
+SvxAttrNameTable::Count()
+SvxAuthorField::Clone() const
+SvxAuthorField::operator==(SvxFieldData const&) const
+SvxAutoCorrCfg::SvxAutoCorrCfg()
+SvxAutoCorrCfg::~SvxAutoCorrCfg()
+SvxAutoCorrDoc::GetLanguage(int) const
+SvxAutoCorrDoc::SaveCpltSttWord(ACFlags, int, rtl::OUString const&, char16_t)
+SvxAutoCorrect::CreateLanguageFile(LanguageTag const&, bool)
+SvxAutoCorrect::FindInCplSttExceptList(o3tl::strong_int<unsigned short, LanguageTypeTag>, rtl::OUString const&, bool)
+SvxAutoCorrect::FindInWordStartExceptList(o3tl::strong_int<unsigned short, LanguageTypeTag>, rtl::OUString const&)
+SvxAutoCorrect::FnCorrectCapsLock(SvxAutoCorrDoc&, rtl::OUString const&, int, int, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvxAutoCorrect::GetCharClass_(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvxAutoCorrect::GetDefaultFlags()
+SvxAutoCorrect::GetLongText(rtl::OUString const&, rtl::OUString&)
+SvxAutoCorrect::InsertQuote(SvxAutoCorrDoc&, int, char16_t, bool, bool, o3tl::strong_int<unsigned short, LanguageTypeTag>, ACQuotes) const
+SvxAutoCorrect::NeedsHardspaceAutocorr(char16_t)
+SvxAutoCorrect::PutText(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, rtl::OUString const&, rtl::OUString const&, SfxObjectShell&, rtl::OUString&)
+SvxAutoCorrect::SvxAutoCorrect(rtl::OUString const&, rtl::OUString const&)
+SvxAutoCorrect::refreshBlockList(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SvxAutoCorrectLanguageLists::AddToCplSttExceptList(rtl::OUString const&)
+SvxAutoCorrectLanguageLists::AddToWordStartExceptList(rtl::OUString const&)
+SvxAutoCorrectLanguageLists::GetAutocorrWordList()
+SvxAutoCorrectLanguageLists::IsFileChanged_Imp()
+SvxAutoCorrectLanguageLists::LoadXMLExceptList_Imp(std::unique_ptr<SvStringsISortDtor, std::default_delete<SvStringsISortDtor> >&, rtl::OUString const&, tools::SvRef<SotStorage>&)
+SvxAutoCorrectLanguageLists::MakeBlocklist_Imp(SotStorage&)
+SvxAutoCorrectLanguageLists::MakeCombinedChanges(std::vector<SvxAutocorrWord, std::allocator<SvxAutocorrWord> >&, std::vector<SvxAutocorrWord, std::allocator<SvxAutocorrWord> >&)
+SvxAutoCorrectLanguageLists::MakeUserStorage_Impl()
+SvxAutoCorrectLanguageLists::PutText(rtl::OUString const&, rtl::OUString const&)
+SvxAutoCorrectLanguageLists::RemoveStream_Imp(rtl::OUString const&)
+SvxAutoCorrectLanguageLists::SaveCplSttExceptList()
+SvxAutoCorrectLanguageLists::SaveExceptList_Imp(SvStringsISortDtor const&, rtl::OUString const&, tools::SvRef<SotStorage> const&, bool)
+SvxAutoCorrectLanguageLists::SaveWordStartExceptList()
+SvxAutoCorrectLanguageLists::SvxAutoCorrectLanguageLists(SvxAutoCorrect&, rtl::OUString const&, rtl::OUString const&)
+SvxAutoCorrectLanguageLists::~SvxAutoCorrectLanguageLists()
+SvxAutoKernItem::Clone(SfxItemPool*) const
+SvxAutoKernItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxAutocorrWordList::DeleteAndDestroyAll()
+SvxAutocorrWordList::FindAndRemove(SvxAutocorrWord const*)
+SvxAutocorrWordList::Insert(SvxAutocorrWord) const
+SvxAutocorrWordList::LoadEntry(rtl::OUString const&, rtl::OUString const&, bool)
+SvxAutocorrWordList::SearchWordsInList(rtl::OUString const&, int&, int) const
+SvxAutocorrWordList::SvxAutocorrWordList()
+SvxAutocorrWordList::WordMatches(SvxAutocorrWord const*, rtl::OUString const&, int&, int) const
+SvxAutocorrWordList::empty() const
+SvxAutocorrWordList::~SvxAutocorrWordList()
+SvxB3DVectorItem::Clone(SfxItemPool*) const
+SvxB3DVectorItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxB3DVectorItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxB3DVectorItem::SvxB3DVectorItem(SvxB3DVectorItem const&)
+SvxB3DVectorItem::dumpAsXml(_xmlTextWriter*) const
+SvxB3DVectorItem::operator==(SfxPoolItem const&) const
+SvxBitmapListItem::Clone(SfxItemPool*) const
+SvxBitmapListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxBitmapListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxBitmapListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxBitmapListItem::SvxBitmapListItem()
+SvxBitmapListItem::SvxBitmapListItem(SvxBitmapListItem const&)
+SvxBitmapListItem::operator==(SfxPoolItem const&) const
+SvxBlinkItem::Clone(SfxItemPool*) const
+SvxBlinkItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxBmpMask::Close()
+SvxBmpMask::GetMetaFile(Graphic const&)
+SvxBmpMask::ImpMask(Animation const&)
+SvxBmpMask::ImpMask(BitmapEx&)
+SvxBmpMask::ImpMask(GDIMetaFile const&)
+SvxBmpMask::ImpMaskTransparent(BitmapEx const&, Color const&, unsigned char)
+SvxBmpMask::ImpReplaceTransparency(Animation const&, Color const&)
+SvxBmpMask::ImpReplaceTransparency(GDIMetaFile const&, Color const&)
+SvxBmpMask::InitColorArrays(Color*, Color*, unsigned char*)
+SvxBmpMask::SetExecState(bool)
+SvxBmpMask::SvxBmpMask(SfxBindings*, SfxChildWindow*, vcl::Window*)
+SvxBmpMask::dispose()
+SvxBmpMask::onSelect(MaskSet const*)
+SvxBmpMask::~SvxBmpMask()
+SvxBmpMaskChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxBmpMaskChildWindow::GetInfo() const
+SvxBmpMaskChildWindow::SvxBmpMaskChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxBmpNumValueSet::UserDraw(UserDrawEvent const&)
+SvxBoxInfoItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxBoxInfoItem::HasMetrics() const
+SvxBoxInfoItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxBoxInfoItem::ScaleMetrics(long, long)
+SvxBoxInfoItem::dumpAsJSON[abi:cxx11]() const
+SvxBoxItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxBoxItem::HasMetrics() const
+SvxBoxItem::ScaleMetrics(long, long)
+SvxBoxItem::dumpAsJSON[abi:cxx11]() const
+SvxBrushItem::ApplyGraphicTransparency_Impl()
+SvxBrushItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxBrushItem::SvxBrushItem(SvxBrushItem&&)
+SvxBrushItem::dumpAsXml(_xmlTextWriter*) const
+SvxBrushItem::isUsed() const
+SvxBulletItem::Clone(SfxItemPool*) const
+SvxBulletItem::GetFullText() const
+SvxBulletItem::GetGraphicObject() const
+SvxBulletItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxBulletItem::SetGraphicObject(GraphicObject const&)
+SvxBulletItem::operator==(SfxPoolItem const&) const
+SvxCaseMapItem::Clone(SfxItemPool*) const
+SvxCaseMapItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCaseMapItem::GetValueCount() const
+SvxCaseMapItem::GetValueTextByPos(unsigned short)
+SvxCaseMapItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxCaseMapItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxCharHiddenItem::Clone(SfxItemPool*) const
+SvxCharHiddenItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCharReliefItem::Clone(SfxItemPool*) const
+SvxCharReliefItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCharReliefItem::GetValueCount() const
+SvxCharReliefItem::GetValueTextByPos(unsigned short)
+SvxCharReliefItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxCharRotateItem::Clone(SfxItemPool*) const
+SvxCharRotateItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCharRotateItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxCharRotateItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxCharRotateItem::dumpAsXml(_xmlTextWriter*) const
+SvxCharRotateItem::operator==(SfxPoolItem const&) const
+SvxCharScaleWidthItem::Clone(SfxItemPool*) const
+SvxCharScaleWidthItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCharScaleWidthItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxCharView::ContextMenuSelect(std::basic_string_view<char, std::char_traits<char> >)
+SvxCharView::GetFocus()
+SvxCharView::InsertCharToDoc()
+SvxCharView::KeyInput(KeyEvent const&)
+SvxCharView::LoseFocus()
+SvxCharView::MouseButtonDown(MouseEvent const&)
+SvxCharView::Paint(OutputDevice&, tools::Rectangle const&)
+SvxCharView::Resize()
+SvxCharView::SetDrawingArea(weld::DrawingArea*)
+SvxCharView::createContextMenu()
+SvxCharacterMap::DisableFontSelection()
+SvxCharacterMap::deleteFavCharacterFromList(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvxCharacterMap::fillAllSubsets(weld::ComboBox&)
+SvxCharacterMap::getFavChar(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SvxCharacterMap::getFavCharacterList()
+SvxCharacterMap::getRecentChar(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SvxCharacterMap::getRecentCharacterList()
+SvxCharacterMap::init()
+SvxCharacterMap::insertCharToDoc(rtl::OUString const&)
+SvxCharacterMap::isFavChar(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvxCharacterMap::selectCharByCode(SvxCharacterMap::Radix)
+SvxCharacterMap::setCharName(unsigned int)
+SvxCharacterMap::setFavButtonState(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvxCharacterMap::toggleSearchView(bool)
+SvxCharacterMap::updateFavCharControl()
+SvxCharacterMap::updateFavCharacterList(rtl::OUString const&, rtl::OUString const&)
+SvxCharacterMap::updateRecentCharControl()
+SvxCharacterMap::updateRecentCharacterList(rtl::OUString const&, rtl::OUString const&)
+SvxChartIndicateItem::Clone(SfxItemPool*) const
+SvxChartKindErrorItem::Clone(SfxItemPool*) const
+SvxChartRegressItem::Clone(SfxItemPool*) const
+SvxChartTextOrderItem::Clone(SfxItemPool*) const
+SvxChartTextOrderItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxChartTextOrderItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxClipBoardControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxClipBoardControl::CreatePopupWindow()
+SvxClipBoardControl::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxClipBoardControl::SvxClipBoardControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxClipBoardControl::~SvxClipBoardControl()
+SvxClipboardFormatItem::Clone(SfxItemPool*) const
+SvxClipboardFormatItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxClipboardFormatItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxClipboardFormatItem::SvxClipboardFormatItem(SvxClipboardFormatItem const&)
+SvxClipboardFormatItem::operator==(SfxPoolItem const&) const
+SvxColorChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxColorChildWindow::GetInfo() const
+SvxColorChildWindow::SvxColorChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxColorItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxColorItem::dumpAsXml(_xmlTextWriter*) const
+SvxColorListItem::Clone(SfxItemPool*) const
+SvxColorListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxColorListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxColorListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxColorListItem::SvxColorListItem()
+SvxColorListItem::SvxColorListItem(SvxColorListItem const&)
+SvxColorListItem::operator==(SfxPoolItem const&) const
+SvxColorToolBoxControl::EnsurePaletteManager()
+SvxColorToolBoxControl::GetParentFrame() const
+SvxColorToolBoxControl::SvxColorToolBoxControl(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+SvxColorToolBoxControl::createVclPopupWindow(vcl::Window*)
+SvxColorToolBoxControl::execute(short)
+SvxColorToolBoxControl::functionSelected(rtl::OUString const&)
+SvxColorToolBoxControl::getImplementationName()
+SvxColorToolBoxControl::getSubToolbarName()
+SvxColorToolBoxControl::getSupportedServiceNames()
+SvxColorToolBoxControl::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SvxColorToolBoxControl::opensSubToolbar()
+SvxColorToolBoxControl::update()
+SvxColorToolBoxControl::updateImage()
+SvxColorToolBoxControl::weldPopupWindow()
+SvxColorToolBoxControl::~SvxColorToolBoxControl()
+SvxColorValueSet::addEntriesForColorSet(std::set<Color, std::less<Color>, std::allocator<Color> > const&, rtl::OUString const&)
+SvxColorValueSet::layoutToGivenHeight(unsigned int, unsigned int)
+SvxColumnDescription::GetWidth() const
+SvxColumnDescription::operator!=(SvxColumnDescription const&) const
+SvxColumnDescription::operator==(SvxColumnDescription const&) const
+SvxColumnItem::At(unsigned short)
+SvxColumnItem::Clone(SfxItemPool*) const
+SvxColumnItem::GetActiveColumnDescription()
+SvxColumnItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxColumnItem::IsConsistent() const
+SvxColumnItem::IsFirstAct() const
+SvxColumnItem::IsLastAct() const
+SvxColumnItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxColumnItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxColumnItem::operator==(SfxPoolItem const&) const
+SvxContourDlg::SvxContourDlg(SfxBindings*, SfxChildWindow*, weld::Window*)
+SvxContourDlg::~SvxContourDlg()
+SvxContourDlgChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxContourDlgChildWindow::GetInfo() const
+SvxContourDlgChildWindow::SvxContourDlgChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo const*)
+SvxContourItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCrossedOutItem::GetBoolValue() const
+SvxCrossedOutItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxCrossedOutItem::GetValueCount() const
+SvxCrossedOutItem::GetValueTextByPos(unsigned short)
+SvxCrossedOutItem::HasBoolValue() const
+SvxCrossedOutItem::SetBoolValue(bool)
+SvxCurrencyToolBoxControl::SvxCurrencyToolBoxControl(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+SvxCurrencyToolBoxControl::createVclPopupWindow(vcl::Window*)
+SvxCurrencyToolBoxControl::execute(short)
+SvxCurrencyToolBoxControl::getImplementationName()
+SvxCurrencyToolBoxControl::getSupportedServiceNames()
+SvxCurrencyToolBoxControl::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SvxCurrencyToolBoxControl::weldPopupWindow()
+SvxCurrencyToolBoxControl::~SvxCurrencyToolBoxControl()
+SvxCustomShape::createCustomShapeDefaults(rtl::OUString const&)
+SvxCustomShape::getImplementationId()
+SvxCustomShape::getPosition()
+SvxCustomShape::getPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+SvxCustomShape::queryAggregation(com::sun::star::uno::Type const&)
+SvxCustomShape::queryInterface(com::sun::star::uno::Type const&)
+SvxCustomShape::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SvxCustomShape::~SvxCustomShape()
+SvxDashListItem::Clone(SfxItemPool*) const
+SvxDashListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxDashListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxDashListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxDashListItem::SvxDashListItem()
+SvxDashListItem::SvxDashListItem(SvxDashListItem const&)
+SvxDashListItem::operator==(SfxPoolItem const&) const
+SvxDateField::Clone() const
+SvxDateField::createBeginComment() const
+SvxDateField::operator==(SvxFieldData const&) const
+SvxDateTimeField::Clone() const
+SvxDateTimeField::operator==(SvxFieldData const&) const
+SvxDoubleItem::Clone(SfxItemPool*) const
+SvxDoubleItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxDoubleItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxDoubleItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxDoubleItem::SvxDoubleItem(SvxDoubleItem const&)
+SvxDoubleItem::operator==(SfxPoolItem const&) const
+SvxDrawOutlinerViewForwarder::Copy()
+SvxDrawOutlinerViewForwarder::Cut()
+SvxDrawOutlinerViewForwarder::GetSelection(ESelection&) const
+SvxDrawOutlinerViewForwarder::IsValid() const
+SvxDrawOutlinerViewForwarder::LogicToPixel(Point const&, MapMode const&) const
+SvxDrawOutlinerViewForwarder::Paste()
+SvxDrawOutlinerViewForwarder::PixelToLogic(Point const&, MapMode const&) const
+SvxDrawOutlinerViewForwarder::SetSelection(ESelection const&)
+SvxDrawPage::CreateSdrObject(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, bool)
+SvxDrawPage::GetTypeAndInventor(SdrObjKind&, SdrInventor&, rtl::OUString const&)
+SvxEditEngineForwarder::AppendParagraph()
+SvxEditEngineForwarder::AppendTextPortion(int, rtl::OUString const&, SfxItemSet const&)
+SvxEditEngineForwarder::CalcFieldValue(SvxFieldItem const&, int, int, std::optional<Color>&, std::optional<Color>&)
+SvxEditEngineForwarder::CopyText(SvxTextForwarder const&)
+SvxEditEngineForwarder::Delete(ESelection const&)
+SvxEditEngineForwarder::FieldClicked(SvxFieldItem const&)
+SvxEditEngineForwarder::GetAttribs(ESelection const&, EditEngineAttribs) const
+SvxEditEngineForwarder::GetAttributeRun(int&, int&, int, int, bool) const
+SvxEditEngineForwarder::GetBulletInfo(int) const
+SvxEditEngineForwarder::GetCharBounds(int, int) const
+SvxEditEngineForwarder::GetDepth(int) const
+SvxEditEngineForwarder::GetEmptyItemSetPtr()
+SvxEditEngineForwarder::GetFieldCount(int) const
+SvxEditEngineForwarder::GetFieldInfo(int, unsigned short) const
+SvxEditEngineForwarder::GetIndexAtPoint(Point const&, int&, int&) const
+SvxEditEngineForwarder::GetItemState(ESelection const&, unsigned short) const
+SvxEditEngineForwarder::GetItemState(int, unsigned short) const
+SvxEditEngineForwarder::GetLanguage(int, int) const
+SvxEditEngineForwarder::GetLineBoundaries(int&, int&, int, int) const
+SvxEditEngineForwarder::GetLineCount(int) const
+SvxEditEngineForwarder::GetLineLen(int, int) const
+SvxEditEngineForwarder::GetLineNumberAtIndex(int, int) const
+SvxEditEngineForwarder::GetMapMode() const
+SvxEditEngineForwarder::GetParaAttribs(int) const
+SvxEditEngineForwarder::GetParaBounds(int) const
+SvxEditEngineForwarder::GetParagraphCount() const
+SvxEditEngineForwarder::GetPool() const
+SvxEditEngineForwarder::GetPortions(int, std::vector<int, std::allocator<int> >&) const
+SvxEditEngineForwarder::GetRefDevice() const
+SvxEditEngineForwarder::GetText(ESelection const&) const
+SvxEditEngineForwarder::GetTextLen(int) const
+SvxEditEngineForwarder::GetWordIndices(int, int, int&, int&) const
+SvxEditEngineForwarder::InsertText(rtl::OUString const&, ESelection const&)
+SvxEditEngineForwarder::IsValid() const
+SvxEditEngineForwarder::QuickFormatDoc(bool)
+SvxEditEngineForwarder::QuickInsertField(SvxFieldItem const&, ESelection const&)
+SvxEditEngineForwarder::QuickInsertLineBreak(ESelection const&)
+SvxEditEngineForwarder::QuickInsertText(rtl::OUString const&, ESelection const&)
+SvxEditEngineForwarder::QuickSetAttribs(SfxItemSet const&, ESelection const&)
+SvxEditEngineForwarder::RemoveAttribs(ESelection const&)
+SvxEditEngineForwarder::SetDepth(int, short)
+SvxEditEngineForwarder::SetParaAttribs(int, SfxItemSet const&)
+SvxEditSourceAdapter::Clone() const
+SvxEditSourceAdapter::GetEditViewForwarderAdapter(bool)
+SvxEditSourceAdapter::GetTextForwarderAdapter()
+SvxEditSourceAdapter::UpdateData()
+SvxEditSourceHelper::EEToUserSpace(Point const&, Size const&, bool)
+SvxEditSourceHelper::EEToUserSpace(tools::Rectangle const&, Size const&, bool)
+SvxEditSourceHelper::UserSpaceToEE(Point const&, Size const&, bool)
+SvxEmphasisMarkItem::Clone(SfxItemPool*) const
+SvxEmphasisMarkItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxEmphasisMarkItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxErrorHandler::SvxErrorHandler()
+SvxEscapementItem::Clone(SfxItemPool*) const
+SvxEscapementItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxEscapementItem::GetValueCount() const
+SvxEscapementItem::GetValueTextByPos(unsigned short)
+SvxEscapementItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxEscapementItem::SetEnumValue(unsigned short)
+SvxEscapementItem::operator==(SfxPoolItem const&) const
+SvxExtFileField::Clone() const
+SvxExtFileField::operator==(SvxFieldData const&) const
+SvxExtTimeField::Clone() const
+SvxExtTimeField::GetFormatted(tools::Time const&, SvxTimeFormat, SvNumberFormatter&, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvxExtTimeField::createBeginComment() const
+SvxExtTimeField::operator==(SvxFieldData const&) const
+SvxFieldData::Clone() const
+SvxFieldData::Create(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&)
+SvxFieldData::createEndComment()
+SvxFieldData::operator==(SvxFieldData const&) const
+SvxFieldItem::Clone(SfxItemPool*) const
+SvxFieldItem::SvxFieldItem(std::unique_ptr<SvxFieldData, std::default_delete<SvxFieldData> >, unsigned short)
+SvxFieldItem::operator==(SfxPoolItem const&) const
+SvxFileField::Clone() const
+SvxFileField::operator==(SvxFieldData const&) const
+SvxFillAttrBox::Fill(weld::ComboBox&, rtl::Reference<XGradientList> const&)
+SvxFillToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxFillToolBoxControl::CreateItemWindow(vcl::Window*)
+SvxFillToolBoxControl::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxFillToolBoxControl::SvxFillToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxFillToolBoxControl::Update()
+SvxFillToolBoxControl::~SvxFillToolBoxControl()
+SvxFont::ChgPhysFont(OutputDevice&) const
+SvxFont::DoOnCapitals(SvxDoCapitals&) const
+SvxFont::DrawCapital(OutputDevice*, Point const&, rtl::OUString const&, int, int) const
+SvxFont::GetCapitalSize(OutputDevice const*, rtl::OUString const&, int, int) const
+SvxFont::GetPhysTxtSize(OutputDevice const*)
+SvxFont::GetPhysTxtSize(OutputDevice const*, rtl::OUString const&, int, int) const
+SvxFont::QuickDrawText(OutputDevice*, Point const&, rtl::OUString const&, int, int, o3tl::span<int const>) const
+SvxFont::QuickGetTextSize(OutputDevice const*, rtl::OUString const&, int, int, std::vector<int, std::allocator<int> >*) const
+SvxFont::SetNonAutoEscapement(short, OutputDevice const*)
+SvxFont::SetPhysFont(OutputDevice&) const
+SvxFontHeightItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFontHeightItem::HasMetrics() const
+SvxFontHeightItem::ScaleMetrics(long, long)
+SvxFontHeightItem::dumpAsXml(_xmlTextWriter*) const
+SvxFontItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFontItem::dumpAsXml(_xmlTextWriter*) const
+SvxFontListItem::Clone(SfxItemPool*) const
+SvxFontListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFontListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxFontListItem::operator==(SfxPoolItem const&) const
+SvxFontPrevWindow::GetFont() const
+SvxFontPrevWindow::IsTwoLines() const
+SvxFontPrevWindow::Paint(OutputDevice&, tools::Rectangle const&)
+SvxFontPrevWindow::SetDrawingArea(weld::DrawingArea*)
+SvxFontPrevWindow::SetFontNameAsPreviewText()
+SvxFontWorkChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxFontWorkChildWindow::GetInfo() const
+SvxFontWorkChildWindow::SvxFontWorkChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxFooterField::Clone() const
+SvxFooterField::operator==(SvxFieldData const&) const
+SvxForbiddenCharactersTable::ClearForbiddenCharacters(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SvxForbiddenCharactersTable::SvxForbiddenCharactersTable(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+SvxForbiddenRuleItem::Clone(SfxItemPool*) const
+SvxForbiddenRuleItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFormatBreakItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFormatBreakItem::GetValueCount() const
+SvxFormatBreakItem::GetValueTextByPos(unsigned short)
+SvxFormatBreakItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxFormatBreakItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxFormatKeepItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFormatKeepItem::dumpAsXml(_xmlTextWriter*) const
+SvxFormatSplitItem::Clone(SfxItemPool*) const
+SvxFormatSplitItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFrameDirectionItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxFrameDirectionItem::dumpAsXml(_xmlTextWriter*) const
+SvxGalleryItem::Clone(SfxItemPool*) const
+SvxGalleryItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxGalleryItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxGalleryItem::SvxGalleryItem()
+SvxGalleryItem::SvxGalleryItem(SvxGalleryItem const&)
+SvxGalleryItem::operator==(SfxPoolItem const&) const
+SvxGalleryItem::~SvxGalleryItem()
+SvxGradientListItem::Clone(SfxItemPool*) const
+SvxGradientListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxGradientListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxGradientListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxGradientListItem::SvxGradientListItem()
+SvxGradientListItem::SvxGradientListItem(SvxGradientListItem const&)
+SvxGradientListItem::operator==(SfxPoolItem const&) const
+SvxGrafBlueToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafBlueToolBoxControl::SvxGrafBlueToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafContrastToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafContrastToolBoxControl::SvxGrafContrastToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafGammaToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafGammaToolBoxControl::SvxGrafGammaToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafGreenToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafGreenToolBoxControl::SvxGrafGreenToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafLuminanceToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafLuminanceToolBoxControl::SvxGrafLuminanceToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafModeToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafModeToolBoxControl::CreateItemWindow(vcl::Window*)
+SvxGrafModeToolBoxControl::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxGrafModeToolBoxControl::SvxGrafModeToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafModeToolBoxControl::~SvxGrafModeToolBoxControl()
+SvxGrafRedToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafRedToolBoxControl::SvxGrafRedToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafTransparenceToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGrafTransparenceToolBoxControl::SvxGrafTransparenceToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxGraphicItem::Clone(SfxItemPool*) const
+SvxGraphicItem::operator==(SfxPoolItem const&) const
+SvxGridTabPage::LinkStubClickRotateHdl_Impl(void*, weld::Toggleable&)
+SvxHFPage::InitHandler()
+SvxHFPage::LinkStubTurnOnHdl(void*, weld::Toggleable&)
+SvxHFPage::RangeHdl()
+SvxHFPage::TurnOn(weld::Toggleable const*)
+SvxHFPage::UpdateExample()
+SvxHangingPunctuationItem::Clone(SfxItemPool*) const
+SvxHangingPunctuationItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxHatchListItem::Clone(SfxItemPool*) const
+SvxHatchListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxHatchListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxHatchListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxHatchListItem::SvxHatchListItem()
+SvxHatchListItem::SvxHatchListItem(SvxHatchListItem const&)
+SvxHatchListItem::operator==(SfxPoolItem const&) const
+SvxHeaderField::Clone() const
+SvxHeaderField::operator==(SvxFieldData const&) const
+SvxHlinkDlgWrapper::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxHlinkDlgWrapper::GetInfo() const
+SvxHlinkDlgWrapper::QueryClose()
+SvxHlinkDlgWrapper::SvxHlinkDlgWrapper(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxHlinkDlgWrapper::~SvxHlinkDlgWrapper()
+SvxHorJustifyItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxHorJustifyItem::GetValueCount() const
+SvxHorJustifyItem::GetValueText(SvxCellHorJustify)
+SvxHyperlinkItem::Clone(SfxItemPool*) const
+SvxHyperlinkItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxHyperlinkItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxHyperlinkItem::SvxHyperlinkItem(SvxHyperlinkItem const&)
+SvxHyperlinkItem::operator==(SfxPoolItem const&) const
+SvxHyphenZoneItem::Clone(SfxItemPool*) const
+SvxHyphenZoneItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxHyphenZoneItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxHyphenZoneItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxHyphenZoneItem::operator==(SfxPoolItem const&) const
+SvxIMapDlg::DoOpen()
+SvxIMapDlg::DoSave()
+SvxIMapDlg::SetActiveTool(std::basic_string_view<char, std::char_traits<char> >)
+SvxIMapDlg::SetExecState(bool)
+SvxIMapDlg::SetTargetList(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&)
+SvxIMapDlg::SvxIMapDlg(SfxBindings*, SfxChildWindow*, weld::Window*)
+SvxIMapDlg::URLModify()
+SvxIMapDlg::UpdateLink(Graphic const&, ImageMap const*, std::vector<rtl::OUString, std::allocator<rtl::OUString> > const*, void*)
+SvxIMapDlg::~SvxIMapDlg()
+SvxIMapDlgChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxIMapDlgChildWindow::GetInfo() const
+SvxIMapDlgChildWindow::SvxIMapDlgChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo const*)
+SvxImportMSVBasic::GetMSBasicStorageName()
+SvxInsertStatusBarControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxInsertStatusBarControl::Paint(UserDrawEvent const&)
+SvxInsertStatusBarControl::StateChangedAtStatusBarControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxInsertStatusBarControl::SvxInsertStatusBarControl(unsigned short, unsigned short, StatusBar&)
+SvxInsertStatusBarControl::~SvxInsertStatusBarControl()
+SvxItemPropertySetUsrAnys::AddUsrAnyForID(com::sun::star::uno::Any const&, SfxItemPropertyMapEntry const&)
+SvxJustifyMethodItem::Clone(SfxItemPool*) const
+SvxJustifyMethodItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxJustifyMethodItem::GetValueCount() const
+SvxJustifyMethodItem::GetValueText(SvxCellJustifyMethod)
+SvxJustifyMethodItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxJustifyMethodItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxKerningItem::Clone(SfxItemPool*) const
+SvxKerningItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxKerningItem::HasMetrics() const
+SvxKerningItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxKerningItem::ScaleMetrics(long, long)
+SvxLRSpaceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLRSpaceItem::HasMetrics() const
+SvxLRSpaceItem::ScaleMetrics(long, long)
+SvxLRSpaceItem::dumpAsJSON[abi:cxx11]() const
+SvxLRSpaceItem::dumpAsXml(_xmlTextWriter*) const
+SvxLanguageItem::Clone(SfxItemPool*) const
+SvxLanguageItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLanguageItem::GetValueCount() const
+SvxLanguageItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxLightCtl3D::Init()
+SvxLightCtl3D::move(double, double)
+SvxLineEndListItem::Clone(SfxItemPool*) const
+SvxLineEndListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLineEndListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxLineEndListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxLineEndListItem::SvxLineEndListItem()
+SvxLineEndListItem::SvxLineEndListItem(SvxLineEndListItem const&)
+SvxLineEndListItem::operator==(SfxPoolItem const&) const
+SvxLineItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLineItem::HasMetrics() const
+SvxLineItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxLineSpacingItem::Clone(SfxItemPool*) const
+SvxLineSpacingItem::GetEnumValue() const
+SvxLineSpacingItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLineSpacingItem::GetValueCount() const
+SvxLineSpacingItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxLineSpacingItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxLineSpacingItem::SetEnumValue(unsigned short)
+SvxLineStyleToolBoxControl::SvxLineStyleToolBoxControl(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+SvxLineStyleToolBoxControl::createVclPopupWindow(vcl::Window*)
+SvxLineStyleToolBoxControl::dispatchLineStyleCommand(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SvxLineStyleToolBoxControl::execute(short)
+SvxLineStyleToolBoxControl::getImplementationName()
+SvxLineStyleToolBoxControl::getSupportedServiceNames()
+SvxLineStyleToolBoxControl::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SvxLineStyleToolBoxControl::weldPopupWindow()
+SvxLineStyleToolBoxControl::~SvxLineStyleToolBoxControl()
+SvxLineWidthToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxLineWidthToolBoxControl::CreateItemWindow(vcl::Window*)
+SvxLineWidthToolBoxControl::GetCoreMetric()
+SvxLineWidthToolBoxControl::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxLineWidthToolBoxControl::SvxLineWidthToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxLineWidthToolBoxControl::~SvxLineWidthToolBoxControl()
+SvxLongLRSpaceItem::Clone(SfxItemPool*) const
+SvxLongLRSpaceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLongLRSpaceItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxLongLRSpaceItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxLongLRSpaceItem::SvxLongLRSpaceItem()
+SvxLongLRSpaceItem::operator==(SfxPoolItem const&) const
+SvxLongULSpaceItem::Clone(SfxItemPool*) const
+SvxLongULSpaceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxLongULSpaceItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxLongULSpaceItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxLongULSpaceItem::SvxLongULSpaceItem()
+SvxLongULSpaceItem::operator==(SfxPoolItem const&) const
+SvxMSDffImportData::NotifyFreeObj(SdrObject*)
+SvxMSDffImportRec::SvxMSDffImportRec(SvxMSDffImportRec const&)
+SvxMSDffManager::CheckForConvertToSOObj(unsigned int, SotStorage&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, Graphic const&, tools::Rectangle const&, rtl::OUString const&)
+SvxMSDffManager::CheckTxBxStoryChain()
+SvxMSDffManager::ConvertToOle2(SvStream&, unsigned int, GDIMetaFile const*, tools::SvRef<SotStorage> const&)
+SvxMSDffManager::FreeObj(SvxMSDffClientData&, SdrObject*)
+SvxMSDffManager::GetBLIPDirect(SvStream&, Graphic&, tools::Rectangle*)
+SvxMSDffManager::GetCtrlData(unsigned int)
+SvxMSDffManager::GetDrawingContainerData(SvStream&, unsigned int, unsigned short)
+SvxMSDffManager::GetDrawingGroupContainerData(SvStream&, unsigned int)
+SvxMSDffManager::GetFidclData(unsigned int)
+SvxMSDffManager::GetGlobalChildAnchor(DffRecordHeader const&, SvStream&, tools::Rectangle&)
+SvxMSDffManager::GetGroupAnchors(DffRecordHeader const&, SvStream&, tools::Rectangle&, tools::Rectangle&, tools::Rectangle const&, tools::Rectangle const&)
+SvxMSDffManager::GetShapeContainerData(SvStream&, unsigned int, unsigned long, unsigned short)
+SvxMSDffManager::GetShapeGroupContainerData(SvStream&, unsigned int, bool, unsigned short)
+SvxMSDffManager::ImportGraphic(SvStream&, SfxItemSet&, DffObjData const&)
+SvxMSDffManager::ImportGroup(DffRecordHeader const&, SvStream&, SvxMSDffClientData&, tools::Rectangle&, tools::Rectangle const&, int, int*)
+SvxMSDffManager::ImportShape(DffRecordHeader const&, SvStream&, SvxMSDffClientData&, tools::Rectangle&, tools::Rectangle const&, int, int*)
+SvxMSDffManager::MSO_TEXT_CLR_ToColor(unsigned int) const
+SvxMSDffManager::MakeContentStream(SotStorage*, GDIMetaFile const&)
+SvxMSDffManager::NotifyFreeObj(SvxMSDffClientData&, SdrObject*)
+SvxMSDffManager::ReadCommonRecordHeader(SvStream&, unsigned char&, unsigned short&, unsigned short&, unsigned int&)
+SvxMSDffManager::ReadObjText(rtl::OUString const&, SdrObject*)
+SvxMSDffManager::Scale(Point&) const
+SvxMSDffManager::Scale(int&) const
+SvxMSDffManager::ScalePoint(int) const
+SvxMSDffManager::ScalePt(unsigned int) const
+SvxMSDffManager::SeekToRec2(unsigned short, unsigned short, unsigned long) const
+SvxMSDffManager::SetDgContainer(SvStream&)
+SvxMSDffManager::SetPropValue(com::sun::star::uno::Any const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&)
+SvxMSDffManager::SvxMSDffManager(SvStream&, rtl::OUString const&)
+SvxMSDffManager::insertShapeId(int, SdrObject*)
+SvxMSDffManager::removeShapeId(SdrObject const*)
+SvxMacroItem::Clone(SfxItemPool*) const
+SvxMacroItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxMarginItem::Clone(SfxItemPool*) const
+SvxMarginItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxMarginItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxMarginItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxModifyControl::Click()
+SvxModifyControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxModifyControl::Paint(UserDrawEvent const&)
+SvxModifyControl::StateChangedAtStatusBarControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxModifyControl::SvxModifyControl(unsigned short, unsigned short, StatusBar&)
+SvxModifyControl::_repaint()
+SvxNoHyphenItem::Clone(SfxItemPool*) const
+SvxNoHyphenItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxNumBulletItem::Clone(SfxItemPool*) const
+SvxNumBulletItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxNumBulletItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxNumBulletItem::dumpAsXml(_xmlTextWriter*) const
+SvxNumBulletItem::operator==(SfxPoolItem const&) const
+SvxNumRule::SetLevel(unsigned short, SvxNumberFormat const*)
+SvxNumRule::SvxNumRule(SvxNumRule&&)
+SvxNumRule::dumpAsXml(_xmlTextWriter*) const
+SvxNumRule::operator=(SvxNumRule&&)
+SvxNumValueSet::GetUITestFactory() const
+SvxNumValueSet::UserDraw(UserDrawEvent const&)
+SvxNumValueSet::~SvxNumValueSet()
+SvxNumberFormat::Store(SvStream&, void*)
+SvxNumberFormat::SvxNumberFormat(SvStream&)
+SvxNumberFormatShell::FindCurrencyFormat(NfCurrencyEntry const*, bool)
+SvxNumberFormatShell::FindCurrencyTableEntry(rtl::OUString const&, bool&)
+SvxNumberFormatShell::IsInTable(unsigned short, bool, std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SvxNumberFormatShell::SvxNumberFormatShell(SvNumberFormatter*, unsigned int, SvxNumberValueType, double, rtl::OUString const*)
+SvxNumberFormatShell::SvxNumberFormatShell(SvNumberFormatter*, unsigned int, SvxNumberValueType, rtl::OUString const&)
+SvxNumberInfoItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxNumberInfoItem::SvxNumberInfoItem(SvxNumberInfoItem const&)
+SvxNumberInfoItem::operator==(SfxPoolItem const&) const
+SvxNumberingPreview::Paint(OutputDevice&, tools::Rectangle const&)
+SvxObjectItem::Clone(SfxItemPool*) const
+SvxObjectItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxObjectItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxObjectItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxObjectItem::SetEndX(long)
+SvxObjectItem::SetEndY(long)
+SvxObjectItem::SetStartX(long)
+SvxObjectItem::SetStartY(long)
+SvxObjectItem::operator==(SfxPoolItem const&) const
+SvxOle2Shape::GetClassName_Impl(rtl::OUString&)
+SvxOle2Shape::SvxOle2Shape(SdrObject*, SfxItemPropertyMapEntry const*, SvxItemPropertySet const*)
+SvxOle2Shape::createLink(rtl::OUString const&)
+SvxOle2Shape::createObject(SvGlobalName const&)
+SvxOle2Shape::getPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+SvxOle2Shape::resetModifiedState()
+SvxOle2Shape::setPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+SvxOle2Shape::~SvxOle2Shape()
+SvxOpaqueItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxOpenGraphicDialog::GetCurrentFilter() const
+SvxOpenGraphicDialog::SetCurrentFilter(rtl::OUString const&)
+SvxOpenGraphicDialog::SetDetectedFilter(rtl::OUString const&)
+SvxOpenGraphicDialog::SetPath(rtl::OUString const&, bool)
+SvxOrientationItem::Clone(SfxItemPool*) const
+SvxOrientationItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxOrientationItem::GetRotation(o3tl::strong_int<int, FractionTag<100> >) const
+SvxOrientationItem::GetValueCount() const
+SvxOrientationItem::GetValueText(SvxCellOrientation)
+SvxOrientationItem::IsStacked() const
+SvxOrientationItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxOrphansItem::Clone(SfxItemPool*) const
+SvxOrphansItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxOutlinerForwarder::AppendParagraph()
+SvxOutlinerForwarder::AppendTextPortion(int, rtl::OUString const&, SfxItemSet const&)
+SvxOutlinerForwarder::CalcFieldValue(SvxFieldItem const&, int, int, std::optional<Color>&, std::optional<Color>&)
+SvxOutlinerForwarder::CopyText(SvxTextForwarder const&)
+SvxOutlinerForwarder::Delete(ESelection const&)
+SvxOutlinerForwarder::FieldClicked(SvxFieldItem const&)
+SvxOutlinerForwarder::GetAttribs(ESelection const&, EditEngineAttribs) const
+SvxOutlinerForwarder::GetAttributeRun(int&, int&, int, int, bool) const
+SvxOutlinerForwarder::GetBulletInfo(int) const
+SvxOutlinerForwarder::GetCharBounds(int, int) const
+SvxOutlinerForwarder::GetDepth(int) const
+SvxOutlinerForwarder::GetEmptyItemSetPtr()
+SvxOutlinerForwarder::GetFieldCount(int) const
+SvxOutlinerForwarder::GetFieldInfo(int, unsigned short) const
+SvxOutlinerForwarder::GetIndexAtPoint(Point const&, int&, int&) const
+SvxOutlinerForwarder::GetItemState(ESelection const&, unsigned short) const
+SvxOutlinerForwarder::GetItemState(int, unsigned short) const
+SvxOutlinerForwarder::GetLanguage(int, int) const
+SvxOutlinerForwarder::GetLineBoundaries(int&, int&, int, int) const
+SvxOutlinerForwarder::GetLineCount(int) const
+SvxOutlinerForwarder::GetLineLen(int, int) const
+SvxOutlinerForwarder::GetLineNumberAtIndex(int, int) const
+SvxOutlinerForwarder::GetMapMode() const
+SvxOutlinerForwarder::GetNumberingStartValue(int)
+SvxOutlinerForwarder::GetParaAttribs(int) const
+SvxOutlinerForwarder::GetParaBounds(int) const
+SvxOutlinerForwarder::GetParagraphCount() const
+SvxOutlinerForwarder::GetPool() const
+SvxOutlinerForwarder::GetPortions(int, std::vector<int, std::allocator<int> >&) const
+SvxOutlinerForwarder::GetRefDevice() const
+SvxOutlinerForwarder::GetText(ESelection const&) const
+SvxOutlinerForwarder::GetTextLen(int) const
+SvxOutlinerForwarder::GetWordIndices(int, int, int&, int&) const
+SvxOutlinerForwarder::InsertText(rtl::OUString const&, ESelection const&)
+SvxOutlinerForwarder::IsParaIsNumberingRestart(int)
+SvxOutlinerForwarder::IsValid() const
+SvxOutlinerForwarder::QuickFormatDoc(bool)
+SvxOutlinerForwarder::QuickInsertField(SvxFieldItem const&, ESelection const&)
+SvxOutlinerForwarder::QuickInsertLineBreak(ESelection const&)
+SvxOutlinerForwarder::QuickInsertText(rtl::OUString const&, ESelection const&)
+SvxOutlinerForwarder::QuickSetAttribs(SfxItemSet const&, ESelection const&)
+SvxOutlinerForwarder::RemoveAttribs(ESelection const&)
+SvxOutlinerForwarder::SetDepth(int, short)
+SvxOutlinerForwarder::SetNumberingStartValue(int, int)
+SvxOutlinerForwarder::SetParaAttribs(int, SfxItemSet const&)
+SvxOutlinerForwarder::SetParaIsNumberingRestart(int, bool)
+SvxOverlineItem::GetValueTextByPos(unsigned short) const
+SvxPageField::Clone() const
+SvxPageField::createBeginComment() const
+SvxPageField::operator==(SvxFieldData const&) const
+SvxPageItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPageItem::operator==(SfxPoolItem const&) const
+SvxPageModelItem::Clone(SfxItemPool*) const
+SvxPageModelItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPageModelItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxPageModelItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxPageModelItem::operator==(SfxPoolItem const&) const
+SvxPagePosSizeItem::Clone(SfxItemPool*) const
+SvxPagePosSizeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPagePosSizeItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxPagePosSizeItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxPagePosSizeItem::SvxPagePosSizeItem()
+SvxPagePosSizeItem::operator==(SfxPoolItem const&) const
+SvxPageTitleField::Clone() const
+SvxPageTitleField::createBeginComment() const
+SvxPageTitleField::operator==(SvxFieldData const&) const
+SvxPagesField::Clone() const
+SvxPagesField::operator==(SvxFieldData const&) const
+SvxPaperBinItem::Clone(SfxItemPool*) const
+SvxPaperBinItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxParaGridItem::Clone(SfxItemPool*) const
+SvxParaGridItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxParaPrevWindow::DrawParagraph(OutputDevice&)
+SvxParaPrevWindow::Paint(OutputDevice&, tools::Rectangle const&)
+SvxParaPrevWindow::SetDrawingArea(weld::DrawingArea*)
+SvxParaVertAlignItem::Clone(SfxItemPool*) const
+SvxParaVertAlignItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxParaVertAlignItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxParaVertAlignItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxPatternListItem::Clone(SfxItemPool*) const
+SvxPatternListItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPatternListItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxPatternListItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxPatternListItem::SvxPatternListItem()
+SvxPatternListItem::SvxPatternListItem(SvxPatternListItem const&)
+SvxPatternListItem::operator==(SfxPoolItem const&) const
+SvxPixelCtl::ChangePixel(unsigned short)
+SvxPixelCtl::CreateAccessible()
+SvxPixelCtl::GetBitmapPixel(unsigned short) const
+SvxPixelCtl::GetFocus()
+SvxPixelCtl::GetFocusPosIndex() const
+SvxPixelCtl::GetFocusRect()
+SvxPixelCtl::IndexToPoint(long) const
+SvxPixelCtl::KeyInput(KeyEvent const&)
+SvxPixelCtl::LoseFocus()
+SvxPixelCtl::MouseButtonDown(MouseEvent const&)
+SvxPixelCtl::Paint(OutputDevice&, tools::Rectangle const&)
+SvxPixelCtl::PointToIndex(Point const&) const
+SvxPixelCtl::Resize()
+SvxPixelCtl::SetDrawingArea(weld::DrawingArea*)
+SvxPixelCtl::ShowPosition(Point const&)
+SvxPixelCtl::implCalFocusRect(Point const&)
+SvxPosSizeStatusBarControl::Command(CommandEvent const&)
+SvxPosSizeStatusBarControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxPosSizeStatusBarControl::ImplUpdateItemText()
+SvxPosSizeStatusBarControl::Paint(UserDrawEvent const&)
+SvxPosSizeStatusBarControl::StateChangedAtStatusBarControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxPosSizeStatusBarControl::SvxPosSizeStatusBarControl(unsigned short, unsigned short, StatusBar&)
+SvxPosSizeStatusBarControl::~SvxPosSizeStatusBarControl()
+SvxPostItAuthorItem::Clone(SfxItemPool*) const
+SvxPostItAuthorItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPostItAuthorItem::SvxPostItAuthorItem(unsigned short)
+SvxPostItDateItem::Clone(SfxItemPool*) const
+SvxPostItDateItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPostItDateItem::SvxPostItDateItem(unsigned short)
+SvxPostItIdItem::Clone(SfxItemPool*) const
+SvxPostItIdItem::SvxPostItIdItem(unsigned short)
+SvxPostItTextItem::Clone(SfxItemPool*) const
+SvxPostItTextItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPostItTextItem::SvxPostItTextItem(unsigned short)
+SvxPostureItem::GetBoolValue() const
+SvxPostureItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxPostureItem::GetValueCount() const
+SvxPostureItem::GetValueTextByPos(unsigned short)
+SvxPostureItem::HasBoolValue() const
+SvxPostureItem::SetBoolValue(bool)
+SvxPostureItem::dumpAsXml(_xmlTextWriter*) const
+SvxPresetListBox::Command(CommandEvent const&)
+SvxPresetListBox::DrawLayout()
+SvxPresetListBox::OnMenuItemSelected(std::basic_string_view<char, std::char_traits<char> >)
+SvxPresetListBox::SetDrawingArea(weld::DrawingArea*)
+SvxPrintItem::Clone(SfxItemPool*) const
+SvxPrintItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxProtectItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxProtectItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxProtectItem::dumpAsXml(_xmlTextWriter*) const
+SvxRTFParser::AttrGroupEnd()
+SvxRTFParser::BuildWhichTable()
+SvxRTFParser::CalcValue()
+SvxRTFParser::CallParser()
+SvxRTFParser::ClearAttrStack()
+SvxRTFParser::ClearColorTbl()
+SvxRTFParser::ClearStyleAttr_(SvxRTFItemStackType&)
+SvxRTFParser::Continue(int)
+SvxRTFParser::DelCharAtEnd(rtl::OUString&, char16_t)
+SvxRTFParser::GetAttrSet_()
+SvxRTFParser::GetFont(unsigned short)
+SvxRTFParser::GetRTFDefaults()
+SvxRTFParser::IsAttrSttPos()
+SvxRTFParser::NextToken(int)
+SvxRTFParser::RTFPardPlain(bool, SfxItemSet**)
+SvxRTFParser::ReadAttr(int, SfxItemSet*)
+SvxRTFParser::ReadColorTable()
+SvxRTFParser::ReadFontTable()
+SvxRTFParser::ReadStyleTable()
+SvxRTFParser::ReadTabAttr(int, SfxItemSet&)
+SvxRTFParser::SetAllAttrOfStk()
+SvxRTFParser::SetAttrInDoc(SvxRTFItemStackType&)
+SvxRTFParser::SetAttrSet(SvxRTFItemStackType&)
+SvxRTFParser::SetDefault(int, int)
+SvxRTFParser::SetInsPos(EditPosition const&)
+SvxRTFParser::SetScriptAttr(SvxRTFParser::RTF_CharTypeDef, SfxItemSet&, SfxPoolItem&)
+SvxRTFParser::SvxRTFParser(SfxItemPool&, SvStream&)
+SvxRTFParser::UnknownAttrToken(int)
+SvxRTFParser::~SvxRTFParser()
+SvxRectCtl::CalculateFocusRectangle() const
+SvxRectCtl::CalculateFocusRectangle(RectPoint) const
+SvxRectCtl::GetApproxLogPtFromPixPt(Point const&) const
+SvxRectCtl::GetApproxRPFromPixPt(com::sun::star::awt::Point const&) const
+SvxRectCtl::GetPointFromRP(RectPoint) const
+SvxRectCtl::GetRPFromPoint(Point, bool) const
+SvxRectCtl::SetActualRPWithoutInvalidate(RectPoint)
+SvxRedlinTable::ColCompare(weld::TreeIter const&, weld::TreeIter const&)
+SvxRedlinTable::LinkStubHeaderBarClick(void*, int)
+SvxRedlinTable::set_size_request(int, int)
+SvxRotateModeItem::Clone(SfxItemPool*) const
+SvxRotateModeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxRotateModeItem::GetValueCount() const
+SvxRotateModeItem::GetValueText(SvxRotateMode)
+SvxRotateModeItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxRotateModeItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxRotateModeItem::SvxRotateModeItem(SvxRotateModeItem const&)
+SvxRsidItem::Clone(SfxItemPool*) const
+SvxRsidItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxRsidItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxRsidItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxRsidItem::dumpAsXml(_xmlTextWriter*) const
+SvxRubyChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxRubyChildWindow::GetInfo() const
+SvxRubyChildWindow::SvxRubyChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo const*)
+SvxRuler::AdjustMargin1(long)
+SvxRuler::ApplyBorders()
+SvxRuler::ApplyIndents()
+SvxRuler::ApplyMargins()
+SvxRuler::ApplyObject()
+SvxRuler::ApplyTabs()
+SvxRuler::CalcMinMax()
+SvxRuler::CalcPropMaxRight(unsigned short) const
+SvxRuler::ConvertHPosPixel(long) const
+SvxRuler::ConvertHSizePixel(long) const
+SvxRuler::ConvertPosPixel(long) const
+SvxRuler::ConvertSizePixel(long) const
+SvxRuler::ConvertVPosPixel(long) const
+SvxRuler::ConvertVSizePixel(long) const
+SvxRuler::DragBorders()
+SvxRuler::DragIndents()
+SvxRuler::DragMargin1()
+SvxRuler::DragMargin2()
+SvxRuler::DragObjectBorder()
+SvxRuler::DragTabs()
+SvxRuler::DrawLine_Impl(long&, int, bool)
+SvxRuler::EvalModifier()
+SvxRuler::GetActLeftColumn(bool, unsigned short) const
+SvxRuler::GetActRightColumn(bool, unsigned short) const
+SvxRuler::GetCorrectedDragPos(bool, bool)
+SvxRuler::GetFirstLineIndent() const
+SvxRuler::GetLeftFrameMargin() const
+SvxRuler::GetLeftIndent() const
+SvxRuler::GetLogicRightIndent() const
+SvxRuler::GetRightFrameMargin() const
+SvxRuler::GetRightIndent() const
+SvxRuler::IsActFirstColumn(bool, unsigned short) const
+SvxRuler::IsActLastColumn(bool, unsigned short) const
+SvxRuler::MakePositionSticky(long, long, bool) const
+SvxRuler::MenuSelect(std::basic_string_view<char, std::char_traits<char> >)
+SvxRuler::PixelAdjust(long, long) const
+SvxRuler::PixelHAdjust(long, long) const
+SvxRuler::PixelVAdjust(long, long) const
+SvxRuler::PrepareProportional_Impl(RulerType)
+SvxRuler::RoundToCurrentMapMode(long) const
+SvxRuler::StartListening_Impl()
+SvxRuler::TabMenuSelect(rtl::OString const&)
+SvxRuler::Update(SvxColumnItem const*, unsigned short)
+SvxRuler::Update(SvxObjectItem const*)
+SvxRuler::Update(SvxPagePosSizeItem const*)
+SvxRuler::Update(SvxProtectItem const*)
+SvxRuler::Update(SvxTabStopItem const*)
+SvxRuler::UpdateColumns()
+SvxRuler::UpdateFrame()
+SvxRuler::UpdateFrame(SvxLongLRSpaceItem const*)
+SvxRuler::UpdateFrame(SvxLongULSpaceItem const*)
+SvxRuler::UpdateFrameMinMax(SfxRectangleItem const*)
+SvxRuler::UpdateObject()
+SvxRuler::UpdatePage()
+SvxRuler::UpdatePara()
+SvxRuler::UpdatePara(SvxLRSpaceItem const*)
+SvxRuler::UpdateParaBorder()
+SvxRuler::UpdateParaContents_Impl(long, SvxRuler::UpdateType)
+SvxRuler::UpdateTabs()
+SvxRuler::UpdateTextRTL(SfxBoolItem const*)
+SvxScriptSetItem::Clone(SfxItemPool*) const
+SvxScriptSetItem::GetItemOfScript(unsigned short, SfxItemSet const&, SvtScriptType)
+SvxScriptSetItem::GetItemOfScriptSet(SfxItemSet const&, unsigned short)
+SvxScriptSetItem::GetSlotIds(unsigned short, unsigned short&, unsigned short&, unsigned short&)
+SvxScriptSetItem::GetWhichIds(unsigned short&, unsigned short&, unsigned short&) const
+SvxScriptSetItem::GetWhichIds(unsigned short, SfxItemSet const&, unsigned short&, unsigned short&, unsigned short&)
+SvxScriptSpaceItem::Clone(SfxItemPool*) const
+SvxScriptSpaceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxSearchCharSet::DrawChars_Impl(OutputDevice&, int, int)
+SvxSearchCharSet::ImplGetItem(int)
+SvxSearchCharSet::KeyInput(KeyEvent const&)
+SvxSearchCharSet::LastInView() const
+SvxSearchCharSet::Paint(OutputDevice&, tools::Rectangle const&)
+SvxSearchCharSet::RecalculateFont(OutputDevice&)
+SvxSearchCharSet::SelectIndex(int, bool)
+SvxSearchCharSet::getMaxCharCount() const
+SvxSearchDialog::Activate()
+SvxSearchDialog::ChildWinDispose()
+SvxSearchDialog::Close()
+SvxSearchDialog::GetTransliterationFlags() const
+SvxSearchDialog::SetSaveToModule(bool)
+SvxSearchDialog::SetSearchLabel(rtl::OUString const&)
+SvxSearchDialog::SvxSearchDialog(weld::Window*, SfxChildWindow*, SfxBindings&)
+SvxSearchDialog::~SvxSearchDialog()
+SvxSearchDialogWrapper::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+SvxSearchDialogWrapper::GetInfo() const
+SvxSearchDialogWrapper::GetSearchLabel()
+SvxSearchDialogWrapper::SvxSearchDialogWrapper(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo const*)
+SvxSearchDialogWrapper::~SvxSearchDialogWrapper()
+SvxSearchItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxSearchItem::ImplCommit()
+SvxSearchItem::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvxSearchItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxSearchItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxSearchItem::operator==(SfxPoolItem const&) const
+SvxSelectionModeControl::Click()
+SvxSelectionModeControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxSelectionModeControl::MouseButtonDown(MouseEvent const&)
+SvxSelectionModeControl::Paint(UserDrawEvent const&)
+SvxSelectionModeControl::StateChangedAtStatusBarControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxSelectionModeControl::SvxSelectionModeControl(unsigned short, unsigned short, StatusBar&)
+SvxSetItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxShadowItem::GetEnumValue() const
+SvxShadowItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxShadowItem::GetValueCount() const
+SvxShadowItem::HasMetrics() const
+SvxShadowItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxShadowItem::ScaleMetrics(long, long)
+SvxShadowItem::SetEnumValue(unsigned short)
+SvxShadowItem::dumpAsXml(_xmlTextWriter*) const
+SvxShadowedItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxShape::Create(SdrObject*, SvxDrawPage*)
+SvxShape::ForceMetricTo100th_mm(Pair&) const
+SvxShape::ForceMetricTo100th_mm(basegfx::B2DHomMatrix&) const
+SvxShape::ForceMetricTo100th_mm(basegfx::B2DPolyPolygon&) const
+SvxShape::ForceMetricToItemPoolMetric(Pair&) const
+SvxShape::ForceMetricToItemPoolMetric(basegfx::B2DHomMatrix&) const
+SvxShape::ForceMetricToItemPoolMetric(basegfx::B2DPolyPolygon&) const
+SvxShape::GetAnyForItem(SfxItemSet const&, SfxItemPropertyMapEntry const*) const
+SvxShape::GetBitmap(bool) const
+SvxShape::HasSdrObjectOwnership() const
+SvxShape::InvalidateSdrObject()
+SvxShape::Notify(SfxBroadcaster&, SfxHint const&)
+SvxShape::ObtainSettingsFromPropertySet(SvxItemPropertySet const&)
+SvxShape::SetFillAttribute(unsigned short, rtl::OUString const&)
+SvxShape::SetFillAttribute(unsigned short, rtl::OUString const&, SfxItemSet&, SdrModel const*)
+SvxShape::SvxShape(SdrObject*)
+SvxShape::SvxShape(SdrObject*, SfxItemPropertyMapEntry const*, SvxItemPropertySet const*)
+SvxShape::addActionLock()
+SvxShape::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+SvxShape::addPropertiesChangeListener(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&)
+SvxShape::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SvxShape::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SvxShape::dispose()
+SvxShape::endSetPropertyValues()
+SvxShape::firePropertiesChangeEvent(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&)
+SvxShape::getGluePoints()
+SvxShape::getImplementationId()
+SvxShape::getImplementationName()
+SvxShape::getName()
+SvxShape::getParent()
+SvxShape::getPosition()
+SvxShape::getPropertyDefault(rtl::OUString const&)
+SvxShape::getPropertyDefaults(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvxShape::getPropertySetInfo()
+SvxShape::getPropertyState(rtl::OUString const&)
+SvxShape::getPropertyStateImpl(SfxItemPropertyMapEntry const*, com::sun::star::beans::PropertyState&)
+SvxShape::getPropertyStates(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvxShape::getPropertyValue(rtl::OUString const&)
+SvxShape::getPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+SvxShape::getPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvxShape::getShapePropertyChangeNotifier()
+SvxShape::getShapeType()
+SvxShape::getSize()
+SvxShape::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SvxShape::getSupportedServiceNames()
+SvxShape::getTypes()
+SvxShape::isActionLocked()
+SvxShape::lock()
+SvxShape::queryAggregation(com::sun::star::uno::Type const&)
+SvxShape::removeActionLock()
+SvxShape::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+SvxShape::removePropertiesChangeListener(com::sun::star::uno::Reference<com::sun::star::beans::XPropertiesChangeListener> const&)
+SvxShape::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SvxShape::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SvxShape::resetActionLocks()
+SvxShape::setActionLocks(short)
+SvxShape::setAllPropertiesToDefault()
+SvxShape::setName(rtl::OUString const&)
+SvxShape::setParent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+SvxShape::setPosition(com::sun::star::awt::Point const&)
+SvxShape::setPropertiesToDefault(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SvxShape::setPropertyToDefault(rtl::OUString const&)
+SvxShape::setPropertyToDefaultImpl(SfxItemPropertyMapEntry const*)
+SvxShape::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SvxShape::setPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+SvxShape::setPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SvxShape::setSize(com::sun::star::awt::Size const&)
+SvxShape::supportsService(rtl::OUString const&)
+SvxShape::unlock()
+SvxShape::updateShapeKind()
+SvxShape::~SvxShape()
+SvxShapeControl::getControl()
+SvxShapeControl::getImplementationId()
+SvxShapeControl::getPosition()
+SvxShapeControl::getPropertyDefault(rtl::OUString const&)
+SvxShapeControl::getPropertyState(rtl::OUString const&)
+SvxShapeControl::getPropertyValue(rtl::OUString const&)
+SvxShapeControl::getShapeType()
+SvxShapeControl::getSize()
+SvxShapeControl::getTypes()
+SvxShapeControl::queryAggregation(com::sun::star::uno::Type const&)
+SvxShapeControl::queryInterface(com::sun::star::uno::Type const&)
+SvxShapeControl::setControl(com::sun::star::uno::Reference<com::sun::star::awt::XControlModel> const&)
+SvxShapeControl::setPosition(com::sun::star::awt::Point const&)
+SvxShapeControl::setPropertyToDefault(rtl::OUString const&)
+SvxShapeControl::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SvxShapeControl::setSize(com::sun::star::awt::Size const&)
+SvxShapeControl::~SvxShapeControl()
+SvxShapeText::Create(SdrObject*, SvxDrawPage*)
+SvxShapeText::SvxShapeText(SdrObject*, SfxItemPropertyMapEntry const*, SvxItemPropertySet const*)
+SvxShapeText::getEnd()
+SvxShapeText::getImplementationId()
+SvxShapeText::getImplementationName()
+SvxShapeText::getPropertyStateImpl(SfxItemPropertyMapEntry const*, com::sun::star::beans::PropertyState&)
+SvxShapeText::getPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&)
+SvxShapeText::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SvxShapeText::getStart()
+SvxShapeText::getString()
+SvxShapeText::getSupportedServiceNames()
+SvxShapeText::getTypes()
+SvxShapeText::lock()
+SvxShapeText::queryAggregation(com::sun::star::uno::Type const&)
+SvxShapeText::queryInterface(com::sun::star::uno::Type const&)
+SvxShapeText::setPropertyToDefaultImpl(SfxItemPropertyMapEntry const*)
+SvxShapeText::setPropertyValueImpl(rtl::OUString const&, SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&)
+SvxShapeText::setString(rtl::OUString const&)
+SvxShapeText::supportsService(rtl::OUString const&)
+SvxShapeText::unlock()
+SvxShapeText::~SvxShapeText()
+SvxShowCharSet::ContextMenuSelect(std::basic_string_view<char, std::char_traits<char> >)
+SvxShowCharSet::CopyToClipboard(rtl::OUString const&)
+SvxShowCharSet::CreateAccessible()
+SvxShowCharSet::DeSelect()
+SvxShowCharSet::DrawChars_Impl(OutputDevice&, int, int)
+SvxShowCharSet::FirstInView() const
+SvxShowCharSet::GetColumnPos(unsigned short)
+SvxShowCharSet::GetFocus()
+SvxShowCharSet::GetRowPos(unsigned short)
+SvxShowCharSet::GetSelectCharacter() const
+SvxShowCharSet::GetUITestFactory() const
+SvxShowCharSet::ImplGetItem(int)
+SvxShowCharSet::InitSettings(OutputDevice&)
+SvxShowCharSet::KeyInput(KeyEvent const&)
+SvxShowCharSet::LastInView() const
+SvxShowCharSet::LoseFocus()
+SvxShowCharSet::MapIndexToPixel(int) const
+SvxShowCharSet::MouseButtonDown(MouseEvent const&)
+SvxShowCharSet::MouseButtonUp(MouseEvent const&)
+SvxShowCharSet::MouseMove(MouseEvent const&)
+SvxShowCharSet::OutputIndex(int)
+SvxShowCharSet::Paint(OutputDevice&, tools::Rectangle const&)
+SvxShowCharSet::PixelToMapIndex(Point const&) const
+SvxShowCharSet::RecalculateFont(OutputDevice&)
+SvxShowCharSet::Resize()
+SvxShowCharSet::SelectIndex(int, bool)
+SvxShowCharSet::SetDrawingArea(weld::DrawingArea*)
+SvxShowCharSet::createContextMenu()
+SvxShowCharSet::getGridRectangle(Point const&, Size const&) const
+SvxShowCharSet::getMaxCharCount() const
+SvxShowCharSet::init()
+SvxShowCharSet::isFavChar(rtl::OUString const&, rtl::OUString const&)
+SvxShowCharSet::updateFavCharacterList(rtl::OUString const&, rtl::OUString const&)
+SvxShowCharSet::~SvxShowCharSet()
+SvxShowText::Paint(OutputDevice&, tools::Rectangle const&)
+SvxShowText::Resize()
+SvxShowText::SetDrawingArea(weld::DrawingArea*)
+SvxShowText::SetFont(vcl::Font const&)
+SvxShowText::SetText(rtl::OUString const&)
+SvxShowText::SvxShowText(VclPtr<VirtualDevice> const&)
+SvxSizeItem::Clone(SfxItemPool*) const
+SvxSizeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxSizeItem::HasMetrics() const
+SvxSizeItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxSizeItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxSizeItem::ScaleMetrics(long, long)
+SvxSmartTagItem::Clone(SfxItemPool*) const
+SvxSmartTagItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxSmartTagItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxSmartTagItem::operator==(SfxPoolItem const&) const
+SvxSpellWrapper::GetAllRightDic()
+SvxSpellWrapper::InsertHyphen(int)
+SvxSpellWrapper::ShowLanguageErrors()
+SvxSpellWrapper::SpellContinue()
+SvxSpellWrapper::SpellMore()
+SvxSpellWrapper::SpellStart(SvxSpellArea)
+SvxSpellWrapper::SvxSpellWrapper(weld::Widget*, bool, bool)
+SvxTPFilter::DeactivatePage()
+SvxTPFilter::EnableDateLine1(bool)
+SvxTPFilter::EnableDateLine2(bool)
+SvxTPFilter::SetRedlinTable(SvxRedlinTable*)
+SvxTPFilter::ShowAction(bool)
+SvxTPView::ActivatePage()
+SvxTPView::DeactivatePage()
+SvxTPView::EnableClearFormatButton(weld::Button&, bool)
+SvxTPView::SvxTPView(weld::Container*, weld::Window*, weld::Builder*)
+SvxTPView::~SvxTPView()
+SvxTPage::ActivatePage()
+SvxTPage::SvxTPage(weld::Container*, rtl::OUString const&, rtl::OString const&)
+SvxTPage::~SvxTPage()
+SvxTabStop::dumpAsXml(_xmlTextWriter*) const
+SvxTabStopItem::GetPos(SvxTabStop const&) const
+SvxTabStopItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxTabStopItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxTabStopItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxTabStopItem::dumpAsXml(_xmlTextWriter*) const
+SvxTableField::Clone() const
+SvxTableField::operator==(SvxFieldData const&) const
+SvxTbxCtlDraw::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxTbxCtlDraw::Select(unsigned short)
+SvxTbxCtlDraw::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+SvxTbxCtlDraw::SvxTbxCtlDraw(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+SvxTbxCtlDraw::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SvxTbxCtlDraw::toggleToolbox()
+SvxTextEditSource::IsValid() const
+SvxTextEditSource::LogicToPixel(Point const&, MapMode const&) const
+SvxTextEditSource::PixelToLogic(Point const&, MapMode const&) const
+SvxTextEditSource::SvxTextEditSource(SdrObject*, SdrText*)
+SvxTextEditSource::addRange(SvxUnoTextRangeBase*)
+SvxTextEditSource::getRanges() const
+SvxTextEditSource::lock()
+SvxTextEditSource::removeRange(SvxUnoTextRangeBase*)
+SvxTextEditSource::unlock()
+SvxTextEncodingBox::InsertTextEncoding(unsigned short)
+SvxTextEncodingTreeView::InsertTextEncoding(unsigned short)
+SvxTextEncodingTreeView::InsertTextEncoding(unsigned short, rtl::OUString const&)
+SvxTextLineItem::Clone(SfxItemPool*) const
+SvxTextLineItem::GetBoolValue() const
+SvxTextLineItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxTextLineItem::GetValueCount() const
+SvxTextLineItem::GetValueTextByPos(unsigned short) const
+SvxTextLineItem::HasBoolValue() const
+SvxTextLineItem::SetBoolValue(bool)
+SvxTextLineItem::SvxTextLineItem(FontLineStyle, unsigned short)
+SvxTextRotateItem::Clone(SfxItemPool*) const
+SvxTextRotateItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxTextRotateItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxTextRotateItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxTextRotateItem::dumpAsXml(_xmlTextWriter*) const
+SvxTimeField::Clone() const
+SvxTimeField::createBeginComment() const
+SvxTimeField::operator==(SvxFieldData const&) const
+SvxTwoLinesItem::Clone(SfxItemPool*) const
+SvxTwoLinesItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxTwoLinesItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxTwoLinesItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxTwoLinesItem::operator==(SfxPoolItem const&) const
+SvxULSpaceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxULSpaceItem::HasMetrics() const
+SvxULSpaceItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxULSpaceItem::ScaleMetrics(long, long)
+SvxULSpaceItem::dumpAsJSON[abi:cxx11]() const
+SvxULSpaceItem::dumpAsXml(_xmlTextWriter*) const
+SvxURLField::Clone() const
+SvxURLField::createBeginComment() const
+SvxURLField::operator==(SvxFieldData const&) const
+SvxUnderlineItem::GetValueTextByPos(unsigned short) const
+SvxUnoDrawMSFactory::createTextField(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SvxUnoDrawPool::getAny(SfxItemPool const*, comphelper::PropertyMapEntry const*, com::sun::star::uno::Any&)
+SvxUnoDrawPool::init()
+SvxUnoFontDescriptor::FillFromItemSet(SfxItemSet const&, com::sun::star::awt::FontDescriptor&)
+SvxUnoFontDescriptor::FillItemSet(com::sun::star::awt::FontDescriptor const&, SfxItemSet&)
+SvxUnoFontDescriptor::getPropertyDefault(SfxItemPool*)
+SvxUnoFontDescriptor::setPropertyToDefault(SfxItemSet&)
+SvxUnoForbiddenCharsTable::onChange()
+SvxUnoPropertyMapProvider::GetMap(unsigned short)
+SvxUnoText::SvxUnoText(SvxUnoText const&)
+SvxUnoText::getUnoTunnelId()
+SvxUnoTextBase::SvxUnoTextBase(SvxEditSource const*, SvxItemPropertySet const*, com::sun::star::uno::Reference<com::sun::star::text::XText> const&)
+SvxUnoTextBase::SvxUnoTextBase(SvxUnoTextBase const&)
+SvxUnoTextBase::getImplementationId()
+SvxUnoTextBase::getSupportedServiceNames_Static()
+SvxUnoTextCursor::getEnd()
+SvxUnoTextCursor::getStart()
+SvxUnoTextCursor::getText()
+SvxUnoTextField::CreateFieldData() const
+SvxUnoTextField::SvxUnoTextField(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, rtl::OUString const&, SvxFieldData const*)
+SvxUnoTextField::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+SvxUnoTextField::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SvxUnoTextField::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SvxUnoTextField::attach(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&)
+SvxUnoTextField::dispose()
+SvxUnoTextField::disposing()
+SvxUnoTextField::getAnchor()
+SvxUnoTextField::getImplementationId()
+SvxUnoTextField::getImplementationName()
+SvxUnoTextField::getPresentation(unsigned char)
+SvxUnoTextField::getPropertySetInfo()
+SvxUnoTextField::getPropertyValue(rtl::OUString const&)
+SvxUnoTextField::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SvxUnoTextField::getSupportedServiceNames()
+SvxUnoTextField::getTypes()
+SvxUnoTextField::getUnoTunnelId()
+SvxUnoTextField::queryAggregation(com::sun::star::uno::Type const&)
+SvxUnoTextField::queryInterface(com::sun::star::uno::Type const&)
+SvxUnoTextField::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+SvxUnoTextField::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SvxUnoTextField::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SvxUnoTextField::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SvxUnoTextField::supportsService(rtl::OUString const&)
+SvxUnoTextField::~SvxUnoTextField()
+SvxUnoTextRange::getImplementationId()
+SvxUnoTextRange::getImplementationName()
+SvxUnoTextRange::getText()
+SvxUnoTextRange::getTypes()
+SvxUnoTextRange::queryAggregation(com::sun::star::uno::Type const&)
+SvxUnoTextRange::queryInterface(com::sun::star::uno::Type const&)
+SvxUnoTextRange::~SvxUnoTextRange()
+SvxUnoTextRangeBase::CollapseToEnd()
+SvxUnoTextRangeBase::CollapseToStart()
+SvxUnoTextRangeBase::GoLeft(int, bool)
+SvxUnoTextRangeBase::GoRight(int, bool)
+SvxUnoTextRangeBase::GotoEnd(bool)
+SvxUnoTextRangeBase::GotoStart(bool)
+SvxUnoTextRangeBase::IsCollapsed()
+SvxUnoTextRangeBase::SvxUnoTextRangeBase(SvxEditSource const*, SvxItemPropertySet const*)
+SvxUnoTextRangeBase::SvxUnoTextRangeBase(SvxItemPropertySet const*)
+SvxUnoTextRangeBase::SvxUnoTextRangeBase(SvxUnoTextRangeBase const&)
+SvxUnoTextRangeBase::_getOnePropertyStates(SfxItemSet const*, SfxItemPropertyMapEntry const*, com::sun::star::beans::PropertyState&)
+SvxUnoTextRangeBase::_getPropertyState(SfxItemPropertyMapEntry const*, int)
+SvxUnoTextRangeBase::_getPropertyState(std::basic_string_view<char16_t, std::char_traits<char16_t> >, int)
+SvxUnoTextRangeBase::_getPropertyStates(com::sun::star::uno::Sequence<rtl::OUString> const&, int)
+SvxUnoTextRangeBase::_getPropertyValue(rtl::OUString const&, int)
+SvxUnoTextRangeBase::_getPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&, int)
+SvxUnoTextRangeBase::_setPropertyToDefault(SvxTextForwarder*, SfxItemPropertyMapEntry const*, int)
+SvxUnoTextRangeBase::_setPropertyToDefault(rtl::OUString const&, int)
+SvxUnoTextRangeBase::_setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&, int)
+SvxUnoTextRangeBase::_setPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, int)
+SvxUnoTextRangeBase::getEnd()
+SvxUnoTextRangeBase::getPropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any&, SfxItemSet const&)
+SvxUnoTextRangeBase::getStart()
+SvxUnoTextRangeBase::getString()
+SvxUnoTextRangeBase::getSupportedServiceNames()
+SvxUnoTextRangeBase::getSupportedServiceNames_Static()
+SvxUnoTextRangeBase::setPropertyValue(SfxItemPropertyMapEntry const*, com::sun::star::uno::Any const&, ESelection const&, SfxItemSet const&, SfxItemSet&)
+SvxUnoTextRangeBase::setString(rtl::OUString const&)
+SvxUnoTextRangeBase::~SvxUnoTextRangeBase()
+SvxVerJustifyItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxVerJustifyItem::GetValueCount() const
+SvxVerJustifyItem::GetValueText(SvxCellVerJustify)
+SvxViewLayoutItem::Clone(SfxItemPool*) const
+SvxViewLayoutItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxViewLayoutItem::SvxViewLayoutItem(SvxViewLayoutItem const&)
+SvxViewLayoutItem::operator==(SfxPoolItem const&) const
+SvxWeightItem::GetBoolValue() const
+SvxWeightItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxWeightItem::GetValueCount() const
+SvxWeightItem::GetValueTextByPos(unsigned short)
+SvxWeightItem::HasBoolValue() const
+SvxWeightItem::SetBoolValue(bool)
+SvxWeightItem::dumpAsXml(_xmlTextWriter*) const
+SvxWidowsItem::Clone(SfxItemPool*) const
+SvxWidowsItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxWordLineModeItem::Clone(SfxItemPool*) const
+SvxWordLineModeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxWritingModeItem::Clone(SfxItemPool*) const
+SvxWritingModeItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SvxWritingModeItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SvxWritingModeItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SvxXConnectionPreview::MouseButtonDown(MouseEvent const&)
+SvxXConnectionPreview::Paint(OutputDevice&, tools::Rectangle const&)
+SvxXConnectionPreview::Resize()
+SvxXConnectionPreview::SetDrawingArea(weld::DrawingArea*)
+SvxXLinePreview::Paint(OutputDevice&, tools::Rectangle const&)
+SvxXLinePreview::Resize()
+SvxXLinePreview::SetDrawingArea(weld::DrawingArea*)
+SvxXMLListStyleContext::CreateAndInsertAuto() const
+SvxXMLListStyleContext::CreateAndInsertLate(bool)
+SvxXMLListStyleContext::CreateNumRule(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+SvxXMLListStyleContext::SetDefaultStyle(com::sun::star::uno::Reference<com::sun::star::container::XIndexReplace> const&, short, bool)
+SvxXMLListStyleContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+SvxXMLListStyleContext::~SvxXMLListStyleContext()
+SvxXMLNumRuleExport::exportNumberingRule(rtl::OUString const&, bool, com::sun::star::uno::Reference<com::sun::star::container::XIndexReplace> const&)
+SvxXMLNumRuleExport::exportStyles(bool, XMLTextListAutoStylePool*, bool)
+SvxXMeasurePreview::MouseButtonDown(MouseEvent const&)
+SvxXMeasurePreview::Paint(OutputDevice&, tools::Rectangle const&)
+SvxXMeasurePreview::Resize()
+SvxXMeasurePreview::ResizeImpl(Size const&)
+SvxXMeasurePreview::SetDrawingArea(weld::DrawingArea*)
+SvxXRectPreview::Paint(OutputDevice&, tools::Rectangle const&)
+SvxXRectPreview::Resize()
+SvxXRectPreview::SetDrawingArea(weld::DrawingArea*)
+SvxXShadowPreview::Paint(OutputDevice&, tools::Rectangle const&)
+SvxXShadowPreview::SetDrawingArea(weld::DrawingArea*)
+SvxZoomItem::Clone(SfxItemPool*) const
+SvxZoomItem::operator==(SfxPoolItem const&) const
+SvxZoomPageStatusBarControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxZoomPageStatusBarControl::MouseButtonDown(MouseEvent const&)
+SvxZoomPageStatusBarControl::Paint(UserDrawEvent const&)
+SvxZoomPageStatusBarControl::SvxZoomPageStatusBarControl(unsigned short, unsigned short, StatusBar&)
+SvxZoomSliderControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxZoomSliderControl::MouseButtonDown(MouseEvent const&)
+SvxZoomSliderControl::MouseButtonUp(MouseEvent const&)
+SvxZoomSliderControl::MouseMove(MouseEvent const&)
+SvxZoomSliderControl::Offset2Zoom(long) const
+SvxZoomSliderControl::Paint(UserDrawEvent const&)
+SvxZoomSliderControl::Zoom2Offset(unsigned short) const
+SvxZoomSliderControl::forceRepaint() const
+SvxZoomSliderControl::repaintAndExecute()
+SvxZoomSliderControl::~SvxZoomSliderControl()
+SvxZoomSliderItem::Clone(SfxItemPool*) const
+SvxZoomSliderItem::operator==(SfxPoolItem const&) const
+SvxZoomStatusBarControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+SvxZoomStatusBarControl::ImplUpdateItemText()
+SvxZoomStatusBarControl::Paint(UserDrawEvent const&)
+SwAddPrinterItem::Clone(SfxItemPool*) const
+SwAddPrinterItem::SwAddPrinterItem(SwPrintData const&)
+SwAddPrinterItem::operator==(SfxPoolItem const&) const
+SwAddressPreview::DrawText_Impl(OutputDevice&, rtl::OUString const&, Point const&, Size const&, bool)
+SwAddressPreview::KeyInput(KeyEvent const&)
+SwAddressPreview::MouseButtonDown(MouseEvent const&)
+SwAddressPreview::Paint(OutputDevice&, tools::Rectangle const&)
+SwAddressPreview::UpdateScrollBar()
+SwAnchoredObject::AddLastCharY(long)
+SwAnchoredObject::AddLastTopOfLineY(long)
+SwAnchoredObject::CheckCharRect(SwFormatAnchor const&, SwTextFrame const&)
+SwAnchoredObject::CheckCharRectAndTopOfLine(bool)
+SwAnchoredObject::CheckTopOfLine(SwFormatAnchor const&, SwTextFrame const&)
+SwAnchoredObject::ChgAnchorFrame(SwFrame*)
+SwAnchoredObject::ClearCharRectAndTopOfLine()
+SwAnchoredObject::ClearTmpConsiderWrapInfluence()
+SwAnchoredObject::ClearVertPosOrientFrame()
+SwAnchoredObject::ClearedEnvironment() const
+SwAnchoredObject::ConsiderForTextWrap() const
+SwAnchoredObject::ConsiderObjWrapInfluenceOfOtherObjs() const
+SwAnchoredObject::ConsiderObjWrapInfluenceOnObjPos() const
+SwAnchoredObject::DynCastFlyFrame()
+SwAnchoredObject::DynCastFlyFrame() const
+SwAnchoredObject::FindAnchorCharFrame()
+SwAnchoredObject::FindPageFrameOfAnchor()
+SwAnchoredObject::GetAnchorFrameContainingAnchPos()
+SwAnchoredObject::GetObjRectWithSpaces() const
+SwAnchoredObject::GetRelCharX(SwFrame const*) const
+SwAnchoredObject::GetRelCharY(SwFrame const*) const
+SwAnchoredObject::GetRelPosToAnchorFrame() const
+SwAnchoredObject::GetRelPosToChar() const
+SwAnchoredObject::GetRelPosToLine() const
+SwAnchoredObject::GetRelPosToPageFrame(bool, bool&) const
+SwAnchoredObject::HasClearedEnvironment() const
+SwAnchoredObject::InvalidateObjPosForConsiderWrapInfluence()
+SwAnchoredObject::InvalidationOfPosAllowed() const
+SwAnchoredObject::IsDraggingOffPageAllowed(SwFrameFormat const*)
+SwAnchoredObject::IsFormatPossible() const
+SwAnchoredObject::ObjectAttachedToAnchorFrame()
+SwAnchoredObject::OverlapsPrevColumn() const
+SwAnchoredObject::PositionLocked() const
+SwAnchoredObject::ResetLastCharRectHeight()
+SwAnchoredObject::RestartLayoutProcess() const
+SwAnchoredObject::SetClearedEnvironment(bool)
+SwAnchoredObject::SetConsiderForTextWrap(bool)
+SwAnchoredObject::SetCurrRelPos(Point)
+SwAnchoredObject::SetDrawObj(SdrObject&)
+SwAnchoredObject::SetObjLeft(long)
+SwAnchoredObject::SetObjTop(long)
+SwAnchoredObject::SetPageFrame(SwPageFrame*)
+SwAnchoredObject::SetRestartLayoutProcess(bool)
+SwAnchoredObject::SetTmpConsiderWrapInfluence(bool)
+SwAnchoredObject::SetTmpConsiderWrapInfluenceOfOtherObjs()
+SwAnchoredObject::SetVertPosOrientFrame(SwLayoutFrame const&)
+SwAnchoredObject::SwAnchoredObject()
+SwAnchoredObject::UpdateLayoutDir()
+SwAnchoredObject::UpdateObjInSortedList()
+SwAnchoredObject::dumpAsXml(_xmlTextWriter*) const
+SwAnchoredObject::~SwAnchoredObject()
+SwAttrSet::Changed(SfxPoolItem const&, SfxPoolItem const&)
+SwAttrSet::ClearItem_BC(unsigned short, SwAttrSet*, SwAttrSet*)
+SwAttrSet::ClearItem_BC(unsigned short, unsigned short, SwAttrSet*, SwAttrSet*)
+SwAttrSet::CopyToModify(sw::BroadcastingModify&) const
+SwAttrSet::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&) const
+SwAttrSet::Intersect_BC(SfxItemSet const&, SwAttrSet*, SwAttrSet*)
+SwAttrSet::Put_BC(SfxItemSet const&, SwAttrSet*, SwAttrSet*)
+SwAttrSet::Put_BC(SfxPoolItem const&, SwAttrSet*, SwAttrSet*)
+SwAttrSet::SetModifyAtAttr(sw::BroadcastingModify const*)
+SwAttrSet::SwAttrSet(SwAttrPool&, WhichRangesContainer const&)
+SwAuthenticator::getPassword()
+SwAuthenticator::getUserName()
+SwAuthenticator::~SwAuthenticator()
+SwAuthorityField::ChgTyp(SwFieldType*)
+SwAuthorityField::ConditionalExpandAuthIdentifier(SwRootFrame const*) const
+SwAuthorityField::Copy() const
+SwAuthorityField::ExpandImpl(SwRootFrame const*) const
+SwAuthorityField::GetDescription() const
+SwAuthorityField::GetFieldText(ToxAuthorityField) const
+SwAuthorityField::HasURL() const
+SwAuthorityField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwAuthorityField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwAuthorityField::SetPar1(rtl::OUString const&)
+SwAuthorityField::SwAuthorityField(SwAuthorityFieldType*, SwAuthEntry*)
+SwAuthorityField::SwAuthorityField(SwAuthorityFieldType*, rtl::OUString const&)
+SwAuthorityField::dumpAsXml(_xmlTextWriter*) const
+SwAuthorityField::~SwAuthorityField()
+SwAuthorityFieldType::AddField(rtl::OUString const&)
+SwAuthorityFieldType::AppendField(SwAuthEntry const&)
+SwAuthorityFieldType::ChangeEntryContent(SwAuthEntry const*)
+SwAuthorityFieldType::Copy() const
+SwAuthorityFieldType::CreateTOXInternational() const
+SwAuthorityFieldType::GetSequencePos(SwAuthEntry const*, SwRootFrame const*)
+SwAuthorityFieldType::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwAuthorityFieldType::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwAuthorityFieldType::RemoveField(SwAuthEntry const*)
+SwAuthorityFieldType::SetSortKeys(unsigned short, SwTOXSortKey const*)
+SwAuthorityFieldType::SwAuthorityFieldType(SwDoc*)
+SwAuthorityFieldType::SwClientNotify(SwModify const&, SfxHint const&)
+SwAuthorityFieldType::dumpAsXml(_xmlTextWriter*) const
+SwAuthorityFieldType::~SwAuthorityFieldType()
+SwAutoCorrect::GetLongText(rtl::OUString const&, rtl::OUString&)
+SwAutoCorrect::PutText(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, rtl::OUString const&, rtl::OUString const&, SfxObjectShell&, rtl::OUString&)
+SwAutoCorrect::refreshBlockList(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+SwBaseShell::CopyPaMRing(SwPaM&)
+SwBaseShell::EditRegionDialog(SfxRequest const&)
+SwBaseShell::ExecBckCol(SfxRequest&)
+SwBaseShell::ExecClpbrd(SfxRequest&)
+SwBaseShell::ExecDelete(SfxRequest&)
+SwBaseShell::ExecDlg(SfxRequest&)
+SwBaseShell::ExecField(SfxRequest const&)
+SwBaseShell::ExecTextCtrl(SfxRequest&)
+SwBaseShell::ExecUndo(SfxRequest&)
+SwBaseShell::Execute(SfxRequest&)
+SwBaseShell::ExecuteGallery(SfxRequest&)
+SwBaseShell::GetBckColState(SfxItemSet&)
+SwBaseShell::GetBorderState(SfxItemSet&)
+SwBaseShell::GetGalleryState(SfxItemSet&)
+SwBaseShell::GetInterface() const
+SwBaseShell::GetShell()
+SwBaseShell::GetShellPtr()
+SwBaseShell::GetStaticInterface()
+SwBaseShell::GetTextCtrlState(SfxItemSet&)
+SwBaseShell::GetTextFontCtrlState(SfxItemSet&)
+SwBaseShell::InitInterface_Impl()
+SwBaseShell::InsertRegionDialog(SfxRequest&)
+SwBaseShell::InsertTable(SfxRequest&)
+SwBaseShell::InsertURLButton(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SwBaseShell::RegisterInterface(SfxModule const*)
+SwBaseShell::SetFrameMode(FlyMode, SwWrtShell*)
+SwBaseShell::SetWrapMode(unsigned short)
+SwBaseShell::StateClpbrd(SfxItemSet&)
+SwBaseShell::StateDisableItems(SfxItemSet&)
+SwBaseShell::StateStyle(SfxItemSet&)
+SwBaseShell::StateUndo(SfxItemSet&)
+SwBaseShell::SwBaseShell(SwView&)
+SwBaseShell::~SwBaseShell()
+SwBreakIt::Create_(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+SwBreakIt::Delete_()
+SwBreakIt::GetAllScriptsOfText(rtl::OUString const&) const
+SwBreakIt::GetForbidden_(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwBreakIt::GetLocale_(LanguageTag const&)
+SwBreakIt::GetRealScriptOfText(rtl::OUString const&, int) const
+SwBreakIt::SwBreakIt(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+SwBreakIt::getGraphemeCount(rtl::OUString const&, int, int) const
+SwChapterField::ChangeExpansion(SwFrame const&, SwContentNode const*, bool)
+SwChapterField::Copy() const
+SwChapterField::ExpandImpl(SwRootFrame const*) const
+SwChapterField::GetNumber(SwRootFrame const*) const
+SwChapterField::GetTitle(SwRootFrame const*) const
+SwChapterField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwChapterField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwChapterNumRules::CreateEmptyNumRule(unsigned short)
+SwChapterNumRules::Init()
+SwChapterNumRules::Save()
+SwChapterNumRules::SwChapterNumRules()
+SwChapterNumRules::~SwChapterNumRules()
+SwCharFormat::SetLinkedParaFormat(SwTextFormatColl&)
+SwCharFormat::dumpAsXml(_xmlTextWriter*) const
+SwCharFormats::ContainsFormat(SwCharFormat const*) const
+SwCharFormats::DeleteAndDestroyAll(bool)
+SwCharFormats::GetPos(SwCharFormat const*) const
+SwCharFormats::SetFormatNameAndReindex(SwCharFormat*, rtl::OUString const&)
+SwCharFormats::SwCharFormats()
+SwCharFormats::dumpAsXml(_xmlTextWriter*) const
+SwCharFormats::erase(boost::multi_index::detail::rnd_node_iterator<boost::multi_index::detail::random_access_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<SwCharFormat*, std::allocator<SwCharFormat*> > > > > const&)
+SwCharFormats::find(SwCharFormat const*) const
+SwCharFormats::findByName(rtl::OUString const&) const
+SwCharFormats::insert(SwCharFormat*)
+SwCharFormats::~SwCharFormats()
+SwClient::CheckRegistration(SfxPoolItem const*)
+SwClient::CheckRegistrationFormat(SwFormat&)
+SwClient::EndListeningAll()
+SwClient::StartListeningToSameModifyAs(SwClient const&)
+SwClient::SwClient(SwClient&&)
+SwColExample::DrawPage(OutputDevice&, Point const&, bool, bool)
+SwCollCondition::RegisterToFormat(SwFormat&)
+SwCollCondition::SetCondition(Master_CollCondition, unsigned long)
+SwCollCondition::SwCollCondition(SwCollCondition const&)
+SwCollCondition::operator==(SwCollCondition const&) const
+SwColumnOnlyExample::Paint(OutputDevice&, tools::Rectangle const&)
+SwColumnOnlyExample::Resize()
+SwColumnOnlyExample::SetDrawingArea(weld::DrawingArea*)
+SwCombinedCharField::Copy() const
+SwCombinedCharField::ExpandImpl(SwRootFrame const*) const
+SwCombinedCharField::GetPar1() const
+SwCombinedCharField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwCombinedCharField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwCombinedCharField::SetPar1(rtl::OUString const&)
+SwCondCollItem::Clone(SfxItemPool*) const
+SwCondCollItem::GetStyle(unsigned short) const
+SwCondCollItem::operator==(SfxPoolItem const&) const
+SwConditionTextFormatColl::InsertCondition(SwCollCondition const&)
+SwConditionTextFormatColl::RemoveCondition(SwCollCondition const&)
+SwConditionTextFormatColl::SetConditions(std::vector<std::unique_ptr<SwCollCondition, std::default_delete<SwCollCondition> >, std::allocator<std::unique_ptr<SwCollCondition, std::default_delete<SwCollCondition> > > > const&)
+SwConditionTextFormatColl::~SwConditionTextFormatColl()
+SwConnectionContext::getValueByName(rtl::OUString const&)
+SwConnectionContext::~SwConnectionContext()
+SwConnectionListener::connected(com::sun::star::lang::EventObject const&)
+SwConnectionListener::disconnected(com::sun::star::lang::EventObject const&)
+SwConnectionListener::disposing(com::sun::star::lang::EventObject const&)
+SwConnectionListener::~SwConnectionListener()
+SwContentNode::ChgFormatColl(SwFormatColl*)
+SwContentNode::ChkCondColl(SwTextFormatColl const*)
+SwContentNode::ClearItemsFromAttrSet(std::vector<unsigned short, std::allocator<unsigned short> > const&)
+SwContentNode::CreateOLENodesArray(SwFormatColl const&, bool)
+SwContentNode::DelFrames(SwRootFrame const*)
+SwContentNode::GetInfo(SfxPoolItem&) const
+SwContentNode::GetTextDirection(SwPosition const&, Point const*) const
+SwContentNode::GoNext(SwIndex*, unsigned short) const
+SwContentNode::GoPrevious(SwIndex*, unsigned short) const
+SwContentNode::InvalidateNumRule()
+SwContentNode::IsAnyCondition(SwCollCondition&) const
+SwContentNode::JoinNext()
+SwContentNode::Len() const
+SwContentNode::MakeFramesForAdjacentContentNode(SwContentNode&)
+SwContentNode::ResetAllAttr()
+SwContentNode::ResetAttr(std::vector<unsigned short, std::allocator<unsigned short> > const&)
+SwContentNode::ResetAttr(unsigned short, unsigned short)
+SwContentNode::SetAttr(SfxItemSet const&)
+SwContentNode::SetCondFormatColl(SwFormatColl*)
+SwContentNode::SwClientNotify(SwModify const&, SfxHint const&)
+SwContentNode::SwContentNode(SwNodeIndex const&, SwNodeType, SwFormatColl*)
+SwContentNode::UpdateAttr(SwUpdateAttr const&)
+SwContentNode::getSdrAllFillAttributesHelper() const
+SwContentNode::~SwContentNode()
+SwContrastGrf::Clone(SfxItemPool*) const
+SwContrastGrf::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwCreateDialogFactory
+SwCropGrf::Clone(SfxItemPool*) const
+SwCursor::Create(SwPaM*) const
+SwCursor::DoSetBidiLevelLeftRight(bool&, bool, bool)
+SwCursor::DoSetBidiLevelUpDown()
+SwCursor::ExpandToSentenceBorders(SwRootFrame const*)
+SwCursor::FillFindPos(SwDocPositions, SwPosition&) const
+SwCursor::FindAll(SwFindParas&, SwDocPositions, SwDocPositions, FindRanges, bool&)
+SwCursor::FindAttrs(SfxItemSet const&, bool, SwDocPositions, SwDocPositions, bool&, FindRanges, i18nutil::SearchOptions2 const*, SfxItemSet const*, SwRootFrame const*)
+SwCursor::FindFormat(SwTextFormatColl const&, SwDocPositions, SwDocPositions, bool&, FindRanges, SwTextFormatColl const*, SwRootFrame const*)
+SwCursor::GoEndWordWT(short, SwRootFrame const*)
+SwCursor::GoNextWordWT(short, SwRootFrame const*)
+SwCursor::GoPrevNextCell(bool, unsigned short)
+SwCursor::GoPrevWordWT(short, SwRootFrame const*)
+SwCursor::GoSentence(SwCursor::SentenceMoveType, SwRootFrame const*)
+SwCursor::GoStartWordWT(short, SwRootFrame const*)
+SwCursor::GotoFootnoteText()
+SwCursor::GotoNextFootnoteAnchor()
+SwCursor::GotoPrevFootnoteAnchor()
+SwCursor::GotoRegion(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SwCursor::GotoTable(rtl::OUString const&)
+SwCursor::GotoTableBox(rtl::OUString const&)
+SwCursor::IsAtLeftRightMargin(SwRootFrame const&, bool, bool) const
+SwCursor::IsAtValidPos(bool) const
+SwCursor::IsEndWordWT(short, SwRootFrame const*) const
+SwCursor::IsInProtectTable(bool, bool)
+SwCursor::IsInWordWT(short, SwRootFrame const*) const
+SwCursor::IsNoContent() const
+SwCursor::IsReadOnlyAvailable() const
+SwCursor::IsSelOvr(SwCursorSelOverFlags)
+SwCursor::IsSelOvrCheck(SwCursorSelOverFlags)
+SwCursor::IsSkipOverHiddenSections() const
+SwCursor::IsSkipOverProtectSections() const
+SwCursor::IsStartEndSentence(bool, SwRootFrame const*) const
+SwCursor::IsStartWordWT(short, SwRootFrame const*) const
+SwCursor::LeftRight(bool, unsigned short, unsigned short, bool, bool, bool, SwRootFrame const*, bool)
+SwCursor::LeftRightMargin(SwRootFrame const&, bool, bool)
+SwCursor::MakeFindRange(SwDocPositions, SwDocPositions, SwPaM*) const
+SwCursor::MaxReplaceArived()
+SwCursor::MoveRegion(bool (*)(SwPaM&, SwMoveFnCollection const&, bool), SwMoveFnCollection const&)
+SwCursor::MoveSection(bool (*)(SwPaM&, SwMoveFnCollection const&), SwMoveFnCollection const&)
+SwCursor::MoveTable(bool (*)(SwPaM&, SwMoveFnCollection const&, bool), SwMoveFnCollection const&)
+SwCursor::RestoreSavePos()
+SwCursor::RestoreState()
+SwCursor::SaveState()
+SwCursor::SaveTableBoxContent(SwPosition const*)
+SwCursor::SelectWord(SwViewShell const*, Point const*)
+SwCursor::SelectWordWT(SwViewShell const*, short, Point const*)
+SwCursor::SwCursor(SwCursor const&, SwPaM*)
+SwCursor::UpDown(bool, unsigned short, Point const*, long, SwRootFrame&)
+SwCursorShell::BlockCursorToCursor()
+SwCursorShell::CallChgLnk()
+SwCursorShell::CheckTableBoxContent(SwPosition const*)
+SwCursorShell::ClearTableBoxContent()
+SwCursorShell::ClearUpCursors()
+SwCursorShell::Combine()
+SwCursorShell::CompareCursorStackMkCurrPt() const
+SwCursorShell::CreateNewShellCursor()
+SwCursorShell::CursorToBlockCursor()
+SwCursorShell::DocPtInsideInputField(Point const&) const
+SwCursorShell::EndAllTableBoxEdit()
+SwCursorShell::EndOfInputFieldAtPos(SwPosition const&)
+SwCursorShell::ExpandToSentenceBorders()
+SwCursorShell::ExtendSelection(bool, int)
+SwCursorShell::ExtendedSelectAll(bool)
+SwCursorShell::ExtendedSelectedAll()
+SwCursorShell::FindAttrs(SfxItemSet const&, bool, SwDocPositions, SwDocPositions, bool&, FindRanges, i18nutil::SearchOptions2 const*, SfxItemSet const*)
+SwCursorShell::FindFormat(SwTextFormatColl const&, SwDocPositions, SwDocPositions, bool&, FindRanges, SwTextFormatColl const*)
+SwCursorShell::FindINetAttr(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SwCursorShell::FindValidContentNode(bool)
+SwCursorShell::FireColumnChangeEvent(unsigned short, unsigned short)
+SwCursorShell::FirePageChangeEvent(unsigned short, unsigned short)
+SwCursorShell::FireSectionChangeEvent(unsigned short, unsigned short)
+SwCursorShell::GetBoxNms() const
+SwCursorShell::GetChar(bool, long)
+SwCursorShell::GetCharRectAt(SwRect&, SwPosition const*)
+SwCursorShell::GetContentAtPos(Point const&, SwContentAtPos&, bool, SwRect*)
+SwCursorShell::GetCurrentFieldmark()
+SwCursorShell::GetCursorDescr() const
+SwCursorShell::GetFieldmarkAfter()
+SwCursorShell::GetFieldmarkBefore()
+SwCursorShell::GetNextPrevPageNum(bool)
+SwCursorShell::GetPostItFieldAtCursor() const
+SwCursorShell::GetShadowCursorPos(Point const&, SwFillMode, SwRect&, short&)
+SwCursorShell::GetSmartTagRect(Point const&, SwRect&)
+SwCursorShell::GetSmartTagTerm(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::container::XStringKeyMap> >&, com::sun::star::uno::Reference<com::sun::star::text::XTextRange>&) const
+SwCursorShell::GetTextFieldAtCursor(SwPaM const*, bool)
+SwCursorShell::GetTextFieldAtPos(SwPosition const*, bool)
+SwCursorShell::GoEndSentence()
+SwCursorShell::GoEndWord()
+SwCursorShell::GoNextBookmark()
+SwCursorShell::GoNextCursor()
+SwCursorShell::GoNextPrevCursorSetSearchLabel(bool)
+SwCursorShell::GoNextSentence()
+SwCursorShell::GoNextWord()
+SwCursorShell::GoPrevBookmark()
+SwCursorShell::GoPrevCell()
+SwCursorShell::GoPrevCursor()
+SwCursorShell::GoPrevWord()
+SwCursorShell::GoStartSentence()
+SwCursorShell::GoStartWord()
+SwCursorShell::GotoFieldmark(sw::mark::IFieldmark const*)
+SwCursorShell::GotoFlyAnchor()
+SwCursorShell::GotoFooterText()
+SwCursorShell::GotoFootnoteAnchor()
+SwCursorShell::GotoFootnoteAnchor(SwTextFootnote const&)
+SwCursorShell::GotoFormatField(SwFormatField const&)
+SwCursorShell::GotoINetAttr(SwTextINetFormat const&)
+SwCursorShell::GotoMark(sw::mark::IMark const*, bool)
+SwCursorShell::GotoNextNum()
+SwCursorShell::GotoNextOutline()
+SwCursorShell::GotoNextTOXBase(rtl::OUString const*)
+SwCursorShell::GotoNxtPrvTOXMark(bool)
+SwCursorShell::GotoNxtPrvTableFormula(bool, bool)
+SwCursorShell::GotoOutline(rtl::OUString const&)
+SwCursorShell::GotoOutline(unsigned long)
+SwCursorShell::GotoPage(unsigned short)
+SwCursorShell::GotoPrevNum()
+SwCursorShell::GotoPrevOutline()
+SwCursorShell::GotoPrevTOXBase(rtl::OUString const*)
+SwCursorShell::GotoRedline(unsigned long, bool)
+SwCursorShell::GotoRefMark(rtl::OUString const&, unsigned short, unsigned short)
+SwCursorShell::GotoRegion(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SwCursorShell::GotoTOXMarkBase()
+SwCursorShell::GotoTable(rtl::OUString const&)
+SwCursorShell::HideCursors()
+SwCursorShell::IsEndOfDoc() const
+SwCursorShell::IsEndOfTable() const
+SwCursorShell::IsEndSentence() const
+SwCursorShell::IsEndWord(short) const
+SwCursorShell::IsFormProtected()
+SwCursorShell::IsInFrontOfLabel() const
+SwCursorShell::IsInRightToLeftText() const
+SwCursorShell::IsInVerticalText(Point const*) const
+SwCursorShell::IsInWord(short) const
+SwCursorShell::IsOverReadOnlyPos(Point const&) const
+SwCursorShell::IsPageAtPos(Point const&) const
+SwCursorShell::IsSelFullPara() const
+SwCursorShell::IsSelOnePara() const
+SwCursorShell::IsStartOfDoc() const
+SwCursorShell::IsStartSentence() const
+SwCursorShell::IsStartWord(short) const
+SwCursorShell::IsTableComplexForChart()
+SwCursorShell::KillPams()
+SwCursorShell::MakeOutlineSel(unsigned long, unsigned long, bool, bool)
+SwCursorShell::MakeSelVisible()
+SwCursorShell::MoveColumn(SwLayoutFrame* (*)(SwLayoutFrame const*), SwContentFrame* (*)(SwLayoutFrame const*))
+SwCursorShell::MoveFieldType(SwFieldType const*, bool, SwFieldIds, bool)
+SwCursorShell::MovePage(SwLayoutFrame* (*)(SwLayoutFrame const*), SwContentFrame* (*)(SwLayoutFrame const*))
+SwCursorShell::MoveRegion(bool (*)(SwPaM&, SwMoveFnCollection const&, bool), SwMoveFnCollection const&)
+SwCursorShell::MoveSection(bool (*)(SwPaM&, SwMoveFnCollection const&), SwMoveFnCollection const&)
+SwCursorShell::NotifyCursor(SfxViewShell*) const
+SwCursorShell::Paint(OutputDevice&, tools::Rectangle const&)
+SwCursorShell::ParkCursor(SwNodeIndex const&)
+SwCursorShell::ParkTableCursor()
+SwCursorShell::PosInsideInputField(SwPosition const&)
+SwCursorShell::RefreshBlockCursor()
+SwCursorShell::SaveTableBoxContent(SwPosition const*)
+SwCursorShell::SelNextRedline()
+SwCursorShell::SelPrevRedline()
+SwCursorShell::SelTableBox()
+SwCursorShell::SelectHiddenRange()
+SwCursorShell::SelectNxtPrvHyperlink(bool)
+SwCursorShell::SelectTextAttr(unsigned short, bool, SwTextAttr const*)
+SwCursorShell::SelectWord(Point const*)
+SwCursorShell::SetCursor(Point const&, bool, bool)
+SwCursorShell::SetCursorInHdFt(unsigned long, bool)
+SwCursorShell::SetInFrontOfLabel(bool)
+SwCursorShell::SetReadOnlyAvailable(bool)
+SwCursorShell::SetSelection(SwPaM const&)
+SwCursorShell::SetVisibleCursor(Point const&)
+SwCursorShell::ShellGetFocus()
+SwCursorShell::ShellLoseFocus()
+SwCursorShell::ShouldWait() const
+SwCursorShell::ShowCursor()
+SwCursorShell::ShowCursors(bool)
+SwCursorShell::StartOfInputFieldAtPos(SwPosition const&)
+SwCursorShell::StartsWithTable()
+SwCursorShell::SwClientNotify(SwModify const&, SfxHint const&)
+SwCursorShell::SwCursorShell(SwCursorShell&, vcl::Window*)
+SwCursorShell::SwCursorShell(SwDoc&, vcl::Window*, SwViewOption const*)
+SwCursorShell::TableCursorToCursor()
+SwCursorShell::TestCurrPam(Point const&, bool)
+SwCursorShell::UpdateCursorPos()
+SwCursorShell::UpdateTableSelBoxes()
+SwCursorShell::VisPortChgd(SwRect const&)
+SwCursorShell::bColumnChange()
+SwCursorShell::dumpAsXml(_xmlTextWriter*) const
+SwCursorShell::getPageRectangles()
+SwCursorShell::~SwCursorShell()
+SwDBConfig::ImplCommit()
+SwDBConfig::Load()
+SwDBConfig::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwDBField::ChgTyp(SwFieldType*)
+SwDBField::Copy() const
+SwDBField::Evaluate()
+SwDBField::ExpandImpl(SwRootFrame const*) const
+SwDBField::FormatValue(SvNumberFormatter const*, rtl::OUString const&, unsigned int, double&, int, SwDBField*)
+SwDBField::GetFieldName() const
+SwDBField::GetPar1() const
+SwDBField::GetSubType() const
+SwDBField::InitContent()
+SwDBField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDBField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDBFieldType::Copy() const
+SwDBFieldType::GetName() const
+SwDBFieldType::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDBFieldType::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDBFieldType::ReleaseRef()
+SwDBManager::CloseAll(bool)
+SwDBManager::ExecuteFormLetter(SwWrtShell&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwDBManager::FillCalcWithMergeData(SvNumberFormatter*, o3tl::strong_int<unsigned short, LanguageTypeTag>, SwCalc&)
+SwDBManager::GetAddressDBName()
+SwDBManager::GetColumnCnt(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, unsigned int, o3tl::strong_int<unsigned short, LanguageTypeTag>, rtl::OUString&, double*)
+SwDBManager::GetColumnFormat(com::sun::star::uno::Reference<com::sun::star::sdbc::XDataSource> const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, SvNumberFormatter*, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwDBManager::GetColumnFormat(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SvNumberFormatter*, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwDBManager::GetColumnType(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SwDBManager::GetConnection(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XDataSource>&, SwView const*)
+SwDBManager::GetMergeColumnCnt(rtl::OUString const&, o3tl::strong_int<unsigned short, LanguageTypeTag>, rtl::OUString&, double*)
+SwDBManager::GetSelectedRecordId()
+SwDBManager::GetSelectedRecordId(rtl::OUString const&, rtl::OUString const&, int)
+SwDBManager::InsertText(SwWrtShell&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwDBManager::IsDataSourceOpen(rtl::OUString const&, rtl::OUString const&, bool)
+SwDBManager::LoadAndRegisterEmbeddedDataSource(SwDBData const&, SwDocShell const&)
+SwDBManager::Merge(SwMergeDescriptor const&)
+SwDBManager::MergeCancel()
+SwDBManager::OpenDataSource(rtl::OUString const&, rtl::OUString const&)
+SwDBManager::RegisterConnection(rtl::OUString const&)
+SwDBManager::RevokeNotUsedConnections()
+SwDBManager::SetAsUsed(rtl::OUString const&)
+SwDBManager::StoreEmbeddedDataSource(com::sun::star::uno::Reference<com::sun::star::frame::XStorable> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, rtl::OUString const&, rtl::OUString const&, bool)
+SwDBManager::SwDBManager(SwDoc*)
+SwDBManager::ToNextRecord(rtl::OUString const&, rtl::OUString const&)
+SwDBManager::ToRecordId(int)
+SwDBManager::getDataSourceAsParent(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, rtl::OUString const&)
+SwDBManager::getDoc() const
+SwDBManager::getEmbeddedName() const
+SwDBManager::releaseRevokeListener()
+SwDBManager::setEmbeddedName(rtl::OUString const&, SwDocShell&)
+SwDBManager::~SwDBManager()
+SwDBNameInfField::GetFieldName() const
+SwDBNameInfField::GetSubType() const
+SwDBNameInfField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDBNameInfField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDBNameInfField::SetSubType(unsigned short)
+SwDBNameInfField::SwDBNameInfField(SwFieldType*, SwDBData const&, unsigned int)
+SwDBNextSetField::Copy() const
+SwDBNextSetField::Evaluate(SwDoc const&)
+SwDBNextSetField::ExpandImpl(SwRootFrame const*) const
+SwDBNextSetField::GetPar1() const
+SwDBNextSetField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDBNextSetField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDBNextSetField::SetPar1(rtl::OUString const&)
+SwDBNextSetFieldType::Copy() const
+SwDBSetNumberField::Copy() const
+SwDBSetNumberField::Evaluate(SwDoc const&)
+SwDBSetNumberField::ExpandImpl(SwRootFrame const*) const
+SwDBSetNumberField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDBSetNumberField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDBSetNumberFieldType::Copy() const
+SwDDEFieldType::Copy() const
+SwDDEFieldType::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDDEFieldType::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDDEFieldType::SetDoc(SwDoc*)
+SwDDEFieldType::UpdateDDE(bool)
+SwDateTimeField::Copy() const
+SwDateTimeField::ExpandImpl(SwRootFrame const*) const
+SwDateTimeField::GetDate() const
+SwDateTimeField::GetDateTime(SwDoc&, DateTime const&)
+SwDateTimeField::GetPar2() const
+SwDateTimeField::GetTime() const
+SwDateTimeField::GetValue() const
+SwDateTimeField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDateTimeField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDateTimeField::SetPar2(rtl::OUString const&)
+SwDoc::AddDrawUndo(std::unique_ptr<SdrUndoAction, std::default_delete<SdrUndoAction> >)
+SwDoc::AddNumRule(SwNumRule*)
+SwDoc::AddUsedDBToList(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, rtl::OUString const&)
+SwDoc::AddUsedDBToList(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&)
+SwDoc::AdjustCellWidth(SwCursor const&, bool, bool)
+SwDoc::AppendDoc(SwDoc const&, unsigned short, bool, int, unsigned long)
+SwDoc::AppendUndoForInsertFromDB(SwPaM const&, bool)
+SwDoc::BalanceRowHeight(SwCursor const&, bool, bool)
+SwDoc::BroadcastStyleOperation(rtl::OUString const&, SfxStyleFamily, SfxHintId)
+SwDoc::CalculateNonBlankPages(SwRootFrame const&, unsigned short&, unsigned short&)
+SwDoc::CalculatePagePairsForProspectPrinting(SwRootFrame const&, SwRenderData&, SwPrintUIOptions const&, int)
+SwDoc::CalculatePagesForPrinting(SwRootFrame const&, SwRenderData&, SwPrintUIOptions const&, bool, int)
+SwDoc::CallEvent(SvMacroItemId, SwCallMouseEvent const&, bool)
+SwDoc::Chain(SwFrameFormat&, SwFrameFormat const&)
+SwDoc::Chainable(SwFrameFormat const&, SwFrameFormat const&)
+SwDoc::ChangeAuthorityData(SwAuthEntry const*)
+SwDoc::ChangeDBFields(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, rtl::OUString const&)
+SwDoc::ChangeTOX(SwTOXBase&, SwTOXBase const&)
+SwDoc::CheckDefaultPageFormat()
+SwDoc::CheckForUniqueItemForLineFillNameOrIndex(SfxItemSet&)
+SwDoc::ChgAnchor(SdrMarkList const&, RndStdIds, bool, bool)
+SwDoc::ChgDBData(SwDBData const&)
+SwDoc::ChgNumRuleFormats(SwNumRule const&)
+SwDoc::ChkBoxNumFormat(SwTableBox&, bool)
+SwDoc::ChkCondColls()
+SwDoc::ClearBoxNumAttrs(SwNodeIndex const&)
+SwDoc::ClearDoc()
+SwDoc::ClearLineNumAttrs(SwPosition const&)
+SwDoc::CloneSdrObj(SdrObject const&, bool, bool)
+SwDoc::CompareDoc(SwDoc const&)
+SwDoc::ContainsHiddenChars() const
+SwDoc::ContainsPageDesc(SwPageDesc const*, unsigned long*) const
+SwDoc::ConvertFieldsToText(SwRootFrame const&)
+SwDoc::CopyCharFormat(SwCharFormat const&)
+SwDoc::CopyFormat(SwFormat const&, SwFormatsBase const&, SwFormat* (SwDoc::*)(rtl::OUString const&, SwFormat*, bool, bool), SwFormat const&)
+SwDoc::CopyFormatArr(SwFormatsBase const&, SwFormatsBase const&, SwFormat* (SwDoc::*)(rtl::OUString const&, SwFormat*, bool, bool), SwFormat&)
+SwDoc::CopyFrameFormat(SwFrameFormat const&)
+SwDoc::CopyGrfColl(SwGrfFormatColl const&)
+SwDoc::CopyMasterFooter(SwPageDesc const&, SwFormatFooter const&, SwPageDesc&, bool, bool)
+SwDoc::CopyMasterHeader(SwPageDesc const&, SwFormatHeader const&, SwPageDesc&, bool, bool)
+SwDoc::CopyTextColl(SwTextFormatColl const&)
+SwDoc::CorrAbs(SwNodeIndex const&, SwNodeIndex const&, SwPosition const&, bool)
+SwDoc::CorrAbs(SwNodeIndex const&, SwPosition const&, int, bool)
+SwDoc::CorrAbs(SwPaM const&, SwPosition const&, bool)
+SwDoc::CorrRel(SwNodeIndex const&, SwPosition const&, int, bool)
+SwDoc::CountWords(SwPaM const&, SwDocStat&)
+SwDoc::CreateCopy(bool, bool) const
+SwDoc::CreateExtTextInput(SwPaM const&)
+SwDoc::DelCharFormat(SwCharFormat const*, bool)
+SwDoc::DelCharFormat(unsigned long, bool)
+SwDoc::DelNumRules(SwPaM const&, SwRootFrame const*)
+SwDoc::DelPageDesc(rtl::OUString const&, bool)
+SwDoc::DelPageDesc(unsigned long, bool)
+SwDoc::DelSectionFormat(SwSectionFormat*, bool)
+SwDoc::DelTableFrameFormat(SwTableFormat*)
+SwDoc::DelTextFormatColl(SwTextFormatColl const*, bool)
+SwDoc::DelTextFormatColl(unsigned long, bool)
+SwDoc::DeleteAutoCorrExceptWord()
+SwDoc::DeleteCol(SwCursor const&)
+SwDoc::DeleteExtTextInput(SwExtTextInput*)
+SwDoc::DeleteRow(SwCursor const&)
+SwDoc::DeleteRowCol(SwSelBoxes const&, SwDoc::RowColMode)
+SwDoc::DeleteSelection(SwDrawView&)
+SwDoc::DeleteTOX(SwTOXBase const&, bool)
+SwDoc::DeleteTOXMark(SwTOXMark const*)
+SwDoc::DoUpdateAllCharts()
+SwDoc::DontExpandFormat(SwPosition const&, bool)
+SwDoc::ExecMacro(SvxMacro const&, rtl::OUString*, SbxArray*)
+SwDoc::FieldCanHideParaWeight(SwFieldIds) const
+SwDoc::FieldHidesPara(SwField const&) const
+SwDoc::FillRubyList(SwPaM const&, std::vector<std::unique_ptr<SwRubyListEntry, std::default_delete<SwRubyListEntry> >, std::allocator<std::unique_ptr<SwRubyListEntry, std::default_delete<SwRubyListEntry> > > >&)
+SwDoc::FindFrameFormatByName(rtl::OUString const&) const
+SwDoc::FindINetAttr(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SwDoc::FindNumRule(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SwDoc::FindUsedDBs(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, rtl::OUString const&, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+SwDoc::GenerateGlobalDoc(rtl::OUString const&, SwTextFormatColl const*)
+SwDoc::GenerateGlobalDoc(rtl::OUString const&, int)
+SwDoc::GenerateHTMLDoc(rtl::OUString const&, SwTextFormatColl const*)
+SwDoc::GenerateHTMLDoc(rtl::OUString const&, int)
+SwDoc::GetAllDBNames(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+SwDoc::GetAllUsedDB(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, std::vector<rtl::OUString, std::allocator<rtl::OUString> > const*)
+SwDoc::GetBoxAlign(SwCursor const&)
+SwDoc::GetBoxAttr(SwCursor const&, std::unique_ptr<SfxPoolItem, std::default_delete<SfxPoolItem> >&)
+SwDoc::GetCurTOXMark(SwPosition const&, std::vector<SwTOXMark*, std::allocator<SwTOXMark*> >&)
+SwDoc::GetCurrSection(SwPosition const&)
+SwDoc::GetDefaultTOXBase(TOXTypes, bool)
+SwDoc::GetDocColors()
+SwDoc::GetDocPattern(unsigned long) const
+SwDoc::GetDocumentContentOperationsManager()
+SwDoc::GetDocumentContentOperationsManager() const
+SwDoc::GetDocumentDrawModelManager()
+SwDoc::GetDocumentDrawModelManager() const
+SwDoc::GetDocumentFieldsManager()
+SwDoc::GetDocumentLayoutManager()
+SwDoc::GetDocumentLayoutManager() const
+SwDoc::GetDocumentLinksAdministrationManager()
+SwDoc::GetDocumentLinksAdministrationManager() const
+SwDoc::GetDocumentRedlineManager() const
+SwDoc::GetDocumentSettingManager()
+SwDoc::GetDocumentSettingManager() const
+SwDoc::GetDocumentStatisticsManager()
+SwDoc::GetDocumentStatisticsManager() const
+SwDoc::GetEditShell() const
+SwDoc::GetExtTextInput() const
+SwDoc::GetExtTextInput(SwNode const&, int) const
+SwDoc::GetFlyNum(unsigned long, FlyCntType, bool)
+SwDoc::GetGCIterator() const
+SwDoc::GetGrfNms(SwFlyFrameFormat const&, rtl::OUString*, rtl::OUString*)
+SwDoc::GetIDocumentUndoRedo() const
+SwDoc::GetIShellCursorSupplier()
+SwDoc::GetNumRuleAtPos(SwPosition&, SwRootFrame const*)
+SwDoc::GetPaMDescr(SwPaM const&)
+SwDoc::GetRefMark(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SwDoc::GetRefMark(unsigned short) const
+SwDoc::GetRefMarks(std::vector<rtl::OUString, std::allocator<rtl::OUString> >*) const
+SwDoc::GetRowBackground(SwCursor const&, std::unique_ptr<SvxBrushItem, std::default_delete<SvxBrushItem> >&)
+SwDoc::GetRowHeight(SwCursor const&)
+SwDoc::GetRowSplit(SwCursor const&)
+SwDoc::GetTOIKeys(SwTOIKeyType, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, SwRootFrame const&) const
+SwDoc::GetTOXBaseAttrSet(SwTOXBase const&)
+SwDoc::GetTOXTypeCount(TOXTypes) const
+SwDoc::GetTabBorders(SwCursor const&, SfxItemSet&)
+SwDoc::GetTabCols(SwTabCols&, SwCellFrame const*)
+SwDoc::GetTabRows(SwTabCols&, SwCellFrame const*)
+SwDoc::GetTableAutoFormat(SwSelBoxes const&, SwTableAutoFormat&)
+SwDoc::GetTableFrameFormat(unsigned long, bool) const
+SwDoc::GetUndoManager() const
+SwDoc::GetUniqueGrfName() const
+SwDoc::GetUniqueOLEName() const
+SwDoc::GetUniqueShapeName() const
+SwDoc::GetUniqueTOXBaseName(SwTOXType const&, rtl::OUString const&) const
+SwDoc::GetUniqueTableName() const
+SwDoc::GetVbaEventProcessor()
+SwDoc::GetXmlIdRegistry()
+SwDoc::GotoNextNum(SwPosition&, SwRootFrame const*, bool, unsigned char*, unsigned char*)
+SwDoc::GotoPrevNum(SwPosition&, SwRootFrame const*, bool)
+SwDoc::GroupSelection(SdrView&)
+SwDoc::HasInvisibleContent() const
+SwDoc::HasTableAnyProtection(SwPosition const*, rtl::OUString const*, bool*)
+SwDoc::Hyphenate(SwPaM*, Point const&, unsigned short*, unsigned short*)
+SwDoc::InitTOXTypes()
+SwDoc::InsCopyOfTable(SwPosition&, SwSelBoxes const&, SwTable const*, bool, bool, rtl::OUString const&)
+SwDoc::InsertCol(SwCursor const&, unsigned short, bool)
+SwDoc::InsertCol(SwSelBoxes const&, unsigned short, bool)
+SwDoc::InsertDrawLabel(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, unsigned short, rtl::OUString const&, SdrObject&)
+SwDoc::InsertGlossary(SwTextBlocks&, rtl::OUString const&, SwPaM&, SwCursorShell*)
+SwDoc::InsertLabel(SwLabelType, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, bool, unsigned short, o3tl::strong_int<int, Tag_SwNodeOffset>, rtl::OUString const&, bool)
+SwDoc::InsertRow(SwCursor const&, unsigned short, bool)
+SwDoc::InsertTOXType(SwTOXType const&)
+SwDoc::InsertTableOf(SwPaM const&, SwTOXBase const&, SfxItemSet const*, bool, SwRootFrame const*)
+SwDoc::InsertTableOf(o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, SwTOXBase const&, SfxItemSet const*)
+SwDoc::InvalidateAutoCompleteFlag()
+SwDoc::InvalidateNumRules()
+SwDoc::IsFirstOfNumRuleAtPos(SwPosition const&, SwRootFrame const&)
+SwDoc::IsIdxInTable(SwNodeIndex const&)
+SwDoc::IsInHeaderFooter(SwNodeIndex const&) const
+SwDoc::IsInsRegionAvailable(SwPaM const&, SwNode const**)
+SwDoc::IsInsTableAlignNum() const
+SwDoc::IsInsTableChangeNumFormat() const
+SwDoc::IsInsTableFormatNum() const
+SwDoc::IsNameInArray(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, rtl::OUString const&)
+SwDoc::IsNumberFormat(rtl::OUString const&, unsigned int&, double&)
+SwDoc::IsSplitVerticalByDefault() const
+SwDoc::IsUsed(SwTableAutoFormat const&) const
+SwDoc::IsUsed(sw::BroadcastingModify const&) const
+SwDoc::IsVisitedURL(rtl::OUString const&)
+SwDoc::MakeCharFormat_(rtl::OUString const&, SwFormat*, bool, bool)
+SwDoc::MakeCondTextFormatColl(rtl::OUString const&, SwTextFormatColl*, bool)
+SwDoc::MakeDrawFrameFormat(rtl::OUString const&, SwFrameFormat*)
+SwDoc::MakeFlyAndMove(SwPaM const&, SfxItemSet const&, SwSelBoxes const*, SwFrameFormat*)
+SwDoc::MakeFlyFrameFormat(rtl::OUString const&, SwFrameFormat*)
+SwDoc::MakeFlySection_(SwPosition const&, SwContentNode const&, RndStdIds, SfxItemSet const*, SwFrameFormat*)
+SwDoc::MakeFrameFormat(rtl::OUString const&, SwFrameFormat*, bool, bool)
+SwDoc::MakeFrameFormat_(rtl::OUString const&, SwFormat*, bool, bool)
+SwDoc::MakeGrfFormatColl(rtl::OUString const&, SwGrfFormatColl*)
+SwDoc::MakeSectionFormat()
+SwDoc::MakeTableBoxFormat()
+SwDoc::MakeTableFrameFormat(rtl::OUString const&, SwFrameFormat*)
+SwDoc::MakeTableLineFormat()
+SwDoc::MakeTextFormatColl_(rtl::OUString const&, SwFormat*, bool, bool)
+SwDoc::MakeUniqueNumRules(SwPaM const&)
+SwDoc::MarkListLevel(rtl::OUString const&, int, bool)
+SwDoc::MergeDoc(SwDoc const&)
+SwDoc::MergeTable(SwPaM&)
+SwDoc::MergeTable(SwPosition const&, bool, unsigned short)
+SwDoc::MoveLeftMargin(SwPaM const&, bool, bool, SwRootFrame const*)
+SwDoc::MoveOutlinePara(SwPaM const&, long)
+SwDoc::MoveParagraph(SwPaM&, o3tl::strong_int<int, Tag_SwNodeOffset>, bool)
+SwDoc::MoveParagraphImpl(SwPaM&, o3tl::strong_int<int, Tag_SwNodeOffset>, bool, SwRootFrame const*)
+SwDoc::NoNum(SwPaM const&)
+SwDoc::NumOrNoNum(SwNodeIndex const&, bool)
+SwDoc::NumUpDown(SwPaM const&, bool, SwRootFrame const*)
+SwDoc::OutlineUpDown(SwPaM const&, short, SwRootFrame const*)
+SwDoc::PreDelPageDesc(SwPageDesc const*)
+SwDoc::PrtOLENotify(bool)
+SwDoc::ReadLayoutCache(SvStream&)
+SwDoc::RemoveAllFormatLanguageDependencies()
+SwDoc::RenameFormat(SwFormat&, rtl::OUString const&, bool)
+SwDoc::RenameNumRule(rtl::OUString const&, rtl::OUString const&, bool)
+SwDoc::ReplaceNumRule(SwPosition const&, rtl::OUString const&, rtl::OUString const&)
+SwDoc::ReplaceStyles(SwDoc const&, bool)
+SwDoc::ReplaceUsedDBs(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, rtl::OUString const&, rtl::OUString const&)
+SwDoc::ReplaceUserDefinedDocumentProperties(com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> const&)
+SwDoc::ResetAttrAtFormat(unsigned short, SwFormat&)
+SwDoc::ResetAttrs(SwPaM const&, bool, o3tl::sorted_vector<unsigned short, std::less<unsigned short>, o3tl::find_unique, true> const&, bool, SwRootFrame const*)
+SwDoc::RestoreInvisibleContent()
+SwDoc::RstTextAttrs(SwPaM const&, bool, bool, SwRootFrame const*)
+SwDoc::SearchNumRule(SwPosition const&, bool, bool, bool, int, rtl::OUString&, SwRootFrame const*, bool)
+SwDoc::SelectNextRubyChars(SwPaM&, SwRubyListEntry&)
+SwDoc::SetAllUniqueFlyNames()
+SwDoc::SetAttr(SfxItemSet const&, SwFormat&)
+SwDoc::SetAutoCorrExceptWord(std::unique_ptr<SwAutoCorrExceptWord, std::default_delete<SwAutoCorrExceptWord> >)
+SwDoc::SetBoxAlign(SwCursor const&, unsigned short)
+SwDoc::SetBoxAttr(SwCursor const&, SfxPoolItem const&)
+SwDoc::SetCalcFieldValueHdl(Outliner*)
+SwDoc::SetColRowWidthHeight(SwTableBox&, TableChgWidthHeightType, long, long)
+SwDoc::SetCounted(SwPaM const&, bool, SwRootFrame const*)
+SwDoc::SetCurFootnote(SwPaM const&, rtl::OUString const&, bool)
+SwDoc::SetDefault(SfxItemSet const&)
+SwDoc::SetDefault(SfxPoolItem const&)
+SwDoc::SetDefaultTOXBase(SwTOXBase const&)
+SwDoc::SetDocPattern(rtl::OUString const&)
+SwDoc::SetFlyFrameAnchor(SwFrameFormat&, SfxItemSet&, bool)
+SwDoc::SetFlyFrameDescription(SwFlyFrameFormat&, rtl::OUString const&)
+SwDoc::SetFlyFrameTitle(SwFlyFrameFormat&, rtl::OUString const&)
+SwDoc::SetFlyName(SwFlyFrameFormat&, rtl::OUString const&)
+SwDoc::SetFormatItemByAutoFormat(SwPaM const&, SfxItemSet const&)
+SwDoc::SetFrameFormatToFly(SwFrameFormat&, SwFrameFormat&, SfxItemSet*, bool)
+SwDoc::SetLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>, unsigned short)
+SwDoc::SetMissingDictionaries(bool)
+SwDoc::SetNodeNumStart(SwPosition const&, unsigned short)
+SwDoc::SetNumRule(SwPaM const&, SwNumRule const&, bool, SwRootFrame const*, rtl::OUString const&, bool, bool)
+SwDoc::SetNumRuleStart(SwPosition const&, bool)
+SwDoc::SetOLEObjModified()
+SwDoc::SetPreviewPrtData(SwPagePreviewPrtData const*)
+SwDoc::SetRowBackground(SwCursor const&, SvxBrushItem const&)
+SwDoc::SetRowHeight(SwCursor const&, SwFormatFrameSize const&)
+SwDoc::SetRowNotTracked(SwCursor const&, SvxPrintItem const&, bool)
+SwDoc::SetRowSplit(SwCursor const&, SwFormatRowSplit const&)
+SwDoc::SetRowsToRepeat(SwTable&, unsigned short)
+SwDoc::SetRubyList(SwPaM const&, std::vector<std::unique_ptr<SwRubyListEntry, std::default_delete<SwRubyListEntry> >, std::allocator<std::unique_ptr<SwRubyListEntry, std::default_delete<SwRubyListEntry> > > > const&)
+SwDoc::SetSplitVerticalByDefault(bool)
+SwDoc::SetTOXBaseName(SwTOXBase const&, rtl::OUString const&)
+SwDoc::SetTabBorders(SwCursor const&, SfxItemSet const&)
+SwDoc::SetTabCols(SwTabCols const&, bool, SwCellFrame const*)
+SwDoc::SetTabCols(SwTable&, SwTabCols const&, SwTabCols const&, SwTableBox const*, bool)
+SwDoc::SetTabLineStyle(SwCursor const&, Color const*, bool, editeng::SvxBorderLine const*)
+SwDoc::SetTabRows(SwTabCols const&, bool, SwCellFrame const*)
+SwDoc::SetTableAutoFormat(SwSelBoxes const&, SwTableAutoFormat const&, bool, bool)
+SwDoc::SetTableBoxFormulaAttrs(SwTableBox&, SfxItemSet const&)
+SwDoc::SetTableName(SwFrameFormat&, rtl::OUString const&)
+SwDoc::SetTextFormatCollByAutoFormat(SwPosition const&, unsigned short, SfxItemSet const*)
+SwDoc::SortTable(SwSelBoxes const&, SwSortOptions const&)
+SwDoc::SortText(SwPaM const&, SwSortOptions const&)
+SwDoc::Spell(SwPaM&, com::sun::star::uno::Reference<com::sun::star::linguistic2::XSpellChecker1> const&, unsigned short*, unsigned short*, bool, SwRootFrame const*, SwConversionArgs*) const
+SwDoc::SpellItAgainSam(bool, bool, bool)
+SwDoc::SplitDoc(unsigned short, rtl::OUString const&, bool, SwTextFormatColl const*, int)
+SwDoc::SplitTable(SwPosition const&, SplitTable_HeadlineOption, bool)
+SwDoc::SplitTable(SwSelBoxes const&, bool, unsigned short, bool)
+SwDoc::StartGrammarChecking(bool)
+SwDoc::StopNumRuleAnimations(OutputDevice const*)
+SwDoc::Summary(SwDoc&, unsigned char, unsigned char, bool)
+SwDoc::TableToText(SwTableNode const*, char16_t)
+SwDoc::TextToTable(SwInsertTableOptions const&, SwPaM const&, char16_t, short, SwTableAutoFormat const*)
+SwDoc::TextToTable(std::vector<std::vector<SwNodeRange, std::allocator<SwNodeRange> >, std::allocator<std::vector<SwNodeRange, std::allocator<SwNodeRange> > > > const&)
+SwDoc::UnGroupSelection(SdrView&)
+SwDoc::UnProtectCells(SwSelBoxes const&)
+SwDoc::UnProtectCells(rtl::OUString const&)
+SwDoc::UnProtectTableCells(SwTable&)
+SwDoc::UnProtectTables(SwPaM const&)
+SwDoc::Unchain(SwFrameFormat&)
+SwDoc::UpdateCharts(rtl::OUString const&) const
+SwDoc::UpdateCharts_(SwTable const&, SwViewShell const&) const
+SwDoc::UpdateNumRule()
+SwDoc::UpdatePagesForPrintingWithPostItData(SwRenderData&, SwPrintUIOptions const&, int)
+SwDoc::UpdateParRsid(SwTextNode*, unsigned int)
+SwDoc::UpdateRsid(SwPaM const&, int)
+SwDoc::UpdateSection(unsigned long, SwSectionData&, SfxItemSet const*, bool)
+SwDoc::WriteLayoutCache(SvStream&)
+SwDoc::disposeXForms()
+SwDoc::getIDocumentChartDataProviderAccess()
+SwDoc::getIDocumentChartDataProviderAccess() const
+SwDoc::getIDocumentContentOperations() const
+SwDoc::getIDocumentDeviceAccess() const
+SwDoc::getIDocumentExternalData() const
+SwDoc::getIDocumentFieldsAccess() const
+SwDoc::getIDocumentLinksAdministration() const
+SwDoc::getIDocumentListItems()
+SwDoc::getIDocumentListItems() const
+SwDoc::getIDocumentListsAccess() const
+SwDoc::getIDocumentOutlineNodes()
+SwDoc::getIDocumentOutlineNodes() const
+SwDoc::getIDocumentRedlineAccess() const
+SwDoc::getIDocumentState() const
+SwDoc::getIDocumentStatistics() const
+SwDoc::getIDocumentStylePoolAccess() const
+SwDoc::getIDocumentTimerAccess()
+SwDoc::getIDocumentTimerAccess() const
+SwDoc::getReferenceCount() const
+SwDoc::getRsid() const
+SwDoc::getRsidRoot() const
+SwDoc::initXForms(bool)
+SwDoc::isXForms() const
+SwDoc::setRsid(unsigned int)
+SwDoc::setRsidRoot(unsigned int)
+SwDocDisplayItem::Clone(SfxItemPool*) const
+SwDocDisplayItem::FillViewOptions(SwViewOption&) const
+SwDocDisplayItem::SwDocDisplayItem(SwViewOption const&)
+SwDocFac::GetDoc()
+SwDocFac::SwDocFac(SwDoc*)
+SwDocInfoField::Copy() const
+SwDocInfoField::ExpandImpl(SwRootFrame const*) const
+SwDocInfoField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDocInfoField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDocInfoField::SetSubType(unsigned short)
+SwDocShell::CallAutomationDocumentEventSinks(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
+SwDocShell::CancelTransfers()
+SwDocShell::DdeCreateLinkSource(rtl::OUString const&)
+SwDocShell::DoFlushDocInfo()
+SwDocShell::ExecStyleSheet(SfxRequest&)
+SwDocShell::Execute(SfxRequest&)
+SwDocShell::FillClass(SvGlobalName*, SotClipboardFormatId*, rtl::OUString*, int, bool) const
+SwDocShell::GetController()
+SwDocShell::GetDocColors()
+SwDocShell::GetDocumentPrinter()
+SwDocShell::GetDocumentRefDev()
+SwDocShell::GetEventNames()
+SwDocShell::GetHiddenInformationState(HiddenInformation)
+SwDocShell::GetIPClient(svt::EmbeddedObjectRef const&)
+SwDocShell::GetInterface() const
+SwDocShell::GetProtectionHash(com::sun::star::uno::Sequence<signed char>&)
+SwDocShell::GetState(SfxItemSet&)
+SwDocShell::GetStaticInterface()
+SwDocShell::GetStyleManager()
+SwDocShell::GetStyleSheetPool()
+SwDocShell::GetVisArea(unsigned short) const
+SwDocShell::GetXmlIdRegistry() const
+SwDocShell::HasChangeRecordProtection() const
+SwDocShell::InitInterface_Impl()
+SwDocShell::InvalidateModel()
+SwDocShell::IsChangeRecording() const
+SwDocShell::LoadStyles(SfxObjectShell&)
+SwDocShell::LoadingFinished()
+SwDocShell::LockAllViews()
+SwDocShell::LockAllViewsGuard_Impl::LockAllViewsGuard_Impl(SwViewShell*)
+SwDocShell::LockAllViewsGuard_Impl::~LockAllViewsGuard_Impl()
+SwDocShell::OnDocumentPrinterChanged(Printer*)
+SwDocShell::ReactivateModel()
+SwDocShell::ReconnectDdeLink(SfxObjectShell&)
+SwDocShell::RegisterInterface(SfxModule const*)
+SwDocShell::ReloadFromHtml(rtl::OUString const&, SwSrcView*)
+SwDocShell::Save()
+SwDocShell::SetChangeRecording(bool, bool)
+SwDocShell::SetModified(bool)
+SwDocShell::SetProtectionPassword(rtl::OUString const&)
+SwDocShell::SetVisArea(tools::Rectangle const&)
+SwDocShell::StartConvertFrom(SfxMedium&, std::unique_ptr<SwReader, o3tl::default_delete<SwReader> >&, SwCursorShell const*, SwPaM*)
+SwDocShell::StateStyleSheet(SfxItemSet&, SwWrtShell*)
+SwDocShell::SwDocShell(SfxModelFlags)
+SwDocShell::ToggleLayoutMode(SwView*)
+SwDocShell::UpdateChildWindows()
+SwDocShell::UpdateFontList()
+SwDocShell::UpdateLinks()
+SwDocShell::getIDocumentChartDataProviderAccess()
+SwDocShell::getIDocumentDeviceAccess()
+SwDocShell::runAccessibilityCheck()
+SwDocShell::~SwDocShell()
+SwDocStat::Reset()
+SwDocStatField::ChangeExpansion(SwFrame const*)
+SwDocStatField::Copy() const
+SwDocStatField::ExpandImpl(SwRootFrame const*) const
+SwDocStatField::GetSubType() const
+SwDocStatField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDocStatField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDocStatField::SetSubType(unsigned short)
+SwDocStyleSheet::GetDescription(MapUnit)
+SwDocStyleSheet::GetFollow() const
+SwDocStyleSheet::GetFrameFormat()
+SwDocStyleSheet::GetGrabBagItem(com::sun::star::uno::Any&) const
+SwDocStyleSheet::GetHelpId(rtl::OUString&)
+SwDocStyleSheet::GetItemSetForPreview()
+SwDocStyleSheet::GetLink() const
+SwDocStyleSheet::GetNumRule()
+SwDocStyleSheet::GetPageDesc()
+SwDocStyleSheet::GetParent() const
+SwDocStyleSheet::GetTableFormat()
+SwDocStyleSheet::GetUsedBy()
+SwDocStyleSheet::HasClearParentSupport() const
+SwDocStyleSheet::HasFollowSupport() const
+SwDocStyleSheet::HasParentSupport() const
+SwDocStyleSheet::IsHidden() const
+SwDocStyleSheet::IsUsed() const
+SwDocStyleSheet::PresetNameAndFamily(SfxStyleFamily, rtl::OUString const&)
+SwDocStyleSheet::Reset()
+SwDocStyleSheet::SetFollow(rtl::OUString const&)
+SwDocStyleSheet::SetGrabBagItem(com::sun::star::uno::Any const&)
+SwDocStyleSheet::SetHelpId(rtl::OUString const&, unsigned long)
+SwDocStyleSheet::SetHidden(bool)
+SwDocStyleSheet::SetLink(rtl::OUString const&)
+SwDocStyleSheet::SetName(rtl::OUString const&, bool)
+SwDocStyleSheet::SetNumRule(SwNumRule const&)
+SwDocStyleSheet::SetParent(rtl::OUString const&)
+SwDocStyleSheet::SetPhysical(bool)
+SwDocStyleSheet::SwDocStyleSheet(SwDoc&, SwDocStyleSheetPool&)
+SwDocStyleSheet::~SwDocStyleSheet()
+SwDrawFrameFormat::DelFrames()
+SwDrawFrameFormat::GetDescription() const
+SwDrawFrameFormat::GetLayoutDir() const
+SwDrawFrameFormat::GetPositionLayoutDir() const
+SwDrawFrameFormat::MakeFrames()
+SwDrawFrameFormat::MakeGraphic(ImageMap*, unsigned int, std::optional<Size> const&)
+SwDrawFrameFormat::SetLayoutDir(SwFrameFormat::tLayoutDir)
+SwDrawFrameFormat::SetPositionLayoutDir(short)
+SwDrawFrameFormat::~SwDrawFrameFormat()
+SwDrawModeGrf::Clone(SfxItemPool*) const
+SwDrawModeGrf::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwDrawModeGrf::GetValueCount() const
+SwDrawModeGrf::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwDrawModeGrf::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwDrawTextInfo::Shift(o3tl::strong_int<short, FractionTag<10> >)
+SwDropDownField::Copy() const
+SwDropDownField::ExpandImpl(SwRootFrame const*) const
+SwDropDownField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwDropDownField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwDropDownField::SetItems(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwDropDownField::SetPar2(rtl::OUString const&)
+SwDropDownField::SwDropDownField(SwDropDownField const&)
+SwEditShell::AcceptRedlinesInSelection()
+SwEditShell::ApplyAdvancedClassification(std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> > const&)
+SwEditShell::ApplyAutoMark()
+SwEditShell::ApplyChangedSentence(std::vector<svx::SpellPortion, std::allocator<svx::SpellPortion> > const&, bool)
+SwEditShell::ApplyParagraphClassification(std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> >)
+SwEditShell::ApplyViewOptions(SwViewOption const&)
+SwEditShell::AutoCorrect(SvxAutoCorrect&, bool, char16_t)
+SwEditShell::AutoFormat(SvxSwAutoFormatFlags const*)
+SwEditShell::AutoFormatBySplitNode()
+SwEditShell::Calculate()
+SwEditShell::CanMergeTable(bool, bool*) const
+SwEditShell::CanSpecialInsert() const
+SwEditShell::ChangeIndentOfAllListLevels(int)
+SwEditShell::ChgDBData(SwDBData const&)
+SwEditShell::ChgNumRuleFormats(SwNumRule const&)
+SwEditShell::ClassifyDocPerHighestParagraphClass()
+SwEditShell::ClearAutomaticContour()
+SwEditShell::CollectAdvancedClassification()
+SwEditShell::CollectParagraphClassification()
+SwEditShell::CompareDoc(SwDoc const&)
+SwEditShell::ConvertFieldsToText()
+SwEditShell::Copy(SwEditShell&)
+SwEditShell::CopySelToDoc(SwDoc&)
+SwEditShell::CreateExtTextInput(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwEditShell::CursorsLocked() const
+SwEditShell::DelAllUndoObj()
+SwEditShell::DelINetAttrWithText()
+SwEditShell::DelNumRules()
+SwEditShell::DeleteExtTextInput(bool)
+SwEditShell::DeleteGlobalDocContent(SwGlblDocContents const&, unsigned long)
+SwEditShell::DeleteTOXMark(SwTOXMark const*)
+SwEditShell::DoGroupUndo(bool)
+SwEditShell::DoSpecialInsert()
+SwEditShell::DoesGroupUndo() const
+SwEditShell::DontExpandFormat()
+SwEditShell::FieldToText(SwFieldType const*)
+SwEditShell::FillByEx(SwCharFormat*)
+SwEditShell::FillByEx(SwTextFormatColl*)
+SwEditShell::FindFlyByName(rtl::OUString const&) const
+SwEditShell::FindRedlineOfData(SwRedlineData const&) const
+SwEditShell::GCAttr()
+SwEditShell::GetAnySection(bool, Point const*)
+SwEditShell::GetAutoCompleteWords()
+SwEditShell::GetChunkForAutoText()
+SwEditShell::GetCntType() const
+SwEditShell::GetCorrection(Point const*, SwRect&)
+SwEditShell::GetCurCharFormat() const
+SwEditShell::GetCurTOXMarks(std::vector<SwTOXMark*, std::allocator<SwTOXMark*> >&) const
+SwEditShell::GetCurWord() const
+SwEditShell::GetCurrRedline() const
+SwEditShell::GetCurrentOutlineLevels(unsigned char&, unsigned char&)
+SwEditShell::GetCurrentParaOutlineLevel() const
+SwEditShell::GetDfltTextFormatColl() const
+SwEditShell::GetFirstRedoInfo(rtl::OUString*, SwUndoId*, SwView const*) const
+SwEditShell::GetFormatFromPool(unsigned short)
+SwEditShell::GetGlobalDocContent(SwGlblDocContents&) const
+SwEditShell::GetGrammarCorrection(com::sun::star::linguistic2::ProofreadingResult&, int&, int&, com::sun::star::uno::Sequence<rtl::OUString>&, Point const*, SwRect&)
+SwEditShell::GetGraphic(bool) const
+SwEditShell::GetGraphicAttr(GraphicAttr&) const
+SwEditShell::GetGraphicObj() const
+SwEditShell::GetGraphicPolygon() const
+SwEditShell::GetGraphicType() const
+SwEditShell::GetGrfNms(rtl::OUString*, rtl::OUString*, SwFlyFrameFormat const*) const
+SwEditShell::GetIMapInventor() const
+SwEditShell::GetINetAttrs(std::vector<SwGetINetAttr, std::allocator<SwGetINetAttr> >&)
+SwEditShell::GetItemWithPaM(unsigned short)
+SwEditShell::GetNodeNumStart(SwPaM*) const
+SwEditShell::GetNumLevel() const
+SwEditShell::GetNumRuleAtCurrentSelection() const
+SwEditShell::GetPaMAttr(SwPaM*, SfxItemSet&, bool) const
+SwEditShell::GetPaMParAttr(SwPaM*, SfxItemSet&) const
+SwEditShell::GetPaMTextFormatColl(SwPaM*) const
+SwEditShell::GetPrevAutoCorrWord(SvxAutoCorrect&)
+SwEditShell::GetRedline(unsigned long) const
+SwEditShell::GetRefMark(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SwEditShell::GetRefMarks(std::vector<rtl::OUString, std::allocator<rtl::OUString> >*) const
+SwEditShell::GetRepeatInfo(rtl::OUString*) const
+SwEditShell::GetScalingOfSelectedText() const
+SwEditShell::GetTableBoxFormulaAttrs(SfxItemSet&) const
+SwEditShell::GetTableBoxText() const
+SwEditShell::GetTableChgMode() const
+SwEditShell::GetTableFrameFormat(unsigned long, bool) const
+SwEditShell::GetTableFrameFormatCount(bool) const
+SwEditShell::GetWatermark() const
+SwEditShell::GotoGlobalDocContent(SwGlblDocContent const&)
+SwEditShell::HandleCorrectionError(rtl::OUString const&, SwPosition, int, int, Point const*, SwRect&)
+SwEditShell::HandleUndoRedoContext(sw::UndoRedoContext&)
+SwEditShell::HasBullet() const
+SwEditShell::HasConvIter()
+SwEditShell::HasHyphIter()
+SwEditShell::HasLastSentenceGotGrammarChecked()
+SwEditShell::HasNumber() const
+SwEditShell::HasOLEObj(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+SwEditShell::HasOtherCnt() const
+SwEditShell::HyphContinue(unsigned short*, unsigned short*)
+SwEditShell::HyphEnd()
+SwEditShell::HyphIgnore()
+SwEditShell::HyphStart(SwDocPositions, SwDocPositions)
+SwEditShell::IgnoreGrammarErrorAt(SwPaM&)
+SwEditShell::Insert(SwTOXMark const&)
+SwEditShell::Insert(char16_t, bool)
+SwEditShell::Insert2(SwField const&, bool)
+SwEditShell::InsertDDETable(SwInsertTableOptions const&, SwDDEFieldType*, unsigned short, unsigned short)
+SwEditShell::InsertGlobalDocContent(SwGlblDocContent const&)
+SwEditShell::InsertGlobalDocContent(SwGlblDocContent const&, SwSectionData&)
+SwEditShell::InsertGlobalDocContent(SwGlblDocContent const&, SwTOXBase const&)
+SwEditShell::InsertGlossary(SwTextBlocks&, rtl::OUString const&)
+SwEditShell::InsertSoftHyph(int)
+SwEditShell::InsertTOXType(SwTOXType const&)
+SwEditShell::InsertTableOf(SwTOXBase const&, SfxItemSet const*)
+SwEditShell::InsertURL(SwFormatINetFormat const&, rtl::OUString const&, bool)
+SwEditShell::IsAnyDatabaseFieldInDoc() const
+SwEditShell::IsAnySectionInDoc() const
+SwEditShell::IsCursorInParagraphMetadataField() const
+SwEditShell::IsExpFieldsLocked() const
+SwEditShell::IsFieldDataSourceAvailable(rtl::OUString&) const
+SwEditShell::IsFirstOfNumRuleAtCursorPos() const
+SwEditShell::IsGlblDocSaveLinks() const
+SwEditShell::IsGlobalDoc() const
+SwEditShell::IsLinkedGrfSwapOut() const
+SwEditShell::IsMoveLeftMargin(bool, bool) const
+SwEditShell::IsNoNum(bool) const
+SwEditShell::IsNumRuleStart(SwPaM*) const
+SwEditShell::IsOutlineCopyable(unsigned long) const
+SwEditShell::IsOutlineMovable(unsigned long) const
+SwEditShell::IsProtectedOutlinePara() const
+SwEditShell::IsRedlineOn() const
+SwEditShell::IsTOXBaseReadonly(SwTOXBase const&)
+SwEditShell::IsTableBoxTextFormat() const
+SwEditShell::IsTextToTableAvailable() const
+SwEditShell::IsUpdateTOX() const
+SwEditShell::MakeCharFormat(rtl::OUString const&)
+SwEditShell::MakeGlossary(SwTextBlocks&, rtl::OUString const&, rtl::OUString const&, bool, rtl::OUString const*)
+SwEditShell::MergeTable(bool)
+SwEditShell::MoveContinuationPosToEndOfCheckedSentence()
+SwEditShell::MoveGlobalDocContent(SwGlblDocContents const&, unsigned long, unsigned long, unsigned long)
+SwEditShell::MoveLeftMargin(bool, bool)
+SwEditShell::MoveNumParas(bool, bool)
+SwEditShell::MoveOutlinePara(long)
+SwEditShell::NoNum()
+SwEditShell::NumUpDown(bool)
+SwEditShell::OutlineUpDown(short)
+SwEditShell::Overwrite(rtl::OUString const&)
+SwEditShell::PutSpellingToSentenceStart()
+SwEditShell::ReRead(rtl::OUString const&, rtl::OUString const&, Graphic const*)
+SwEditShell::RejectRedlinesInSelection()
+SwEditShell::RemoveFieldType(SwFieldIds, rtl::OUString const&)
+SwEditShell::RemoveFieldType(unsigned long)
+SwEditShell::RemoveParagraphMetadataFieldAtCursor()
+SwEditShell::Repeat(unsigned short)
+SwEditShell::Replace(rtl::OUString const&, bool)
+SwEditShell::ReplaceDropText(rtl::OUString const&, SwPaM*)
+SwEditShell::ReplaceNumRule(rtl::OUString const&, rtl::OUString const&)
+SwEditShell::ResetAttr(o3tl::sorted_vector<unsigned short, std::less<unsigned short>, o3tl::find_unique, true> const&, SwPaM*)
+SwEditShell::RestoreMetadataFieldsAndValidateParagraphSignatures()
+SwEditShell::SaveGlossaryDoc(SwTextBlocks&, rtl::OUString const&, rtl::OUString const&, bool, bool)
+SwEditShell::SearchNumRule(bool, rtl::OUString&)
+SwEditShell::SelectionHasBullet() const
+SwEditShell::SelectionHasNumber() const
+SwEditShell::SetChartName(rtl::OUString const&)
+SwEditShell::SetClassification(rtl::OUString const&, SfxClassificationPolicyType)
+SwEditShell::SetCurNumRule(SwNumRule const&, bool, rtl::OUString const&, bool)
+SwEditShell::SetExtTextInputData(CommandExtTextInputData const&)
+SwEditShell::SetGlblDocSaveLinks(bool)
+SwEditShell::SetGraphicPolygon(tools::PolyPolygon const*)
+SwEditShell::SetIndent(short, SwPosition const&)
+SwEditShell::SetLabelDoc(bool)
+SwEditShell::SetLinguRange(SwDocPositions, SwDocPositions)
+SwEditShell::SetNewDoc()
+SwEditShell::SetNodeNumStart(unsigned short)
+SwEditShell::SetNumRuleStart(bool, SwPaM*)
+SwEditShell::SetNumberingRestart()
+SwEditShell::SetRedlineComment(rtl::OUString const&)
+SwEditShell::SetTOIAutoMarkURL(rtl::OUString const&)
+SwEditShell::SetTOXBaseReadonly(SwTOXBase const&, bool)
+SwEditShell::SetTableName(SwFrameFormat&, rtl::OUString const&)
+SwEditShell::SetUpdateTOX(bool)
+SwEditShell::SignParagraph()
+SwEditShell::SpellContinue(unsigned short*, unsigned short*, SwConversionArgs const*)
+SwEditShell::SpellEnd(SwConversionArgs const*, bool)
+SwEditShell::SpellSentence(std::vector<svx::SpellPortion, std::allocator<svx::SpellPortion> >&, bool)
+SwEditShell::SpellStart(SwDocPositions, SwDocPositions, SwDocPositions, SwConversionArgs*)
+SwEditShell::SwEditShell(SwDoc&, vcl::Window*, SwViewOption const*)
+SwEditShell::SwEditShell(SwEditShell&, vcl::Window*)
+SwEditShell::TableToText(char16_t)
+SwEditShell::TextToTable(SwInsertTableOptions const&, char16_t, SwTableAutoFormat const*)
+SwEditShell::TransliterateText(TransliterationFlags)
+SwEditShell::UpdateCharts(rtl::OUString const&)
+SwEditShell::UpdateDocStat()
+SwEditShell::UpdateTable()
+SwEditShell::UpdateTableOf(SwTOXBase const&, SfxItemSet const*)
+SwEditShell::ValidateAllParagraphSignatures(bool)
+SwEditShell::ValidateCurrentParagraphSignatures(bool)
+SwEditShell::ValidateParagraphSignatures(SwTextNode*, bool)
+SwEditShell::~SwEditShell()
+SwEditWin::AcceptDrop(AcceptDropEvent const&)
+SwEditWin::ChangeDrawing(unsigned char)
+SwEditWin::ChangeFly(unsigned char, bool)
+SwEditWin::CleanupDropUserMarker()
+SwEditWin::ClipLongToolTip(rtl::OUString const&)
+SwEditWin::Command(CommandEvent const&)
+SwEditWin::CreateAccessible()
+SwEditWin::DataChanged(DataChangedEvent const&)
+SwEditWin::DeleteSurroundingText(Selection const&)
+SwEditWin::DragFinished()
+SwEditWin::DropCleanup()
+SwEditWin::EnterDrawMode(MouseEvent const&, Point const&)
+SwEditWin::EnterDrawTextMode(Point const&)
+SwEditWin::ExecuteDrop(ExecuteDropEvent const&)
+SwEditWin::FinitStaticData()
+SwEditWin::FlushInBuffer()
+SwEditWin::GetDropDestination(Point const&, SdrObject**)
+SwEditWin::GetFocus()
+SwEditWin::GetFrameControlsManager()
+SwEditWin::GetSurroundingText() const
+SwEditWin::GetSurroundingTextSelection() const
+SwEditWin::GetUITestFactory() const
+SwEditWin::InitStaticData()
+SwEditWin::InsFrame(unsigned short)
+SwEditWin::IsDrawSelMode() const
+SwEditWin::IsInHeaderFooter(Point const&, FrameControlType&) const
+SwEditWin::IsInputSequenceCheckingRequired(rtl::OUString const&, SwPaM const&)
+SwEditWin::IsOverHeaderFooterFly(Point const&, FrameControlType&, bool&, bool&) const
+SwEditWin::JustifyAreaTimer()
+SwEditWin::LeaveArea(Point const&)
+SwEditWin::LogicInvalidate(tools::Rectangle const*)
+SwEditWin::LogicMouseButtonDown(MouseEvent const&)
+SwEditWin::LogicMouseButtonUp(MouseEvent const&)
+SwEditWin::LogicMouseMove(MouseEvent const&)
+SwEditWin::LoseFocus()
+SwEditWin::MouseButtonDown(MouseEvent const&)
+SwEditWin::MouseButtonUp(MouseEvent const&)
+SwEditWin::MouseMove(MouseEvent const&)
+SwEditWin::MoveCursor(SwWrtShell&, Point const&, bool, bool)
+SwEditWin::Paint(OutputDevice&, tools::Rectangle const&)
+SwEditWin::PrePaint(OutputDevice&)
+SwEditWin::RequestHelp(HelpEvent const&)
+SwEditWin::RstMBDownFlags()
+SwEditWin::RulerColumnDrag(MouseEvent const&, bool)
+SwEditWin::RulerMarginDrag(MouseEvent const&, bool)
+SwEditWin::SelectMenuPosition(SwWrtShell&, Point const&)
+SwEditWin::SetApplyTemplate(SwApplyTemplate const&)
+SwEditWin::SetChainMode(bool)
+SwEditWin::SetCursorTwipPosition(Point const&, bool, bool)
+SwEditWin::SetGraphicTwipPosition(bool, Point const&)
+SwEditWin::SetUseInputLanguage(bool)
+SwEditWin::ShowAutoCorrectQuickHelp(rtl::OUString const&, SvxAutoCorrect&)
+SwEditWin::ShowAutoText(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&)
+SwEditWin::StartDDTimer()
+SwEditWin::StartDrag(signed char, Point const&)
+SwEditWin::StartExecuteDrag()
+SwEditWin::StdDrawMode(SdrObjKind, bool)
+SwEditWin::StopDDTimer(SwWrtShell*, Point const&)
+SwEditWin::StopInsFrame()
+SwEditWin::StopQuickHelp()
+SwEditWin::SwEditWin(vcl::Window*, SwView&)
+SwEditWin::ToggleOutlineContentVisibility(unsigned long, bool)
+SwEditWin::UpdatePointer(Point const&, unsigned short)
+SwEditWin::changeMousePointer(Point const&)
+SwEditWin::dispose()
+SwEditWin::~SwEditWin()
+SwElemItem::Clone(SfxItemPool*) const
+SwElemItem::FillViewOptions(SwViewOption&) const
+SwElemItem::SwElemItem(SwViewOption const&)
+SwEndNoteInfo::DependsOn(SwPageDesc const*) const
+SwEndNoteInfo::GetCurrentCharFormat(bool) const
+SwEndNoteInfo::KnowsPageDesc() const
+SwEndNoteInfo::UpdateFormatOrAttr()
+SwEndNoteInfo::operator=(SwEndNoteInfo const&)
+SwEnvItem::Clone(SfxItemPool*) const
+SwEnvItem::CreateDefault()
+SwEnvItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwEnvItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwEnvItem::operator=(SwEnvItem const&)
+SwEnvItem::operator==(SfxPoolItem const&) const
+SwExtraRedline::~SwExtraRedline()
+SwFEShell::AdjustCellWidth(bool, bool)
+SwFEShell::AlignAllFormulasToBaseline()
+SwFEShell::AlignFormulaToBaseline(com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&)
+SwFEShell::BalanceRowHeight(bool, bool)
+SwFEShell::BeginCreate(SdrObjKind, SdrInventor, Point const&)
+SwFEShell::BeginDrag(Point const*, bool)
+SwFEShell::BeginMark(Point const&)
+SwFEShell::BreakCreate()
+SwFEShell::BreakDrag()
+SwFEShell::CanUnProtectCells() const
+SwFEShell::Chain(SwFrameFormat&, Point const&)
+SwFEShell::Chain(SwFrameFormat&, SwFrameFormat const&)
+SwFEShell::Chainable(SwRect&, SwFrameFormat const&, Point const&) const
+SwFEShell::CheckUnboundObjects()
+SwFEShell::ChgCurPageDesc(SwPageDesc const&)
+SwFEShell::CreateDefaultShape(SdrObjKind, tools::Rectangle const&, unsigned short)
+SwFEShell::DeleteTable()
+SwFEShell::DeleteTableSel()
+SwFEShell::Drag(Point const*, bool)
+SwFEShell::EndDrag()
+SwFEShell::EndMark()
+SwFEShell::FinishOLEObj()
+SwFEShell::GetAnchorId() const
+SwFEShell::GetAnchorObjDiff() const
+SwFEShell::GetAutoSum(rtl::OUString&) const
+SwFEShell::GetBestObject(bool, GotoObjFlags, bool, svx::ISdrObjectFilter const*)
+SwFEShell::GetBoxAlign() const
+SwFEShell::GetBoxBackground(std::unique_ptr<SvxBrushItem, std::default_delete<SvxBrushItem> >&) const
+SwFEShell::GetBoxDirection(std::unique_ptr<SvxFrameDirectionItem, std::default_delete<SvxFrameDirectionItem> >&) const
+SwFEShell::GetContentPos(Point const&, bool) const
+SwFEShell::GetCurMouseColNum(Point const&) const
+SwFEShell::GetCurMouseTabColNum(Point const&) const
+SwFEShell::GetCurOutColNum() const
+SwFEShell::GetCurTabColNum() const
+SwFEShell::GetDragMode() const
+SwFEShell::GetDrawObjGraphic(SotClipboardFormatId, Graphic&) const
+SwFEShell::GetFlyFrameAttr(SfxItemSet&) const
+SwFEShell::GetFlyFrameFormat() const
+SwFEShell::GetFlyFrameFormats(FlyCntType, bool)
+SwFEShell::GetFlyName() const
+SwFEShell::GetFlyNum(unsigned long, FlyCntType, bool) const
+SwFEShell::GetFormatFromAnyObj(Point const&) const
+SwFEShell::GetFormatFromObj(Point const&, SwRect**) const
+SwFEShell::GetGraphicDefaultSize() const
+SwFEShell::GetGrfAtPos(Point const&, rtl::OUString&, bool&) const
+SwFEShell::GetLayerId() const
+SwFEShell::GetMousePageDesc(Point const&) const
+SwFEShell::GetMouseTabCols(SwTabCols&, Point const&) const
+SwFEShell::GetMouseTabRows(SwTabCols&, Point const&) const
+SwFEShell::GetNumRuleNodeAtPos(Point const&)
+SwFEShell::GetObjAbsPos() const
+SwFEShell::GetObjAt(Point const&)
+SwFEShell::GetObjAttr(SfxItemSet&) const
+SwFEShell::GetObjCntType(Point const&, SdrObject*&) const
+SwFEShell::GetObjCntType(SdrObject const&)
+SwFEShell::GetObjCntTypeOfSelection() const
+SwFEShell::GetObjDescription() const
+SwFEShell::GetObjRect() const
+SwFEShell::GetObjSize() const
+SwFEShell::GetObjTitle() const
+SwFEShell::GetOleRef() const
+SwFEShell::GetPageNumber(Point const&) const
+SwFEShell::GetPageObjs(std::vector<SwFrameFormat*, std::allocator<SwFrameFormat*> >&)
+SwFEShell::GetPageOffset() const
+SwFEShell::GetPasteListeners()
+SwFEShell::GetRelativePagePosition(Point const&)
+SwFEShell::GetRowBackground(std::unique_ptr<SvxBrushItem, std::default_delete<SvxBrushItem> >&) const
+SwFEShell::GetRowSelectionFromTop() const
+SwFEShell::GetRowSplit() const
+SwFEShell::GetRowsToRepeat() const
+SwFEShell::GetSelFrameType() const
+SwFEShell::GetSelectedFrameFormat() const
+SwFEShell::GetSelectedOrCurrFlyFrame() const
+SwFEShell::GetShapeBackground() const
+SwFEShell::GetTabBackground(std::unique_ptr<SvxBrushItem, std::default_delete<SvxBrushItem> >&) const
+SwFEShell::GetTabBorders(SfxItemSet&) const
+SwFEShell::GetTabCols(SwTabCols&) const
+SwFEShell::GetTabRows(SwTabCols&) const
+SwFEShell::GetTableAttr(SfxItemSet&) const
+SwFEShell::GetVirtPageNum() const
+SwFEShell::GotoFly(rtl::OUString const&, FlyCntType, bool)
+SwFEShell::GroupSelection()
+SwFEShell::HasBoxSelection() const
+SwFEShell::HasTableAnyProtection(rtl::OUString const*, bool*)
+SwFEShell::HasWholeTabSelection() const
+SwFEShell::HideChainMarker()
+SwFEShell::Insert(rtl::OUString const&, rtl::OUString const&, Graphic const*, SfxItemSet const*)
+SwFEShell::InsertDrawObj(SdrObject&, Point const&)
+SwFEShell::InsertLabel(SwLabelType, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, bool, unsigned short, rtl::OUString const&, bool)
+SwFEShell::InsertObject(svt::EmbeddedObjectRef const&, SfxItemSet*)
+SwFEShell::IsAdjustCellWidthAllowed(bool) const
+SwFEShell::IsAlignPossible() const
+SwFEShell::IsColRightToLeft() const
+SwFEShell::IsDrawCreate() const
+SwFEShell::IsGroupAllowed() const
+SwFEShell::IsGroupSelected()
+SwFEShell::IsInsideSelectedObj(Point const&)
+SwFEShell::IsLastCellInRow() const
+SwFEShell::IsMouseTableRightToLeft(Point const&) const
+SwFEShell::IsNumLabel(Point const&, int)
+SwFEShell::IsObjSameLevelWithMarked(SdrObject const*) const
+SwFEShell::IsObjSelectable(Point const&)
+SwFEShell::IsObjSelected(SdrObject const&) const
+SwFEShell::IsRotationOfSwGrfNodePossible() const
+SwFEShell::IsSelContainsControl() const
+SwFEShell::IsShapeDefaultHoriTextDirR2L() const
+SwFEShell::IsTableVertical() const
+SwFEShell::IsURLGrfAtPos(Point const&, rtl::OUString*, rtl::OUString*, rtl::OUString*) const
+SwFEShell::IsUnGroupAllowed() const
+SwFEShell::IsVerticalModeAtNdAndPos(SwTextNode const&, Point const&)
+SwFEShell::MakeSelVisible()
+SwFEShell::MergeTab()
+SwFEShell::MirrorSelection(bool)
+SwFEShell::MoveAnchor(SwMove)
+SwFEShell::MoveMark(Point const&)
+SwFEShell::MoveObjectIfActive(svt::EmbeddedObjectRef&, Point const&)
+SwFEShell::ParkCursorInTab()
+SwFEShell::Paste(Graphic const&, rtl::OUString const&)
+SwFEShell::Paste(SvStream&, SwPasteSdr, Point const*)
+SwFEShell::ReplaceSdrObj(rtl::OUString const&, Graphic const*)
+SwFEShell::RequestObjectResize(SwRect const&, com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&)
+SwFEShell::ResetFlyFrameAttr(SfxItemSet const*)
+SwFEShell::SelFlyGrabCursor()
+SwFEShell::SelTableRowCol(Point const&, Point const*, bool)
+SwFEShell::SelectFlyFrame(SwFlyFrame&)
+SwFEShell::SelectionToBottom(bool)
+SwFEShell::SelectionToHeaven()
+SwFEShell::SelectionToHell()
+SwFEShell::SelectionToTop(bool)
+SwFEShell::SetBoxAlign(unsigned short)
+SwFEShell::SetBoxDirection(SvxFrameDirectionItem const&)
+SwFEShell::SetCalcFieldValueHdl(Outliner*)
+SwFEShell::SetChainMarker()
+SwFEShell::SetColRowWidthHeight(TableChgWidthHeightType, unsigned short)
+SwFEShell::SetDragMode(SdrDragMode)
+SwFEShell::SetDrawingAttr(SfxItemSet&)
+SwFEShell::SetFrameFormat(SwFrameFormat*, bool, Point const*)
+SwFEShell::SetLineEnds(SfxItemSet&, SdrObject const&, unsigned short)
+SwFEShell::SetMouseTabCols(SwTabCols const&, bool, Point const&)
+SwFEShell::SetMouseTabRows(SwTabCols const&, bool, Point const&)
+SwFEShell::SetNewPageOffset(unsigned short)
+SwFEShell::SetObjAttr(SfxItemSet const&)
+SwFEShell::SetObjDescription(rtl::OUString const&)
+SwFEShell::SetObjRect(SwRect const&)
+SwFEShell::SetObjTitle(rtl::OUString const&)
+SwFEShell::SetPageObjsNewPage(std::vector<SwFrameFormat*, std::allocator<SwFrameFormat*> >&)
+SwFEShell::SetPageOffset(unsigned short)
+SwFEShell::SetRowBackground(SvxBrushItem const&)
+SwFEShell::SetRowSplit(SwFormatRowSplit const&)
+SwFEShell::SetTabBackground(SvxBrushItem const&)
+SwFEShell::SetTabBorders(SfxItemSet const&)
+SwFEShell::SetTabCols(SwTabCols const&, bool)
+SwFEShell::SetTabLineStyle(Color const*, bool, editeng::SvxBorderLine const*)
+SwFEShell::SetTabRows(SwTabCols const&, bool)
+SwFEShell::SetTableAttr(SfxItemSet const&)
+SwFEShell::SetTableStyle(rtl::OUString const&)
+SwFEShell::ShellGetFocus()
+SwFEShell::ShouldObjectBeSelected(Point const&)
+SwFEShell::SplitTab(bool, unsigned short, bool)
+SwFEShell::StartCropImage()
+SwFEShell::SwFEShell(SwDoc&, vcl::Window*, SwViewOption const*)
+SwFEShell::SwFEShell(SwEditShell&, vcl::Window*)
+SwFEShell::ToggleHeaderFooterEdit()
+SwFEShell::UnGroupSelection()
+SwFEShell::UnProtectTables()
+SwFEShell::Unchain(SwFrameFormat&)
+SwFEShell::UpdateTableStyleFormatting(SwTableNode*, bool, rtl::OUString const*)
+SwFEShell::WhichMouseTabCol(Point const&) const
+SwFEShell::WizardGetFly()
+SwFEShell::makeItemSetFromFormatAnchor(SfxItemPool&, SwFormatAnchor const&)
+SwFEShell::~SwFEShell()
+SwField::ChangeFormat(unsigned int)
+SwField::ChgTyp(SwFieldType*)
+SwField::GetDescription() const
+SwField::GetFormula() const
+SwField::GetPar1() const
+SwField::GetPar2() const
+SwField::GetSubType() const
+SwField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwField::SetLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwField::SetPar1(rtl::OUString const&)
+SwField::SetPar2(rtl::OUString const&)
+SwField::SetSubType(unsigned short)
+SwField::SwField(SwFieldType*, unsigned int, o3tl::strong_int<unsigned short, LanguageTypeTag>, bool)
+SwField::dumpAsXml(_xmlTextWriter*) const
+SwFieldMgr::GetCurTypeId() const
+SwFieldMgr::GetDefaultFormat(SwFieldTypesEnum, bool, SvNumberFormatter*)
+SwFieldType::CollectPostIts(std::vector<SwFormatField*, std::allocator<SwFormatField*> >&, IDocumentRedlineAccess const&, bool)
+SwFieldType::FindFormatForPostItId(unsigned int) const
+SwFieldType::GatherDdeTables(std::vector<SwDDETable*, std::allocator<SwDDETable*> >&) const
+SwFieldType::GetFieldName_()
+SwFieldType::GetName() const
+SwFieldType::HasHiddenInformationNotes() const
+SwFieldType::PrintHiddenPara()
+SwFieldType::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwFieldType::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwFieldType::SwFieldType(SwFieldIds)
+SwFieldType::UpdateFields() const
+SwFieldType::dumpAsXml(_xmlTextWriter*) const
+SwFileNameField::Copy() const
+SwFileNameField::ExpandImpl(SwRootFrame const*) const
+SwFileNameField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwFileNameField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwFilterOptions::GetValues(unsigned short, char const**, unsigned long*)
+SwFilterOptions::ImplCommit()
+SwFilterOptions::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwFltAnchor::Clone(SfxItemPool*) const
+SwFltAnchor::SetFrameFormat(SwFrameFormat*)
+SwFltAnchor::SwFltAnchor(SwFltAnchor const&)
+SwFltAnchor::operator==(SfxPoolItem const&) const
+SwFltBookmark::Clone(SfxItemPool*) const
+SwFltBookmark::operator==(SfxPoolItem const&) const
+SwFltRDFMark::Clone(SfxItemPool*) const
+SwFltRDFMark::GetAttributes() const
+SwFltRDFMark::operator==(SfxPoolItem const&) const
+SwFltRedline::Clone(SfxItemPool*) const
+SwFltRedline::operator==(SfxPoolItem const&) const
+SwFltTOX::Clone(SfxItemPool*) const
+SwFltTOX::operator==(SfxPoolItem const&) const
+SwFlyDrawContact::CreateNewRef(SwFlyFrame*, SwFlyFrameFormat*, SwFrame const&)
+SwFlyDrawContact::GetAnchoredObj(SdrObject const*) const
+SwFlyDrawContact::GetAnchoredObj(SdrObject*)
+SwFlyDrawContact::GetAnchoredObjs(std::vector<SwAnchoredObject*, std::allocator<SwAnchoredObject*> >&) const
+SwFlyDrawContact::GetOrdNumForNewRef(SwFlyFrame const*, SwFrame const&)
+SwFlyDrawContact::MoveObjToInvisibleLayer(SdrObject*)
+SwFlyDrawContact::MoveObjToVisibleLayer(SdrObject*)
+SwFlyDrawContact::SwClientNotify(SwModify const&, SfxHint const&)
+SwFlyDrawContact::SwFlyDrawContact(SwFlyFrameFormat*, SdrModel&)
+SwFlyDrawContact::~SwFlyDrawContact()
+SwFlyFrame::Calc(OutputDevice*) const
+SwFlyFrame::CalcContentHeight(SwBorderAttrs const*, long, long)
+SwFlyFrame::CalcRel(SwFormatFrameSize const&) const
+SwFlyFrame::Chain(SwFrame*)
+SwFlyFrame::ChainFrames(SwFlyFrame*, SwFlyFrame*)
+SwFlyFrame::CheckDirection(bool)
+SwFlyFrame::ChgRelPos(Point const&)
+SwFlyFrame::ChgSize(Size const&)
+SwFlyFrame::Cut()
+SwFlyFrame::DeleteCnt()
+SwFlyFrame::DestroyImpl()
+SwFlyFrame::DynCastFlyFrame()
+SwFlyFrame::DynCastFlyFrame() const
+SwFlyFrame::FindChainNeighbour(SwFrameFormat const&, SwFrame*)
+SwFlyFrame::FindLastLower()
+SwFlyFrame::FinitDrawObj()
+SwFlyFrame::Format(OutputDevice*, SwBorderAttrs const*)
+SwFlyFrame::FrameSizeChg(SwFormatFrameSize const&)
+SwFlyFrame::GetAnchorFromPoolItem(SfxPoolItem const&)
+SwFlyFrame::GetAnchoredObjects(std::vector<SwAnchoredObject*, std::allocator<SwAnchoredObject*> >&, SwFormat const&)
+SwFlyFrame::GetContour(tools::PolyPolygon&, bool) const
+SwFlyFrame::GetFormat()
+SwFlyFrame::GetFormat() const
+SwFlyFrame::GetFrameFormat()
+SwFlyFrame::GetFrameFormat() const
+SwFlyFrame::GetInfo(SfxPoolItem&) const
+SwFlyFrame::GetModelPositionForViewPoint(SwPosition*, Point&, SwCursorMoveState*, bool) const
+SwFlyFrame::GetObjBoundRect() const
+SwFlyFrame::GetObjRect() const
+SwFlyFrame::GetVirtDrawObj()
+SwFlyFrame::GetVirtDrawObj() const
+SwFlyFrame::Grow_(long, bool)
+SwFlyFrame::InitDrawObj(SwFrame const&)
+SwFlyFrame::InsertCnt()
+SwFlyFrame::InsertColumns()
+SwFlyFrame::InvalidateContentPos()
+SwFlyFrame::InvalidateObjPos()
+SwFlyFrame::Invalidate_(SwPageFrame const*)
+SwFlyFrame::IsBackgroundTransparent() const
+SwFlyFrame::IsFormatPossible() const
+SwFlyFrame::IsLowerOf(SwLayoutFrame const*) const
+SwFlyFrame::IsPaint(SdrObject*, SwViewShell const*)
+SwFlyFrame::MakeContentPos(SwBorderAttrs const&)
+SwFlyFrame::MakeObjPos()
+SwFlyFrame::MakePrtArea(SwBorderAttrs const&)
+SwFlyFrame::NotifyDrawObj()
+SwFlyFrame::PaintDecorators() const
+SwFlyFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const
+SwFlyFrame::RegisterAtCorrectPage()
+SwFlyFrame::RegisterAtPage(SwPageFrame&)
+SwFlyFrame::SelectionHasChanged(SwFEShell*)
+SwFlyFrame::SetObjLeft_(long)
+SwFlyFrame::SetObjTop_(long)
+SwFlyFrame::Shrink_(long, bool)
+SwFlyFrame::SwClientNotify(SwModify const&, SfxHint const&)
+SwFlyFrame::SwFlyFrame(SwFlyFrameFormat*, SwFrame*, SwFrame*)
+SwFlyFrame::Unchain()
+SwFlyFrame::UnchainFrames(SwFlyFrame*, SwFlyFrame*)
+SwFlyFrame::UpdateAttr_(SfxPoolItem const*, SfxPoolItem const*, SwFlyFrameInvFlags&, SwAttrSetChg*, SwAttrSetChg*)
+SwFlyFrame::UpdateUnfloatButton(SwWrtShell*, bool) const
+SwFlyFrame::getIDocumentDrawModelAccess()
+SwFlyFrame::~SwFlyFrame()
+SwFlyFrameAttrMgr::DelAttr(unsigned short)
+SwFlyFrameAttrMgr::InsertFlyFrame()
+SwFlyFrameAttrMgr::InsertFlyFrame(RndStdIds, Point const&, Size const&)
+SwFlyFrameAttrMgr::SetAbsPos(Point const&)
+SwFlyFrameAttrMgr::SetAnchor(RndStdIds)
+SwFlyFrameAttrMgr::SetAttrSet(SfxItemSet const&)
+SwFlyFrameAttrMgr::SetCol(SwFormatCol const&)
+SwFlyFrameAttrMgr::SetHeightSizeType(SwFrameSize)
+SwFlyFrameAttrMgr::SetHorzOrientation(short)
+SwFlyFrameAttrMgr::SetLRSpace(long, long)
+SwFlyFrameAttrMgr::SetPos(Point const&)
+SwFlyFrameAttrMgr::SetRotation(o3tl::strong_int<short, FractionTag<10> >, o3tl::strong_int<short, FractionTag<10> >, Size const&)
+SwFlyFrameAttrMgr::SetSize(Size const&)
+SwFlyFrameAttrMgr::SetULSpace(long, long)
+SwFlyFrameAttrMgr::SetVertOrientation(short)
+SwFlyFrameAttrMgr::UpdateAttrMgr()
+SwFlyFrameAttrMgr::UpdateFlyFrame()
+SwFlyFrameFormat::GetAnchoredObj() const
+SwFlyFrameFormat::GetFrame(Point const*) const
+SwFlyFrameFormat::GetInfo(SfxPoolItem&) const
+SwFlyFrameFormat::IsBackgroundBrushInherited() const
+SwFlyFrameFormat::IsBackgroundTransparent() const
+SwFlyFrameFormat::MakeGraphic(ImageMap*, unsigned int, std::optional<Size> const&)
+SwFlyFrameFormat::SetObjDescription(rtl::OUString const&, bool)
+SwFlyFrameFormat::SetObjTitle(rtl::OUString const&, bool)
+SwFlyFrameFormat::SwFlyFrameFormat(SwAttrPool&, rtl::OUString const&, SwFrameFormat*)
+SwFlyFrameFormat::~SwFlyFrameFormat()
+SwFootnoteInfo::operator=(SwFootnoteInfo const&)
+SwForm::GetFormMaxLevel(TOXTypes)
+SwForm::GetFormText()
+SwFormat::CopyAttrs(SwFormat const&)
+SwFormat::DelDiffs(SfxItemSet const&)
+SwFormat::IsBackgroundTransparent() const
+SwFormat::RemoveAllUnos()
+SwFormat::ResetAllFormatAttr()
+SwFormat::ResetFormatAttr(unsigned short, unsigned short)
+SwFormat::SetGrabBagItem(com::sun::star::uno::Any const&)
+SwFormat::SetName(rtl::OUString const&, bool)
+SwFormat::SetPageFormatToDefault()
+SwFormat::SwClientNotify(SwModify const&, SfxHint const&)
+SwFormat::SwFormat(SwAttrPool&, char const*, WhichRangesContainer const&, SwFormat*, unsigned short)
+SwFormat::SwFormat(SwAttrPool&, rtl::OUString const&, WhichRangesContainer const&, SwFormat*, unsigned short)
+SwFormat::SwFormat(SwFormat const&)
+SwFormat::getIDocumentChartDataProviderAccess()
+SwFormat::getIDocumentDrawModelAccess()
+SwFormat::getIDocumentDrawModelAccess() const
+SwFormat::getIDocumentFieldsAccess()
+SwFormat::getIDocumentLayoutAccess()
+SwFormat::getIDocumentLayoutAccess() const
+SwFormat::getIDocumentTimerAccess()
+SwFormat::getSdrAllFillAttributesHelper() const
+SwFormat::operator=(SwFormat const&)
+SwFormat::supportsFullDrawingLayerFillAttributeSet() const
+SwFormat::~SwFormat()
+SwFormatAnchor::Clone(SfxItemPool*) const
+SwFormatAnchor::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatAnchor::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatAnchor::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatAnchor::dumpAsXml(_xmlTextWriter*) const
+SwFormatAnchor::operator=(SwFormatAnchor const&)
+SwFormatAnchor::operator==(SfxPoolItem const&) const
+SwFormatChain::Clone(SfxItemPool*) const
+SwFormatChain::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatChain::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatChain::SwFormatChain(SwFormatChain const&)
+SwFormatChain::operator==(SfxPoolItem const&) const
+SwFormatCharFormat::Clone(SfxItemPool*) const
+SwFormatCharFormat::GetInfo(SfxPoolItem&) const
+SwFormatCharFormat::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatCharFormat::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatCharFormat::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatCharFormat::SwClientNotify(SwModify const&, SfxHint const&)
+SwFormatCharFormat::SwFormatCharFormat(SwFormatCharFormat const&)
+SwFormatCharFormat::operator==(SfxPoolItem const&) const
+SwFormatCol::Clone(SfxItemPool*) const
+SwFormatCol::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatCol::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatCol::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatCol::SetGutterWidth(unsigned short, unsigned short)
+SwFormatCol::dumpAsXml(_xmlTextWriter*) const
+SwFormatCol::operator==(SfxPoolItem const&) const
+SwFormatDrop::Clone(SfxItemPool*) const
+SwFormatDrop::CreateDefault()
+SwFormatDrop::GetInfo(SfxPoolItem&) const
+SwFormatDrop::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatDrop::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatDrop::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatEditInReadonly::Clone(SfxItemPool*) const
+SwFormatEditInReadonly::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatEditInReadonly::dumpAsXml(_xmlTextWriter*) const
+SwFormatEndAtTextEnd::Clone(SfxItemPool*) const
+SwFormatField::ClearTextField()
+SwFormatField::GetInfo(SfxPoolItem&) const
+SwFormatField::InvalidateField()
+SwFormatField::IsFieldInDoc() const
+SwFormatField::IsProtect() const
+SwFormatField::SetField(std::unique_ptr<SwField, std::default_delete<SwField> >)
+SwFormatField::SetTextField(SwTextField&)
+SwFormatField::SwClientNotify(SwModify const&, SfxHint const&)
+SwFormatField::SwFormatField(SwFormatField const&)
+SwFormatField::SwFormatField(unsigned short)
+SwFormatField::UpdateTextNode(SfxPoolItem const*, SfxPoolItem const*)
+SwFormatField::dumpAsXml(_xmlTextWriter*) const
+SwFormatField::operator==(SfxPoolItem const&) const
+SwFormatFollowTextFlow::Clone(SfxItemPool*) const
+SwFormatFollowTextFlow::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatFollowTextFlow::dumpAsXml(_xmlTextWriter*) const
+SwFormatFooter::Clone(SfxItemPool*) const
+SwFormatFooter::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatFooter::RegisterToFormat(SwFormat&)
+SwFormatFooter::SwFormatFooter(SwFormatFooter const&)
+SwFormatFooter::SwFormatFooter(SwFrameFormat*)
+SwFormatFooter::operator==(SfxPoolItem const&) const
+SwFormatFootnote::Clone(SfxItemPool*) const
+SwFormatFootnote::GetFootnoteText(SwRootFrame const&) const
+SwFormatFootnote::GetViewNumStr(SwDoc const&, SwRootFrame const*, bool) const
+SwFormatFootnote::InvalidateFootnote()
+SwFormatFootnote::SetEndNote(bool)
+SwFormatFootnote::SwClientNotify(SwModify const&, SfxHint const&)
+SwFormatFootnote::getAnchor(SwDoc&) const
+SwFormatFootnote::operator==(SfxPoolItem const&) const
+SwFormatFootnoteAtTextEnd::Clone(SfxItemPool*) const
+SwFormatFootnoteEndAtTextEnd::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatFootnoteEndAtTextEnd::GetValueCount() const
+SwFormatFootnoteEndAtTextEnd::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatFootnoteEndAtTextEnd::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatFootnoteEndAtTextEnd::operator==(SfxPoolItem const&) const
+SwFormatFrameSize::Clone(SfxItemPool*) const
+SwFormatFrameSize::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatFrameSize::HasMetrics() const
+SwFormatFrameSize::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatFrameSize::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatFrameSize::ScaleMetrics(long, long)
+SwFormatFrameSize::dumpAsXml(_xmlTextWriter*) const
+SwFormatHeader::Clone(SfxItemPool*) const
+SwFormatHeader::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatHeader::RegisterToFormat(SwFormat&)
+SwFormatHeader::SwFormatHeader(SwFormatHeader const&)
+SwFormatHeader::SwFormatHeader(SwFrameFormat*)
+SwFormatHeader::operator==(SfxPoolItem const&) const
+SwFormatHoriOrient::Clone(SfxItemPool*) const
+SwFormatHoriOrient::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatHoriOrient::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatHoriOrient::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatHoriOrient::dumpAsXml(_xmlTextWriter*) const
+SwFormatINetFormat::Clone(SfxItemPool*) const
+SwFormatINetFormat::CreateDefault()
+SwFormatINetFormat::GetMacro(SvMacroItemId) const
+SwFormatINetFormat::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatINetFormat::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatINetFormat::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatINetFormat::SetMacro(SvMacroItemId, SvxMacro const&)
+SwFormatINetFormat::SwFormatINetFormat()
+SwFormatINetFormat::SwFormatINetFormat(SwFormatINetFormat const&)
+SwFormatINetFormat::operator==(SfxPoolItem const&) const
+SwFormatLayoutSplit::Clone(SfxItemPool*) const
+SwFormatLayoutSplit::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatLineNumber::Clone(SfxItemPool*) const
+SwFormatLineNumber::CreateDefault()
+SwFormatLineNumber::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatLineNumber::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatLineNumber::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatLineNumber::operator==(SfxPoolItem const&) const
+SwFormatNoBalancedColumns::Clone(SfxItemPool*) const
+SwFormatNoBalancedColumns::dumpAsXml(_xmlTextWriter*) const
+SwFormatPageDesc::Clone(SfxItemPool*) const
+SwFormatPageDesc::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatPageDesc::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatPageDesc::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatPageDesc::RegisterToPageDesc(SwPageDesc&)
+SwFormatPageDesc::SwClientNotify(SwModify const&, SfxHint const&)
+SwFormatPageDesc::dumpAsXml(_xmlTextWriter*) const
+SwFormatPageDesc::operator=(SwFormatPageDesc const&)
+SwFormatPageDesc::operator==(SfxPoolItem const&) const
+SwFormatRowSplit::Clone(SfxItemPool*) const
+SwFormatRowSplit::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatRuby::Clone(SfxItemPool*) const
+SwFormatRuby::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatRuby::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatRuby::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatRuby::SwFormatRuby(SwFormatRuby const&)
+SwFormatRuby::operator=(SwFormatRuby const&)
+SwFormatRuby::operator==(SfxPoolItem const&) const
+SwFormatSurround::Clone(SfxItemPool*) const
+SwFormatSurround::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatSurround::GetValueCount() const
+SwFormatSurround::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatSurround::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatSurround::dumpAsXml(_xmlTextWriter*) const
+SwFormatURL::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatURL::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatURL::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatURL::SwFormatURL(SwFormatURL const&)
+SwFormatURL::operator==(SfxPoolItem const&) const
+SwFormatVertOrient::Clone(SfxItemPool*) const
+SwFormatVertOrient::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwFormatVertOrient::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatVertOrient::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatVertOrient::dumpAsXml(_xmlTextWriter*) const
+SwFormatWrapInfluenceOnObjPos::Clone(SfxItemPool*) const
+SwFormatWrapInfluenceOnObjPos::GetOverlapVertOffset() const
+SwFormatWrapInfluenceOnObjPos::GetWrapInfluenceOnObjPos(bool) const
+SwFormatWrapInfluenceOnObjPos::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwFormatWrapInfluenceOnObjPos::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwFormatWrapInfluenceOnObjPos::SetOverlapVertOffset(long)
+SwFormatWrapInfluenceOnObjPos::SetWrapInfluenceOnObjPos(short)
+SwFormatWrapInfluenceOnObjPos::dumpAsXml(_xmlTextWriter*) const
+SwFormulaField::GetExpandedFormula() const
+SwFormulaField::SetExpandedFormula(rtl::OUString const&)
+SwFormulaField::SwFormulaField(SwFormulaField const&)
+SwFormulaField::SwFormulaField(SwValueFieldType*, unsigned int, double)
+SwFrame::ActionOnInvalidation(SwFrame::InvalidationType)
+SwFrame::AdjustNeighbourhood(long, bool)
+SwFrame::AppendDrawObj(SwAnchoredObject&)
+SwFrame::AppendFly(SwFlyFrame*)
+SwFrame::Calc(OutputDevice*) const
+SwFrame::CheckDir(SvxFrameDirection, bool, bool, bool)
+SwFrame::CheckDirChange()
+SwFrame::CheckDirection(bool)
+SwFrame::CheckPageDescs(SwPageFrame*, bool, SwPageFrame**)
+SwFrame::ChgSize(Size const&)
+SwFrame::CreateProcessor2D() const
+SwFrame::DestroyFrame(SwFrame*)
+SwFrame::DestroyImpl()
+SwFrame::DynCastTextFrame()
+SwFrame::DynCastTextFrame() const
+SwFrame::FillSelection(SwSelectionList&, SwRect const&) const
+SwFrame::FindColFrame()
+SwFrame::FindFooterOrHeader()
+SwFrame::FindFootnoteBossFrame(bool)
+SwFrame::FindNextCnt(bool)
+SwFrame::FindNextCnt(bool) const
+SwFrame::FindNextCnt_(bool)
+SwFrame::FindNext_()
+SwFrame::FindPrevCnt()
+SwFrame::FindPrevCnt() const
+SwFrame::FindPrevCnt_()
+SwFrame::FindPrev_()
+SwFrame::FindRowFrame()
+SwFrame::Format(OutputDevice*, SwBorderAttrs const*)
+SwFrame::GetAttrSet() const
+SwFrame::GetBackgroundBrush(std::shared_ptr<drawinglayer::attribute::SdrAllFillAttributesHelper>&, SvxBrushItem const*&, std::optional<Color>&, SwRect&, bool, bool) const
+SwFrame::GetBottomMargin() const
+SwFrame::GetBreakItem() const
+SwFrame::GetCharRect(SwRect&, SwPosition const&, SwCursorMoveState*, bool) const
+SwFrame::GetFrameAnchorPos(bool) const
+SwFrame::GetIndNext_()
+SwFrame::GetIndPrev_() const
+SwFrame::GetLeaf(MakePageType, bool)
+SwFrame::GetLeaf(MakePageType, bool, SwFrame const*) const
+SwFrame::GetLeftMargin() const
+SwFrame::GetLower() const
+SwFrame::GetModelPositionForViewPoint(SwPosition*, Point&, SwCursorMoveState*, bool) const
+SwFrame::GetNextCellLeaf()
+SwFrame::GetNextFootnoteLeaf(MakePageType)
+SwFrame::GetNextLeaf(MakePageType)
+SwFrame::GetNextSctLeaf(MakePageType)
+SwFrame::GetPageDescItem() const
+SwFrame::GetPhyPageNum() const
+SwFrame::GetPrevCellLeaf()
+SwFrame::GetPrevFootnoteLeaf(MakePageType)
+SwFrame::GetPrevLeaf()
+SwFrame::GetPrevSctLeaf()
+SwFrame::GetPrtBottom() const
+SwFrame::GetPrtLeft() const
+SwFrame::GetPrtRight() const
+SwFrame::GetPrtTop() const
+SwFrame::GetRelPos() const
+SwFrame::GetRightMargin() const
+SwFrame::GetTopMargin() const
+SwFrame::Grow(long, bool, bool)
+SwFrame::ImplFindBodyFrame() const
+SwFrame::ImplFindFlyFrame()
+SwFrame::ImplFindFootnoteFrame()
+SwFrame::ImplFindPageFrame()
+SwFrame::ImplFindSctFrame()
+SwFrame::ImplFindTabFrame()
+SwFrame::ImplGetNextLayoutLeaf(bool) const
+SwFrame::ImplInvalidateLineNum()
+SwFrame::ImplInvalidateNextPos(bool)
+SwFrame::ImplInvalidatePos()
+SwFrame::ImplInvalidatePrt()
+SwFrame::ImplInvalidateSize()
+SwFrame::InsertBefore(SwLayoutFrame*, SwFrame*)
+SwFrame::InsertBehind(SwLayoutFrame*, SwFrame*)
+SwFrame::InsertGroupBefore(SwFrame*, SwFrame*, SwFrame*)
+SwFrame::InsertPage(SwPageFrame*, bool)
+SwFrame::InvalidateNextPrtArea()
+SwFrame::InvalidateObjs(bool)
+SwFrame::InvalidatePage(SwPageFrame const*) const
+SwFrame::InvalidationAllowed(SwFrame::InvalidationType) const
+SwFrame::IsCollapse() const
+SwFrame::IsCoveredCell() const
+SwFrame::IsFootnoteAllowed() const
+SwFrame::IsInBalancedSection() const
+SwFrame::IsInCoveredCell() const
+SwFrame::IsInFollowFlowRow() const
+SwFrame::IsInSplitTableRow() const
+SwFrame::IsLeaveUpperAllowed() const
+SwFrame::IsMoveable(SwLayoutFrame const*) const
+SwFrame::IsProtected() const
+SwFrame::KnowsFormat(SwFormat const&) const
+SwFrame::MakeBelowPos(SwFrame const*, SwFrame const*, bool)
+SwFrame::MakeLeftPos(SwFrame const*, SwFrame const*, bool)
+SwFrame::MakePos()
+SwFrame::MakeRightPos(SwFrame const*, SwFrame const*, bool)
+SwFrame::OnFirstPage() const
+SwFrame::OptPrepareMake()
+SwFrame::PaintBaBo(SwRect const&, SwPageFrame const*, bool) const
+SwFrame::PaintBorderLine(SwRect const&, SwRect const&, SwPageFrame const*, Color const*, SvxBorderLineStyle) const
+SwFrame::PaintShadow(SwRect const&, SwRect&, SwBorderAttrs const&) const
+SwFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const
+SwFrame::PaintSwFrameBackground(SwRect const&, SwPageFrame const*, SwBorderAttrs const&, bool, bool, bool) const
+SwFrame::PaintSwFrameShadowAndBorder(SwRect const&, SwPageFrame const*, SwBorderAttrs const&) const
+SwFrame::Prepare(PrepareHint, void const*, bool)
+SwFrame::PrepareCursor()
+SwFrame::PrepareMake(OutputDevice*)
+SwFrame::ProcessPrimitives(drawinglayer::primitive2d::Primitive2DContainer const&) const
+SwFrame::RegisterToFormat(SwFormat&)
+SwFrame::ReinitializeFrameSizeAttrFlags()
+SwFrame::RemoveDrawObj(SwAnchoredObject&)
+SwFrame::RemoveFly(SwFlyFrame*)
+SwFrame::RemoveFromLayout()
+SwFrame::Retouch(SwPageFrame const*, SwRect const&) const
+SwFrame::SetDirFlags(bool)
+SwFrame::SetDrawObjsAsDeleted(bool)
+SwFrame::SetInfFlags()
+SwFrame::SetLeftRightMargins(long, long)
+SwFrame::SetMaxBottom(long)
+SwFrame::SetMaxRight(long)
+SwFrame::SetMinLeft(long)
+SwFrame::SetRightLeftMargins(long, long)
+SwFrame::SetTopBottomMargins(long, long)
+SwFrame::Shrink(long, bool, bool)
+SwFrame::SwClientNotify(SwModify const&, SfxHint const&)
+SwFrame::SwFrame(sw::BroadcastingModify*, SwFrame*)
+SwFrame::UnionFrame(bool) const
+SwFrame::UpdateAttrFrame(SfxPoolItem const*, SfxPoolItem const*, SwFrameInvFlags&)
+SwFrame::ValidateThisAndAllLowers(unsigned short)
+SwFrame::WannaRightPage() const
+SwFrame::WrongPageDesc(SwPageFrame*)
+SwFrame::dumpAsXml(_xmlTextWriter*) const
+SwFrame::dumpAsXmlAttributes(_xmlTextWriter*) const
+SwFrame::dumpChildrenAsXml(_xmlTextWriter*) const
+SwFrame::dumpInfosAsXml(_xmlTextWriter*) const
+SwFrame::dumpTopMostAsXml(_xmlTextWriter*) const
+SwFrame::getIDocumentDrawModelAccess()
+SwFrame::getSdrAllFillAttributesHelper() const
+SwFrame::supportsFullDrawingLayerFillAttributeSet() const
+SwFrame::~SwFrame()
+SwFrameExample::CalcBoundRect_Impl(OutputDevice const&, tools::Rectangle&)
+SwFrameExample::DrawInnerFrame_Impl(OutputDevice&, tools::Rectangle const&, Color const&, Color const&)
+SwFrameExample::InitAllRects_Impl(OutputDevice&)
+SwFrameExample::InitColors_Impl()
+SwFrameExample::Paint(OutputDevice&, tools::Rectangle const&)
+SwFrameExample::SetDrawingArea(weld::DrawingArea*)
+SwFrameExample::StyleUpdated()
+SwFrameFormat::DelFrames()
+SwFrameFormat::GetDescription() const
+SwFrameFormat::GetIMapObject(Point const&, SwFlyFrame const*) const
+SwFrameFormat::GetLayoutDir() const
+SwFrameFormat::GetPositionLayoutDir() const
+SwFrameFormat::IsLowerOf(SwFrameFormat const&) const
+SwFrameFormat::MakeFrames()
+SwFrameFormat::MakeGraphic(ImageMap*, unsigned int, std::optional<Size> const&)
+SwFrameFormat::MoveTableBox(SwTableBox&, SwFrameFormat const*)
+SwFrameFormat::RegisterToFormat(SwFormat&)
+SwFrameFormat::SetLayoutDir(SwFrameFormat::tLayoutDir)
+SwFrameFormat::SetName(rtl::OUString const&, bool)
+SwFrameFormat::SetPositionLayoutDir(short)
+SwFrameFormat::SwClientNotify(SwModify const&, SfxHint const&)
+SwFrameFormat::SwFrameFormat(SwAttrPool&, char const*, SwFrameFormat*, unsigned short, WhichRangesContainer const&)
+SwFrameFormat::SwFrameFormat(SwAttrPool&, rtl::OUString const&, SwFrameFormat*, unsigned short, WhichRangesContainer const&)
+SwFrameFormat::dumpAsXml(_xmlTextWriter*) const
+SwFrameFormat::getSdrAllFillAttributesHelper() const
+SwFrameFormat::supportsFullDrawingLayerFillAttributeSet() const
+SwFrameFormat::~SwFrameFormat()
+SwFrameFormats::ContainsFormat(SwFrameFormat const&) const
+SwFrameFormats::DeleteAndDestroyAll(bool)
+SwFrameFormats::FindFormatByName(rtl::OUString const&) const
+SwFrameFormats::IsAlive(SwFrameFormat const*) const
+SwFrameFormats::SwFrameFormats()
+SwFrameFormats::dumpAsXml(_xmlTextWriter*, char const*) const
+SwFrameFormats::erase(SwFrameFormat* const&)
+SwFrameFormats::erase(boost::multi_index::detail::rnd_node_iterator<boost::multi_index::detail::random_access_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<SwFrameFormat*, std::allocator<SwFrameFormat*> > > > > const&)
+SwFrameFormats::erase(unsigned long)
+SwFrameFormats::findByTypeAndName(unsigned short, rtl::OUString const&) const
+SwFrameFormats::findRangeByName(rtl::OUString const&) const
+SwFrameFormats::newDefault(SwFrameFormat* const&)
+SwFrameFormats::newDefault(boost::multi_index::detail::rnd_node_iterator<boost::multi_index::detail::random_access_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<SwFrameFormat*, std::allocator<SwFrameFormat*> > > > > const&)
+SwFrameFormats::push_back(SwFrameFormat* const&)
+SwFrameFormats::~SwFrameFormats()
+SwGammaGrf::Clone(SfxItemPool*) const
+SwGammaGrf::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwGammaGrf::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwGammaGrf::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwGammaGrf::operator==(SfxPoolItem const&) const
+SwGetExpField::ChangeExpansion(SwFrame const&, SwTextField const&)
+SwGetExpField::ChgExpStr(rtl::OUString const&, SwRootFrame const*)
+SwGetExpField::Copy() const
+SwGetExpField::ExpandImpl(SwRootFrame const*) const
+SwGetExpField::GetFieldName() const
+SwGetExpField::GetPar2() const
+SwGetExpField::GetSubType() const
+SwGetExpField::GetValue(SwRootFrame const*) const
+SwGetExpField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwGetExpField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwGetExpField::SetLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwGetExpField::SetPar2(rtl::OUString const&)
+SwGetExpField::SetSubType(unsigned short)
+SwGetExpField::SetValue(double const&)
+SwGetExpField::SetValue(double const&, SwRootFrame const*)
+SwGetRefField::ConvertProgrammaticToUIName()
+SwGetRefField::Copy() const
+SwGetRefField::ExpandImpl(SwRootFrame const*) const
+SwGetRefField::GetDescription() const
+SwGetRefField::GetFieldName() const
+SwGetRefField::GetPar1() const
+SwGetRefField::GetSubType() const
+SwGetRefField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwGetRefField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwGetRefField::SetExpand(rtl::OUString const&)
+SwGetRefField::SetPar1(rtl::OUString const&)
+SwGetRefField::UpdateField(SwTextField const*)
+SwGlossaries::DelGroupDoc(rtl::OUString const&)
+SwGlossaries::EditGroupDoc(rtl::OUString const&, rtl::OUString const&, bool)
+SwGlossaries::FindGroupName(rtl::OUString&)
+SwGlossaries::GetAutoTextEntry(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SwGlossaries::GetAutoTextGroup(rtl::OUString const&)
+SwGlossaries::GetCompleteGroupName(rtl::OUString const&)
+SwGlossaries::GetExtension()
+SwGlossaries::GetGroupCnt()
+SwGlossaries::GetGroupName(unsigned long)
+SwGlossaries::GetGroupTitle(rtl::OUString const&)
+SwGlossaries::NewGroupDoc(rtl::OUString&, rtl::OUString const&)
+SwGlossaries::RenameGroupDoc(rtl::OUString const&, rtl::OUString&, rtl::OUString const&)
+SwGlossaries::SwGlossaries()
+SwGlossaries::~SwGlossaries()
+SwGlossaryHdl::ExpandGlossary(weld::Window*)
+SwGlossaryHdl::FindGroupName(rtl::OUString&)
+SwGlossaryHdl::GlossaryDlg()
+SwGlossaryHdl::SwGlossaryHdl(SfxViewFrame*, SwWrtShell*)
+SwGlossaryHdl::~SwGlossaryHdl()
+SwGrfNode::ApplyInputStream(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, bool)
+SwGrfNode::GetGraphicAttr(GraphicAttr&, SwFrame const*) const
+SwGrfNode::GetReplacementGrfObj() const
+SwGrfNode::InsertLink(rtl::OUString const&, rtl::OUString const&)
+SwGrfNode::IsAsyncRetrieveInputStreamPossible() const
+SwGrfNode::IsTransparent() const
+SwGrfNode::MakeCopy(SwDoc&, SwNodeIndex const&, bool) const
+SwGrfNode::ReRead(rtl::OUString const&, rtl::OUString const&, Graphic const*, bool)
+SwGrfNode::ReleaseLink()
+SwGrfNode::RestorePersistentData()
+SwGrfNode::SavePersistentData()
+SwGrfNode::ScaleImageMap()
+SwGrfNode::SetGraphic(Graphic const&)
+SwGrfNode::SetTwipSize(Size const&)
+SwGrfNode::SwGrfNode(SwNodeIndex const&, GraphicObject const&, SwGrfFormatColl*, SwAttrSet const*)
+SwGrfNode::SwGrfNode(SwNodeIndex const&, rtl::OUString const&, rtl::OUString const&, Graphic const*, SwGrfFormatColl*, SwAttrSet const*)
+SwGrfNode::SwGrfNode(SwNodeIndex const&, rtl::OUString const&, rtl::OUString const&, SwGrfFormatColl*, SwAttrSet const*)
+SwGrfNode::SwapIn(bool)
+SwGrfNode::TriggerAsyncRetrieveInputStream()
+SwGrfNode::TriggerGraphicArrived()
+SwGrfNode::UpdateLinkWithInputStream()
+SwGrfNode::onGraphicChanged()
+SwGrfNode::~SwGrfNode()
+SwHHCWrapper::ChangeText(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<int> const*, SwPaM*)
+SwHHCWrapper::ChangeText_impl(rtl::OUString const&, bool)
+SwHHCWrapper::ConvContinue_impl(SwConversionArgs*)
+SwHHCWrapper::ConvEnd_impl(SwConversionArgs const*)
+SwHHCWrapper::ConvNext_impl()
+SwHHCWrapper::ConvStart_impl(SwConversionArgs*, SvxSpellArea)
+SwHHCWrapper::FindConvText_impl()
+SwHHCWrapper::GetNextPortion(rtl::OUString&, o3tl::strong_int<unsigned short, LanguageTypeTag>&, bool)
+SwHHCWrapper::HandleNewUnit(int, int)
+SwHHCWrapper::HasRubySupport() const
+SwHHCWrapper::ReplaceUnit(int, int, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<int> const&, editeng::HangulHanjaConversion::ReplacementAction, o3tl::strong_int<unsigned short, LanguageTypeTag>*)
+SwHHCWrapper::SelectNewUnit_impl(int, int)
+SwHTMLWriter::AddLinkTarget(rtl::OUString const&)
+SwHTMLWriter::ChangeParaToken(HtmlTokenId)
+SwHTMLWriter::ClearNextNumInfo()
+SwHTMLWriter::CollectFlyFrames()
+SwHTMLWriter::CollectLinkTargets()
+SwHTMLWriter::FillNextNumInfo()
+SwHTMLWriter::GetCSS1ScriptForScriptType(unsigned short)
+SwHTMLWriter::GetCSS1Selector(SwFormat const*, rtl::OString&, rtl::OUString&, unsigned short&, rtl::OUString*)
+SwHTMLWriter::GetControls()
+SwHTMLWriter::GetDefListLvl(rtl::OUString const&, unsigned short)
+SwHTMLWriter::GetEEAttrsFromDrwObj(SfxItemSet&, SdrObject const*)
+SwHTMLWriter::GetFootEndNoteSym(SwFormatFootnote const&)
+SwHTMLWriter::GetHTMLControl(SwDrawFrameFormat const&)
+SwHTMLWriter::GetHTMLDirection(SfxItemSet const&) const
+SwHTMLWriter::GetHTMLDirection(SvxFrameDirection) const
+SwHTMLWriter::GetHTMLFontSize(unsigned int) const
+SwHTMLWriter::GetIndentString(unsigned short)
+SwHTMLWriter::GetLangWhichIdFromScript(unsigned short)
+SwHTMLWriter::GetMarqueeTextObj(SwDrawFrameFormat const&)
+SwHTMLWriter::GetNamespace() const
+SwHTMLWriter::GetNumFormat(unsigned short)
+SwHTMLWriter::GetParentFormat(SwFormat const&, unsigned short)
+SwHTMLWriter::GetTemplateFormat(unsigned short, IDocumentStylePoolAccess*)
+SwHTMLWriter::GuessFrameType(SwFrameFormat const&, SdrObject const*&)
+SwHTMLWriter::GuessOLENodeFrameType(SwNode const&)
+SwHTMLWriter::HasControls() const
+SwHTMLWriter::HasScriptDependentItems(SfxItemSet const&, bool)
+SwHTMLWriter::MakeHeader(unsigned short&)
+SwHTMLWriter::OutAnchor(rtl::OUString const&)
+SwHTMLWriter::OutAndSetDefList(unsigned short)
+SwHTMLWriter::OutBackground(SfxItemSet const&, bool)
+SwHTMLWriter::OutBackground(SvxBrushItem const*, bool)
+SwHTMLWriter::OutBasic(SwHTMLWriter const&)
+SwHTMLWriter::OutBasicBodyEvents()
+SwHTMLWriter::OutBookmarks()
+SwHTMLWriter::OutCSS1_FrameFormatBackground(SwFrameFormat const&)
+SwHTMLWriter::OutCSS1_FrameFormatOptions(SwFrameFormat const&, HtmlFrmOpts, SdrObject const*, SfxItemSet const*)
+SwHTMLWriter::OutCSS1_PixelProperty(char const*, long, bool)
+SwHTMLWriter::OutCSS1_Property(char const*, std::basic_string_view<char, std::char_traits<char> >, rtl::OUString const*)
+SwHTMLWriter::OutCSS1_SectionFormatOptions(SwFrameFormat const&, SwFormatCol const*)
+SwHTMLWriter::OutCSS1_SfxItemSet(SfxItemSet const&, bool)
+SwHTMLWriter::OutCSS1_TableCellBordersAndBG(SwFrameFormat const&, SvxBrushItem const*)
+SwHTMLWriter::OutCSS1_TableFrameFormatOptions(SwFrameFormat const&)
+SwHTMLWriter::OutCSS1_UnitProperty(char const*, long)
+SwHTMLWriter::OutDirection(SvxFrameDirection)
+SwHTMLWriter::OutFlyFrame(o3tl::strong_int<int, Tag_SwNodeOffset>, int, HtmlPosition, HTMLOutContext*)
+SwHTMLWriter::OutFootEndNoteInfo()
+SwHTMLWriter::OutFootEndNoteSym(SwFormatFootnote const&, rtl::OUString const&, unsigned short)
+SwHTMLWriter::OutFootEndNotes()
+SwHTMLWriter::OutForm(bool, SwStartNode const*)
+SwHTMLWriter::OutForm(bool, com::sun::star::uno::Reference<com::sun::star::container::XIndexContainer> const&)
+SwHTMLWriter::OutFrameFormat(AllHtmlFlags, SwFrameFormat const&, SdrObject const*)
+SwHTMLWriter::OutFrameFormatOptions(SwFrameFormat const&, rtl::OUString const&, HtmlFrmOpts)
+SwHTMLWriter::OutHeaderAttrs()
+SwHTMLWriter::OutHiddenControls(com::sun::star::uno::Reference<com::sun::star::container::XIndexContainer> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+SwHTMLWriter::OutHiddenForm(com::sun::star::uno::Reference<com::sun::star::form::XForm> const&)
+SwHTMLWriter::OutHiddenForms()
+SwHTMLWriter::OutHyperlinkHRefValue(rtl::OUString const&)
+SwHTMLWriter::OutImplicitMark(std::basic_string_view<char16_t, std::char_traits<char16_t> >, char const*)
+SwHTMLWriter::OutLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwHTMLWriter::OutNewLine(bool)
+SwHTMLWriter::OutPointFieldmarks(SwPosition const&)
+SwHTMLWriter::OutStyleSheet(SwPageDesc const&)
+SwHTMLWriter::Out_SwDoc(SwPaM*)
+SwHTMLWriter::PrepareFontList(SvxFontItem const&, rtl::OUString&, char16_t, bool)
+SwHTMLWriter::ReleaseNextNumInfo()
+SwHTMLWriter::SetNextNumInfo(std::unique_ptr<SwHTMLNumRuleInfo, std::default_delete<SwHTMLNumRuleInfo> >)
+SwHTMLWriter::SetupFilterOptions(SfxMedium&)
+SwHTMLWriter::SetupFilterOptions(rtl::OUString const&)
+SwHTMLWriter::SubtractItemSet(SfxItemSet&, SfxItemSet const&, bool, bool, SfxItemSet const*)
+SwHTMLWriter::ToPixel(unsigned int, bool)
+SwHTMLWriter::WriteStream()
+SwHTMLWriter::convertDirection(SvxFrameDirection)
+SwHTMLWriter::convertHyperlinkHRefValue(rtl::OUString const&)
+SwHTMLWriter::indexOfDotLeaders(unsigned short, rtl::OUString const&)
+SwHTMLWriter::writeFrameFormatOptions(HtmlWriter&, SwFrameFormat const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, HtmlFrmOpts)
+SwHTMLWriter::~SwHTMLWriter()
+SwHeaderAndFooterEatSpacingItem::Clone(SfxItemPool*) const
+SwHeaderAndFooterEatSpacingItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwHiddenTextField::Copy() const
+SwHiddenTextField::Evaluate(SwDoc&)
+SwHiddenTextField::ExpandImpl(SwRootFrame const*) const
+SwHiddenTextField::GetColumnName(rtl::OUString const&)
+SwHiddenTextField::GetDBName(rtl::OUString const&, SwDoc&)
+SwHiddenTextField::GetFieldName() const
+SwHiddenTextField::GetPar1() const
+SwHiddenTextField::GetPar2() const
+SwHiddenTextField::GetSubType() const
+SwHiddenTextField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwHiddenTextField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwHiddenTextField::SetPar1(rtl::OUString const&)
+SwHiddenTextField::SetPar2(rtl::OUString const&)
+SwHiddenTextField::SwHiddenTextField(SwHiddenTextFieldType*, bool, rtl::OUString const&, rtl::OUString const&, bool, SwFieldTypesEnum)
+SwHyphWrapper::InsertHyphen(int)
+SwHyphWrapper::SpellContinue()
+SwHyphWrapper::SpellEnd()
+SwHyphWrapper::SpellMore()
+SwHyphWrapper::SpellStart(SvxSpellArea)
+SwIndex::Init(int)
+SwIndex::SetMark(sw::mark::IMark const*)
+SwIndex::SwIndex(SwIndex const&, short)
+SwInputField::Copy() const
+SwInputField::ExpandImpl(SwRootFrame const*) const
+SwInputField::GetFieldName() const
+SwInputField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwInputField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwInputField::SetFormatField(SwFormatField&)
+SwInputField::SetPar2(rtl::OUString const&)
+SwInputField::SetSubType(unsigned short)
+SwInputField::applyFieldContent(rtl::OUString const&)
+SwLabItem::Clone(SfxItemPool*) const
+SwLabItem::operator==(SfxPoolItem const&) const
+SwLabelConfig::ImplCommit()
+SwLabelConfig::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwLayoutFrame::AdjustColumns(SwFormatCol const*, bool)
+SwLayoutFrame::CalcRel(SwFormatFrameSize const&) const
+SwLayoutFrame::ChgColumns(SwFormatCol const&, SwFormatCol const&, bool)
+SwLayoutFrame::ChgLowersProp(Size const&)
+SwLayoutFrame::ContainsAny(bool) const
+SwLayoutFrame::ContainsContent() const
+SwLayoutFrame::Cut()
+SwLayoutFrame::DestroyImpl()
+SwLayoutFrame::FillSelection(SwSelectionList&, SwRect const&) const
+SwLayoutFrame::FirstCell() const
+SwLayoutFrame::Format(OutputDevice*, SwBorderAttrs const*)
+SwLayoutFrame::FormatWidthCols(SwBorderAttrs const&, long, long)
+SwLayoutFrame::GetContentPos(Point&, bool, bool, SwCursorMoveState*, bool) const
+SwLayoutFrame::GetFormat()
+SwLayoutFrame::GetFormat() const
+SwLayoutFrame::GetLastLower() const
+SwLayoutFrame::GetModelPositionForViewPoint(SwPosition*, Point&, SwCursorMoveState*, bool) const
+SwLayoutFrame::GrowFrame(long, bool, bool)
+SwLayoutFrame::InnerHeight() const
+SwLayoutFrame::InvaPercentLowers(long)
+SwLayoutFrame::IsAnLower(SwFrame const*) const
+SwLayoutFrame::IsBefore(SwLayoutFrame const*) const
+SwLayoutFrame::MakeAll(OutputDevice*)
+SwLayoutFrame::MoveLowerFootnotes(SwContentFrame*, SwFootnoteBossFrame*, SwFootnoteBossFrame*, bool)
+SwLayoutFrame::NotifyLowerObjs(bool)
+SwLayoutFrame::PaintBreak() const
+SwLayoutFrame::PaintColLines(SwRect const&, SwFormatCol const&, SwPageFrame const*) const
+SwLayoutFrame::PaintSubsidiaryLines(SwPageFrame const*, SwRect const&) const
+SwLayoutFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const
+SwLayoutFrame::Paste(SwFrame*, SwFrame*)
+SwLayoutFrame::RefreshExtraData(SwRect const&) const
+SwLayoutFrame::RefreshLaySubsidiary(SwPageFrame const*, SwRect const&) const
+SwLayoutFrame::SetFrameFormat(SwFrameFormat*)
+SwLayoutFrame::ShrinkFrame(long, bool, bool)
+SwLayoutFrame::SwLayoutFrame(SwFrameFormat*, SwFrame*)
+SwLayoutFrame::~SwLayoutFrame()
+SwLineLayout::Append(SwLinePortion*)
+SwLineLayout::CalcLeftMargin()
+SwLineLayout::CalcLine(SwTextFormatter&, SwTextFormatInfo&)
+SwLineLayout::CreateSpaceAdd(long)
+SwLineLayout::DeleteNext()
+SwLineLayout::Format(SwTextFormatInfo&)
+SwLineLayout::GetHangingMargin_() const
+SwLineLayout::Height(long, bool)
+SwLineLayout::Init(SwLinePortion*)
+SwLineLayout::InitSpaceAdd()
+SwLineLayout::Insert(SwLinePortion*)
+SwLineLayout::MaxAscentDescent(long&, long&, long&, long&, SwLinePortion const*, bool) const
+SwLineLayout::ResetFlags()
+SwLineLayout::SwLineLayout()
+SwLineLayout::dumpAsXml(_xmlTextWriter*) const
+SwLineLayout::~SwLineLayout()
+SwLineNumberInfo::SwClientNotify(SwModify const&, SfxHint const&)
+SwLineNumberInfo::SwLineNumberInfo()
+SwLineNumberInfo::operator=(SwLineNumberInfo const&)
+SwLuminanceGrf::Clone(SfxItemPool*) const
+SwLuminanceGrf::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwMacroField::Copy() const
+SwMacroField::CreateMacroString(rtl::OUString&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&)
+SwMacroField::ExpandImpl(SwRootFrame const*) const
+SwMacroField::GetFieldName() const
+SwMacroField::GetLibName() const
+SwMacroField::GetMacroName() const
+SwMacroField::GetPar1() const
+SwMacroField::GetPar2() const
+SwMacroField::GetSvxMacro() const
+SwMacroField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwMacroField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwMacroField::SetPar1(rtl::OUString const&)
+SwMacroField::SetPar2(rtl::OUString const&)
+SwMacroField::isScriptURL(rtl::OUString const&)
+SwMailMergeConfigItem::AddMergedDocument(SwDocMergeInfo const&)
+SwMailMergeConfigItem::DocumentReloaded()
+SwMailMergeConfigItem::ExcludeRecord(int, bool)
+SwMailMergeConfigItem::GetSelection() const
+SwMailMergeConfigItem::IsRecordExcluded(unsigned int) const
+SwMailMergeConfigItem::IsRecordIncluded(unsigned int) const
+SwMailMergeConfigItem::IsResultSetFirstLast(bool&, bool&)
+SwMailMergeConfigItem::SetCurrentDBData(SwDBData const&)
+SwMailMergeConfigItem::SetSourceView(SwView*)
+SwMailMergeConfigItem::SetTargetView(SwView*)
+SwMailMergeConfigItem::stopDBChangeListening()
+SwMailMergeConfigItem::updateCurrentDBDataFromDocument()
+SwMailMessage::getAttachments()
+SwMailMessage::getBccRecipients()
+SwMailMessage::getBody()
+SwMailMessage::getCcRecipients()
+SwMailMessage::getRecipients()
+SwMailMessage::getReplyToAddress()
+SwMailMessage::getSenderAddress()
+SwMailMessage::getSenderName()
+SwMailMessage::getSubject()
+SwMailMessage::~SwMailMessage()
+SwMailTransferable::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwMailTransferable::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwMailTransferable::getPropertySetInfo()
+SwMailTransferable::getPropertyValue(rtl::OUString const&)
+SwMailTransferable::getTransferData(com::sun::star::datatransfer::DataFlavor const&)
+SwMailTransferable::getTransferDataFlavors()
+SwMailTransferable::isDataFlavorSupported(com::sun::star::datatransfer::DataFlavor const&)
+SwMailTransferable::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwMailTransferable::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwMailTransferable::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SwMailTransferable::~SwMailTransferable()
+SwMirrorGrf::Clone(SfxItemPool*) const
+SwMirrorGrf::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwMirrorGrf::GetValueCount() const
+SwMirrorGrf::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwMirrorGrf::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwMirrorGrf::operator==(SfxPoolItem const&) const
+SwModify::CallSwClientNotify(SfxHint const&) const
+SwModify::GetInfo(SfxPoolItem&) const
+SwModify::SwClientNotify(SwModify const&, SfxHint const&)
+SwModule::ApplyItemSet(unsigned short, SfxItemSet const&)
+SwModule::ApplyRulerMetric(FieldUnit, bool, bool)
+SwModule::ApplyUserCharUnit(bool, bool)
+SwModule::ApplyUserMetric(FieldUnit, bool)
+SwModule::CallAutomationApplicationEventSinks(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
+SwModule::CheckSpellChanges(bool, bool, bool, bool)
+SwModule::ConfigurationChanged(utl::ConfigurationBroadcaster*, ConfigurationHints)
+SwModule::CreateItemSet(unsigned short)
+SwModule::CreateTabPage(unsigned short, weld::Container*, weld::DialogController*, SfxItemSet const&)
+SwModule::GetAccessibilityOptions()
+SwModule::GetColorConfig()
+SwModule::GetCompareMode() const
+SwModule::GetDeletedAuthorAttr(unsigned long, SfxItemSet&)
+SwModule::GetDocStatWordDelim() const
+SwModule::GetFieldUpdateFlags() const
+SwModule::GetFirstView()
+SwModule::GetFormatAuthorAttr(unsigned long, SfxItemSet&)
+SwModule::GetInsertAuthorAttr(unsigned long, SfxItemSet&)
+SwModule::GetInterface() const
+SwModule::GetLanguageGuesser()
+SwModule::GetLinkUpdMode() const
+SwModule::GetMetric(bool) const
+SwModule::GetNavigationConfig()
+SwModule::GetNextView(SwView const*)
+SwModule::GetPieceLen() const
+SwModule::GetPrtOptions(bool)
+SwModule::GetRedlineAuthor()
+SwModule::GetRedlineAuthorInfo(tools::JsonWriter&)
+SwModule::GetRedlineMarkColor() const
+SwModule::GetRedlineMarkPos() const
+SwModule::GetScannerManager()
+SwModule::GetStaticInterface()
+SwModule::GetUserOptions()
+SwModule::GetViewOption(bool)
+SwModule::InitAttrPool()
+SwModule::InitInterface_Impl()
+SwModule::InsertEnv(SfxRequest&)
+SwModule::InsertLab(SfxRequest&, bool)
+SwModule::InsertRedlineAuthor(rtl::OUString const&)
+SwModule::IsIgnorePieces() const
+SwModule::IsInsTableAlignNum(bool) const
+SwModule::IsInsTableChangeNumFormat(bool) const
+SwModule::IsInsTableFormatNum(bool) const
+SwModule::IsSplitVerticalByDefault(bool) const
+SwModule::IsUseRsid() const
+SwModule::Notify(SfxBroadcaster&, SfxHint const&)
+SwModule::RegisterInterface(SfxModule const*)
+SwModule::RemoveAttrPool()
+SwModule::SetRedlineAuthor(rtl::OUString const&)
+SwModule::SetSplitVerticalByDefault(bool, bool)
+SwModule::ShowDBObj(SwView const&, SwDBData const&)
+SwModule::StateOther(SfxItemSet&)
+SwModule::SwModule(SfxObjectFactory*, SfxObjectFactory*, SfxObjectFactory*)
+SwModule::~SwModule()
+SwModuleOptions::ConvertWordDelimiter(rtl::OUString const&, bool)
+SwModuleOptions::SwModuleOptions()
+SwNoTextNode::CreateContour()
+SwNoTextNode::GetContour(tools::PolyPolygon&) const
+SwNoTextNode::GetContourAPI(tools::PolyPolygon&) const
+SwNoTextNode::IsPixelContour() const
+SwNoTextNode::MakeFrame(SwFrame*)
+SwNoTextNode::NewAttrSet(SwAttrPool&)
+SwNoTextNode::RestorePersistentData()
+SwNoTextNode::SavePersistentData()
+SwNoTextNode::SetContourAPI(tools::PolyPolygon const*)
+SwNoTextNode::SetDescription(rtl::OUString const&)
+SwNoTextNode::SetTitle(rtl::OUString const&)
+SwNoTextNode::SwNoTextNode(SwNodeIndex const&, SwNodeType, SwGrfFormatColl*, SwAttrSet const*)
+SwNoTextNode::~SwNoTextNode()
+SwNode::AddAnchoredFly(SwFrameFormat*)
+SwNode::FindOutlineNodeOfLevel(unsigned char, SwRootFrame const*) const
+SwNode::GetSectionLevel() const
+SwNode::IsInProtectSect() const
+SwNode::IsInRedlines() const
+SwNode::IsInVisibleArea(SwViewShell const*) const
+SwNode::IsProtect() const
+SwNode::RemoveAnchoredFly(SwFrameFormat*)
+SwNode::SwNode(SwNodeIndex const&, SwNodeType)
+SwNode::SwNode(SwNodes&, o3tl::strong_int<int, Tag_SwNodeOffset>, SwNodeType)
+SwNode::dumpAsXml(_xmlTextWriter*) const
+SwNode::getIDocumentContentOperations()
+SwNode::getIDocumentDeviceAccess() const
+SwNode::getIDocumentDrawModelAccess() const
+SwNode::getIDocumentFieldsAccess()
+SwNode::getIDocumentFieldsAccess() const
+SwNode::getIDocumentLayoutAccess()
+SwNode::getIDocumentLayoutAccess() const
+SwNode::getIDocumentLinksAdministration()
+SwNode::getIDocumentLinksAdministration() const
+SwNode::getIDocumentListItems()
+SwNode::getIDocumentMarkAccess() const
+SwNode::getIDocumentRedlineAccess() const
+SwNode::getIDocumentSettingAccess() const
+SwNode::getIDocumentStyleAccess()
+SwNode::getIDocumentStylePoolAccess() const
+SwNode::~SwNode()
+SwNodes::ChgNode(SwNodeIndex const&, o3tl::strong_int<int, Tag_SwNodeOffset>, SwNodeIndex&, bool)
+SwNodes::CopyNodes(SwNodeRange const&, SwNodeIndex const&, bool, bool) const
+SwNodes::DelDummyNodes(SwNodeRange const&)
+SwNodes::DelNodes(SwNodeIndex const&, o3tl::strong_int<int, Tag_SwNodeOffset>)
+SwNodes::Delete(SwNodeIndex const&, o3tl::strong_int<int, Tag_SwNodeOffset>)
+SwNodes::DocumentSectionEndNode(SwNode*) const
+SwNodes::DocumentSectionStartNode(SwNode*) const
+SwNodes::ExpandRangeForTableBox(SwNodeRange const&)
+SwNodes::FindPrvNxtFrameNode(SwNodeIndex&, SwNode const*) const
+SwNodes::ForEach(SwNodeIndex const&, SwNodeIndex const&, bool (*)(SwNode*, void*), void*)
+SwNodes::ForEach(o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, bool (*)(SwNode*, void*), void*)
+SwNodes::GetSectionLevel(SwNodeIndex const&)
+SwNodes::GoEndOfSection(SwNodeIndex*)
+SwNodes::GoNextSection(SwNodeIndex*, bool, bool) const
+SwNodes::GoPrevSection(SwNodeIndex*, bool, bool)
+SwNodes::GoPrevious(SwNodeIndex*)
+SwNodes::GoStartOfSection(SwNodeIndex*)
+SwNodes::InsertNode(SwNode*, SwNodeIndex const&)
+SwNodes::InsertNode(SwNode*, o3tl::strong_int<int, Tag_SwNodeOffset>)
+SwNodes::InsertTable(SwNodeIndex const&, unsigned short, SwTextFormatColl*, unsigned short, unsigned short, SwTextFormatColl*, SwAttrSet const*)
+SwNodes::InsertTextSection(SwNodeIndex const&, SwSectionFormat&, SwSectionData const&, SwTOXBase const*, SwNodeIndex const*, bool, bool)
+SwNodes::MakeEmptySection(SwNodeIndex const&, SwStartNodeType)
+SwNodes::MakeGrfNode(SwNodeIndex const&, GraphicObject const&, SwGrfFormatColl*)
+SwNodes::MakeGrfNode(SwNodeIndex const&, rtl::OUString const&, rtl::OUString const&, Graphic const*, SwGrfFormatColl*, SwAttrSet const*)
+SwNodes::MakeOLENode(SwNodeIndex const&, rtl::OUString const&, long, SwGrfFormatColl*, SwAttrSet const*)
+SwNodes::MakeOLENode(SwNodeIndex const&, svt::EmbeddedObjectRef const&, SwGrfFormatColl*)
+SwNodes::MergeTable(SwNodeIndex const&, bool, unsigned short)
+SwNodes::MoveNodes(SwNodeRange const&, SwNodes&, SwNodeIndex const&, bool)
+SwNodes::MoveRange(SwPaM&, SwPosition&, SwNodes&)
+SwNodes::RemoveNode(o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, bool)
+SwNodes::SectionDown(SwNodeRange*, SwStartNodeType)
+SwNodes::SectionUp(SwNodeRange*)
+SwNodes::SectionUpDown(SwNodeIndex const&, SwNodeIndex const&)
+SwNodes::SplitTable(SwNodeIndex const&, bool, bool)
+SwNodes::SwNodes(SwDoc&)
+SwNodes::TableToText(SwNodeRange const&, char16_t, SwUndoTableToText*)
+SwNodes::TextToTable(SwNodeRange const&, char16_t, SwTableFormat*, SwTableLineFormat*, SwTableBoxFormat*, SwTextFormatColl*, SwUndoTextToTable*)
+SwNodes::TextToTable(std::vector<std::vector<SwNodeRange, std::allocator<SwNodeRange> >, std::allocator<std::vector<SwNodeRange, std::allocator<SwNodeRange> > > > const&, SwTableFormat*, SwTableLineFormat*, SwTableBoxFormat*)
+SwNodes::UndoTableToText(o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, std::vector<std::unique_ptr<SwTableToTextSave, std::default_delete<SwTableToTextSave> >, std::allocator<std::unique_ptr<SwTableToTextSave, std::default_delete<SwTableToTextSave> > > > const&)
+SwNodes::UpdateOutlineIdx(SwNode const&)
+SwNodes::UpdateOutlineNode(SwNode&)
+SwNodes::dumpAsXml(_xmlTextWriter*) const
+SwNodes::~SwNodes()
+SwNumFormat::GetCharFormatName() const
+SwNumFormat::GetGraphicOrientation() const
+SwNumFormat::IsEnumeration() const
+SwNumFormat::IsItemize() const
+SwNumFormat::SwClientNotify(SwModify const&, SfxHint const&)
+SwNumFormat::SwNumFormat(SvxNumberFormat const&, SwDoc*)
+SwNumFormat::operator=(SwNumFormat const&)
+SwNumFormatBase::Init()
+SwNumFormatBase::SwNumFormatBase()
+SwNumFormatBase::clear()
+SwNumFormatTreeView::Init()
+SwNumRule::AddParagraphStyle(SwTextFormatColl&)
+SwNumRule::AddTextNode(SwTextNode&)
+SwNumRule::ChangeIndent(int)
+SwNumRule::CheckCharFormats(SwDoc&)
+SwNumRule::CopyNumRule(SwDoc&, SwNumRule const&)
+SwNumRule::GetBullIndent(unsigned char)
+SwNumRule::GetNumIndent(unsigned char)
+SwNumRule::GetOutlineRuleName()
+SwNumRule::GetParagraphStyleListSize() const
+SwNumRule::GetTextNodeList(std::vector<SwTextNode*, std::allocator<SwTextNode*> >&) const
+SwNumRule::GetTextNodeListSize() const
+SwNumRule::MakeNumString(SwNodeNum const&, bool) const
+SwNumRule::MakeParagraphStyleListString() const
+SwNumRule::MakeRefNumString(SwNodeNum const&, bool, int) const
+SwNumRule::MakeSvxNumRule() const
+SwNumRule::RemoveParagraphStyle(SwTextFormatColl&)
+SwNumRule::RemoveTextNode(SwTextNode&)
+SwNumRule::Reset(rtl::OUString const&)
+SwNumRule::Set(unsigned short, SwNumFormat const*)
+SwNumRule::SetCountPhantoms(bool)
+SwNumRule::SetGrabBagItem(com::sun::star::uno::Any const&)
+SwNumRule::SetIndent(short, unsigned short)
+SwNumRule::SetIndentOfFirstListLevelAndChangeOthers(short)
+SwNumRule::SetInvalidRule(bool)
+SwNumRule::SetName(rtl::OUString const&, IDocumentListsAccess&)
+SwNumRule::SetNumRuleMap(std::unordered_map<rtl::OUString, SwNumRule*, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, SwNumRule*> > >*)
+SwNumRule::SetSvxRule(SvxNumRule const&, SwDoc*)
+SwNumRule::Validate(SwDoc const&)
+SwNumRule::dumpAsXml(_xmlTextWriter*) const
+SwNumRuleItem::Clone(SfxItemPool*) const
+SwNumRuleItem::CreateDefault()
+SwNumRuleItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwNumRuleItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwNumRuleItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwNumRuleItem::dumpAsXml(_xmlTextWriter*) const
+SwNumRuleItem::operator==(SfxPoolItem const&) const
+SwNumRulesWithName::GetNumFormat(unsigned long, SwNumFormat const*&, rtl::OUString const*&) const
+SwNumRulesWithName::SetNumFormat(unsigned long, SwNumFormat const&, rtl::OUString const&)
+SwNumRulesWithName::SwNumRulesWithName(SwNumRulesWithName const&)
+SwNumRulesWithName::operator=(SwNumRulesWithName const&)
+SwOLENode::BreakFileLink_Impl()
+SwOLENode::CheckFileLink_Impl()
+SwOLENode::DisconnectFileLink_Impl()
+SwOLENode::GetNewReplacement()
+SwOLENode::IsChart() const
+SwOLENode::IsInGlobalDocSection() const
+SwOLENode::IsOLEObjectDeleted() const
+SwOLENode::MakeCopy(SwDoc&, SwNodeIndex const&, bool) const
+SwOLENode::RestorePersistentData()
+SwOLENode::SavePersistentData()
+SwOLENode::SetChanged()
+SwOLENode::SwOLENode(SwNodeIndex const&, rtl::OUString const&, long, SwGrfFormatColl*, SwAttrSet const*)
+SwOLENode::SwOLENode(SwNodeIndex const&, svt::EmbeddedObjectRef const&, SwGrfFormatColl*, SwAttrSet const*)
+SwOLENode::UpdateLinkURL_Impl()
+SwOLENode::dumpAsXml(_xmlTextWriter*) const
+SwOLENode::~SwOLENode()
+SwOLEObj::GetDescription()
+SwOLEObj::GetStyleString()
+SwOLEObj::IsOleRef() const
+SwOLEObj::IsProtected() const
+SwOLEObj::IsProtectedHdl(LinkParamNone*)
+SwOLEObj::LinkStubIsProtectedHdl(void*, LinkParamNone*)
+SwOLEObj::SetNode(SwOLENode*)
+SwOLEObj::SwOLEObj(rtl::OUString const&, long)
+SwOLEObj::SwOLEObj(svt::EmbeddedObjectRef const&)
+SwOLEObj::UnloadObject()
+SwOLEObj::UnloadObject(com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&, SwDoc const*, long)
+SwOLEObj::dumpAsXml(_xmlTextWriter*) const
+SwOLEObj::resetBufferedData()
+SwOLEObj::tryToGetChartContentAsPrimitive2DSequence(basegfx::B2DRange&, bool)
+SwOLEObj::~SwOLEObj()
+SwOneExampleFrame::Command(CommandEvent const&)
+SwOneExampleFrame::CreatePopup(Point const&)
+SwOneExampleFrame::Paint(OutputDevice&, tools::Rectangle const&)
+SwOneExampleFrame::PopupHdl(std::basic_string_view<char, std::char_traits<char> >)
+SwOneExampleFrame::SetDrawingArea(weld::DrawingArea*)
+SwPaM::InvalidatePaM()
+SwPaM::Normalize(bool)
+SwPaM::SwPaM(SwNode const&, SwNode const&, o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, SwPaM*)
+SwPaM::SwPaM(SwNodeIndex const&, SwNodeIndex const&, o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, SwPaM*)
+SwPaM::dumpAsXml(_xmlTextWriter*) const
+SwPageDesc::GetByName(SwDoc&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SwPageDesc::GetInfo(SfxPoolItem&) const
+SwPageDesc::GetLeftFormat(bool)
+SwPageDesc::GetRegisterFormatColl() const
+SwPageDesc::GetRightFormat(bool)
+SwPageDesc::HasStashedFormat(bool, bool, bool)
+SwPageDesc::RegisterChange()
+SwPageDesc::RemoveStashedFormat(bool, bool, bool)
+SwPageDesc::SetName(rtl::OUString const&)
+SwPageDesc::SetRegisterFormatColl(SwTextFormatColl const*)
+SwPageDesc::StashFrameFormat(SwFrameFormat const&, bool, bool, bool)
+SwPageDesc::SwClientNotify(SwModify const&, SfxHint const&)
+SwPageDesc::dumpAsXml(_xmlTextWriter*) const
+SwPageFootnoteInfo::operator=(SwPageFootnoteInfo const&)
+SwPageFootnoteInfo::operator==(SwPageFootnoteInfo const&) const
+SwPageFootnoteInfoItem::Clone(SfxItemPool*) const
+SwPageFootnoteInfoItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwPageFootnoteInfoItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwPageFootnoteInfoItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwPageFootnoteInfoItem::SwPageFootnoteInfoItem(SwPageFootnoteInfo const&)
+SwPageGridExample::DrawPage(OutputDevice&, Point const&, bool, bool)
+SwPageNumberField::ChangeExpansion(unsigned short, unsigned short)
+SwPageNumberField::Copy() const
+SwPageNumberField::ExpandImpl(SwRootFrame const*) const
+SwPageNumberField::GetPar2() const
+SwPageNumberField::GetSubType() const
+SwPageNumberField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwPageNumberField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwPageNumberField::SetPar2(rtl::OUString const&)
+SwPagePreview::ApplyAccessibilityOptions(SvtAccessibilityOptions const&)
+SwPagePreview::CreateInstance(SfxViewFrame*, SfxViewShell*)
+SwPagePreview::DocSzChgd(Size const&)
+SwPagePreview::EnableHScrollbar(bool)
+SwPagePreview::EnableVScrollbar(bool)
+SwPagePreview::Execute(SfxRequest&)
+SwPagePreview::GetDocShell()
+SwPagePreview::GetInterface() const
+SwPagePreview::GetState(SfxItemSet&)
+SwPagePreview::GetStaticInterface()
+SwPagePreview::HandleWheelCommands(CommandEvent const&)
+SwPagePreview::InitFactory()
+SwPagePreview::InitInterface_Impl()
+SwPagePreview::InnerResizePixel(Point const&, Size const&, bool)
+SwPagePreview::OuterResizePixel(Point const&, Size const&)
+SwPagePreview::RegisterFactory(o3tl::strong_int<unsigned short, SfxInterfaceIdTag>)
+SwPagePreview::RegisterInterface(SfxModule const*)
+SwPagePreview::ScrollDocSzChg()
+SwPagePreview::ScrollViewSzChg()
+SwPagePreview::SetVScrollbarThumbPos(unsigned short)
+SwPagePreview::SetVisArea(tools::Rectangle const&)
+SwPagePreview::SetZoom(SvxZoomType, unsigned short)
+SwPagePreview::ShowHScrollbar(bool)
+SwPagePreview::ShowVScrollbar(bool)
+SwPagePreview::StateUndo(SfxItemSet&)
+SwPagePreview::SwPagePreview(SfxViewFrame*, SfxViewShell*)
+SwPagePreview::~SwPagePreview()
+SwPosition::dumpAsXml(_xmlTextWriter*) const
+SwPosition::operator>=(SwPosition const&) const
+SwPostItField::Copy() const
+SwPostItField::ExpandImpl(SwRootFrame const*) const
+SwPostItField::GetDescription() const
+SwPostItField::GetNumberOfParagraphs() const
+SwPostItField::GetPar2() const
+SwPostItField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwPostItField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwPostItField::SetName(rtl::OUString const&)
+SwPostItField::SetPar1(rtl::OUString const&)
+SwPostItField::SetPar2(rtl::OUString const&)
+SwPostItField::SetResolved(bool)
+SwPostItField::ToggleResolved()
+SwPostItField::dumpAsXml(_xmlTextWriter*) const
+SwPtrItem::Clone(SfxItemPool*) const
+SwPtrItem::operator==(SfxPoolItem const&) const
+SwRDFHelper::addStatement(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&, rtl::OUString const&, rtl::OUString const&)
+SwRDFHelper::addTextNodeStatement(rtl::OUString const&, rtl::OUString const&, SwTextNode&, rtl::OUString const&, rtl::OUString const&)
+SwRDFHelper::clearStatements(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&)
+SwRDFHelper::cloneStatements(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&)
+SwRDFHelper::getGraphNames(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&)
+SwRDFHelper::getGraphNames(com::sun::star::uno::Reference<com::sun::star::rdf::XDocumentMetadataAccess> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&)
+SwRDFHelper::getStatements(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::rdf::XURI> > const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&)
+SwRDFHelper::getStatements(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&)
+SwRDFHelper::hasMetadataGraph(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&)
+SwRDFHelper::removeStatement(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&, rtl::OUString const&, rtl::OUString const&)
+SwRDFHelper::removeTextNodeStatement(rtl::OUString const&, SwTextNode&, rtl::OUString const&, rtl::OUString const&)
+SwRDFHelper::updateTextNodeStatement(rtl::OUString const&, rtl::OUString const&, SwTextNode&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SwRangeRedline::CalcStartEnd(o3tl::strong_int<int, Tag_SwNodeOffset>, int&, int&) const
+SwRangeRedline::CallDisplayFunc(unsigned long)
+SwRangeRedline::CanCombine(SwRangeRedline const&) const
+SwRangeRedline::CopyToSection()
+SwRangeRedline::DelCopyOfSection(unsigned long)
+SwRangeRedline::GetComment(unsigned short) const
+SwRangeRedline::GetStackCount() const
+SwRangeRedline::GetTimeStamp(unsigned short) const
+SwRangeRedline::HasValidRange() const
+SwRangeRedline::Hide(unsigned short, unsigned long, bool)
+SwRangeRedline::InvalidateRange(SwRangeRedline::Invalidation)
+SwRangeRedline::MaybeNotifyRedlinePositionModification(long)
+SwRangeRedline::MoveFromSection(unsigned long)
+SwRangeRedline::MoveToSection()
+SwRangeRedline::PopData()
+SwRangeRedline::PushData(SwRangeRedline const&, bool)
+SwRangeRedline::SetContentIdx(SwNodeIndex const*)
+SwRangeRedline::SetEnd(SwPosition const&, SwPosition*)
+SwRangeRedline::SetStart(SwPosition const&, SwPosition*)
+SwRangeRedline::Show(unsigned short, unsigned long, bool)
+SwRangeRedline::ShowOriginal(unsigned short, unsigned long, bool)
+SwRangeRedline::SwRangeRedline(SwRangeRedline const&)
+SwRangeRedline::SwRangeRedline(SwRedlineData const&, SwPosition const&)
+SwRangeRedline::dumpAsXml(_xmlTextWriter*) const
+SwRangeRedline::operator<(SwRangeRedline const&) const
+SwRangeRedline::~SwRangeRedline()
+SwReader::HasGlossaries(Reader const&)
+SwReader::SwReader(SfxMedium&, rtl::OUString const&, SwPaM&)
+SwReader::SwReader(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, rtl::OUString const&, SwPaM&)
+SwRect::AddBottom(long)
+SwRect::AddHeight(long)
+SwRect::AddLeft(long)
+SwRect::AddRight(long)
+SwRect::AddTop(long)
+SwRect::AddWidth(long)
+SwRect::Bottom_() const
+SwRect::Bottom_(long)
+SwRect::GetBottomDistance(long) const
+SwRect::GetLeftDistance(long) const
+SwRect::GetRightDistance(long) const
+SwRect::GetTopDistance(long) const
+SwRect::Height_() const
+SwRect::Height_(long)
+SwRect::Intersection(SwRect const&)
+SwRect::Intersection_(SwRect const&)
+SwRect::Justify()
+SwRect::Left_() const
+SwRect::Left_(long)
+SwRect::OverStepBottom(long) const
+SwRect::OverStepLeft(long) const
+SwRect::OverStepRight(long) const
+SwRect::OverStepTop(long) const
+SwRect::Right_() const
+SwRect::Right_(long)
+SwRect::SetBottomAndHeight(long, long)
+SwRect::SetLeftAndWidth(long, long)
+SwRect::SetLowerLeftCorner(Point const&)
+SwRect::SetPosX(long)
+SwRect::SetPosY(long)
+SwRect::SetRightAndWidth(long, long)
+SwRect::SetTopAndHeight(long, long)
+SwRect::SetUpperLeftCorner(Point const&)
+SwRect::SetUpperRightCorner(Point const&)
+SwRect::Size_() const
+SwRect::SubLeft(long)
+SwRect::SubTop(long)
+SwRect::SwRect(tools::Rectangle const&)
+SwRect::SwappedSize() const
+SwRect::Top_() const
+SwRect::Top_(long)
+SwRect::Union(SwRect const&)
+SwRect::Width_() const
+SwRect::Width_(long)
+SwRect::dumpAsXmlAttributes(_xmlTextWriter*) const
+SwRedlineAcceptDlg::Init(unsigned long)
+SwRedlineAcceptDlg::LinkStubFilterChangedHdl(void*, SvxTPFilter*)
+SwRedlineData::CanCombine(SwRedlineData const&) const
+SwRedlineData::GetDescr() const
+SwRedlineData::SetExtraData(SwRedlineExtraData const*)
+SwRedlineData::SwRedlineData(RedlineType, unsigned long)
+SwRedlineData::SwRedlineData(SwRedlineData const&, bool)
+SwRedlineExtraData::Reject(SwPaM&) const
+SwRedlineExtraData::operator==(SwRedlineExtraData const&) const
+SwRedlineExtraData::~SwRedlineExtraData()
+SwRedlineExtraData_FormatColl::CreateNew() const
+SwRedlineExtraData_FormatColl::Reject(SwPaM&) const
+SwRedlineExtraData_FormatColl::SetItemSet(SfxItemSet const&)
+SwRedlineExtraData_FormatColl::SwRedlineExtraData_FormatColl(rtl::OUString const&, unsigned short, SfxItemSet const*, bool)
+SwRedlineExtraData_FormatColl::operator==(SwRedlineExtraData const&) const
+SwRedlineExtraData_FormatColl::~SwRedlineExtraData_FormatColl()
+SwRewriter::Apply(rtl::OUString const&) const
+SwRewriter::GetPlaceHolder(SwUndoArg)
+SwRootFrame::AllAddPaintRect() const
+SwRootFrame::AllCheckPageDescs() const
+SwRootFrame::AllInvalidateAutoCompleteWords() const
+SwRootFrame::AllInvalidateSmartTagsOrSpelling(bool) const
+SwRootFrame::AllRemoveFootnotes()
+SwRootFrame::AssertFlyPages()
+SwRootFrame::AssertPageFlys(SwPageFrame*)
+SwRootFrame::CalcFrameRects(SwShellCursor&)
+SwRootFrame::CheckFootnotePageDescs(bool)
+SwRootFrame::CheckViewLayout(SwViewOption const*, SwRect const*)
+SwRootFrame::ChgSize(Size const&)
+SwRootFrame::DeRegisterShell(SwViewShell*)
+SwRootFrame::DeleteEmptySct_()
+SwRootFrame::DestroyImpl()
+SwRootFrame::EndAllAction(bool)
+SwRootFrame::FillSelection(SwSelectionList&, SwRect const&) const
+SwRootFrame::FlushVout()
+SwRootFrame::GetCurrPage(SwPaM const*) const
+SwRootFrame::GetNextPrevContentPos(Point const&, bool) const
+SwRootFrame::GetPageAtPos(Point const&, Size const*, bool) const
+SwRootFrame::GetPageByPageNum(unsigned short) const
+SwRootFrame::GetPagePos(unsigned short) const
+SwRootFrame::GrowFrame(long, bool, bool)
+SwRootFrame::HasSameRect(SwRect const&)
+SwRootFrame::ImplCalcBrowseWidth()
+SwRootFrame::ImplInvalidateBrowseWidth()
+SwRootFrame::Init(SwFrameFormat*)
+SwRootFrame::InsertEmptySct(SwSectionFrame*)
+SwRootFrame::InvalidateAllContent(SwInvalidateFlags)
+SwRootFrame::InvalidateAllObjPos()
+SwRootFrame::IsBetweenPages(Point const&) const
+SwRootFrame::IsDummyPage(unsigned short) const
+SwRootFrame::IsLeftToRightViewLayout() const
+SwRootFrame::MakeAll(OutputDevice*)
+SwRootFrame::MakeTableCursors(SwTableCursor&)
+SwRootFrame::RemoveFootnotes(SwPageFrame*, bool, bool)
+SwRootFrame::RemoveFromList_(SwSectionFrame*)
+SwRootFrame::RemoveMasterObjs(SdrPage*)
+SwRootFrame::RemovePage(SwPageFrame**, SwRemoveResult)
+SwRootFrame::RemoveSuperfluous()
+SwRootFrame::SetCurrPage(SwCursor*, unsigned short)
+SwRootFrame::SetFieldmarkMode(sw::FieldmarkMode)
+SwRootFrame::SetHideRedlines(bool)
+SwRootFrame::ShrinkFrame(long, bool, bool)
+SwRootFrame::StartAllAction()
+SwRootFrame::SwRootFrame(SwFrameFormat*, SwViewShell*)
+SwRootFrame::UnoRemoveAllActions()
+SwRootFrame::UnoRestoreAllActions()
+SwRootFrame::UpdateFootnoteNums()
+SwRootFrame::~SwRootFrame()
+SwScriptField::Copy() const
+SwScriptField::ExpandImpl(SwRootFrame const*) const
+SwScriptField::GetDescription() const
+SwScriptField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwScriptField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwScriptField::SetPar1(rtl::OUString const&)
+SwScriptField::SetPar2(rtl::OUString const&)
+SwScriptField::SwScriptField(SwScriptFieldType*, rtl::OUString const&, rtl::OUString const&, bool)
+SwSection::BreakLink()
+SwSection::CalcHiddenFlag() const
+SwSection::CreateLink(LinkCreateType)
+SwSection::DataEquals(SwSectionData const&) const
+SwSection::GetLinkFileName() const
+SwSection::IsEditInReadonly() const
+SwSection::MakeChildLinksVisible(SwSectionNode const&)
+SwSection::SetCondHidden(bool)
+SwSection::SetEditInReadonly(bool)
+SwSection::SetHidden(bool)
+SwSection::SetLinkFileName(rtl::OUString const&)
+SwSection::SetProtect(bool)
+SwSection::SetRefObject(SwServerObject*)
+SwSection::SetSectionData(SwSectionData const&)
+SwSection::SwClientNotify(SwModify const&, SfxHint const&)
+SwSection::SwSection(SectionType, rtl::OUString const&, SwSectionFormat&)
+SwSection::~SwSection()
+SwSectionData::operator=(SwSectionData const&)
+SwSectionData::operator==(SwSectionData const&) const
+SwSectionFormat::DelFrames()
+SwSectionFormat::GetGlobalDocSection() const
+SwSectionFormat::GetInfo(SfxPoolItem&) const
+SwSectionFormat::GetRegistry()
+SwSectionFormat::IsInClipboard() const
+SwSectionFormat::IsInContent() const
+SwSectionFormat::MakeFrames()
+SwSectionFormat::MakeUnoObject()
+SwSectionFormat::SwClientNotify(SwModify const&, SfxHint const&)
+SwSectionFormat::SwSectionFormat(SwFrameFormat*, SwDoc*)
+SwSectionFormat::dumpAsXml(_xmlTextWriter*) const
+SwSectionFormat::supportsFullDrawingLayerFillAttributeSet() const
+SwSeqFieldList::InsertSort(SeqFieldLstElem)
+SwSetExpField::ChgExpStr(rtl::OUString const&, SwRootFrame const*)
+SwSetExpField::Copy() const
+SwSetExpField::ExpandImpl(SwRootFrame const*) const
+SwSetExpField::GetExpStr(SwRootFrame const*) const
+SwSetExpField::GetValue(SwRootFrame const*) const
+SwSetExpField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwSetExpField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwSetExpField::SetFormatField(SwFormatField&)
+SwSetExpField::SetValue(double const&)
+SwSetExpFieldType::Copy() const
+SwSetExpFieldType::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwSetExpFieldType::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwSetExpFieldType::SetChapter(SwSetExpField&, SwNode const&, SwRootFrame const*)
+SwSetExpFieldType::SetSeqFormat(unsigned long)
+SwSetExpFieldType::SetSeqRefNo(SwSetExpField&)
+SwSetExpFieldType::SwClientNotify(SwModify const&, SfxHint const&)
+SwShadowCursorItem::Clone(SfxItemPool*) const
+SwShadowCursorItem::FillViewOptions(SwViewOption&) const
+SwShadowCursorItem::SwShadowCursorItem(SwViewOption const&)
+SwShadowCursorItem::operator==(SfxPoolItem const&) const
+SwShellCursor::Create(SwPaM*) const
+SwShellCursor::FillRects()
+SwShellCursor::FillStartEnd(SwRect&, SwRect&) const
+SwShellCursor::Hide()
+SwShellCursor::Invalidate(SwRect const&)
+SwShellCursor::IsAtValidPos(bool) const
+SwShellCursor::IsReadOnlyAvailable() const
+SwShellCursor::MaxReplaceArived()
+SwShellCursor::SaveTableBoxContent(SwPosition const*)
+SwShellCursor::SetMark()
+SwShellCursor::Show(SfxViewShell const*)
+SwShellCursor::SwShellCursor(SwCursorShell const&, SwPosition const&)
+SwShellCursor::SwShellCursor(SwCursorShell const&, SwPosition const&, Point const&, SwPaM*)
+SwShellCursor::SwShellCursor(SwShellCursor&)
+SwShellCursor::UpDown(bool, unsigned short)
+SwShellCursor::~SwShellCursor()
+SwSortKey::SwSortKey()
+SwSortOptions::SwSortOptions(SwSortOptions const&)
+SwSortedObjs::Contains(SwAnchoredObject const&) const
+SwSortedObjs::Insert(SwAnchoredObject&)
+SwSortedObjs::ListPosOf(SwAnchoredObject const&) const
+SwSortedObjs::Remove(SwAnchoredObject&)
+SwSortedObjs::SwSortedObjs()
+SwSortedObjs::Update(SwAnchoredObject&)
+SwSortedObjs::UpdateAll()
+SwSortedObjs::is_sorted() const
+SwSortedObjs::~SwSortedObjs()
+SwSpellPopup::Execute(tools::Rectangle const&, vcl::Window*)
+SwSpellPopup::Execute(unsigned short)
+SwSpellPopup::InitItemCommands(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwSpellPopup::SwSpellPopup(SwWrtShell*, com::sun::star::linguistic2::ProofreadingResult const&, int, com::sun::star::uno::Sequence<rtl::OUString> const&, rtl::OUString const&)
+SwSpellPopup::checkRedline()
+SwSpellPopup::fillLangPopupMenu(PopupMenu*, unsigned short, com::sun::star::uno::Sequence<rtl::OUString> const&, SwWrtShell*, std::map<short, rtl::OUString, std::less<short>, std::allocator<std::pair<short const, rtl::OUString> > >&)
+SwStdFontConfig::ImplCommit()
+SwStdFontConfig::IsFontDefault(unsigned short) const
+SwStdFontConfig::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwStdFontConfig::SwStdFontConfig()
+SwStdFontConfig::~SwStdFontConfig()
+SwStyleNameMapper::GetProgName(unsigned short, rtl::OUString const&)
+SwTOXBase::CopyTOXBase(SwDoc*, SwTOXBase const&)
+SwTOXBase::GetAttrSet() const
+SwTOXBase::IsTOXBaseInReadonly() const
+SwTOXBase::SetBookmarkName(rtl::OUString const&)
+SwTOXBase::SetTitle(rtl::OUString const&)
+SwTOXBase::operator=(SwTOXBase const&)
+SwTOXMark::Clone(SfxItemPool*) const
+SwTOXMark::InvalidateTOXMark()
+SwTOXMark::Notify(SfxHint const&)
+SwTOXMark::RegisterToTOXType(SwTOXType&)
+SwTOXMark::SwTOXMark()
+SwTOXMark::SwTOXMark(SwTOXMark const&)
+SwTOXMark::operator==(SfxPoolItem const&) const
+SwTabCols::Insert(long, long, long, bool, unsigned long)
+SwTabCols::Remove(unsigned long, unsigned long)
+SwTabCols::operator=(SwTabCols const&)
+SwTable::AdjustWidths(long, long)
+SwTable::CanConvertSubtables() const
+SwTable::CheckRowSpan(SwTableLine*&, bool) const
+SwTable::CleanUpBottomRowSpan(unsigned short)
+SwTable::CleanUpTopRowSpan(unsigned short)
+SwTable::CollectBoxSelection(SwPaM const&) const
+SwTable::ConvertSubtableBox(unsigned short, unsigned short)
+SwTable::ConvertSubtables()
+SwTable::CopyHeadlineIntoTable(SwTableNode&)
+SwTable::CreateSelection(SwNode const*, SwNode const*, SwSelBoxes&, SwTable::SearchType, bool) const
+SwTable::CreateSelection(SwPaM const&, SwSelBoxes&, SwTable::SearchType, bool) const
+SwTable::DeleteSel(SwDoc*, SwSelBoxes const&, SwSelBoxes const*, SwUndo*, bool, bool)
+SwTable::ExpandColumnSelection(SwSelBoxes&, long&, long&) const
+SwTable::ExpandSelection(SwSelBoxes&) const
+SwTable::FindSuperfluousRows_(SwSelBoxes&, SwTableLine*, SwTableLine*)
+SwTable::GCLines()
+SwTable::GetBoxNum(rtl::OUString&, bool, bool)
+SwTable::GetInfo(SfxPoolItem&) const
+SwTable::GetTableBox(o3tl::strong_int<int, Tag_SwNodeOffset>)
+SwTable::HasDeletedRow() const
+SwTable::InsNewTable(SwTable const&, SwSelBoxes const&, SwUndoTableCpyTable*)
+SwTable::InsTable(SwTable const&, SwNodeIndex const&, SwUndoTableCpyTable*)
+SwTable::InsTable(SwTable const&, SwSelBoxes const&, SwUndoTableCpyTable*)
+SwTable::InsertCol(SwDoc&, SwSelBoxes const&, unsigned short, bool)
+SwTable::InsertRow(SwDoc*, SwSelBoxes const&, unsigned short, bool)
+SwTable::InsertRow_(SwDoc*, SwSelBoxes const&, unsigned short, bool)
+SwTable::InsertSpannedRow(SwDoc&, unsigned short, unsigned short)
+SwTable::IsDeleted() const
+SwTable::IsHeadline(SwTableLine const&) const
+SwTable::IsTableComplexForChart(rtl::OUString const&) const
+SwTable::MakeCopy(SwDoc&, SwPosition const&, SwSelBoxes const&, bool, rtl::OUString const&) const
+SwTable::NewInsertCol(SwDoc&, SwSelBoxes const&, unsigned short, bool)
+SwTable::NewMerge(SwDoc*, SwSelBoxes const&, SwSelBoxes const&, SwUndoTableMerge*)
+SwTable::NewSetTabCols(Parm&, SwTabCols const&, SwTabCols const&, SwTableBox const*, bool)
+SwTable::NewSplitRow(SwDoc&, SwSelBoxes const&, unsigned short, bool)
+SwTable::OldMerge(SwDoc*, SwSelBoxes const&, SwTableBox*, SwUndoTableMerge*)
+SwTable::OldSplitRow(SwDoc&, SwSelBoxes const&, unsigned short, bool)
+SwTable::PrepareDelBoxes(SwSelBoxes const&)
+SwTable::PrepareDeleteCol(long, long)
+SwTable::PrepareMerge(SwPaM const&, SwSelBoxes&, SwSelBoxes&, SwTableBox**, SwUndoTableMerge*)
+SwTable::RegisterToFormat(SwFormat&)
+SwTable::RestoreRowSpan(SwSaveRowSpan const&)
+SwTable::SetColWidth(SwTableBox&, TableChgWidthHeightType, long, long, std::unique_ptr<SwUndo, std::default_delete<SwUndo> >*)
+SwTable::SetHTMLTableLayout(std::shared_ptr<SwHTMLTableLayout> const&)
+SwTable::SetRefObject(SwServerObject*)
+SwTable::SetRowHeight(SwTableBox&, TableChgWidthHeightType, long, long, std::unique_ptr<SwUndo, std::default_delete<SwUndo> >*)
+SwTable::SplitCol(SwDoc&, SwSelBoxes const&, unsigned short)
+SwTable::SwClientNotify(SwModify const&, SfxHint const&)
+SwTable::SwTable()
+SwTable::SwTable(SwTable const&)
+SwTable::UpdateCharts() const
+SwTable::~SwTable()
+SwTableAutoFormat::CountPos(unsigned int, unsigned int, unsigned int, unsigned int)
+SwTableAutoFormat::FirstRowEndColumnIsRow()
+SwTableAutoFormat::FirstRowStartColumnIsRow()
+SwTableAutoFormat::GetBoxFormat(unsigned char) const
+SwTableAutoFormat::GetDefaultBoxFormat()
+SwTableAutoFormat::GetTableTemplateCellSubName(SwBoxAutoFormat const&) const
+SwTableAutoFormat::GetTableTemplateMap()
+SwTableAutoFormat::LastRowEndColumnIsRow()
+SwTableAutoFormat::LastRowStartColumnIsRow()
+SwTableAutoFormat::Load(SvStream&, SwAfVersions const&)
+SwTableAutoFormat::RestoreTableProperties(SwTable&) const
+SwTableAutoFormat::Save(SvStream&, unsigned short) const
+SwTableAutoFormat::SetBoxFormat(SwBoxAutoFormat const&, unsigned char)
+SwTableAutoFormat::StoreTableProperties(SwTable const&)
+SwTableAutoFormat::UpdateFromSet(unsigned char, SfxItemSet const&, SwTableAutoFormatUpdateFlags, SvNumberFormatter const*)
+SwTableAutoFormat::UpdateToSet(unsigned char, bool, bool, SfxItemSet&, SwTableAutoFormatUpdateFlags, SvNumberFormatter*) const
+SwTableAutoFormatTable::AddAutoFormat(SwTableAutoFormat const&)
+SwTableAutoFormatTable::EraseAutoFormat(rtl::OUString const&)
+SwTableAutoFormatTable::ReleaseAutoFormat(rtl::OUString const&)
+SwTableAutoFormatTable::operator[](unsigned long) const
+SwTableBox::ActualiseValueBox()
+SwTableBox::CheckBoxFormat(SwTableBoxFormat*)
+SwTableBox::FindEndOfRowSpan(SwTable const&, unsigned short)
+SwTableBox::FindNextBox(SwTable const&, SwTableBox const*, bool) const
+SwTableBox::FindPreviousBox(SwTable const&, SwTableBox const*) const
+SwTableBox::FindStartOfRowSpan(SwTable const&, unsigned short)
+SwTableBox::GetName() const
+SwTableBox::GetValue(SwTableCalcPara&) const
+SwTableBox::HasNumContent(double&, unsigned int&, bool&) const
+SwTableBox::IsEmpty() const
+SwTableBox::IsInHeadline(SwTable const*) const
+SwTableBox::IsNumberChanged() const
+SwTableBox::IsValidNumTextNd(bool) const
+SwTableBox::RegisterToFormat(SwFormat&)
+SwTableBox::RemoveFromTable()
+SwTableBox::SwTableBox(SwTableBoxFormat*, SwNodeIndex const&, SwTableLine*)
+SwTableBox::SwTableBox(SwTableBoxFormat*, SwStartNode const&, SwTableLine*)
+SwTableBox::SwTableBox(SwTableBoxFormat*, unsigned short, SwTableLine*)
+SwTableBox::getDummyFlag() const
+SwTableBox::setDummyFlag(bool)
+SwTableBox::~SwTableBox()
+SwTableBoxFormula::Calc(SwTableCalcPara&, double&)
+SwTableBoxFormula::ChangeState(SfxPoolItem const*)
+SwTableBoxFormula::GetNodeOfFormula() const
+SwTableBoxFormula::GetTableBox()
+SwTableBoxFormula::SwTableBoxFormula(rtl::OUString const&)
+SwTableBoxFormula::operator==(SfxPoolItem const&) const
+SwTableBoxNumFormat::Clone(SfxItemPool*) const
+SwTableBoxNumFormat::operator==(SfxPoolItem const&) const
+SwTableBoxValue::Clone(SfxItemPool*) const
+SwTableBoxValue::SwTableBoxValue()
+SwTableBoxValue::operator==(SfxPoolItem const&) const
+SwTableCellInfo::Impl::getNext()
+SwTableCellInfo::Impl::getNextCellFrame(SwFrame const*)
+SwTableCellInfo::Impl::getNextFrameInTable(SwFrame const*)
+SwTableCellInfo::Impl::getNextTableBoxsCellFrame(SwFrame const*)
+SwTableCellInfo::getCellFrame() const
+SwTableCellRedline::SwTableCellRedline(SwRedlineData const&, SwTableBox const&)
+SwTableCellRedline::~SwTableCellRedline()
+SwTableFUNC::ColWidthDlg(weld::Window*)
+SwTableFUNC::InsertChart(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataProvider> const&, bool, rtl::OUString const&, SwFlyFrameFormat**)
+SwTableFUNC::SwTableFUNC(SwWrtShell*)
+SwTableFUNC::UpdateChart()
+SwTableFUNC::~SwTableFUNC()
+SwTableFormula::BoxNmToPtr(SwTable const*)
+SwTableFormula::BoxNmsToPtr(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::BoxNmsToRelNm(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::FindTable(SwDoc&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SwTableFormula::GetBoxes(SwTableBox const&, SwTableBox const&, SwSelBoxes&)
+SwTableFormula::GetBoxesOfFormula(SwTable const&, SwSelBoxes&)
+SwTableFormula::GetFormulaBoxes(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::GetLnPosInTable(SwTable const&, SwTableBox const*)
+SwTableFormula::HasValidBoxes() const
+SwTableFormula::HasValidBoxes_(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::MakeFormula_(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::PtrToBoxNms(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::RelBoxNmsToPtr(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::RelNmsToBoxNms(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::ScanString(void (SwTableFormula::*)(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const, SwTable const&, void*) const
+SwTableFormula::SplitMergeBoxNm_(SwTable const&, rtl::OUStringBuffer&, rtl::OUString&, rtl::OUString*, void*) const
+SwTableFormula::SwTableFormula(rtl::OUString const&)
+SwTableFormula::ToRelBoxNm(SwTable const*)
+SwTableFormula::ToSplitMergeBoxNm(SwTableFormulaUpdate&)
+SwTableLine::ChgFrameFormat(SwTableLineFormat*)
+SwTableLine::FindNextBox(SwTable const&, SwTableBox const*, bool) const
+SwTableLine::FindPreviousBox(SwTable const&, SwTableBox const*, bool) const
+SwTableLine::GetTableLineHeight(bool&) const
+SwTableLine::IsDeleted(unsigned long&) const
+SwTableLine::IsEmpty() const
+SwTableLine::SwTableLine(SwTableLineFormat*, unsigned short, SwTableBox*)
+SwTableLine::hasSoftPageBreak() const
+SwTableLine::~SwTableLine()
+SwTableNode::MakeCopy(SwDoc&, SwNodeIndex const&) const
+SwTableNode::MakeFrame(SwFrame*)
+SwTableNode::MakeFramesForAdjacentContentNode(SwNodeIndex const&)
+SwTableNode::RemoveRedlines()
+SwTableNode::SetNewTable(std::unique_ptr<SwTable, std::default_delete<SwTable> >, bool)
+SwTableNode::SwTableNode(SwNodeIndex const&)
+SwTableNode::~SwTableNode()
+SwTableRep::FillTabCols(SwTabCols&) const
+SwTableRowRedline::SwTableRowRedline(SwRedlineData const&, SwTableLine const&)
+SwTableRowRedline::~SwTableRowRedline()
+SwTemplNameField::Copy() const
+SwTemplNameField::ExpandImpl(SwRootFrame const*) const
+SwTemplNameField::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwTemplNameField::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwTextBlocks::BeginGetDoc(unsigned short)
+SwTextBlocks::Delete(unsigned short)
+SwTextBlocks::EndGetDoc()
+SwTextBlocks::GetLongIndex(rtl::OUString const&) const
+SwTextBlocks::GetMacroTable(unsigned short, SvxMacroTableDtor&)
+SwTextBlocks::GetName() const
+SwTextBlocks::GetShortName(unsigned short) const
+SwTextBlocks::IsOnlyTextBlock(rtl::OUString const&) const
+SwTextBlocks::IsOnlyTextBlock(unsigned short) const
+SwTextBlocks::IsReadOnly() const
+SwTextBlocks::PutText(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+SwTextBlocks::Rename(unsigned short, rtl::OUString const*, rtl::OUString const*)
+SwTextBlocks::SetMacroTable(unsigned short, SvxMacroTableDtor const&)
+SwTextBlocks::SetName(rtl::OUString const&)
+SwTextBoxHelper::DoTextBoxZOrderCorrection(SwFrameFormat*, SdrObject const*)
+SwTextBoxHelper::changeAnchor(SwFrameFormat*, SdrObject*)
+SwTextBoxHelper::destroy(SwFrameFormat const*, SdrObject const*)
+SwTextBoxHelper::doTextBoxPositioning(SwFrameFormat*, SdrObject*)
+SwTextBoxHelper::getByIndex(SdrPage const*, int)
+SwTextBoxHelper::getOrdNum(SdrObject const*)
+SwTextBoxHelper::getProperty(SwFrameFormat const*, rtl::OUString const&)
+SwTextBoxHelper::getProperty(SwFrameFormat const*, unsigned short, unsigned char, com::sun::star::uno::Any&)
+SwTextBoxHelper::getShapeWrapThrough(SwFrameFormat const*, bool&)
+SwTextBoxHelper::getTextRectangle(SdrObject*, bool)
+SwTextBoxHelper::hasTextFrame(SdrObject const*)
+SwTextBoxHelper::isAnchorTypeDifferent(SwFrameFormat const*)
+SwTextBoxHelper::isTextBoxShapeHasValidTextFrame(SwFrameFormat const*)
+SwTextBoxHelper::mapAnchorType(RndStdIds const&)
+SwTextBoxHelper::queryInterface(SwFrameFormat const*, com::sun::star::uno::Type const&)
+SwTextBoxHelper::restoreLinks(std::set<ZSortFly, std::less<ZSortFly>, std::allocator<ZSortFly> >&, std::vector<SwFrameFormat*, std::allocator<SwFrameFormat*> >&, std::map<SwFrameFormat const*, SwFrameFormat const*, std::less<SwFrameFormat const*>, std::allocator<std::pair<SwFrameFormat const* const, SwFrameFormat const*> > >&)
+SwTextBoxHelper::saveLinks(SwFrameFormats const&, std::map<SwFrameFormat const*, SwFrameFormat const*, std::less<SwFrameFormat const*>, std::allocator<std::pair<SwFrameFormat const* const, SwFrameFormat const*> > >&)
+SwTextBoxHelper::setWrapThrough(SwFrameFormat*)
+SwTextBoxHelper::syncFlyFrameAttr(SwFrameFormat&, SfxItemSet const&, SdrObject*)
+SwTextBoxHelper::syncProperty(SwFrameFormat*, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::star::uno::Any const&, SdrObject*)
+SwTextBoxHelper::syncProperty(SwFrameFormat*, unsigned short, unsigned char, com::sun::star::uno::Any const&, SdrObject*)
+SwTextBoxHelper::updateTextBoxMargin(SdrObject*)
+SwTextFootnote::CheckCondColl()
+SwTextFootnote::CopyFootnote(SwTextFootnote&, SwTextNode&) const
+SwTextFootnote::DelFrames(SwRootFrame const*)
+SwTextFootnote::InvalidateNumberInLayout()
+SwTextFootnote::MakeNewTextSection(SwNodes&)
+SwTextFootnote::SetSeqRefNo()
+SwTextFootnote::SetStartNode(SwNodeIndex const*, bool)
+SwTextFootnote::SetUniqueSeqRefNo(SwDoc&)
+SwTextFootnote::SwTextFootnote(SwFormatFootnote&, int)
+SwTextFootnote::dumpAsXml(_xmlTextWriter*) const
+SwTextFootnote::~SwTextFootnote()
+SwTextFormatColl::AreListLevelIndentsApplicable() const
+SwTextFormatColl::GetAttrOutlineLevel() const
+SwTextFormatColl::IsAtDocNodeSet() const
+SwTextFormatColl::ResetAllFormatAttr()
+SwTextFormatColl::ResetFormatAttr(unsigned short, unsigned short)
+SwTextFormatColl::SetAttrOutlineLevel(int)
+SwTextFormatColl::SetFormatAttr(SfxItemSet const&)
+SwTextFormatColl::SetFormatAttr(SfxPoolItem const&)
+SwTextFormatColl::SetLinkedCharFormat(SwCharFormat&)
+SwTextFormatColl::SwClientNotify(SwModify const&, SfxHint const&)
+SwTextFormatColl::dumpAsXml(_xmlTextWriter*) const
+SwTextFormatColl::~SwTextFormatColl()
+SwTextFrame::AdjustFollow_(SwTextFormatter&, o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>, unsigned char)
+SwTextFrame::AdjustFrame(long, bool)
+SwTextFrame::AutoSpell_(SwTextNode&, int)
+SwTextFrame::CalcAdditionalFirstLineOffset()
+SwTextFrame::CalcBaseOfstForFly()
+SwTextFrame::CalcFitToContent()
+SwTextFrame::CalcFlyPos(SwFrameFormat const*)
+SwTextFrame::CalcFollow(o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::CalcFootnoteFlag()
+SwTextFrame::CalcHeightOfLastLine(bool)
+SwTextFrame::CalcLineSpace()
+SwTextFrame::CalcPrepFootnoteAdjust()
+SwTextFrame::CalcPreps()
+SwTextFrame::ChangeOffset(SwTextFrame*, o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::CheckDirection(bool)
+SwTextFrame::ChgThisLines()
+SwTextFrame::ClearPara()
+SwTextFrame::CollectAutoCmplWrds(SwTextNode&, int)
+SwTextFrame::ConnectFootnote(SwTextFootnote*, long)
+SwTextFrame::DestroyImpl()
+SwTextFrame::EmptyHeight() const
+SwTextFrame::FillCursorPos(SwFillData&) const
+SwTextFrame::FillRegister(long&, unsigned short&)
+SwTextFrame::FillSelection(SwSelectionList&, SwRect const&) const
+SwTextFrame::FindBrk(rtl::OUString const&, o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::FindFootnoteRef(SwTextFootnote const*)
+SwTextFrame::FindQuoVadisFrame()
+SwTextFrame::FirstLineHeight() const
+SwTextFrame::Format(OutputDevice*, SwBorderAttrs const*)
+SwTextFrame::FormatAdjust(SwTextFormatter&, WidowsAndOrphans&, o3tl::strong_int<int, Tag_TextFrameIndex>, bool)
+SwTextFrame::FormatEmpty()
+SwTextFrame::FormatLine(SwTextFormatter&, bool)
+SwTextFrame::FormatOnceMore(SwTextFormatter&, SwTextFormatInfo&)
+SwTextFrame::FormatQuick(bool)
+SwTextFrame::Format_(OutputDevice*, SwParaPortion*)
+SwTextFrame::Format_(SwTextFormatter&, SwTextFormatInfo&, bool)
+SwTextFrame::GetAutoPos(SwRect&, SwPosition const&) const
+SwTextFrame::GetBaseVertOffsetForFly(bool) const
+SwTextFrame::GetBreakItem() const
+SwTextFrame::GetCharRect(SwRect&, SwPosition const&, SwCursorMoveState*, bool) const
+SwTextFrame::GetCurWord(SwPosition const&) const
+SwTextFrame::GetDoc() const
+SwTextFrame::GetDropLen(o3tl::strong_int<int, Tag_TextFrameIndex>) const
+SwTextFrame::GetDropRect_(SwRect&) const
+SwTextFrame::GetFootnoteFrameHeight_() const
+SwTextFrame::GetFootnoteLine(SwTextFootnote const*) const
+SwTextFrame::GetFormatted(bool)
+SwTextFrame::GetFrameAtOfst(o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::GetFrameAtPos(SwPosition const&)
+SwTextFrame::GetInfo(SfxPoolItem&) const
+SwTextFrame::GetLangOfChar(o3tl::strong_int<int, Tag_TextFrameIndex>, unsigned short, bool) const
+SwTextFrame::GetLineCount(o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::GetLineSpace(bool) const
+SwTextFrame::GetModelPositionForViewPoint_(SwPosition*, Point const&, bool, SwCursorMoveState*) const
+SwTextFrame::GetPageDescItem() const
+SwTextFrame::GetParHeight() const
+SwTextFrame::GetScalingOfSelectedText(o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::GetScriptInfo() const
+SwTextFrame::GetTabStopInfo(long)
+SwTextFrame::GetText() const
+SwTextFrame::GetTextNodeForParaProps() const
+SwTextFrame::GetTopOfLine(long&, SwPosition const&) const
+SwTextFrame::HangingMargin() const
+SwTextFrame::HasPara_() const
+SwTextFrame::HideAndShowObjects()
+SwTextFrame::HideFootnotes(o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::HideHidden()
+SwTextFrame::Hyphenate(SwInterHyphInfoTextFrame&)
+SwTextFrame::Init()
+SwTextFrame::InvalidateRange_(SwCharRange const&, long)
+SwTextFrame::IsFootnoteNumFrame_() const
+SwTextFrame::IsHiddenNow() const
+SwTextFrame::IsIdxInside(o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>) const
+SwTextFrame::IsSymbolAt(o3tl::strong_int<int, Tag_TextFrameIndex>) const
+SwTextFrame::JoinFrame()
+SwTextFrame::LeftMargin(SwPaM*) const
+SwTextFrame::MakePos()
+SwTextFrame::MapModelToView(SwTextNode const*, int) const
+SwTextFrame::MapModelToViewPos(SwPosition const&) const
+SwTextFrame::MapViewToModel(o3tl::strong_int<int, Tag_TextFrameIndex>) const
+SwTextFrame::MapViewToModelPos(o3tl::strong_int<int, Tag_TextFrameIndex>) const
+SwTextFrame::MoveFlyInCnt(SwTextFrame*, o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::PaintEmpty(SwRect const&, bool) const
+SwTextFrame::PaintExtraData(SwRect const&) const
+SwTextFrame::PaintOutlineContentVisibilityButton() const
+SwTextFrame::PaintSwFrame(OutputDevice&, SwRect const&, SwPrintData const*) const
+SwTextFrame::PrepWidows(unsigned short, bool)
+SwTextFrame::Prepare(PrepareHint, void const*, bool)
+SwTextFrame::PrepareVisualMove(o3tl::strong_int<int, Tag_TextFrameIndex>&, unsigned char&, bool&, bool)
+SwTextFrame::RecalcAllLines()
+SwTextFrame::RegisterToNode(SwTextNode&, bool)
+SwTextFrame::RemoveFootnote(o3tl::strong_int<int, Tag_TextFrameIndex>, o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::RemoveFromCache()
+SwTextFrame::ResetPreps()
+SwTextFrame::RightMargin(SwPaM*, bool) const
+SwTextFrame::SetHasRotatedPortions(bool)
+SwTextFrame::SetMergedPara(std::unique_ptr<sw::MergedPara, std::default_delete<sw::MergedPara> >)
+SwTextFrame::SetOffset_(o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::SetPara(SwParaPortion*, bool)
+SwTextFrame::SmartTagScan(SwTextNode&)
+SwTextFrame::SplitFrame(o3tl::strong_int<int, Tag_TextFrameIndex>)
+SwTextFrame::StopAnimation(OutputDevice const*)
+SwTextFrame::SwClientNotify(SwModify const&, SfxHint const&)
+SwTextFrame::SwTextFrame(SwTextNode*, SwFrame*, sw::FrameMode)
+SwTextFrame::SwitchHorizontalToVertical(Point&) const
+SwTextFrame::SwitchHorizontalToVertical(SwRect&) const
+SwTextFrame::SwitchHorizontalToVertical(long) const
+SwTextFrame::SwitchLTRtoRTL(Point&) const
+SwTextFrame::SwitchLTRtoRTL(SwRect&) const
+SwTextFrame::SwitchVerticalToHorizontal(Point&) const
+SwTextFrame::SwitchVerticalToHorizontal(long) const
+SwTextFrame::TestFormat(SwFrame const*, long&, bool&)
+SwTextFrame::UnitDown(SwPaM*, long, bool) const
+SwTextFrame::UnitDown_(SwPaM*, long, bool) const
+SwTextFrame::UnitUp(SwPaM*, long, bool) const
+SwTextFrame::UnitUp_(SwPaM*, long, bool) const
+SwTextFrame::UpdateOutlineContentVisibilityButton(SwWrtShell*) const
+SwTextFrame::ValidateBodyFrame()
+SwTextFrame::ValidateFrame()
+SwTextFrame::WouldFit(long&, bool&, bool)
+SwTextFrame::dumpAsXmlAttributes(_xmlTextWriter*) const
+SwTextFrame::repaintTextFrames(SwTextNode const&)
+SwTextFrame::~SwTextFrame()
+SwTextGridItem::Clone(SfxItemPool*) const
+SwTextGridItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+SwTextGridItem::Init()
+SwTextGridItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwTextGridItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwTextGridItem::SwitchPaperMode(bool)
+SwTextGridItem::operator==(SfxPoolItem const&) const
+SwTextINetFormat::GetInfo(SfxPoolItem&) const
+SwTextINetFormat::IsProtect() const
+SwTextINetFormat::SwClientNotify(SwModify const&, SfxHint const&)
+SwTextINetFormat::SwTextINetFormat(SwFormatINetFormat&, int, int)
+SwTextINetFormat::~SwTextINetFormat()
+SwTextNode::AddToList()
+SwTextNode::AddToListRLHidden()
+SwTextNode::AppendNode(SwPosition const&)
+SwTextNode::ChgTextCollUpdateNum(SwTextFormatColl const*, SwTextFormatColl const*)
+SwTextNode::ClearGrammarCheck()
+SwTextNode::ClearLRSpaceItemDueToListLevelIndents(std::shared_ptr<SvxLRSpaceItem>&) const
+SwTextNode::ClearSmartTags()
+SwTextNode::ClearSwpHintsArr(bool)
+SwTextNode::ClearWrong()
+SwTextNode::CompareParRsid(SwTextNode const&) const
+SwTextNode::CompareRsid(SwTextNode const&, int, int) const
+SwTextNode::Convert(SwConversionArgs&)
+SwTextNode::CopyExpandText(SwTextNode&, SwIndex const*, int, int, SwRootFrame const*, bool, bool, bool) const
+SwTextNode::CopyText(SwTextNode*, SwIndex const&, SwIndex const&, int, bool)
+SwTextNode::CopyText(SwTextNode*, SwIndex const&, int, bool)
+SwTextNode::CountWords(SwDocStat&, int, int) const
+SwTextNode::CutText(SwTextNode*, SwIndex const&, int)
+SwTextNode::DelFrames_TextNodePart()
+SwTextNode::DelSoftHyph(int, int)
+SwTextNode::DeleteAttribute(SwTextAttr*)
+SwTextNode::DeleteAttributes(unsigned short, int, int)
+SwTextNode::DestroyAttr(SwTextAttr*)
+SwTextNode::DoNum(std::function<void (SwNodeNum&)> const&)
+SwTextNode::DontExpandFormat(SwIndex const&, bool, bool)
+SwTextNode::EraseText(SwIndex const&, int, SwInsertFlags)
+SwTextNode::FileLoadedInitHints()
+SwTextNode::GCAttr()
+SwTextNode::GetAdditionalIndentForStartingNewList() const
+SwTextNode::GetAttrListLevel() const
+SwTextNode::GetAttrListRestartValue() const
+SwTextNode::GetAttrOutlineContentVisible(bool&)
+SwTextNode::GetAttrOutlineLevel() const
+SwTextNode::GetFieldTextAttrAt(int, bool) const
+SwTextNode::GetFirstLineOfsWithNum(short&) const
+SwTextNode::GetGrammarCheck()
+SwTextNode::GetGrammarCheck() const
+SwTextNode::GetLabelFollowedBy() const
+SwTextNode::GetLeftMarginForTabCalculation() const
+SwTextNode::GetLeftMarginWithNum(bool) const
+SwTextNode::GetListTabStopPosition(long&) const
+SwTextNode::GetMinMaxSize(o3tl::strong_int<int, Tag_SwNodeOffset>, unsigned long&, unsigned long&, unsigned long&) const
+SwTextNode::GetNum(SwRootFrame const*) const
+SwTextNode::GetNumberVector(SwRootFrame const*) const
+SwTextNode::GetOverlappingInputField(SwTextAttr const&) const
+SwTextNode::GetParRsid() const
+SwTextNode::GetRegistry()
+SwTextNode::GetRsid(int, int) const
+SwTextNode::GetSmartTags()
+SwTextNode::GetSmartTags() const
+SwTextNode::GetTextAttrAt(int, unsigned short, SwTextNode::GetTextAttrMode) const
+SwTextNode::GetTextAttrsAt(int, unsigned short) const
+SwTextNode::GetWidthOfLeadingTabs() const
+SwTextNode::GetWrong()
+SwTextNode::GetWrong() const
+SwTextNode::GetWrongDirty() const
+SwTextNode::HasAttrListLevel() const
+SwTextNode::HasAttrListRestartValue() const
+SwTextNode::HasBullet() const
+SwTextNode::HasMarkedLabel() const
+SwTextNode::HasNumber() const
+SwTextNode::HasVisibleNumberingOrBullet() const
+SwTextNode::Hyphenate(SwInterHyphInfo&)
+SwTextNode::InsertHint(SwTextAttr*, SetAttrMode)
+SwTextNode::InsertText(rtl::OUString const&, SwIndex const&, SwInsertFlags)
+SwTextNode::IsAutoCompleteWordDirty() const
+SwTextNode::IsCollapse() const
+SwTextNode::IsFirstOfNumRule(SwRootFrame const&) const
+SwTextNode::IsGrammarCheckDirty() const
+SwTextNode::IsHidden() const
+SwTextNode::IsIgnoredCharFormatForNumbering(unsigned short, bool)
+SwTextNode::IsInClipboard() const
+SwTextNode::IsInContent() const
+SwTextNode::IsInUndo() const
+SwTextNode::IsNotifiable() const
+SwTextNode::IsNotificationEnabled() const
+SwTextNode::IsOutlineStateChanged() const
+SwTextNode::IsSmartTagDirty() const
+SwTextNode::IsSymbolAt(int) const
+SwTextNode::IsWordCountDirty() const
+SwTextNode::IsWrongDirty() const
+SwTextNode::MakeCopy(SwDoc&, SwNodeIndex const&, bool) const
+SwTextNode::MakeFrame(SwFrame*)
+SwTextNode::MakeUnoObject()
+SwTextNode::NumRuleChgd()
+SwTextNode::ReleaseGrammarCheck()
+SwTextNode::ReleaseSmartTags()
+SwTextNode::ReleaseWrong()
+SwTextNode::RemoveFromList()
+SwTextNode::RemoveFromListRLHidden()
+SwTextNode::ReplaceText(SwIndex const&, int, rtl::OUString const&)
+SwTextNode::ReplaceTextOnly(int, int, rtl::OUString const&, com::sun::star::uno::Sequence<int> const&)
+SwTextNode::ResetAllAttr()
+SwTextNode::ResetAttr(std::vector<unsigned short, std::allocator<unsigned short> > const&)
+SwTextNode::ResetEmptyListStyleDueToResetOutlineLevelAttr()
+SwTextNode::SetAttr(SfxItemSet const&)
+SwTextNode::SetAttr(SfxItemSet const&, int, int, SetAttrMode, SwTextAttr**)
+SwTextNode::SetAttrOutlineContentVisible(bool)
+SwTextNode::SetAttrOutlineLevel(int)
+SwTextNode::SetAutoCompleteWordDirty(bool) const
+SwTextNode::SetEmptyListStyleDueToSetOutlineLevelAttr()
+SwTextNode::SetGrammarCheck(std::unique_ptr<SwGrammarMarkUp, std::default_delete<SwGrammarMarkUp> >)
+SwTextNode::SetGrammarCheckDirty(bool) const
+SwTextNode::SetInSwUndo(bool)
+SwTextNode::SetListId(rtl::OUString const&)
+SwTextNode::SetSmartTagDirty(bool) const
+SwTextNode::SetSmartTags(std::unique_ptr<SwWrongList, std::default_delete<SwWrongList> >)
+SwTextNode::SetWordCountDirty(bool) const
+SwTextNode::SetWrong(std::unique_ptr<SwWrongList, std::default_delete<SwWrongList> >)
+SwTextNode::SetWrongDirty(SwTextNode::WrongState) const
+SwTextNode::Spell(SwSpellArgs*)
+SwTextNode::SplitContentNode(SwPosition const&, std::function<void (SwTextNode*, sw::mark::RestoreMode, bool)> const*)
+SwTextNode::SwClientNotify(SwModify const&, SfxHint const&)
+SwTextNode::TransliterateText(utl::TransliterationWrapper&, int, int, SwUndoTransliterate*, bool)
+SwTextNode::TriggerNodeUpdate(sw::LegacyModifyHint const&)
+SwTextNode::Update(SwIndex const&, int, bool, bool)
+SwTextNode::UpdateOutlineState()
+SwTextNode::dumpAsXml(_xmlTextWriter*) const
+SwTextNode::getSdrAllFillAttributesHelper() const
+SwTextNode::~SwTextNode()
+SwTextRuby::GetInfo(SfxPoolItem&) const
+SwTextRuby::SwClientNotify(SwModify const&, SfxHint const&)
+SwTextRuby::SwTextRuby(SwFormatRuby&, int, int)
+SwTextRuby::~SwTextRuby()
+SwTextShell::ExecBasicMove(SfxRequest&)
+SwTextShell::ExecCharAttr(SfxRequest&)
+SwTextShell::ExecCharAttrArgs(SfxRequest&)
+SwTextShell::ExecDB(SfxRequest const&)
+SwTextShell::ExecDelete(SfxRequest&)
+SwTextShell::ExecEnterNum(SfxRequest&)
+SwTextShell::ExecField(SfxRequest&)
+SwTextShell::ExecGlossary(SfxRequest&)
+SwTextShell::ExecIdx(SfxRequest const&)
+SwTextShell::ExecInsert(SfxRequest&)
+SwTextShell::ExecMove(SfxRequest&)
+SwTextShell::ExecMoveCol(SfxRequest&)
+SwTextShell::ExecMoveLingu(SfxRequest&)
+SwTextShell::ExecMoveMisc(SfxRequest&)
+SwTextShell::ExecMovePage(SfxRequest&)
+SwTextShell::ExecParaAttr(SfxRequest&)
+SwTextShell::ExecParaAttrArgs(SfxRequest&)
+SwTextShell::ExecRotateTransliteration(SfxRequest const&)
+SwTextShell::ExecSetNumber(SfxRequest const&)
+SwTextShell::ExecTransliteration(SfxRequest const&)
+SwTextShell::Execute(SfxRequest&)
+SwTextShell::GetAttrState(SfxItemSet&)
+SwTextShell::GetIdxState(SfxItemSet&)
+SwTextShell::GetInterface() const
+SwTextShell::GetState(SfxItemSet&)
+SwTextShell::GetStaticInterface()
+SwTextShell::InitInterface_Impl()
+SwTextShell::InsertHyperlink(SvxHyperlinkItem const&)
+SwTextShell::InsertMediaDlg(SfxRequest const&)
+SwTextShell::InsertSymbol(SfxRequest&)
+SwTextShell::RegisterInterface(SfxModule const*)
+SwTextShell::StateField(SfxItemSet&)
+SwTextShell::StateInsert(SfxItemSet&)
+SwTransferable::AddSupportedFormats()
+SwTransferable::CalculateAndCopy()
+SwTransferable::CheckForURLOrLNKFile(TransferableDataHelper const&, rtl::OUString&, rtl::OUString*)
+SwTransferable::ClearSelection(SwWrtShell const&, SwFrameShell const*)
+SwTransferable::CopyGlossary(SwTextBlocks&, rtl::OUString const&)
+SwTransferable::CreateSelection(SwWrtShell&, SwFrameShell const*)
+SwTransferable::DeleteSelection()
+SwTransferable::DragFinished(signed char)
+SwTransferable::FillClipFormatItem(SwWrtShell const&, TransferableDataHelper const&, SvxClipboardFormatItem&)
+SwTransferable::FindOLEObj(long&) const
+SwTransferable::FindOLEReplacementGraphic() const
+SwTransferable::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+SwTransferable::GetSotDestination(SwWrtShell const&)
+SwTransferable::GetSwTransferable(TransferableDataHelper const&)
+SwTransferable::InitOle(SfxObjectShell*)
+SwTransferable::IsPaste(SwWrtShell const&, TransferableDataHelper const&)
+SwTransferable::IsPasteOwnFormat(TransferableDataHelper const&)
+SwTransferable::IsPasteSpecial(SwWrtShell const&, TransferableDataHelper const&)
+SwTransferable::ObjectReleased()
+SwTransferable::PasteAsHyperlink(TransferableDataHelper const&, SwWrtShell&, SotClipboardFormatId)
+SwTransferable::PasteDBData(TransferableDataHelper const&, SwWrtShell&, SotClipboardFormatId, bool, Point const*, bool)
+SwTransferable::PasteDDE(TransferableDataHelper const&, SwWrtShell&, bool, bool)
+SwTransferable::PasteData(TransferableDataHelper&, SwWrtShell&, unsigned char, SotExchangeActionFlags, SotClipboardFormatId, SotExchangeDest, bool, bool, Point const*, signed char, bool, RndStdIds, bool, SwPasteContext*, PasteTableType)
+SwTransferable::PasteFileContent(TransferableDataHelper const&, SwWrtShell&, SotClipboardFormatId, bool, bool)
+SwTransferable::PasteFileList(TransferableDataHelper const&, SwWrtShell&, bool, Point const*, bool)
+SwTransferable::PasteFileName(TransferableDataHelper&, SwWrtShell&, SotClipboardFormatId, SwPasteSdr, Point const*, SotExchangeActionFlags, bool*)
+SwTransferable::PasteFormat(SwWrtShell&, TransferableDataHelper&, SotClipboardFormatId)
+SwTransferable::PasteGrf(TransferableDataHelper const&, SwWrtShell&, SotClipboardFormatId, SwPasteSdr, Point const*, SotExchangeActionFlags, signed char, bool, RndStdIds)
+SwTransferable::PasteImageMap(TransferableDataHelper const&, SwWrtShell&)
+SwTransferable::PasteOLE(TransferableDataHelper&, SwWrtShell&, SotClipboardFormatId, SotExchangeActionFlags, bool)
+SwTransferable::PasteSdrFormat(TransferableDataHelper const&, SwWrtShell&, SwPasteSdr, Point const*, SotExchangeActionFlags, bool)
+SwTransferable::PasteTargetURL(TransferableDataHelper const&, SwWrtShell&, SwPasteSdr, Point const*, bool)
+SwTransferable::PasteUnformatted(SwWrtShell&, TransferableDataHelper&)
+SwTransferable::PrePasteSpecial(SwWrtShell const&, TransferableDataHelper&, VclPtr<SfxAbstractPasteDialog> const&)
+SwTransferable::PrepareForCopy(bool)
+SwTransferable::PrepareForCopyTextRange(SwPaM&)
+SwTransferable::PrivateDrop(SwWrtShell&, Point const&, bool, bool)
+SwTransferable::PrivatePaste(SwWrtShell&, SwPasteContext*, PasteTableType)
+SwTransferable::RemoveDDELinkFormat(vcl::Window&)
+SwTransferable::SetDataForDragAndDrop(Point const&)
+SwTransferable::SetSelInShell(SwWrtShell&, bool, Point const*)
+SwTransferable::StartDrag(vcl::Window*, Point const&)
+SwTransferable::TestAllowedFormat(TransferableDataHelper const&, SotClipboardFormatId, SotExchangeDest)
+SwTransferable::WriteObject(tools::SvRef<SotTempStream>&, void*, unsigned int, com::sun::star::datatransfer::DataFlavor const&)
+SwTransferable::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SwTransferable::getUnoTunnelId()
+SwTransferable::isComplex()
+SwTransferable::~SwTransferable()
+SwUINumRuleItem::Clone(SfxItemPool*) const
+SwUINumRuleItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+SwUINumRuleItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+SwUINumRuleItem::SwUINumRuleItem(SwUINumRuleItem const&)
+SwUINumRuleItem::operator==(SfxPoolItem const&) const
+SwUnoCursorHelper::GetSelectableFromAny(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, SwDoc&, SwPaM*&, std::pair<rtl::OUString, FlyCntType>&, rtl::OUString&, SwUnoTableCursor const*&, sw::mark::IMark const*&, std::vector<SdrObject*, std::allocator<SdrObject*> >&)
+SwUnoInternalPaM::operator=(SwPaM const&)
+SwUserFieldType::Copy() const
+SwUserFieldType::Expand(unsigned int, unsigned short, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwUserFieldType::GetValue(SwCalc&)
+SwUserFieldType::PutValue(com::sun::star::uno::Any const&, unsigned short)
+SwUserFieldType::QueryValue(com::sun::star::uno::Any&, unsigned short) const
+SwUserFieldType::SwClientNotify(SwModify const&, SfxHint const&)
+SwUserFieldType::dumpAsXml(_xmlTextWriter*) const
+SwValueField::ChgTyp(SwFieldType*)
+SwValueField::GetValue() const
+SwValueField::SetValue(double const&)
+SwValueField::SwValueField(SwValueField const&)
+SwValueField::SwValueField(SwValueFieldType*, unsigned int, o3tl::strong_int<unsigned short, LanguageTypeTag>, double)
+SwValueField::dumpAsXml(_xmlTextWriter*) const
+SwView::Activate(bool)
+SwView::AddTransferable(SwTransferable&)
+SwView::ApplyAccessibilityOptions(SvtAccessibilityOptions const&)
+SwView::AreOnlyFormsSelected() const
+SwView::AutoCaption(unsigned short, SvGlobalName const*)
+SwView::ChangeTabMetric(FieldUnit)
+SwView::ChangeVRulerMetric(FieldUnit)
+SwView::CheckVisArea()
+SwView::CreateInstance(SfxViewFrame*, SfxViewShell*)
+SwView::CreateTab()
+SwView::CreateTmpSelectionDoc()
+SwView::CreateVRuler()
+SwView::Deactivate(bool)
+SwView::DoVerb(int)
+SwView::DocSzChgd(Size const&)
+SwView::EditLinkDlg()
+SwView::EnableHScrollbar(bool)
+SwView::EnableMailMerge()
+SwView::EnableVScrollbar(bool)
+SwView::EnsureMailMergeConfigItem(SfxItemSet const*)
+SwView::EnterDrawTextMode(Point const&)
+SwView::ExecColl(SfxRequest const&)
+SwView::ExecDlg(SfxRequest const&)
+SwView::ExecDlgExt(SfxRequest const&)
+SwView::ExecDraw(SfxRequest const&)
+SwView::ExecDrwTextSpellPopup(Point const&)
+SwView::ExecFormatFootnote()
+SwView::ExecFormatPaintbrush(SfxRequest const&)
+SwView::ExecLingu(SfxRequest&)
+SwView::ExecNumberingOutline(SfxItemPool&)
+SwView::ExecSearch(SfxRequest&)
+SwView::ExecSmartTagPopup(Point const&)
+SwView::ExecSpellPopup(Point const&)
+SwView::ExecTabWin(SfxRequest const&)
+SwView::ExecViewOptions(SfxRequest&)
+SwView::Execute(SfxRequest&)
+SwView::ExecuteInsertDoc(SfxRequest&, SfxPoolItem const*)
+SwView::ExecutePrint(SfxRequest&)
+SwView::ExecuteScan(SfxRequest&)
+SwView::ExecuteStatusLine(SfxRequest&)
+SwView::ExitDraw()
+SwView::GenerateFormLetter(bool)
+SwView::GetDispatcher()
+SwView::GetDrawState(SfxItemSet&)
+SwView::GetDrawView() const
+SwView::GetGlosHdl()
+SwView::GetHRulerMetric(FieldUnit&) const
+SwView::GetInterface() const
+SwView::GetMoveType()
+SwView::GetPageStr(unsigned short, unsigned short, rtl::OUString const&)
+SwView::GetRedlineAuthor() const
+SwView::GetSearchDialog()
+SwView::GetSelectionText(bool)
+SwView::GetShellMode() const
+SwView::GetStaticInterface()
+SwView::GetThesaurusLookUpText(bool) const
+SwView::GetUNOObject()
+SwView::GetVRulerMetric(FieldUnit&) const
+SwView::GotFocus() const
+SwView::HandleWheelCommands(CommandEvent const&)
+SwView::HasOnlyObj(SdrObject const*, SdrInventor) const
+SwView::HasSelection(bool) const
+SwView::HasUIFeature(SfxShellFeature) const
+SwView::ImpSetVerb(SelectionType)
+SwView::InitFactory()
+SwView::InitInterface_Impl()
+SwView::InnerResizePixel(Point const&, Size const&, bool)
+SwView::InsFrameMode(unsigned short)
+SwView::InsertDoc(unsigned short, rtl::OUString const&, rtl::OUString const&, short)
+SwView::InsertMedium(unsigned short, std::unique_ptr<SfxMedium, std::default_delete<SfxMedium> >, short)
+SwView::InsertThesaurusSynonym(rtl::OUString const&, rtl::OUString const&, bool)
+SwView::IsBezierEditMode() const
+SwView::IsConditionalFastCall(SfxRequest const&)
+SwView::IsDocumentBorder()
+SwView::IsFormMode() const
+SwView::IsHScrollbarVisible() const
+SwView::IsPasteAllowed()
+SwView::IsPasteSpecialAllowed()
+SwView::IsPasteSpreadsheet(bool)
+SwView::IsScroll(tools::Rectangle const&) const
+SwView::IsVScrollbarVisible() const
+SwView::IsValidSelectionForThesaurus() const
+SwView::KillTab()
+SwView::KillVRuler()
+SwView::LinkStubAttrChangedNotify(void*, LinkParamNone*)
+SwView::MarginChanged()
+SwView::NoRotate()
+SwView::NotifyCursor(SfxViewShell*) const
+SwView::NotifyDBChanged()
+SwView::OuterResizePixel(Point const&, Size const&)
+SwView::PrepareClose(bool)
+SwView::ReadUserData(rtl::OUString const&, bool)
+SwView::ReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwView::RecheckBrowseMode()
+SwView::RegisterFactory(o3tl::strong_int<unsigned short, SfxInterfaceIdTag>)
+SwView::RegisterInterface(SfxModule const*)
+SwView::ScannerEventHdl()
+SwView::Scroll(tools::Rectangle const&, unsigned short, unsigned short)
+SwView::SelectShell()
+SwView::SelectShellForDrop()
+SwView::SetActMark(int)
+SwView::SetDrawFuncPtr(std::unique_ptr<SwDrawBase, std::default_delete<SwDrawBase> >)
+SwView::SetHScrollMax(long)
+SwView::SetMoveType(unsigned short)
+SwView::SetOldDrwCat(rtl::OUString const&)
+SwView::SetOldFrameCat(rtl::OUString const&)
+SwView::SetOldGrfCat(rtl::OUString const&)
+SwView::SetOldTabCat(rtl::OUString const&)
+SwView::SetPrinter(SfxPrinter*, SfxPrinterChangeFlags)
+SwView::SetSelDrawSlot()
+SwView::SetVScrollMax(long)
+SwView::SetVisArea(Point const&, bool)
+SwView::SetVisArea(tools::Rectangle const&, bool)
+SwView::SetZoom(SvxZoomType, short, bool)
+SwView::SetZoomFactor(Fraction const&, Fraction const&)
+SwView::ShowCursor(bool)
+SwView::ShowHScrollbar(bool)
+SwView::ShowUIElement(rtl::OUString const&) const
+SwView::ShowVScrollbar(bool)
+SwView::SpellError(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+SwView::StateFormatPaintbrush(SfxItemSet&)
+SwView::StateSearch(SfxItemSet&)
+SwView::StateStatusLine(SfxItemSet&)
+SwView::StateTabWin(SfxItemSet&)
+SwView::StateViewOptions(SfxItemSet&)
+SwView::SwView(SfxViewFrame*, SfxViewShell*)
+SwView::UpdateDocStats()
+SwView::UpdatePageNums()
+SwView::UpdateWordCount(SfxShell*, unsigned short)
+SwView::WriteUserData(rtl::OUString&, bool)
+SwView::WriteUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+SwView::dumpAsXml(_xmlTextWriter*) const
+SwView::flushPendingLOKInvalidateTiles()
+SwView::getLOKPayload(int, int, bool*) const
+SwView::getLOKVisibleArea() const
+SwView::getPart() const
+SwView::isQRCodeSelected() const
+SwView::isSignatureLineSelected() const
+SwView::isSignatureLineSigned() const
+SwView::~SwView()
+SwViewOption::ApplyColorConfigValues(svtools::ColorConfig const&)
+SwViewOption::DrawRect(OutputDevice*, SwRect const&, Color)
+SwViewOption::DrawRectPrinter(OutputDevice*, SwRect const&)
+SwViewOption::GetAppBackgroundColor()
+SwViewOption::GetDefaultAnchorType() const
+SwViewOption::GetDirectCursorColor()
+SwViewOption::GetDocBoundariesColor()
+SwViewOption::GetDocColor()
+SwViewOption::GetFieldShadingsColor()
+SwViewOption::GetHeaderFooterMarkColor()
+SwViewOption::GetIndexShadingsColor()
+SwViewOption::GetLinksColor()
+SwViewOption::GetObjectBoundariesColor()
+SwViewOption::GetPageBreakColor()
+SwViewOption::GetPostItsWidth(OutputDevice const*)
+SwViewOption::GetSectionBoundColor()
+SwViewOption::GetShadowColor()
+SwViewOption::GetSmarttagColor()
+SwViewOption::GetSpellColor()
+SwViewOption::GetTableBoundariesColor()
+SwViewOption::GetTextGridColor()
+SwViewOption::GetVisitedLinksColor()
+SwViewOption::Init(OutputDevice const*)
+SwViewOption::IsAppearanceFlag(ViewOptFlags)
+SwViewOption::IsAutoCompleteWords()
+SwViewOption::IsEqualFlags(SwViewOption const&) const
+SwViewOption::IsIgnoreProtectedArea()
+SwViewOption::IsShowOutlineContentVisibilityButton() const
+SwViewOption::IsTreatSubOutlineLevelsAsContent() const
+SwViewOption::PaintPostIts(OutputDevice*, SwRect const&, bool)
+SwViewOption::SetAppearanceFlag(ViewOptFlags, bool, bool)
+SwViewOption::SetOnlineSpell(bool)
+SwViewOption::SwViewOption()
+SwViewOption::operator=(SwViewOption const&)
+SwViewShell::AddPaintRect(SwRect const&)
+SwViewShell::AdjustOptionsForPagePreview(SwPrintData const&)
+SwViewShell::ApplyAccessibilityOptions(SvtAccessibilityOptions const&)
+SwViewShell::ApplyViewOptions(SwViewOption const&)
+SwViewShell::CalcLayout()
+SwViewShell::CalcPagesForPrint(unsigned short)
+SwViewShell::CareChildWin(SwViewShell const&)
+SwViewShell::ChgAllPageOrientation(Orientation)
+SwViewShell::ChgAllPageSize(Size const&)
+SwViewShell::ChgNumberDigits()
+SwViewShell::CreateAccessible()
+SwViewShell::CreateAccessiblePreview()
+SwViewShell::DLPostPaint2(bool)
+SwViewShell::DLPrePaint2(vcl::Region const&)
+SwViewShell::DeleteReplacementBitmaps()
+SwViewShell::DrawSelChanged()
+SwViewShell::FillPrtDoc(SwDoc&, SfxPrinter const*)
+SwViewShell::FlushPendingLOKInvalidateTiles()
+SwViewShell::GetAccessibleMap()
+SwViewShell::GetBrowseBorder() const
+SwViewShell::GetBrowseWidth() const
+SwViewShell::GetDocSize() const
+SwViewShell::GetDrawViewWithValidMarkList()
+SwViewShell::GetIDocumentUndoRedo()
+SwViewShell::GetIDocumentUndoRedo() const
+SwViewShell::GetNodes() const
+SwViewShell::GetNumPages() const
+SwViewShell::GetPageNumAndSetOffsetForPDF(OutputDevice&, SwRect const&) const
+SwViewShell::GetPagePos(unsigned short) const
+SwViewShell::GetRefDev() const
+SwViewShell::GetReplacementBitmap(bool)
+SwViewShell::GetRestoreActions() const
+SwViewShell::HasCharts() const
+SwViewShell::HasDrawView() const
+SwViewShell::HasDrawViewDrag() const
+SwViewShell::ImplLockPaint()
+SwViewShell::ImplUnlockPaint(bool)
+SwViewShell::InitPrt(OutputDevice*)
+SwViewShell::InvalidateAccessibleFocus()
+SwViewShell::InvalidateAccessibleParaAttrs(SwTextFrame const&)
+SwViewShell::InvalidateAccessibleParaFlowRelation(SwTextFrame const*, SwTextFrame const*)
+SwViewShell::InvalidateAccessibleParaTextSelection()
+SwViewShell::InvalidateLayout(bool)
+SwViewShell::InvalidateWindows(SwRect const&)
+SwViewShell::IsAnyFieldInDoc() const
+SwViewShell::IsDummyPage(unsigned short) const
+SwViewShell::IsNewLayout() const
+SwViewShell::LayoutIdle()
+SwViewShell::MakeDrawView()
+SwViewShell::MakeVisible(SwRect const&)
+SwViewShell::OnGraphicArrived(SwRect const&)
+SwViewShell::PagePreviewLayout()
+SwViewShell::Paint(OutputDevice&, tools::Rectangle const&)
+SwViewShell::PaintTile(VirtualDevice&, int, int, int, int, long, long)
+SwViewShell::PrePaint()
+SwViewShell::PrintOrPDFExport(OutputDevice*, SwPrintData const&, int, bool)
+SwViewShell::PrintProspect(OutputDevice*, SwPrintData const&, int)
+SwViewShell::PrtOle2(SwDoc*, SwViewOption const*, SwPrintData const&, OutputDevice&, tools::Rectangle const&)
+SwViewShell::SetBrowseBorder(Size const&)
+SwViewShell::SetFirstVisPageInvalid()
+SwViewShell::SetPDFExportOption(bool)
+SwViewShell::SetPrtFormatOption(bool)
+SwViewShell::SetReadonlyOption(bool)
+SwViewShell::SetReadonlySelectionOption(bool)
+SwViewShell::SetRestoreActions(unsigned short)
+SwViewShell::SetShowHeaderFooterSeparator(FrameControlType, bool)
+SwViewShell::SetUIOptions(SwViewOption const&)
+SwViewShell::ShowPreviewSelection(unsigned short)
+SwViewShell::SizeChgNotify()
+SwViewShell::SmoothScroll(long, long, tools::Rectangle const*)
+SwViewShell::SwViewShell(SwDoc&, vcl::Window*, SwViewOption const*, OutputDevice*, long)
+SwViewShell::SwViewShell(SwViewShell&, vcl::Window*, OutputDevice*, long)
+SwViewShell::ToggleHeaderFooterEdit()
+SwViewShell::UISizeNotify()
+SwViewShell::UpdateAllCharts()
+SwViewShell::VisArea() const
+SwViewShell::VisPortChgd(SwRect const&)
+SwViewShell::dumpAsXml(_xmlTextWriter*) const
+SwViewShell::getIDocumentContentOperations()
+SwViewShell::getIDocumentDeviceAccess() const
+SwViewShell::getIDocumentDrawModelAccess()
+SwViewShell::getIDocumentDrawModelAccess() const
+SwViewShell::getIDocumentLayoutAccess()
+SwViewShell::getIDocumentLayoutAccess() const
+SwViewShell::getIDocumentMarkAccess() const
+SwViewShell::getIDocumentRedlineAccess()
+SwViewShell::getIDocumentRedlineAccess() const
+SwViewShell::getIDocumentSettingAccess() const
+SwViewShell::getIDocumentStatistics() const
+SwViewShell::isOutputToWindow() const
+SwViewShell::setOutputToWindow(bool)
+SwViewShell::~SwViewShell()
+SwVisibleCursor::Hide()
+SwVisibleCursor::SetPosAndShow(SfxViewShell const*)
+SwVisibleCursor::Show()
+SwVisibleCursor::SwVisibleCursor(SwCursorShell const*)
+SwVisibleCursor::getLOKPayload(int, int, bool*) const
+SwVisibleCursor::~SwVisibleCursor()
+SwWait::EnterWaitAndLockDispatcher()
+SwWait::LeaveWaitAndUnlockDispatcher()
+SwWebDocShell::Factory()
+SwWebDocShell::FillClass(SvGlobalName*, SotClipboardFormatId*, rtl::OUString*, int, bool) const
+SwWebDocShell::GetInterface() const
+SwWebDocShell::GetStaticInterface()
+SwWebDocShell::InitInterface_Impl()
+SwWebDocShell::RegisterInterface(SfxModule const*)
+SwWebDocShell::SwWebDocShell()
+SwWebDocShell::~SwWebDocShell()
+SwWebView::CreateInstance(SfxViewFrame*, SfxViewShell*)
+SwWebView::GetInterface() const
+SwWebView::GetStaticInterface()
+SwWebView::InitFactory()
+SwWebView::InitInterface_Impl()
+SwWebView::RegisterFactory(o3tl::strong_int<unsigned short, SfxInterfaceIdTag>)
+SwWebView::RegisterInterface(SfxModule const*)
+SwWebView::SelectShell()
+SwWebView::SwWebView(SfxViewFrame*, SfxViewShell*)
+SwWebView::~SwWebView()
+SwWriteTable::CollectTableRowsCols(long, unsigned int, long, unsigned int, SwTableLines const&, unsigned short)
+SwWriteTable::FillTableRowsCols(long, unsigned short, unsigned int, unsigned short, long, unsigned int, SwTableLines const&, SvxBrushItem const*, unsigned short, unsigned short)
+SwWriteTable::GetAbsHeight(long, unsigned long, unsigned short) const
+SwWriteTable::GetAbsWidth(unsigned short, unsigned short) const
+SwWriteTable::GetBoxWidth(SwTableBox const*)
+SwWriteTable::GetLeftSpace(unsigned short) const
+SwWriteTable::GetLineBrush(SwTableBox const*, SwWriteTableRow*)
+SwWriteTable::GetLineHeight(SwTableBox const*)
+SwWriteTable::GetLineHeight(SwTableLine const*)
+SwWriteTable::GetPercentWidth(unsigned short, unsigned short) const
+SwWriteTable::GetRawWidth(unsigned short, unsigned short) const
+SwWriteTable::GetRelWidth(unsigned short, unsigned short) const
+SwWriteTable::GetRightSpace(unsigned long, unsigned short) const
+SwWriteTable::MergeBorders(editeng::SvxBorderLine const*, bool)
+SwWriteTable::MergeBoxBorders(SwTableBox const*, unsigned long, unsigned long, unsigned short, unsigned short, unsigned short&, unsigned short&)
+SwWriteTable::ShouldExpandSub(SwTableBox const*, bool, unsigned short) const
+SwWriteTable::~SwWriteTable()
+SwWriter::SwWriter(SfxMedium&, SwCursorShell&, bool)
+SwWriter::SwWriter(SfxMedium&, SwDoc&)
+SwWriter::SwWriter(SvStream&, SwCursorShell&, bool)
+SwWriter::SwWriter(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, SwDoc&)
+SwWrtShell::AutoUpdateFrame(SwFrameFormat*, SfxItemSet const&)
+SwWrtShell::AutoUpdatePara(SwTextFormatColl*, SfxItemSet const&, SwPaM*)
+SwWrtShell::CalcAndSetScale(svt::EmbeddedObjectRef&, SwRect const*, SwRect const*, bool)
+SwWrtShell::CallEvent(SvMacroItemId, SwCallMouseEvent const&, bool)
+SwWrtShell::CanInsert()
+SwWrtShell::ClickToField(SwField const&, bool)
+SwWrtShell::ClickToINetAttr(SwFormatINetFormat const&, LoadUrlFlags)
+SwWrtShell::ClickToINetGrf(Point const&, LoadUrlFlags)
+SwWrtShell::ConnectObj(svt::EmbeddedObjectRef&, SwRect const&, SwRect const&)
+SwWrtShell::DelLine()
+SwWrtShell::DelNxtWord()
+SwWrtShell::DelPrvWord()
+SwWrtShell::DelToEndOfLine()
+SwWrtShell::DelToEndOfPara()
+SwWrtShell::DelToStartOfPara()
+SwWrtShell::DelToStartOfSentence()
+SwWrtShell::Do(SwWrtShell::DoType, unsigned short, unsigned short)
+SwWrtShell::DrawSelChanged()
+SwWrtShell::Edit()
+SwWrtShell::EndNxtPg(bool)
+SwWrtShell::EndOfColumn()
+SwWrtShell::EndOfNextColumn()
+SwWrtShell::EndOfPrevColumn()
+SwWrtShell::EnterAddMode()
+SwWrtShell::EnterBlockMode()
+SwWrtShell::EnterExtMode()
+SwWrtShell::ExecMacro(SvxMacro const&, rtl::OUString*, SbxArray*)
+SwWrtShell::GetAttrOutlineContentVisible(unsigned long)
+SwWrtShell::GetCurPageStyle() const
+SwWrtShell::GetDoString(SwWrtShell::DoType) const
+SwWrtShell::GetDoStrings(SwWrtShell::DoType, SfxStringListItem&) const
+SwWrtShell::GetRepeatString() const
+SwWrtShell::GetSelDescr() const
+SwWrtShell::GetURLFromButton(rtl::OUString&, rtl::OUString&) const
+SwWrtShell::GoNextBookmark()
+SwWrtShell::GoPrevBookmark()
+SwWrtShell::GotoDrawingObject(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SwWrtShell::GotoFieldmark(sw::mark::IFieldmark const*)
+SwWrtShell::GotoFootnoteAnchor(SwTextFootnote const&)
+SwWrtShell::GotoFormatField(SwFormatField const&)
+SwWrtShell::GotoINetAttr(SwTextINetFormat const&)
+SwWrtShell::GotoMark(rtl::OUString const&)
+SwWrtShell::GotoMark(sw::mark::IMark const*, bool)
+SwWrtShell::GotoOutline(rtl::OUString const&)
+SwWrtShell::GotoOutline(unsigned long)
+SwWrtShell::GotoRedline(unsigned long, bool)
+SwWrtShell::GotoRefMark(rtl::OUString const&, unsigned short, unsigned short)
+SwWrtShell::GotoRegion(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+SwWrtShell::Insert(rtl::OUString const&, rtl::OUString const&, Graphic const&, SwFlyFrameAttrMgr*, RndStdIds)
+SwWrtShell::InsertByWord(rtl::OUString const&)
+SwWrtShell::InsertColumnBreak()
+SwWrtShell::InsertOleObject(svt::EmbeddedObjectRef const&, SwFlyFrameFormat**)
+SwWrtShell::InsertPostIt(SwFieldMgr&, SfxRequest const&)
+SwWrtShell::InsertTableOf(SwTOXBase const&, SfxItemSet const*)
+SwWrtShell::IntelligentCut(SelectionType, bool)
+SwWrtShell::Invalidate()
+SwWrtShell::InvalidateOutlineContentVisibility()
+SwWrtShell::IsEndWrd()
+SwWrtShell::IsOutlineContentVisible(unsigned long)
+SwWrtShell::IsSplitVerticalByDefault() const
+SwWrtShell::LeaveAddMode()
+SwWrtShell::LeaveBlockMode()
+SwWrtShell::LeaveExtMode()
+SwWrtShell::LeftMargin(bool, bool)
+SwWrtShell::MakeAllFoldedOutlineContentVisible(bool)
+SwWrtShell::MakeOutlineContentVisible(unsigned long, bool)
+SwWrtShell::MoveCursor(bool)
+SwWrtShell::MoveObjectIfActive(svt::EmbeddedObjectRef&, Point const&)
+SwWrtShell::NavigatorPaste(NaviContentBookmark const&, unsigned short)
+SwWrtShell::NoEdit(bool)
+SwWrtShell::NumOn()
+SwWrtShell::NumOrBulletOff()
+SwWrtShell::NumOrBulletOn(bool)
+SwWrtShell::PageCursor(long, bool)
+SwWrtShell::PopMode()
+SwWrtShell::PushMode()
+SwWrtShell::QuickUpdateStyle()
+SwWrtShell::RightMargin(bool, bool)
+SwWrtShell::SearchAttr(SfxItemSet const&, bool, SwDocPositions, SwDocPositions, FindRanges, i18nutil::SearchOptions2 const*, SfxItemSet const*)
+SwWrtShell::SearchTempl(rtl::OUString const&, SwDocPositions, SwDocPositions, FindRanges, rtl::OUString const*)
+SwWrtShell::SelNearestWrd()
+SwWrtShell::SelSentence(Point const*)
+SwWrtShell::SelectNextPrevHyperlink(bool)
+SwWrtShell::SelectTableCell()
+SwWrtShell::SelectTableCol()
+SwWrtShell::SelectTableRow()
+SwWrtShell::SelectTableRowCol(Point const&, Point const*, bool)
+SwWrtShell::SetInsMode(bool)
+SwWrtShell::SetPageStyle(rtl::OUString const&)
+SwWrtShell::SetRedlineFlagsAndCheckInsMode(RedlineFlags)
+SwWrtShell::SetShowHeaderFooterSeparator(FrameControlType, bool)
+SwWrtShell::SetSplitVerticalByDefault(bool)
+SwWrtShell::StartDropDownFieldDlg(SwField*, bool, bool, weld::Widget*, SwWrtShell::FieldDialogPressedButton*)
+SwWrtShell::StartInputFieldDlg(SwField*, bool, bool, weld::Widget*, SwWrtShell::FieldDialogPressedButton*)
+SwWrtShell::StartInsertRegionDialog(SwSectionData const&)
+SwWrtShell::StartOfColumn()
+SwWrtShell::StartOfNextColumn()
+SwWrtShell::StartOfPrevColumn()
+SwWrtShell::SttPrvPg(bool)
+SwWrtShell::SttSelect()
+SwWrtShell::SwWrtShell(SwDoc&, vcl::Window*, SwView&, SwViewOption const*)
+SwWrtShell::SwWrtShell(SwWrtShell&, vcl::Window*, SwView&)
+SwWrtShell::ToggleAddMode()
+SwWrtShell::ToggleBlockMode()
+SwWrtShell::ToggleExtMode()
+SwWrtShell::TryRemoveIndent()
+SwWrtShell::UpdateInputFields(SwInputFieldList*)
+SwWrtShell::addCurrentPosition()
+SwWrtShell::getLOKPayload(int, int, bool*) const
+SwWrtShell::~SwWrtShell()
+SwWrtShellItem::Clone(SfxItemPool*) const
+SwWrtShellItem::SwWrtShellItem(SwWrtShell*)
+SwWrtShellItem::operator==(SfxPoolItem const&) const
+SwXTextDocument::CreateCursorForSearch(com::sun::star::uno::Reference<com::sun::star::text::XTextCursor>&)
+SwXTextDocument::FindAny(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&, com::sun::star::uno::Reference<com::sun::star::text::XTextCursor>&, bool, int&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+SwXTextDocument::GetNumberFormatter()
+SwXTextDocument::GetPropertyHelper()
+SwXTextDocument::GetRenderDoc(SfxViewShell*&, com::sun::star::uno::Any const&, bool)
+SwXTextDocument::GetRenderView(bool&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, bool)
+SwXTextDocument::GuessViewShell(bool&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+SwXTextDocument::InitNewDoc()
+SwXTextDocument::Invalidate()
+SwXTextDocument::NotifyRefreshListeners()
+SwXTextDocument::Reactivate(SwDocShell*)
+SwXTextDocument::SwXTextDocument(SwDocShell*)
+SwXTextDocument::acquire()
+SwXTextDocument::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+SwXTextDocument::addPasteEventListener(com::sun::star::uno::Reference<com::sun::star::text::XPasteListener> const&)
+SwXTextDocument::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwXTextDocument::addRefreshListener(com::sun::star::uno::Reference<com::sun::star::util::XRefreshListener> const&)
+SwXTextDocument::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwXTextDocument::attachResource(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextDocument::close(unsigned char)
+SwXTextDocument::connectController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+SwXTextDocument::create(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const*)
+SwXTextDocument::createClone()
+SwXTextDocument::createInstanceWithArguments(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+SwXTextDocument::createReplaceDescriptor()
+SwXTextDocument::createSearchDescriptor()
+SwXTextDocument::disconnectController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+SwXTextDocument::dispose()
+SwXTextDocument::findAll(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+SwXTextDocument::findFirst(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+SwXTextDocument::findNext(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+SwXTextDocument::getArgs()
+SwXTextDocument::getAutoStyles()
+SwXTextDocument::getAvailableServiceNames()
+SwXTextDocument::getBookmarks()
+SwXTextDocument::getChapterNumberingRules()
+SwXTextDocument::getCurrentSelection()
+SwXTextDocument::getDocumentIndexes()
+SwXTextDocument::getDocumentLanguages(short, short)
+SwXTextDocument::getDrawPage()
+SwXTextDocument::getEmbeddedObjects()
+SwXTextDocument::getEndnoteSettings()
+SwXTextDocument::getEndnotes()
+SwXTextDocument::getFlatParagraphIterator(int, unsigned char)
+SwXTextDocument::getFootnoteSettings()
+SwXTextDocument::getFootnotes()
+SwXTextDocument::getGraphicObjects()
+SwXTextDocument::getImplementationName()
+SwXTextDocument::getLineNumberingProperties()
+SwXTextDocument::getLinks()
+SwXTextDocument::getNumberingRules()
+SwXTextDocument::getPagePrintSettings()
+SwXTextDocument::getPart()
+SwXTextDocument::getPartName(int)
+SwXTextDocument::getPartPageRectangles()
+SwXTextDocument::getPointer()
+SwXTextDocument::getPropertyDefault(rtl::OUString const&)
+SwXTextDocument::getPropertySetInfo()
+SwXTextDocument::getPropertyState(rtl::OUString const&)
+SwXTextDocument::getPropertyStates(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwXTextDocument::getPropertyValue(rtl::OUString const&)
+SwXTextDocument::getRedlines()
+SwXTextDocument::getReferenceMarks()
+SwXTextDocument::getRenderer(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextDocument::getRendererCount(com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextDocument::getRulerState(tools::JsonWriter&)
+SwXTextDocument::getSdrModelFromUnoModel() const
+SwXTextDocument::getSearchResultRectangles(char const*)
+SwXTextDocument::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SwXTextDocument::getStyleFamilies()
+SwXTextDocument::getSupportedServiceNames()
+SwXTextDocument::getTextFieldMasters()
+SwXTextDocument::getTextFields()
+SwXTextDocument::getTextFrames()
+SwXTextDocument::getTextSections()
+SwXTextDocument::getTextTables()
+SwXTextDocument::getTrackedChanges(tools::JsonWriter&)
+SwXTextDocument::getTypes()
+SwXTextDocument::getURL()
+SwXTextDocument::getXForms()
+SwXTextDocument::hasControllersLocked()
+SwXTextDocument::isMimeTypeSupported()
+SwXTextDocument::lockControllers()
+SwXTextDocument::paintTile(com::sun::star::uno::Any const&, int, int, int, int, int, int)
+SwXTextDocument::printPages(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextDocument::queryInterface(com::sun::star::uno::Type const&)
+SwXTextDocument::reformat()
+SwXTextDocument::refresh()
+SwXTextDocument::release()
+SwXTextDocument::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+SwXTextDocument::removePasteEventListener(com::sun::star::uno::Reference<com::sun::star::text::XPasteListener> const&)
+SwXTextDocument::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwXTextDocument::removeRefreshListener(com::sun::star::uno::Reference<com::sun::star::util::XRefreshListener> const&)
+SwXTextDocument::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwXTextDocument::render(int, com::sun::star::uno::Any const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextDocument::replaceAll(com::sun::star::uno::Reference<com::sun::star::util::XSearchDescriptor> const&)
+SwXTextDocument::setClientZoom(int, int, int, int)
+SwXTextDocument::setClipboard(com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard> const&)
+SwXTextDocument::setCurrentController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+SwXTextDocument::setPagePrintSettings(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextDocument::setPart(int, bool)
+SwXTextDocument::setPropertyToDefault(rtl::OUString const&)
+SwXTextDocument::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SwXTextDocument::supportsService(rtl::OUString const&)
+SwXTextDocument::unlockControllers()
+SwXTextDocument::updateLinks()
+SwXTextDocument::~SwXTextDocument()
+SwXTextRange::DeleteAndInsert(rtl::OUString const&, bool)
+SwXTextRange::GetDoc()
+SwXTextRange::GetDoc() const
+SwXTextRange::Impl::Notify(SfxHint const&)
+SwXTextRange::Invalidate()
+SwXTextRange::SetPositions(SwPaM const&)
+SwXTextRange::SwXTextRange(SwSectionFormat&)
+SwXTextRange::SwXTextRange(SwTableFormat&)
+SwXTextRange::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwXTextRange::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwXTextRange::createContentEnumeration(rtl::OUString const&)
+SwXTextRange::createEnumeration()
+SwXTextRange::getAvailableServiceNames()
+SwXTextRange::getElementType()
+SwXTextRange::getEnd()
+SwXTextRange::getImplementationName()
+SwXTextRange::getPropertyDefault(rtl::OUString const&)
+SwXTextRange::getPropertySetInfo()
+SwXTextRange::getPropertyState(rtl::OUString const&)
+SwXTextRange::getPropertyStates(com::sun::star::uno::Sequence<rtl::OUString> const&)
+SwXTextRange::getPropertyValue(rtl::OUString const&)
+SwXTextRange::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+SwXTextRange::getStart()
+SwXTextRange::getString()
+SwXTextRange::getSupportedServiceNames()
+SwXTextRange::getText()
+SwXTextRange::getUnoTunnelId()
+SwXTextRange::hasElements()
+SwXTextRange::makeRedline(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+SwXTextRange::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwXTextRange::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwXTextRange::setPropertyToDefault(rtl::OUString const&)
+SwXTextRange::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SwXTextRange::setString(rtl::OUString const&)
+SwXTextRange::supportsService(rtl::OUString const&)
+SwXTextRange::~SwXTextRange()
+SwXTextTableCursor::GetCursor()
+SwXTextTableCursor::GetCursor() const
+SwXTextTableCursor::GetDoc()
+SwXTextTableCursor::GetDoc() const
+SwXTextTableCursor::GetPaM()
+SwXTextTableCursor::GetPaM() const
+SwXTextTableCursor::Notify(SfxHint const&)
+SwXTextTableCursor::SwXTextTableCursor(SwFrameFormat&, SwTableCursor const*)
+SwXTextTableCursor::SwXTextTableCursor(SwFrameFormat*, SwTableBox const*)
+SwXTextTableCursor::acquire()
+SwXTextTableCursor::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwXTextTableCursor::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwXTextTableCursor::getImplementationName()
+SwXTextTableCursor::getPropertySetInfo()
+SwXTextTableCursor::getPropertyValue(rtl::OUString const&)
+SwXTextTableCursor::getRangeName()
+SwXTextTableCursor::getSupportedServiceNames()
+SwXTextTableCursor::goDown(short, unsigned char)
+SwXTextTableCursor::goLeft(short, unsigned char)
+SwXTextTableCursor::goRight(short, unsigned char)
+SwXTextTableCursor::goUp(short, unsigned char)
+SwXTextTableCursor::gotoCellByName(rtl::OUString const&, unsigned char)
+SwXTextTableCursor::gotoEnd(unsigned char)
+SwXTextTableCursor::gotoStart(unsigned char)
+SwXTextTableCursor::mergeRange()
+SwXTextTableCursor::queryInterface(com::sun::star::uno::Type const&)
+SwXTextTableCursor::release()
+SwXTextTableCursor::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+SwXTextTableCursor::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+SwXTextTableCursor::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+SwXTextTableCursor::splitRange(short, unsigned char)
+SwXTextTableCursor::supportsService(rtl::OUString const&)
+SwXTextTables::SwXTextTables(SwDoc*)
+SwXTextTables::getByIndex(int)
+SwXTextTables::getByName(rtl::OUString const&)
+SwXTextTables::getCount()
+SwXTextTables::getElementNames()
+SwXTextTables::getElementType()
+SwXTextTables::getImplementationName()
+SwXTextTables::getSupportedServiceNames()
+SwXTextTables::hasByName(rtl::OUString const&)
+SwXTextTables::hasElements()
+SwXTextTables::supportsService(rtl::OUString const&)
+SwXTextTables::~SwXTextTables()
+SwpHints::Resort() const
+SwpHints::ResortWhichMap() const
+SyntaxHighlighter::Tokenizer::Tokenizer(HighlighterLanguage)
+SyntaxHighlighter::Tokenizer::getHighlightPortions(rtl::OUString const&, std::vector<HighlightPortion, std::allocator<HighlightPortion> >&) const
+SyntaxHighlighter::Tokenizer::getNextToken(char16_t const*&, TokenType&, char16_t const*&, char16_t const*&) const
+SyntaxHighlighter::Tokenizer::setKeyWords(char const**, unsigned short)
+SystemWindow::GetMaxOutputSizePixel() const
+SystemWindow::GetWindowStateData(WindowStateData&) const
+SystemWindow::ImplData::ImplData()
+SystemWindow::IsTitleButtonVisible(TitleButton) const
+SystemWindow::SetMaxOutputSizePixel(Size const&)
+SystemWindow::SetWindowStateData(WindowStateData const&)
+SystemWindow::ShowTitleButton(TitleButton, bool)
+SystemWindow::SystemWindow(WindowType, char const*)
+SystemWindow::createScreenshot()
+SystemWindow::isLayoutEnabled() const
+SystemWindow::loadUI(vcl::Window*, rtl::OString const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+SystemWindow::setOptimalLayoutSize()
+SystemWindow::~SystemWindow()
+TBCExtraInfo::Read(SvStream&)
+TBCExtraInfo::TBCExtraInfo()
+TBCExtraInfo::getOnAction() const
+TBCGeneralInfo::ImportToolBarControlData(CustomToolBarImportHelper&, std::vector<com::sun::star::beans::PropertyValue, std::allocator<com::sun::star::beans::PropertyValue> >&)
+TBCGeneralInfo::Read(SvStream&)
+TBCGeneralInfo::TBCGeneralInfo()
+TBCMenuSpecific::Read(SvStream&)
+TBCMenuSpecific::TBCMenuSpecific()
+TETextDataObject::getTransferData(com::sun::star::datatransfer::DataFlavor const&)
+TETextDataObject::getTransferDataFlavors()
+TETextDataObject::isDataFlavorSupported(com::sun::star::datatransfer::DataFlavor const&)
+TETextDataObject::queryInterface(com::sun::star::uno::Type const&)
+TabBar::CalcWindowSizePixel() const
+TabBar::GetPageBits(unsigned short) const
+TabBar::SetFirstPageId(unsigned short)
+TabBar::SetMirrored(bool)
+TabBar::Split()
+TabBar::next()
+TabBar::prev()
+TabBar::seek(unsigned long)
+TabControl::ActivatePage()
+TabControl::DeactivatePage()
+TabControl::GetHelpText(unsigned short) const
+TabControl::GetPageIDs() const
+TabControl::GetPageId(Point const&) const
+TabControl::GetPageId(rtl::OString const&) const
+TabControl::GetPageName(unsigned short) const
+TabControl::SetAccessibleDescription(unsigned short, rtl::OUString const&)
+TabControl::SetAccessibleName(unsigned short, rtl::OUString const&)
+TabControl::SetCurPageId(unsigned short)
+TabControl::SetPageName(unsigned short, rtl::OString const&) const
+TabControl::SetPageVisible(unsigned short, bool)
+TabControl::SetTabPageSizePixel(Size const&)
+TabControl::setAllocation(Size const&)
+TabControl::~TabControl()
+TabDialog::StateChanged(StateChangedType)
+TabDialog::dispose()
+TabDialog::~TabDialog()
+TabPage::DataChanged(DataChangedEvent const&)
+TabPage::GetOptimalSize() const
+TabPage::Paint(OutputDevice&, tools::Rectangle const&)
+TabPage::ResetScrollBars()
+TabPage::Resize()
+TabPage::SetPosPixel(Point const&)
+TabPage::SetPosSizePixel(Point const&, Size const&)
+TabPage::SetSizePixel(Size const&)
+TabPage::StateChanged(StateChangedType)
+TabPage::dispose()
+TabPage::lcl_Scroll(long, long)
+TabPage::~TabPage()
+TabPaneValue::clone() const
+Task::SetDeletionFlags()
+Task::Start(bool)
+Task::StartTimer(unsigned long)
+Task::Task(Task const&)
+Task::Task(char const*)
+Task::operator=(Task const&)
+Task::~Task()
+TaskPaneList::FindNextFloat(vcl::Window*, bool)
+TaskPaneList::FindNextSplitter(vcl::Window*)
+TaskPaneList::HandleKeyEvent(KeyEvent const&)
+TaskPaneList::IsCycleKey(vcl::KeyCode const&)
+TaskPaneList::IsInList(vcl::Window*)
+TaskPaneList::TaskPaneList()
+TaskPaneList::~TaskPaneList()
+TextAttrib::operator==(TextAttrib const&) const
+TextAttribFontColor::Clone() const
+TextAttribFontColor::SetFont(vcl::Font&) const
+TextAttribFontColor::operator==(TextAttrib const&) const
+TextAttribFontWeight::Clone() const
+TextAttribFontWeight::SetFont(vcl::Font&) const
+TextAttribFontWeight::operator==(TextAttrib const&) const
+TextEngine::CalcParaHeight(unsigned int) const
+TextEngine::CalcTextHeight() const
+TextEngine::CalcTextWidth(unsigned int)
+TextEngine::CalcTextWidth(unsigned int, int, int)
+TextEngine::CheckIdleFormatter()
+TextEngine::ConnectContents(unsigned int)
+TextEngine::CreateAndInsertEmptyLine(unsigned int)
+TextEngine::CreateLines(unsigned int)
+TextEngine::CreateTextPortions(unsigned int, int)
+TextEngine::CursorMoved(unsigned int)
+TextEngine::Draw(OutputDevice*, Point const&)
+TextEngine::FindCharAttrib(TextPaM const&, unsigned short) const
+TextEngine::FormatAndUpdate(TextView*)
+TextEngine::FormatDoc()
+TextEngine::FormatFullDoc()
+TextEngine::GetBreakIterator()
+TextEngine::GetCharPos(unsigned int, unsigned long, long)
+TextEngine::GetEditCursor(TextPaM const&, bool, bool)
+TextEngine::GetInvalidYOffsets(unsigned int)
+TextEngine::GetText(LineEnd) const
+TextEngine::GetTextLen() const
+TextEngine::GetTextLen(TextSelection const&) const
+TextEngine::GetTextLines(LineEnd) const
+TextEngine::GetView(unsigned short) const
+TextEngine::GetViewCount() const
+TextEngine::IdleFormatAndUpdate(TextView*, unsigned short)
+TextEngine::ImpBreakLine(unsigned int, TextLine*, int, long)
+TextEngine::ImpCharsInserted(unsigned int, int, int)
+TextEngine::ImpCharsRemoved(unsigned int, int, int)
+TextEngine::ImpConnectParagraphs(unsigned int, unsigned int)
+TextEngine::ImpDeleteText(TextSelection const&)
+TextEngine::ImpFindIndex(unsigned int, Point const&)
+TextEngine::ImpGetAlign() const
+TextEngine::ImpGetLocaleDataWrapper()
+TextEngine::ImpGetOutputOffset(unsigned int, TextLine*, int, int)
+TextEngine::ImpGetPortionXOffset(unsigned int, TextLine const*, unsigned long)
+TextEngine::ImpGetRightToLeft(unsigned int, int)
+TextEngine::ImpGetXPos(unsigned int, TextLine*, int, bool)
+TextEngine::ImpInitDoc()
+TextEngine::ImpInitLayoutMode(OutputDevice*)
+TextEngine::ImpInitWritingDirections(unsigned int)
+TextEngine::ImpInsertParaBreak(TextPaM const&)
+TextEngine::ImpInsertParaBreak(TextSelection const&)
+TextEngine::ImpInsertText(TextSelection const&, char16_t, bool)
+TextEngine::ImpInsertText(TextSelection const&, rtl::OUString const&)
+TextEngine::ImpPaint(OutputDevice*, Point const&, tools::Rectangle const*, TextSelection const*)
+TextEngine::ImpParagraphInserted(unsigned int)
+TextEngine::ImpParagraphRemoved(unsigned int)
+TextEngine::ImpRemoveChars(TextPaM const&, int)
+TextEngine::ImpRemoveParagraph(unsigned int)
+TextEngine::ImpRemoveText()
+TextEngine::InsertContent(std::unique_ptr<TextNode, std::default_delete<TextNode> >, unsigned int)
+TextEngine::InsertUndo(std::unique_ptr<TextUndo, std::default_delete<TextUndo> >, bool)
+TextEngine::IsSimpleCharInput(KeyEvent const&)
+TextEngine::RecalcTextPortion(unsigned int, int, int)
+TextEngine::SeekCursor(unsigned int, int, vcl::Font&, OutputDevice*)
+TextEngine::SetLeftMargin(unsigned short)
+TextEngine::SetLocale(com::sun::star::lang::Locale const&)
+TextEngine::SetMaxTextLen(int)
+TextEngine::SetRightToLeft(bool)
+TextEngine::SetTextAlign(TxtAlign)
+TextEngine::SplitContent(unsigned int, int)
+TextEngine::SplitTextPortion(unsigned int, int)
+TextEngine::TextModified()
+TextEngine::UndoActionEnd()
+TextEngine::UndoActionStart(unsigned short)
+TextEngine::UpdateViews(TextView*)
+TextEngine::ValidatePaM(TextPaM&) const
+TextEngine::ValidateSelection(TextSelection&) const
+TextListenerMultiplexer::acquire()
+TextListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+TextListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+TextListenerMultiplexer::release()
+TextListenerMultiplexer::textChanged(com::sun::star::awt::TextEvent const&)
+TextRanger::GetBoundRect_() const
+TextRanger::SetVertical(bool)
+TextSelection::Justify()
+TextSelection::TextSelection(TextPaM const&)
+TextView::CenterPaM(TextPaM const&)
+TextView::Copy(com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard> const&)
+TextView::CursorDown(TextPaM const&)
+TextView::CursorEndOfDoc()
+TextView::CursorEndOfParagraph(TextPaM const&)
+TextView::CursorLeft(TextPaM const&, unsigned short)
+TextView::CursorRight(TextPaM const&, unsigned short)
+TextView::CursorStartOfDoc()
+TextView::CursorStartOfLine(TextPaM const&)
+TextView::CursorStartOfParagraph(TextPaM const&)
+TextView::CursorUp(TextPaM const&)
+TextView::CursorWordLeft(TextPaM const&)
+TextView::CursorWordRight(TextPaM const&)
+TextView::EnableCursor(bool)
+TextView::GetSelected(LineEnd) const
+TextView::GetSelection() const
+TextView::HideSelection()
+TextView::ImpDelete(unsigned char, unsigned char)
+TextView::ImpGetOutputStartPos(Point const&) const
+TextView::ImpHideDDCursor()
+TextView::ImpIndentBlock(bool)
+TextView::ImpMoveCursor(KeyEvent const&)
+TextView::ImpPaint(OutputDevice&, Point const&, tools::Rectangle const*, TextSelection const*)
+TextView::ImpPaint(OutputDevice&, tools::Rectangle const&)
+TextView::ImpSetSelection(TextSelection const&)
+TextView::ImpShowCursor(bool, bool, bool)
+TextView::ImpShowDDCursor()
+TextView::ImpShowHideSelection(TextSelection const*)
+TextView::ImplCheckTextLen(rtl::OUString const&) const
+TextView::ImplTruncateNewText(rtl::OUString&) const
+TextView::Invalidate()
+TextView::IsAutoScroll() const
+TextView::IsCursorEnabled() const
+TextView::IsInSelection(TextPaM const&) const
+TextView::IsSelectionAtPoint(Point const&)
+TextView::PageDown(TextPaM const&)
+TextView::PageUp(TextPaM const&)
+TextView::Paste(com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard> const&)
+TextView::SetCursorAtPoint(Point const&)
+TextView::SetInsertMode(bool)
+TextView::SetPaintSelection(bool)
+TextView::SetSelection(TextSelection const&, bool)
+TextView::ShowSelection()
+TextView::ShowSelection(TextSelection const&)
+TextView::dragDropEnd(com::sun::star::datatransfer::dnd::DragSourceDropEvent const&)
+TextView::dragEnter(com::sun::star::datatransfer::dnd::DropTargetDragEnterEvent const&)
+TextView::dragExit(com::sun::star::datatransfer::dnd::DropTargetEvent const&)
+TextView::dragGestureRecognized(com::sun::star::datatransfer::dnd::DragGestureEvent const&)
+TextView::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&)
+TextView::drop(com::sun::star::datatransfer::dnd::DropTargetDropEvent const&)
+Throbber::Resize()
+Throbber::dispose()
+Throbber::~Throbber()
+ThumbnailView::CalculateItemPositions(bool)
+ThumbnailView::DrawItem(ThumbnailViewItem const*)
+ThumbnailView::GetItemId(unsigned long) const
+ThumbnailView::GetItemPos(unsigned short) const
+ThumbnailView::ImplDeleteItems()
+ThumbnailView::ImplFireAccessibleEvent(short, com::sun::star::uno::Any const&, com::sun::star::uno::Any const&)
+ThumbnailView::ImplGetItem(Point const&) const
+ThumbnailView::ImplGetItem(unsigned long)
+ThumbnailView::ImplGetVisibleItem(unsigned short)
+ThumbnailView::ImplGetVisibleItemCount() const
+ThumbnailView::ImplHasAccessibleListeners() const
+ThumbnailView::ImplInit()
+ThumbnailView::IsItemSelected(unsigned short) const
+ThumbnailView::MakeItemVisible(unsigned short)
+ThumbnailView::RemoveItem(unsigned short)
+ThumbnailView::ShowTooltips(bool)
+ThumbnailView::UpdateColors()
+ThumbnailView::filterItems(std::function<bool (ThumbnailViewItem const*)> const&)
+ThumbnailView::getAccessible() const
+ThumbnailView::getNextItemId() const
+ThumbnailView::setItemMaxTextLength(unsigned int)
+ThumbnailView::updateItems(std::vector<std::unique_ptr<ThumbnailViewItem, std::default_delete<ThumbnailViewItem> >, std::allocator<std::unique_ptr<ThumbnailViewItem, std::default_delete<ThumbnailViewItem> > > >)
+ThumbnailViewItem::GetAccessible(bool)
+ThumbnailViewItem::Paint(drawinglayer::processor2d::BaseProcessor2D*, ThumbnailItemAttributes const*)
+ThumbnailViewItem::addTextPrimitives(rtl::OUString const&, ThumbnailItemAttributes const*, Point, drawinglayer::primitive2d::Primitive2DContainer&)
+ThumbnailViewItem::calculateItemsPosition(long, long, unsigned int, ThumbnailItemAttributes const*)
+ThumbnailViewItem::createBorderLine(basegfx::B2DPolygon const&)
+ThumbnailViewItem::setDrawArea(tools::Rectangle const&)
+ThumbnailViewItem::setHighlight(bool)
+ThumbnailViewItem::setSelection(bool)
+ThumbnailViewItem::setTitle(rtl::OUString const&)
+ThumbnailViewItem::show(bool)
+ThumbnailViewItem::updateHighlight(bool, Point const&)
+ThumbnailViewItem::~ThumbnailViewItem()
+TightBounds(SkPath const&, SkRect*)
+TimeBox::DataChanged(DataChangedEvent const&)
+TimeBox::EventNotify(NotifyEvent&)
+TimeBox::Modify()
+TimeBox::PreNotify(NotifyEvent&)
+TimeBox::ReformatAll()
+TimeBox::dispose()
+TimeField::DataChanged(DataChangedEvent const&)
+TimeField::Down()
+TimeField::EventNotify(NotifyEvent&)
+TimeField::First()
+TimeField::Last()
+TimeField::PreNotify(NotifyEvent&)
+TimeField::Up()
+TimeField::dispose()
+TimeFormatter::FormatTime(tools::Time const&, TimeFieldFormat, TimeFormat, bool, LocaleDataWrapper const&)
+TimeFormatter::GetTimeArea(TimeFieldFormat, rtl::OUString const&, int, LocaleDataWrapper const&)
+TimeFormatter::Reformat()
+TimeFormatter::ReformatAll()
+TimeFormatter::SetDuration(bool)
+TimeFormatter::SetFormat(TimeFieldFormat)
+TimeFormatter::SetTimeFormat(TimeFormat)
+TimeFormatter::SetUserTime(tools::Time const&)
+TimeFormatter::SpinTime(bool, tools::Time const&, TimeFieldFormat, bool, rtl::OUString const&, int, LocaleDataWrapper const&)
+TimeFormatter::TextToTime(std::basic_string_view<char16_t, std::char_traits<char16_t> >, tools::Time&, TimeFieldFormat, bool, LocaleDataWrapper const&, bool)
+TimeFormatter::TimeFormatter(Edit*)
+TimeFormatter::~TimeFormatter()
+Timer::Invoke(Timer*)
+Timer::Timer(bool, char const*)
+ToolBox::CalcFloatingWindowSizePixel(unsigned long)
+ToolBox::CopyItem(ToolBox const&, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>)
+ToolBox::DoubleClick()
+ToolBox::ExecuteCustomMenu(tools::Rectangle const&)
+ToolBox::GetDefaultImageSize() const
+ToolBox::GetItemId(Point const&) const
+ToolBox::GetItemImage(o3tl::strong_int<unsigned short, ToolBoxItemIdTag>) const
+ToolBox::GetOverflowRect() const
+ToolBox::Highlight()
+ToolBox::IsMenuEnabled() const
+ToolBox::Lock(bool)
+ToolBox::SetItemExpand(o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, bool)
+ToolBox::SetItemImageAngle(o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, o3tl::strong_int<short, FractionTag<10> >)
+ToolBox::SetItemImageMirrorMode(o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, bool)
+ToolBox::ShowLine(bool)
+ToolBox::UpdateCustomMenu()
+ToolBox::statusChanged(com::sun::star::frame::FeatureStateEvent const&)
+ToolbarPopupContainer::unsetPopover()
+ToolbarUnoDispatcher::CreateController(rtl::OUString const&)
+ToolbarUnoDispatcher::GetIconSize()
+ToolbarUnoDispatcher::dispose()
+TransferDataContainer::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+TransferDataContainer::StartDrag(vcl::Window*, signed char, Link<signed char, void> const&)
+TransferableClipboardListener::changedContents(com::sun::star::datatransfer::clipboard::ClipboardEvent const&)
+TransferableClipboardListener::disposing(com::sun::star::lang::EventObject const&)
+TransferableClipboardListener::~TransferableClipboardListener()
+TransferableDataHelper::GetBitmapEx(com::sun::star::datatransfer::DataFlavor const&, BitmapEx&) const
+TransferableDataHelper::GetFileList(FileList&) const
+TransferableDataHelper::GetFormatDataFlavor(unsigned int) const
+TransferableDataHelper::GetGDIMetaFile(com::sun::star::datatransfer::DataFlavor const&, GDIMetaFile&) const
+TransferableDataHelper::GetGraphic(com::sun::star::datatransfer::DataFlavor const&, Graphic&) const
+TransferableDataHelper::GetINetBookmark(com::sun::star::datatransfer::DataFlavor const&, INetBookmark&) const
+TransferableDataHelper::GetINetImage(com::sun::star::datatransfer::DataFlavor const&, INetImage&) const
+TransferableDataHelper::GetImageMap(com::sun::star::datatransfer::DataFlavor const&, ImageMap&) const
+TransferableDataHelper::GetInputStream(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&) const
+TransferableDataHelper::GetSequence(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&) const
+TransferableDataHelper::GetString(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString&) const
+TransferableDataHelper::GetTransferableObjectDescriptor(TransferableObjectDescriptor&)
+TransferableDataHelper::InitFormats()
+TransferableDataHelper::Rebind(com::sun::star::uno::Reference<com::sun::star::datatransfer::XTransferable> const&)
+TransferableDataHelper::StopClipboardListening()
+TransferableDataHelper::operator=(TransferableDataHelper const&)
+TransferableHelper::CopyToSelection(com::sun::star::uno::Reference<com::sun::star::datatransfer::clipboard::XClipboard> const&) const
+TransferableHelper::RemoveFormat(com::sun::star::datatransfer::DataFlavor const&)
+TranslateNId::operator==(TranslateNId const&) const
+TypeSerializer::readGfxLink(GfxLink&)
+TypeSerializer::writeGfxLink(GfxLink const&)
+UCBStorage::Commit()
+UCBStorage::CopyStorageElement_Impl(UCBStorageElement_Impl const&, BaseStorage*, rtl::OUString const&) const
+UCBStorage::CopyTo(BaseStorage*) const
+UCBStorage::CopyTo(rtl::OUString const&, BaseStorage*, rtl::OUString const&)
+UCBStorage::Equals(BaseStorage const&) const
+UCBStorage::FillInfoList(std::vector<SvStorageInfo, std::allocator<SvStorageInfo> >*) const
+UCBStorage::FindElement_Impl(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+UCBStorage::GetClassId() const
+UCBStorage::GetClassName()
+UCBStorage::GetFormat()
+UCBStorage::GetName() const
+UCBStorage::GetUserName()
+UCBStorage::IsContained(rtl::OUString const&) const
+UCBStorage::IsRoot() const
+UCBStorage::IsStorage(rtl::OUString const&) const
+UCBStorage::IsStream(rtl::OUString const&) const
+UCBStorage::OpenOLEStorage(rtl::OUString const&, StreamMode, bool)
+UCBStorage::OpenStorage(rtl::OUString const&, StreamMode, bool)
+UCBStorage::OpenStorage_Impl(rtl::OUString const&, StreamMode, bool, bool)
+UCBStorage::OpenStream(rtl::OUString const&, StreamMode, bool)
+UCBStorage::OpenUCBStorage(rtl::OUString const&, StreamMode, bool)
+UCBStorage::Remove(rtl::OUString const&)
+UCBStorage::Revert()
+UCBStorage::SetClass(SvGlobalName const&, SotClipboardFormatId, rtl::OUString const&)
+UCBStorage::SetClassId(SvGUID const&)
+UCBStorage::SetDirty()
+UCBStorage::UCBStorage(SvStream&, bool)
+UCBStorage::UCBStorage(UCBStorage_Impl*)
+UCBStorage::UCBStorage(rtl::OUString const&, StreamMode, bool, bool)
+UCBStorage::UCBStorage(rtl::OUString const&, StreamMode, bool, bool, bool, com::sun::star::uno::Reference<com::sun::star::ucb::XProgressHandler> const&)
+UCBStorage::Validate(bool) const
+UCBStorage::ValidateFAT()
+UCBStorage::ValidateMode(StreamMode) const
+UCBStorage::~UCBStorage()
+UIObject::execute(rtl::OUString const&, std::map<rtl::OUString, rtl::OUString, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, rtl::OUString> > > const&)
+UIObject::get_state()
+UITestLogger::UITestLogger()
+UITestLogger::log(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+UITestLogger::logAction(VclPtr<Control> const&, VclEventId)
+UITestLogger::logAction(vcl::Window* const&, VclEventId)
+UITestLogger::logKeyInput(VclPtr<vcl::Window> const&, KeyEvent const&)
+UTIL_SetForkState@@NSSUTIL_3.12.3
+UnoControl::ImplCheckLocalize(rtl::OUString&)
+UnoControl::ImplGetCompatiblePeer()
+UnoControl::ImplLockPropertyChangeNotification(rtl::OUString const&, bool)
+UnoControl::ImplLockPropertyChangeNotifications(com::sun::star::uno::Sequence<rtl::OUString> const&, bool)
+UnoControl::getParentPeer() const
+UnoEditControl::getImplementationId()
+UnoEditControl::getImplementationName()
+UnoEditControl::getSupportedServiceNames()
+VBAEncryption::VBAEncryption(unsigned char const*, unsigned short, SvStream&, unsigned char)
+VBAEncryption::write()
+VBAEncryption::writeDataEnc()
+VBAEncryption::writeDataLengthEnc()
+VBAEncryption::writeIgnoredEnc()
+VBAEncryption::writeProjKeyEnc()
+VBAEncryption::writeSeed()
+VBAEncryption::writeVersionEnc()
+VCLUnoHelper::ConvertToAWTPoint(Point const&)
+VCLUnoHelper::ConvertToAWTSize(Size const&)
+VCLUnoHelper::ConvertToMapModeUnit(short)
+VCLUnoHelper::ConvertToVCLPoint(com::sun::star::awt::Point const&)
+VCLUnoHelper::ConvertToVCLSize(com::sun::star::awt::Size const&)
+VCLUnoHelper::CreateFont(com::sun::star::uno::Reference<com::sun::star::awt::XFont> const&)
+VCLUnoHelper::CreateFontMetric(FontMetric const&)
+VCLUnoHelper::CreatePolygon(com::sun::star::uno::Sequence<int> const&, com::sun::star::uno::Sequence<int> const&)
+VCLUnoHelper::GetRegion(com::sun::star::uno::Reference<com::sun::star::awt::XRegion> const&)
+VCLUnoHelper::IsZero(com::sun::star::awt::Rectangle const&)
+VCLUnoHelper::createVCLKeyEvent(com::sun::star::awt::KeyEvent const&)
+VCLUnoHelper::createVCLMouseEvent(com::sun::star::awt::MouseEvent const&)
+VCLXAccessibleComponent::DisconnectEvents()
+VCLXAccessibleComponent::getVclParent() const
+VCLXCheckBox::CreateAccessibleContext()
+VCLXCheckBox::ImplGetPropertyIds(std::vector<unsigned short, std::allocator<unsigned short> >&)
+VCLXCheckBox::ProcessWindowEvent(VclWindowEvent const&)
+VCLXCheckBox::VCLXCheckBox()
+VCLXCheckBox::addActionListener(com::sun::star::uno::Reference<com::sun::star::awt::XActionListener> const&)
+VCLXCheckBox::addItemListener(com::sun::star::uno::Reference<com::sun::star::awt::XItemListener> const&)
+VCLXCheckBox::calcAdjustedSize(com::sun::star::awt::Size const&)
+VCLXCheckBox::dispose()
+VCLXCheckBox::enableTriState(unsigned char)
+VCLXCheckBox::getImplementationId()
+VCLXCheckBox::getMinimumSize()
+VCLXCheckBox::getPreferredSize()
+VCLXCheckBox::getProperty(rtl::OUString const&)
+VCLXCheckBox::getTypes()
+VCLXCheckBox::queryInterface(com::sun::star::uno::Type const&)
+VCLXCheckBox::removeActionListener(com::sun::star::uno::Reference<com::sun::star::awt::XActionListener> const&)
+VCLXCheckBox::removeItemListener(com::sun::star::uno::Reference<com::sun::star::awt::XItemListener> const&)
+VCLXCheckBox::setActionCommand(rtl::OUString const&)
+VCLXCheckBox::setLabel(rtl::OUString const&)
+VCLXCheckBox::setProperty(rtl::OUString const&, com::sun::star::uno::Any const&)
+VCLXDevice::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+VCLXDevice::~VCLXDevice()
+VCLXFont::ImplAssertValidFontMetric()
+VCLXFont::getCharWidth(char16_t)
+VCLXFont::getCharWidths(char16_t, char16_t)
+VCLXFont::getFontDescriptor()
+VCLXFont::getFontMetric()
+VCLXFont::getKernPairs(com::sun::star::uno::Sequence<char16_t>&, com::sun::star::uno::Sequence<char16_t>&, com::sun::star::uno::Sequence<short>&)
+VCLXFont::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+VCLXFont::getStringWidth(rtl::OUString const&)
+VCLXFont::getStringWidthArray(rtl::OUString const&, com::sun::star::uno::Sequence<int>&)
+VCLXFont::getUnoTunnelId()
+VCLXFont::hasGlyphs(rtl::OUString const&)
+VCLXFont::~VCLXFont()
+VCLXMenu::ImplAddListener()
+VCLXMenu::ImplCreateMenu(bool)
+VCLXMenu::IsPopupMenu() const
+VCLXMenu::VCLXMenu()
+VCLXMenu::VCLXMenu(Menu*)
+VCLXMenu::addMenuListener(com::sun::star::uno::Reference<com::sun::star::awt::XMenuListener> const&)
+VCLXMenu::checkItem(short, unsigned char)
+VCLXMenu::clear()
+VCLXMenu::enableAutoMnemonics(unsigned char)
+VCLXMenu::enableItem(short, unsigned char)
+VCLXMenu::endExecute()
+VCLXMenu::execute(com::sun::star::uno::Reference<com::sun::star::awt::XWindowPeer> const&, com::sun::star::awt::Rectangle const&, short)
+VCLXMenu::getAcceleratorKeyEvent(short)
+VCLXMenu::getCommand(short)
+VCLXMenu::getDefaultItem()
+VCLXMenu::getHelpCommand(short)
+VCLXMenu::getHelpText(short)
+VCLXMenu::getImplementationId()
+VCLXMenu::getImplementationName()
+VCLXMenu::getItemCount()
+VCLXMenu::getItemId(short)
+VCLXMenu::getItemImage(short)
+VCLXMenu::getItemPos(short)
+VCLXMenu::getItemText(short)
+VCLXMenu::getItemType(short)
+VCLXMenu::getPopupMenu(short)
+VCLXMenu::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+VCLXMenu::getSupportedServiceNames()
+VCLXMenu::getTipHelpText(short)
+VCLXMenu::getTypes()
+VCLXMenu::hideDisabledEntries(unsigned char)
+VCLXMenu::insertItem(short, rtl::OUString const&, short, short)
+VCLXMenu::insertSeparator(short)
+VCLXMenu::isInExecute()
+VCLXMenu::isItemChecked(short)
+VCLXMenu::isItemEnabled(short)
+VCLXMenu::isPopupMenu()
+VCLXMenu::queryInterface(com::sun::star::uno::Type const&)
+VCLXMenu::removeItem(short, short)
+VCLXMenu::removeMenuListener(com::sun::star::uno::Reference<com::sun::star::awt::XMenuListener> const&)
+VCLXMenu::setAcceleratorKeyEvent(short, com::sun::star::awt::KeyEvent const&)
+VCLXMenu::setCommand(short, rtl::OUString const&)
+VCLXMenu::setDefaultItem(short)
+VCLXMenu::setHelpCommand(short, rtl::OUString const&)
+VCLXMenu::setHelpText(short, rtl::OUString const&)
+VCLXMenu::setItemImage(short, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&, unsigned char)
+VCLXMenu::setItemText(short, rtl::OUString const&)
+VCLXMenu::setPopupMenu(short, com::sun::star::uno::Reference<com::sun::star::awt::XPopupMenu> const&)
+VCLXMenu::setTipHelpText(short, rtl::OUString const&)
+VCLXMenu::supportsService(rtl::OUString const&)
+VCLXMenu::~VCLXMenu()
+VCLXMenuBar::VCLXMenuBar()
+VCLXRadioButton::CreateAccessibleContext()
+VCLXRadioButton::ImplClickedOrToggled(bool)
+VCLXRadioButton::ImplGetPropertyIds(std::vector<unsigned short, std::allocator<unsigned short> >&)
+VCLXRadioButton::ProcessWindowEvent(VclWindowEvent const&)
+VCLXRadioButton::VCLXRadioButton()
+VCLXRadioButton::addActionListener(com::sun::star::uno::Reference<com::sun::star::awt::XActionListener> const&)
+VCLXRadioButton::addItemListener(com::sun::star::uno::Reference<com::sun::star::awt::XItemListener> const&)
+VCLXRadioButton::calcAdjustedSize(com::sun::star::awt::Size const&)
+VCLXRadioButton::dispose()
+VCLXRadioButton::getImplementationId()
+VCLXRadioButton::getMinimumSize()
+VCLXRadioButton::getPreferredSize()
+VCLXRadioButton::getProperty(rtl::OUString const&)
+VCLXRadioButton::getTypes()
+VCLXRadioButton::queryInterface(com::sun::star::uno::Type const&)
+VCLXRadioButton::removeActionListener(com::sun::star::uno::Reference<com::sun::star::awt::XActionListener> const&)
+VCLXRadioButton::removeItemListener(com::sun::star::uno::Reference<com::sun::star::awt::XItemListener> const&)
+VCLXRadioButton::setActionCommand(rtl::OUString const&)
+VCLXRadioButton::setLabel(rtl::OUString const&)
+VCLXRadioButton::setProperty(rtl::OUString const&, com::sun::star::uno::Any const&)
+VCLXScrollBar::CreateAccessibleContext()
+VCLXScrollBar::ImplGetPropertyIds(std::vector<unsigned short, std::allocator<unsigned short> >&)
+VCLXScrollBar::ProcessWindowEvent(VclWindowEvent const&)
+VCLXScrollBar::VCLXScrollBar()
+VCLXScrollBar::addAdjustmentListener(com::sun::star::uno::Reference<com::sun::star::awt::XAdjustmentListener> const&)
+VCLXScrollBar::dispose()
+VCLXScrollBar::getBlockIncrement()
+VCLXScrollBar::getImplementationId()
+VCLXScrollBar::getLineIncrement()
+VCLXScrollBar::getMinimum() const
+VCLXScrollBar::getMinimumSize()
+VCLXScrollBar::getProperty(rtl::OUString const&)
+VCLXScrollBar::getTypes()
+VCLXScrollBar::getVisibleSize()
+VCLXScrollBar::implGetMinimumSize(vcl::Window const*)
+VCLXScrollBar::queryInterface(com::sun::star::uno::Type const&)
+VCLXScrollBar::removeAdjustmentListener(com::sun::star::uno::Reference<com::sun::star::awt::XAdjustmentListener> const&)
+VCLXScrollBar::setBlockIncrement(int)
+VCLXScrollBar::setLineIncrement(int)
+VCLXScrollBar::setMaximum(int)
+VCLXScrollBar::setMinimum(int)
+VCLXScrollBar::setOrientation(int)
+VCLXScrollBar::setProperty(rtl::OUString const&, com::sun::star::uno::Any const&)
+VCLXScrollBar::setValues(int, int, int)
+VCLXScrollBar::setVisibleSize(int)
+VCLXWindow::GetContainerListeners()
+VCLXWindow::GetPropHelper()
+VCLXWindow::GetTopWindowListeners()
+VCLXWindow::ImplCalcWindowSize(Size const&) const
+VCLXWindow::ImplExecuteAsyncWithoutSolarLock(std::function<void ()> const&)
+VCLXWindow::ImplGetPropertyIds(std::vector<unsigned short, std::allocator<unsigned short> >&, bool)
+VCLXWindow::IsDisposed() const
+VCLXWindow::IsSynthesizingVCLEvent() const
+VCLXWindow::PushPropertyIds(std::vector<unsigned short, std::allocator<unsigned short> >&, int, ...)
+VCLXWindow::SetSynthesizingVCLEvent(bool)
+VCLXWindow::SetSystemParent_Impl(com::sun::star::uno::Any const&)
+VCLXWindow::getAccessibleFactory()
+VCLXWindow::notifyWindowRemoved(vcl::Window const&)
+VCLXWindow::resumeVclEventListening()
+VCLXWindow::suspendVclEventListening()
+ValueSet::Format(OutputDevice const&)
+ValueSet::GetLargestItemSize()
+VbaDialogsBase::Item(com::sun::star::uno::Any const&)
+VbaDocumentBase::getNameFromModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+VbaEventsHelperBase::ensureVBALibrary()
+VbaEventsHelperBase::getEventHandlerInfo(int) const
+VbaEventsHelperBase::getEventHandlerPath(VbaEventsHelperBase::EventHandlerInfo const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+VbaEventsHelperBase::getModuleType(rtl::OUString const&)
+VbaEventsHelperBase::startListening()
+VbaEventsHelperBase::stopListening()
+VbaEventsHelperBase::updateModulePathMap(rtl::OUString const&)
+VbaExport::getBasicLibrary() const
+VbaExport::getLibraryContainer() const
+VbaExport::getProjectName() const
+VbaGlobalsBase::hasServiceName(rtl::OUString const&)
+VbaTextFrame::getMargin(rtl::OUString const&)
+VbaTextFrame::setAsMSObehavior()
+VbaTextFrame::setMargin(rtl::OUString const&, float)
+VbaWindowBase::construct(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+VbaWindowBase::getWindow2() const
+VclBin::calculateRequisition() const
+VclBin::get_child()
+VclBin::get_child() const
+VclBin::setAllocation(Size const&)
+VclBox::accumulateMaxes(Size const&, Size&) const
+VclBox::finalizeMaxes(Size const&, unsigned short) const
+VclBuilder::MenuAndId::MenuAndId(rtl::OString const&, Menu*)
+VclBuilder::ParserState::ParserState()
+VclBuilder::applyAtkProperties(vcl::Window*, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::applyPackingProperty(vcl::Window*, vcl::Window*, xmlreader::XmlReader&)
+VclBuilder::cleanupWidgetOwnScrolling(vcl::Window*, vcl::Window*, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::collectAccelerator(xmlreader::XmlReader&, std::map<rtl::OString, std::pair<rtl::OString, rtl::OString>, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, std::pair<rtl::OString, rtl::OString> > > >&)
+VclBuilder::collectAtkRelationAttribute(xmlreader::XmlReader&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::collectAtkRoleAttribute(xmlreader::XmlReader&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::collectPangoAttribute(xmlreader::XmlReader&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::collectProperty(xmlreader::XmlReader&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&) const
+VclBuilder::connectFormattedFormatterAdjustment(rtl::OString const&, rtl::OUString const&)
+VclBuilder::connectNumericFormatterAdjustment(rtl::OString const&, rtl::OUString const&)
+VclBuilder::delete_by_name(rtl::OString const&)
+VclBuilder::delete_by_window(vcl::Window*)
+VclBuilder::disposeBuilder()
+VclBuilder::drop_ownership(vcl::Window const*)
+VclBuilder::extractAdjustmentToMap(rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&, std::vector<VclBuilder::UStringPair, std::allocator<VclBuilder::UStringPair> >&)
+VclBuilder::extractBuffer(rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::extractButtonImage(rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&, bool)
+VclBuilder::extractGroup(rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::extractMnemonicWidget(rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::extractModel(rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::getImageSize(std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::getStyleClass(xmlreader::XmlReader&)
+VclBuilder::get_adjustment_by_name(rtl::OString const&) const
+VclBuilder::get_buffer_by_name(rtl::OString const&) const
+VclBuilder::get_by_name(std::basic_string_view<char, std::char_traits<char> >)
+VclBuilder::get_by_window(vcl::Window const*) const
+VclBuilder::get_model_by_name(rtl::OString const&) const
+VclBuilder::get_widget_root()
+VclBuilder::get_window_packing_data(vcl::Window const*) const
+VclBuilder::handleActionWidget(xmlreader::XmlReader&)
+VclBuilder::handleAtkObject(xmlreader::XmlReader&) const
+VclBuilder::handleChild(vcl::Window*, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >*, xmlreader::XmlReader&)
+VclBuilder::handleItems(xmlreader::XmlReader&) const
+VclBuilder::handleListStore(xmlreader::XmlReader&, rtl::OString const&, std::basic_string_view<char, std::char_traits<char> >)
+VclBuilder::handleMenu(xmlreader::XmlReader&, rtl::OString const&, bool)
+VclBuilder::handleMenuChild(Menu*, xmlreader::XmlReader&)
+VclBuilder::handleMenuObject(Menu*, xmlreader::XmlReader&)
+VclBuilder::handleObject(vcl::Window*, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >*, xmlreader::XmlReader&)
+VclBuilder::handlePacking(vcl::Window*, vcl::Window*, xmlreader::XmlReader&)
+VclBuilder::handleRow(xmlreader::XmlReader&, rtl::OString const&)
+VclBuilder::handleSizeGroup(xmlreader::XmlReader&)
+VclBuilder::handleStyle(xmlreader::XmlReader&, int&)
+VclBuilder::handleTabChild(vcl::Window*, xmlreader::XmlReader&)
+VclBuilder::insertMenuObject(Menu*, PopupMenu*, rtl::OString const&, rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&, std::map<rtl::OString, std::pair<rtl::OString, rtl::OString>, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, std::pair<rtl::OString, rtl::OString> > > >&)
+VclBuilder::insertObject(vcl::Window*, rtl::OString const&, rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::makeObject(vcl::Window*, rtl::OString const&, rtl::OString const&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > >&)
+VclBuilder::mungeAdjustment(FormattedField&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::mungeAdjustment(NumericFormatter&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::mungeAdjustment(ScrollBar&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::mungeAdjustment(Slider&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::mungeModel(ComboBox&, VclBuilder::ListStore const&, unsigned short)
+VclBuilder::mungeModel(ListBox&, VclBuilder::ListStore const&, unsigned short)
+VclBuilder::mungeModel(SvTabListBox&, VclBuilder::ListStore const&, unsigned short)
+VclBuilder::mungeTextBuffer(VclMultiLineEdit&, std::map<rtl::OString, rtl::OUString, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, rtl::OUString> > > const&)
+VclBuilder::prepareWidgetOwnScrolling(vcl::Window*, long&)
+VclBuilder::setDeferredProperties()
+VclBuilder::set_response(std::basic_string_view<char, std::char_traits<char> >, short)
+VclBuilder::set_window_packing_position(vcl::Window const*, int)
+VclBuilder::sortIntoBestTabTraversalOrder::operator()(vcl::Window const*, vcl::Window const*) const
+VclBuilderContainer::VclBuilderContainer()
+VclBuilderContainer::disposeBuilder()
+VclBuilderContainer::~VclBuilderContainer()
+VclButtonBox::addReqGroups(VclButtonBox::Requisition const&) const
+VclButtonBox::addSpacing(Size const&, unsigned short) const
+VclButtonBox::calculatePrimarySecondaryRequisitions() const
+VclContainer::setLayoutPosSize(vcl::Window&, Point const&, Size const&)
+VclDrawingArea::DeleteSurroundingText(Selection const&)
+VclDrawingArea::DumpAsPropertyTree(tools::JsonWriter&)
+VclDrawingArea::GetSurroundingText() const
+VclDrawingArea::GetSurroundingTextSelection() const
+VclDrawingArea::GetUITestFactory() const
+VclDrawingArea::RequestHelp(HelpEvent const&)
+VclDrawingArea::StartDrag(signed char, Point const&)
+VclGrid::DumpAsPropertyTree(tools::JsonWriter&)
+VclGrid::calculateRequisition() const
+VclGrid::calculateRequisitionForSpacings(int, int) const
+VclGrid::setAllocation(Size const&)
+VclGrid::set_property(rtl::OString const&, rtl::OUString const&)
+VclMenuEvent::VclMenuEvent(Menu*, VclEventId, unsigned short)
+VclMenuEvent::~VclMenuEvent()
+VclMultiLineEdit::CanDown() const
+VclMultiLineEdit::CanUp() const
+VclMultiLineEdit::CaretChanged()
+VclMultiLineEdit::GetTextView() const
+VclMultiLineEdit::GetTextWindow()
+VclMultiLineEdit::GetVScrollBar() const
+VclMultiLineEdit::ImplInitSettings(bool)
+VclMultiLineEdit::ImplInitStyle(long)
+VclMultiLineEdit::SelectionChanged()
+VclMultiLineEdit::SetMaxTextWidth(long)
+VclWindowEvent::VclWindowEvent(vcl::Window*, VclEventId, void*)
+VclWindowEvent::~VclWindowEvent()
+VectorGraphicData::ensurePdfReplacement()
+VectorGraphicData::ensureReplacement()
+VectorGraphicData::ensureSequenceAndRange()
+VectorGraphicData::getSizeBytes() const
+VectorGraphicData::operator==(VectorGraphicData const&) const
+VectorGraphicData::setWmfExternalHeader(WmfExternal const&)
+VectorGraphicSearch::searchPDF(std::shared_ptr<VectorGraphicData> const&)
+Viewport3D::GetViewPoint()
+Viewport3D::SetDeviceWindow(tools::Rectangle const&)
+Viewport3D::SetVPN(basegfx::B3DVector const&)
+Viewport3D::SetVRP(basegfx::B3DPoint const&)
+Viewport3D::SetVUV(basegfx::B3DVector const&)
+Viewport3D::SetViewWindow(double, double, double, double)
+Viewport3D::Viewport3D()
+VirtualDevice::SetReferenceDevice(int, int)
+WString::Read(SvStream&)
+Wallpaper::IsFixed() const
+Wallpaper::SetBitmap(BitmapEx const&)
+Wallpaper::SetGradient(Gradient const&)
+Wallpaper::Wallpaper(Wallpaper&&)
+Wallpaper::operator=(Wallpaper const&)
+Wallpaper::operator==(Wallpaper const&) const
+WeldEditView::SetModifyHdl(Link<LinkParamNone*, void> const&)
+WhichRangesContainer::WhichRangesContainer(WhichRangesContainer&&)
+WhichRangesContainer::operator==(WhichRangesContainer const&) const
+WildCard::ImpMatch(char16_t const*, char16_t const*)
+WindowListenerMultiplexer::WindowListenerMultiplexer(cppu::OWeakObject&)
+WindowListenerMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+WindowListenerMultiplexer::queryInterface(com::sun::star::uno::Type const&)
+WindowListenerMultiplexer::release()
+WindowListenerMultiplexer::windowHidden(com::sun::star::lang::EventObject const&)
+WindowListenerMultiplexer::windowMoved(com::sun::star::awt::WindowEvent const&)
+WindowListenerMultiplexer::windowResized(com::sun::star::awt::WindowEvent const&)
+WindowListenerMultiplexer::windowShown(com::sun::star::lang::EventObject const&)
+WindowUIObject::get_name() const
+WindowUIObject::get_visible_child(rtl::OUString const&)
+WmfExternal::getSequence() const
+WorkWindow::WorkWindow(WindowType)
+Writer::AddFontItem(SfxItemPool&, SvxFontItem const&)
+Writer::AddFontItems_(SfxItemPool&, unsigned short)
+Writer::CopyLocalFileToINet(rtl::OUString&)
+Writer::CopyNextPam(SwPaM**)
+Writer::FindPos_Bkmk(SwPosition const&) const
+Writer::PutEditEngFontsInAttrPool()
+Writer::PutNumFormatFontsInAttrPool()
+Writer::ResetWriter()
+Writer::Write(SwPaM&, SvStream&, rtl::OUString const*)
+Writer::getIDocumentSettingAccess() const
+Writer::getIDocumentStylePoolAccess()
+Writer::getIDocumentStylePoolAccess() const
+X11SalObject::CreateObject(SalFrame*, SystemWindowData*, bool)
+X11SalObject::Dispatch(_XEvent*)
+X11SkiaSalGraphicsImpl::Flush()
+X11SkiaSalGraphicsImpl::Init()
+X11SkiaSalGraphicsImpl::X11SkiaSalGraphicsImpl(X11SalGraphics&)
+X11SkiaSalGraphicsImpl::avoidRecreateByResize() const
+X11SkiaSalGraphicsImpl::createWindowContext(_XDisplay*, unsigned long, XVisualInfo const*, int, int, SkiaHelper::RenderMethod, bool)
+X11SkiaSalGraphicsImpl::createWindowSurfaceInternal(bool)
+X11SkiaSalGraphicsImpl::freeResources()
+X11SkiaSalGraphicsImpl::prepareSkia()
+XBitmapEntry::XBitmapEntry(XBitmapEntry const&)
+XBitmapList::Create()
+XBitmapList::CreateBitmap(long, Size const&) const
+XBitmapList::CreateBitmapForUI(long)
+XColorItem::Clone(SfxItemPool*) const
+XColorItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XColorItem::XColorItem(unsigned short, int, Color const&)
+XColorItem::dumpAsXml(_xmlTextWriter*) const
+XColorList::Create()
+XColorList::CreateBitmapForUI(long)
+XColorList::createInstance()
+XDash::CreateDotDashArray(std::vector<double, std::allocator<double> >&, double) const
+XDash::operator==(XDash const&) const
+XDashEntry::XDashEntry(XDashEntry const&)
+XDashList::Create()
+XDashList::CreateBitmapForUI(long)
+XDashList::ImpCreateBitmapForXDash(XDash const*)
+XDashList::XDashList(rtl::OUString const&, rtl::OUString const&)
+XDashList::createInstance()
+XDashList::~XDashList()
+XFillAttrSetItem::Clone(SfxItemPool*) const
+XFillAttrSetItem::XFillAttrSetItem(SfxItemSet&&)
+XFillAttrSetItem::XFillAttrSetItem(XFillAttrSetItem const&)
+XFillAttrSetItem::XFillAttrSetItem(XFillAttrSetItem const&, SfxItemPool*)
+XFillBitmapItem::CompareValueFunc(NameOrIndex const*, NameOrIndex const*)
+XFillBitmapItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillBitmapItem::dumpAsXml(_xmlTextWriter*) const
+XFillBitmapItem::operator==(SfxPoolItem const&) const
+XFillBmpPosItem::dumpAsXml(_xmlTextWriter*) const
+XFillBmpStretchItem::Clone(SfxItemPool*) const
+XFillBmpStretchItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillBmpStretchItem::dumpAsXml(_xmlTextWriter*) const
+XFillBmpTileItem::Clone(SfxItemPool*) const
+XFillBmpTileItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillBmpTileItem::dumpAsXml(_xmlTextWriter*) const
+XFillColorItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillColorItem::dumpAsJSON[abi:cxx11]() const
+XFillColorItem::dumpAsXml(_xmlTextWriter*) const
+XFillFloatTransparenceItem::CompareValueFunc(NameOrIndex const*, NameOrIndex const*)
+XFillFloatTransparenceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillFloatTransparenceItem::dumpAsJSON[abi:cxx11]() const
+XFillGradientItem::Clone(SfxItemPool*) const
+XFillGradientItem::CompareValueFunc(NameOrIndex const*, NameOrIndex const*)
+XFillGradientItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillGradientItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XFillGradientItem::XFillGradientItem(int, XGradient const&)
+XFillGradientItem::dumpAsJSON[abi:cxx11]() const
+XFillGradientItem::operator==(SfxPoolItem const&) const
+XFillHatchItem::CompareValueFunc(NameOrIndex const*, NameOrIndex const*)
+XFillHatchItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillHatchItem::HasMetrics() const
+XFillHatchItem::ScaleMetrics(long, long)
+XFillHatchItem::operator==(SfxPoolItem const&) const
+XFillStyleItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillStyleItem::GetValueCount() const
+XFillStyleItem::dumpAsJSON[abi:cxx11]() const
+XFillStyleItem::dumpAsXml(_xmlTextWriter*) const
+XFillTransparenceItem::Clone(SfxItemPool*) const
+XFillTransparenceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XFillTransparenceItem::dumpAsXml(_xmlTextWriter*) const
+XFormTextAdjustItem::Clone(SfxItemPool*) const
+XFormTextAdjustItem::GetValueCount() const
+XFormTextAdjustItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XFormTextAdjustItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XFormTextDistanceItem::Clone(SfxItemPool*) const
+XFormTextHideFormItem::Clone(SfxItemPool*) const
+XFormTextMirrorItem::Clone(SfxItemPool*) const
+XFormTextOutlineItem::Clone(SfxItemPool*) const
+XFormTextShadowColorItem::Clone(SfxItemPool*) const
+XFormTextShadowItem::Clone(SfxItemPool*) const
+XFormTextShadowItem::GetValueCount() const
+XFormTextShadowItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XFormTextShadowItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XFormTextShadowXValItem::Clone(SfxItemPool*) const
+XFormTextShadowYValItem::Clone(SfxItemPool*) const
+XFormTextStartItem::Clone(SfxItemPool*) const
+XFormTextStyleItem::Clone(SfxItemPool*) const
+XFormTextStyleItem::GetValueCount() const
+XFormTextStyleItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XFormTextStyleItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XGradient::GradientStyleToString[abi:cxx11](com::sun::star::awt::GradientStyle)
+XGradient::dumpAsJSON[abi:cxx11]() const
+XGradient::operator==(XGradient const&) const
+XGradientEntry::XGradientEntry(XGradientEntry const&)
+XGradientList::Create()
+XGradientList::CreateBitmap(long, Size const&) const
+XGradientList::CreateBitmapForUI(long)
+XGradientList::createInstance()
+XGradientList::~XGradientList()
+XGradientStepCountItem::Clone(SfxItemPool*) const
+XGradientStepCountItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XHatch::operator==(XHatch const&) const
+XHatchEntry::XHatchEntry(XHatchEntry const&)
+XHatchList::Create()
+XHatchList::CreateBitmap(long, Size const&) const
+XHatchList::CreateBitmapForUI(long)
+XHatchList::createInstance()
+XHatchList::~XHatchList()
+XLineAttrSetItem::Clone(SfxItemPool*) const
+XLineAttrSetItem::XLineAttrSetItem(SfxItemSet&&)
+XLineAttrSetItem::XLineAttrSetItem(XLineAttrSetItem const&)
+XLineAttrSetItem::XLineAttrSetItem(XLineAttrSetItem const&, SfxItemPool*)
+XLineCapItem::Clone(SfxItemPool*) const
+XLineCapItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineCapItem::GetValueCount() const
+XLineCapItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineCapItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineColorItem::Clone(SfxItemPool*) const
+XLineColorItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineColorItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineColorItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineDashItem::Clone(SfxItemPool*) const
+XLineDashItem::CompareValueFunc(NameOrIndex const*, NameOrIndex const*)
+XLineDashItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineDashItem::HasMetrics() const
+XLineDashItem::ScaleMetrics(long, long)
+XLineDashItem::XLineDashItem(XLineDashItem const&)
+XLineEndCenterItem::Clone(SfxItemPool*) const
+XLineEndCenterItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineEndCenterItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineEndCenterItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineEndEntry::XLineEndEntry(XLineEndEntry const&)
+XLineEndItem::Clone(SfxItemPool*) const
+XLineEndItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineEndItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineEndItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineEndItem::XLineEndItem(XLineEndItem const&)
+XLineEndList::Create()
+XLineEndList::CreateBitmapForUI(long)
+XLineEndList::XLineEndList(rtl::OUString const&, rtl::OUString const&)
+XLineEndList::createInstance()
+XLineEndList::~XLineEndList()
+XLineEndWidthItem::Clone(SfxItemPool*) const
+XLineEndWidthItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineEndWidthItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineEndWidthItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineJointItem::Clone(SfxItemPool*) const
+XLineJointItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineJointItem::GetValueCount() const
+XLineJointItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineJointItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineStartCenterItem::Clone(SfxItemPool*) const
+XLineStartCenterItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineStartCenterItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineStartCenterItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineStartItem::Clone(SfxItemPool*) const
+XLineStartItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineStartItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineStartItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineStartItem::XLineStartItem(XLineStartItem const&)
+XLineStartItem::operator==(SfxPoolItem const&) const
+XLineStartWidthItem::Clone(SfxItemPool*) const
+XLineStartWidthItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineStartWidthItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineStartWidthItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineStyleItem::Clone(SfxItemPool*) const
+XLineStyleItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineStyleItem::GetValueCount() const
+XLineStyleItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XLineStyleItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+XLineTransparenceItem::Clone(SfxItemPool*) const
+XLineTransparenceItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineWidthItem::Clone(SfxItemPool*) const
+XLineWidthItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+XLineWidthItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+XMLBase64ImportContext::characters(rtl::OUString const&)
+XMLBase64ImportContext::endFastElement(int)
+XMLBase64ImportContext::~XMLBase64ImportContext()
+XMLCellStyleExport::exportStyleAttributes(com::sun::star::uno::Reference<com::sun::star::style::XStyle> const&)
+XMLCellStyleExport::exportStyleContent(com::sun::star::uno::Reference<com::sun::star::style::XStyle> const&)
+XMLCharContext::InsertControlCharacter(short)
+XMLCharContext::InsertString(rtl::OUString const&)
+XMLConstantsPropertyHandler::exportXML(rtl::OUString&, com::sun::star::uno::Any const&, SvXMLUnitConverter const&) const
+XMLConstantsPropertyHandler::importXML(rtl::OUString const&, com::sun::star::uno::Any&, SvXMLUnitConverter const&) const
+XMLConstantsPropertyHandler::~XMLConstantsPropertyHandler()
+XMLDocumentSettingsContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLDocumentSettingsContext::endFastElement(int)
+XMLDocumentSettingsContext::~XMLDocumentSettingsContext()
+XMLDocumentWrapper_XmlSecImpl::buildIDAttr(_xmlNode*) const
+XMLDocumentWrapper_XmlSecImpl::characters(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::checkElement(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::clearUselessData(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> > const&, com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::collapse(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::compressedCharacters(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::compressedEndDocument()
+XMLDocumentWrapper_XmlSecImpl::compressedEndElement(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::compressedIgnorableWhitespace(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::compressedProcessingInstruction(rtl::OUString const&, rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::compressedSetDocumentLocator(int, int, rtl::OUString const&, rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::compressedStartDocument()
+XMLDocumentWrapper_XmlSecImpl::compressedStartElement(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::xml::csax::XMLAttribute> const&)
+XMLDocumentWrapper_XmlSecImpl::endDocument()
+XMLDocumentWrapper_XmlSecImpl::endElement(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::generateSAXEvents(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&, com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::getCurrentElement()
+XMLDocumentWrapper_XmlSecImpl::getImplementationName()
+XMLDocumentWrapper_XmlSecImpl::getNextReservedNode()
+XMLDocumentWrapper_XmlSecImpl::getNextSAXEvent()
+XMLDocumentWrapper_XmlSecImpl::getNodeName(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::getNodeQName(_xmlNode*)
+XMLDocumentWrapper_XmlSecImpl::getSupportedServiceNames()
+XMLDocumentWrapper_XmlSecImpl::getTree(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&)
+XMLDocumentWrapper_XmlSecImpl::ignorableWhitespace(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::isCurrent(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::isCurrentElementEmpty()
+XMLDocumentWrapper_XmlSecImpl::processingInstruction(rtl::OUString const&, rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::rebuildIDLink(_xmlNode*) const
+XMLDocumentWrapper_XmlSecImpl::rebuildIDLink(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::recursiveDelete(_xmlNode*)
+XMLDocumentWrapper_XmlSecImpl::removeCurrentElement()
+XMLDocumentWrapper_XmlSecImpl::removeNode(_xmlNode*) const
+XMLDocumentWrapper_XmlSecImpl::sendEndElement(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, _xmlNode*)
+XMLDocumentWrapper_XmlSecImpl::sendNode(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, _xmlNode*)
+XMLDocumentWrapper_XmlSecImpl::sendStartElement(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, _xmlNode*)
+XMLDocumentWrapper_XmlSecImpl::setCurrentElement(com::sun::star::uno::Reference<com::sun::star::xml::wrapper::XXMLElementWrapper> const&)
+XMLDocumentWrapper_XmlSecImpl::setDocumentLocator(com::sun::star::uno::Reference<com::sun::star::xml::sax::XLocator> const&)
+XMLDocumentWrapper_XmlSecImpl::startDocument()
+XMLDocumentWrapper_XmlSecImpl::startElement(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList> const&)
+XMLDocumentWrapper_XmlSecImpl::supportsService(rtl::OUString const&)
+XMLDocumentWrapper_XmlSecImpl::~XMLDocumentWrapper_XmlSecImpl()
+XMLDrawingPageStyleContext::FillPropertySet(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLEnumPropertyHdl::exportXML(rtl::OUString&, com::sun::star::uno::Any const&, SvXMLUnitConverter const&) const
+XMLEnumPropertyHdl::importXML(rtl::OUString const&, com::sun::star::uno::Any&, SvXMLUnitConverter const&) const
+XMLEnumPropertyHdl::~XMLEnumPropertyHdl()
+XMLEventExport::AddHandler(rtl::OUString const&, std::unique_ptr<XMLEventExportHandler, std::default_delete<XMLEventExportHandler> >)
+XMLEventExport::AddTranslationTable(XMLEventNameTranslation const*)
+XMLEventExport::Export(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, bool)
+XMLEventExport::Export(com::sun::star::uno::Reference<com::sun::star::container::XNameReplace> const&, bool)
+XMLEventExport::Export(com::sun::star::uno::Reference<com::sun::star::document::XEventsSupplier> const&, bool)
+XMLEventExport::XMLEventExport(SvXMLExport&)
+XMLEventExport::~XMLEventExport()
+XMLEventsImportContext::AddEventValues(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+XMLEventsImportContext::SetEvents(com::sun::star::uno::Reference<com::sun::star::container::XNameReplace> const&)
+XMLEventsImportContext::SetEvents(com::sun::star::uno::Reference<com::sun::star::document::XEventsSupplier> const&)
+XMLEventsImportContext::XMLEventsImportContext(SvXMLImport&, com::sun::star::uno::Reference<com::sun::star::container::XNameReplace> const&)
+XMLEventsImportContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLEventsImportContext::~XMLEventsImportContext()
+XMLFontAutoStylePool::Find(rtl::OUString const&, rtl::OUString const&, FontFamily, FontPitch, unsigned short) const
+XMLFontAutoStylePool::embedFontFile(rtl::OUString const&, rtl::OUString const&)
+XMLFontAutoStylePool::exportXML()
+XMLFontAutoStylePool::getUsedFontList()
+XMLFontStylesContext::CreateStyleChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLFontStylesContext::FillProperties(rtl::OUString const&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> >&, int, int, int, int, int) const
+XMLFontStylesContext::~XMLFontStylesContext()
+XMLGraphicsDefaultStyle::SetDefaults()
+XMLGraphicsDefaultStyle::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLGraphicsDefaultStyle::~XMLGraphicsDefaultStyle()
+XMLNamedBoolPropertyHdl::exportXML(rtl::OUString&, com::sun::star::uno::Any const&, SvXMLUnitConverter const&) const
+XMLNamedBoolPropertyHdl::importXML(rtl::OUString const&, com::sun::star::uno::Any&, SvXMLUnitConverter const&) const
+XMLNumberFormatAttributesExportHelper::GetCellType(int, bool&, com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&)
+XMLNumberFormatAttributesExportHelper::GetCurrencySymbol(int, rtl::OUString&)
+XMLNumberFormatAttributesExportHelper::GetCurrencySymbol(int, rtl::OUString&, com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&)
+XMLNumberFormatAttributesExportHelper::SetNumberFormatAttributes(SvXMLExport&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool, bool)
+XMLNumberFormatAttributesExportHelper::WriteAttributes(SvXMLExport&, short, double const&, rtl::OUString const&, bool)
+XMLNumberFormatAttributesExportHelper::WriteAttributes(short, double const&, rtl::OUString const&, bool, unsigned short)
+XMLPageExport::XMLPageExport(SvXMLExport&)
+XMLPageExport::collectPageMasterAutoStyle(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, XMLPageExportNameEntry&)
+XMLPageExport::exportMasterPageContent(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+XMLPageExport::exportStyle(com::sun::star::uno::Reference<com::sun::star::style::XStyle> const&, bool)
+XMLPageExport::~XMLPageExport()
+XMLPropStyleContext::deactivateOldFillStyleDefinitions(std::unordered_set<rtl::OUString, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<rtl::OUString> > const&)
+XMLPropStyleContext::doNewDrawingLayerFillStyleDefinitionsExist(rtl::OUString const&) const
+XMLPropStyleContext::getFooterSet()
+XMLPropStyleContext::getHeaderSet()
+XMLPropStyleContext::getStandardSet()
+XMLPropStyleContext::translateNameBasedDrawingLayerFillStyleDefinitionsToStyleDisplayNames()
+XMLPropertyHandler::equals(com::sun::star::uno::Any const&, com::sun::star::uno::Any const&) const
+XMLPropertyHandlerFactory::GetHdlCache(int) const
+XMLPropertySetMapper::GetEarliestODFVersionForExport(int) const
+XMLPropertySetMapper::GetEntryFlags(int) const
+XMLPropertySetMapper::GetEntryIndex(int, unsigned int, int) const
+XMLPropertySetMapper::GetEntryType(int) const
+XMLPropertySetMapper::GetPropertyHandler(int) const
+XMLPropertySetMapper::RemoveEntry(int)
+XMLPropertySetMapper::exportXML(rtl::OUString&, XMLPropertyState const&, SvXMLUnitConverter const&) const
+XMLPropertySetMapper::importXML(rtl::OUString const&, XMLPropertyState&, SvXMLUnitConverter const&) const
+XMLPropertySetMapper::~XMLPropertySetMapper()
+XMLScriptContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLScriptContext::~XMLScriptContext()
+XMLSettingsExportHelper::CallTypeFunction(com::sun::star::uno::Any const&, rtl::OUString const&) const
+XMLSettingsExportHelper::ManipulateSetting(com::sun::star::uno::Any&, std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+XMLSettingsExportHelper::exportBool(bool, rtl::OUString const&) const
+XMLSettingsExportHelper::exportByte()
+XMLSettingsExportHelper::exportDateTime(com::sun::star::util::DateTime const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportDouble(double, rtl::OUString const&) const
+XMLSettingsExportHelper::exportForbiddenCharacters(com::sun::star::uno::Any const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportIndexAccess(com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportInt(int, rtl::OUString const&) const
+XMLSettingsExportHelper::exportLong(long, rtl::OUString const&) const
+XMLSettingsExportHelper::exportMapEntry(com::sun::star::uno::Any const&, rtl::OUString const&, bool) const
+XMLSettingsExportHelper::exportNameAccess(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportSequencePropertyValue(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportShort(short, rtl::OUString const&) const
+XMLSettingsExportHelper::exportString(rtl::OUString const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportSymbolDescriptors(com::sun::star::uno::Sequence<com::sun::star::formula::SymbolDescriptor> const&, rtl::OUString const&) const
+XMLSettingsExportHelper::exportbase64Binary(com::sun::star::uno::Sequence<signed char> const&, rtl::OUString const&) const
+XMLShapeExport::checkForCustomShapeReplacement(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+XMLShapeExport::collectShapesAutoStyles(com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&)
+XMLShapeExport::export3DLamps(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLShapeExport::export3DSceneAttributes(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLShapeExport::exportShapes(com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, XMLShapeExportFlags, com::sun::star::awt::Point*)
+XMLShapeExport::onExport(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+XMLShapeImportHelper::Create3DSceneChildContext(SvXMLImport&, int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&)
+XMLShapeImportHelper::CreateFrameChildContext(SvXMLImport&, int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLShapeImportHelper::CreateFrameChildContext(SvXMLImportContext*, int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLShapeImportHelper::CreateShapePropMapper(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, SvXMLImport&)
+XMLShapeImportHelper::IsHandleProgressBarEnabled() const
+XMLShapeImportHelper::IsPresentationShapesSupported() const
+XMLShapeImportHelper::SetAutoStylesContext(SvXMLStylesContext*)
+XMLShapeImportHelper::SetStylesContext(SvXMLStylesContext*)
+XMLShapeImportHelper::addGluePointMapping(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, int, int)
+XMLShapeImportHelper::addShapeConnection(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, bool, rtl::OUString const&, int)
+XMLShapeImportHelper::addShapeEvents(SdXMLEventContextData&)
+XMLShapeImportHelper::enableHandleProgressBar()
+XMLShapeImportHelper::getGluePointId(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, int)
+XMLShapeImportHelper::moveGluePointMapping(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, int)
+XMLShapeImportHelper::restoreConnections()
+XMLShapeImportHelper::shapeRemoved(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+XMLShapeStyleContext::FillPropertySet(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLShapeStyleContext::Finish(bool)
+XMLShapeStyleContext::SetAttribute(int, rtl::OUString const&)
+XMLShapeStyleContext::XMLShapeStyleContext(SvXMLImport&, SvXMLStylesContext&, XmlStyleFamily)
+XMLShapeStyleContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLShapeStyleContext::~XMLShapeStyleContext()
+XMLSignatureHelper::AddEncapsulatedX509Certificate(rtl::OUString const&)
+XMLSignatureHelper::AddForSigning(int, rtl::OUString const&, bool, bool)
+XMLSignatureHelper::CheckAndUpdateSignatureInformation(com::sun::star::uno::Reference<com::sun::star::xml::crypto::XSecurityEnvironment> const&, SignatureInformation const&)
+XMLSignatureHelper::CloseDocumentHandler(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&)
+XMLSignatureHelper::CreateAndWriteOOXMLSignature(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, int)
+XMLSignatureHelper::CreateAndWriteSignature(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, bool)
+XMLSignatureHelper::CreateDocumentHandlerWithHeader(com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+XMLSignatureHelper::EndMission()
+XMLSignatureHelper::EnsureSignaturesRelation(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, bool)
+XMLSignatureHelper::ExportOOXMLSignature(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, SignatureInformation const&, int)
+XMLSignatureHelper::ExportSignature(com::sun::star::uno::Reference<com::sun::star::xml::sax::XDocumentHandler> const&, SignatureInformation const&, bool)
+XMLSignatureHelper::ExportSignatureContentTypes(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, int)
+XMLSignatureHelper::ExportSignatureRelations(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, int)
+XMLSignatureHelper::GetNewSecurityId()
+XMLSignatureHelper::GetSignatureInformation(int) const
+XMLSignatureHelper::GetSignatureInformations() const
+XMLSignatureHelper::ReadAndVerifySignature(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&)
+XMLSignatureHelper::ReadAndVerifySignatureStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, bool)
+XMLSignatureHelper::ReadAndVerifySignatureStorageStream(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&)
+XMLSignatureHelper::SetDateTime(int, DateTime const&)
+XMLSignatureHelper::SetDescription(int, rtl::OUString const&)
+XMLSignatureHelper::SetGpgCertificate(int, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+XMLSignatureHelper::SetSignatureLineId(int, rtl::OUString const&)
+XMLSignatureHelper::SetSignatureLineInvalidGraphic(int, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+XMLSignatureHelper::SetSignatureLineValidGraphic(int, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+XMLSignatureHelper::SetStartVerifySignatureHdl(Link<LinkParamNone*, bool> const&)
+XMLSignatureHelper::SetX509Certificate(int, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, svl::crypto::SignatureMethodAlgorithm)
+XMLSignatureHelper::StartMission(com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> const&)
+XMLSignatureHelper::StartVerifySignatureElement()
+XMLSignatureHelper::XMLSignatureHelper(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+XMLSignatureHelper::~XMLSignatureHelper()
+XMLSignature_GpgImpl::generate(com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSignatureTemplate> const&, com::sun::star::uno::Reference<com::sun::star::xml::crypto::XSecurityEnvironment> const&)
+XMLSignature_GpgImpl::getImplementationName()
+XMLSignature_GpgImpl::getSupportedServiceNames()
+XMLSignature_GpgImpl::impl_createInstance(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&)
+XMLSignature_GpgImpl::impl_getImplementationName()
+XMLSignature_GpgImpl::impl_getSupportedServiceNames()
+XMLSignature_GpgImpl::supportsService(rtl::OUString const&)
+XMLSignature_GpgImpl::validate(com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSignatureTemplate> const&, com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> const&)
+XMLSignature_GpgImpl::~XMLSignature_GpgImpl()
+XMLStyleExport::exportStyle(com::sun::star::uno::Reference<com::sun::star::style::XStyle> const&, rtl::OUString const&, rtl::Reference<SvXMLExportPropertyMapper> const&, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const*)
+XMLStyleExport::exportStyleAttributes(com::sun::star::uno::Reference<com::sun::star::style::XStyle> const&)
+XMLStyleExport::exportStyleFamily(char const*, rtl::OUString const&, rtl::Reference<SvXMLExportPropertyMapper> const&, bool, XmlStyleFamily, rtl::OUString const*)
+XMLStyleExport::~XMLStyleExport()
+XMLTableExport::ExportCell(com::sun::star::uno::Reference<com::sun::star::table::XCell> const&, std::shared_ptr<XMLTableInfo> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+XMLTableExport::ExportTableColumns(com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&, std::shared_ptr<XMLTableInfo> const&)
+XMLTableExport::XMLTableExport(SvXMLExport&, rtl::Reference<SvXMLExportPropertyMapper> const&, rtl::Reference<XMLPropertyHandlerFactory> const&)
+XMLTableExport::collectTableAutoStyles(com::sun::star::uno::Reference<com::sun::star::table::XColumnRowRange> const&)
+XMLTableExport::exportAutoStyles()
+XMLTableExport::exportTable(com::sun::star::uno::Reference<com::sun::star::table::XColumnRowRange> const&)
+XMLTableExport::exportTableTemplates()
+XMLTableExport::~XMLTableExport()
+XMLTableImport::CreateTableContext(com::sun::star::uno::Reference<com::sun::star::table::XColumnRowRange> const&)
+XMLTableImport::XMLTableImport(SvXMLImport&, rtl::Reference<XMLPropertySetMapper> const&, rtl::Reference<XMLPropertyHandlerFactory> const&)
+XMLTableImport::addTableTemplate(rtl::OUString const&, std::map<rtl::OUString, rtl::OUString, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, rtl::OUString> > >&)
+XMLTableImport::finishStyles()
+XMLTableImport::insertTabletemplate(rtl::OUString const&, bool)
+XMLTableImport::~XMLTableImport()
+XMLTextImportHelper::AddCrossRefHeadingMapping(rtl::OUString const&, rtl::OUString const&)
+XMLTextImportHelper::AddOutlineStyleCandidate(signed char, rtl::OUString const&)
+XMLTextImportHelper::ClearLastImportedTextFrameName()
+XMLTextImportHelper::ConnectFrameChains(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLTextImportHelper::ConvertStarFonts(rtl::OUString const&, rtl::OUString const&, unsigned char&, bool, SvXMLImport&) const
+XMLTextImportHelper::CreateParaDefaultExtPropMapper(SvXMLImport&)
+XMLTextImportHelper::CreateShapeExtPropMapper(SvXMLImport&)
+XMLTextImportHelper::CreateTableChildContext(SvXMLImport&, int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLTextImportHelper::FindAndRemoveBookmarkStartRange(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::text::XTextRange>&, rtl::OUString&, std::shared_ptr<xmloff::ParsedRDFaAttributes>&)
+XMLTextImportHelper::FindAutoListStyle(rtl::OUString const&) const
+XMLTextImportHelper::FindDrawingPage(rtl::OUString const&) const
+XMLTextImportHelper::FindOutlineStyleName(rtl::OUString&, signed char)
+XMLTextImportHelper::FindPageMaster(rtl::OUString const&) const
+XMLTextImportHelper::FindSectionStyle(rtl::OUString const&) const
+XMLTextImportHelper::GetChapterNumbering() const
+XMLTextImportHelper::GetNumberingStyles() const
+XMLTextImportHelper::GetPageStyles() const
+XMLTextImportHelper::GetParaImportPropertySetMapper() const
+XMLTextImportHelper::GetParaStyles() const
+XMLTextImportHelper::GetRubyImportPropertySetMapper() const
+XMLTextImportHelper::GetSectionImportPropertySetMapper() const
+XMLTextImportHelper::GetTextListHelper()
+XMLTextImportHelper::HasFrameByName(rtl::OUString const&) const
+XMLTextImportHelper::InsertBookmarkStartRange(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, rtl::OUString const&, std::shared_ptr<xmloff::ParsedRDFaAttributes>&)
+XMLTextImportHelper::InsertControlCharacter(short)
+XMLTextImportHelper::InsertFootnoteID(rtl::OUString const&, short)
+XMLTextImportHelper::InsertSequenceID(rtl::OUString const&, rtl::OUString const&, short)
+XMLTextImportHelper::InsertString(rtl::OUString const&)
+XMLTextImportHelper::InsertString(rtl::OUString const&, bool&)
+XMLTextImportHelper::IsBlockMode() const
+XMLTextImportHelper::IsDuplicateFrame(rtl::OUString const&, int, int, int, int) const
+XMLTextImportHelper::IsInFrame() const
+XMLTextImportHelper::IsInHeaderFooter() const
+XMLTextImportHelper::IsInsideDeleteContext() const
+XMLTextImportHelper::IsOrganizerMode() const
+XMLTextImportHelper::IsProgress() const
+XMLTextImportHelper::IsStylesOnlyMode() const
+XMLTextImportHelper::MakeBackpatcherImpl()
+XMLTextImportHelper::MapCrossRefHeadingFieldsHorribly()
+XMLTextImportHelper::PopListContext()
+XMLTextImportHelper::ProcessFootnoteReference(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLTextImportHelper::ProcessSequenceReference(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLTextImportHelper::PushListContext()
+XMLTextImportHelper::RedlineAdd(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::util::DateTime const&, bool)
+XMLTextImportHelper::RedlineAdjustStartNodeCursor()
+XMLTextImportHelper::RedlineCreateText(com::sun::star::uno::Reference<com::sun::star::text::XTextCursor>&, rtl::OUString const&)
+XMLTextImportHelper::RedlineSetCursor(rtl::OUString const&, bool, bool)
+XMLTextImportHelper::SetChangesProtectionKey(com::sun::star::uno::Sequence<signed char> const&)
+XMLTextImportHelper::SetHyperlink(SvXMLImport const&, com::sun::star::uno::Reference<com::sun::star::text::XTextCursor> const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, XMLEventsImportContext*)
+XMLTextImportHelper::SetInsideDeleteContext(bool)
+XMLTextImportHelper::SetOpenRedlineId(rtl::OUString const&)
+XMLTextImportHelper::SetRecordChanges(bool)
+XMLTextImportHelper::SetRuby(SvXMLImport const&, com::sun::star::uno::Reference<com::sun::star::text::XTextCursor> const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+XMLTextImportHelper::SetShowChanges(bool)
+XMLTextImportHelper::StoreLastImportedFrameName(rtl::OUString const&)
+XMLTextImportHelper::addFieldParam(rtl::OUString const&, rtl::OUString const&)
+XMLTextImportHelper::createAndInsertApplet(rtl::OUString const&, rtl::OUString const&, bool, rtl::OUString const&, int, int)
+XMLTextImportHelper::createAndInsertFloatingFrame(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, int, int)
+XMLTextImportHelper::createAndInsertOLEObject(SvXMLImport&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, int, int)
+XMLTextImportHelper::createAndInsertOOoLink(SvXMLImport&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, int, int)
+XMLTextImportHelper::createAndInsertPlugin(rtl::OUString const&, rtl::OUString const&, int, int)
+XMLTextImportHelper::dispose()
+XMLTextImportHelper::endAppletOrPlugin(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, std::map<rtl::OUString const, rtl::OUString, std::less<rtl::OUString const>, std::allocator<std::pair<rtl::OUString const, rtl::OUString> > >&)
+XMLTextImportHelper::getBookmarkCondition(rtl::OUString const&) const
+XMLTextImportHelper::getBookmarkHidden(rtl::OUString const&) const
+XMLTextImportHelper::getCurrentFieldType()
+XMLTextImportHelper::hasCurrentFieldCtx() const
+XMLTextImportHelper::popFieldCtx()
+XMLTextImportHelper::pushFieldCtx(rtl::OUString const&, rtl::OUString const&)
+XMLTextImportHelper::setBookmarkAttributes(rtl::OUString const&, bool, rtl::OUString const&)
+XMLTextImportHelper::setCurrentFieldParamsTo(com::sun::star::uno::Reference<com::sun::star::text::XFormField> const&)
+XMLTextImportPropertyMapper::FontDefaultsCheck(XMLPropertyState const*, XMLPropertyState const*, XMLPropertyState const*, XMLPropertyState const*, XMLPropertyState const*, std::unique_ptr<XMLPropertyState, std::default_delete<XMLPropertyState> >*, std::unique_ptr<XMLPropertyState, std::default_delete<XMLPropertyState> >*, std::unique_ptr<XMLPropertyState, std::default_delete<XMLPropertyState> >*, std::unique_ptr<XMLPropertyState, std::default_delete<XMLPropertyState> >*) const
+XMLTextImportPropertyMapper::FontFinished(XMLPropertyState*, XMLPropertyState*, XMLPropertyState*, XMLPropertyState*, XMLPropertyState*)
+XMLTextImportPropertyMapper::finished(std::vector<XMLPropertyState, std::allocator<XMLPropertyState> >&, int, int) const
+XMLTextImportPropertyMapper::handleSpecialItem(XMLPropertyState&, std::vector<XMLPropertyState, std::allocator<XMLPropertyState> >&, rtl::OUString const&, SvXMLUnitConverter const&, SvXMLNamespaceMap const&) const
+XMLTextImportPropertyMapper::~XMLTextImportPropertyMapper()
+XMLTextListAutoStylePool::Add(com::sun::star::uno::Reference<com::sun::star::container::XIndexReplace> const&)
+XMLTextListAutoStylePool::Find(com::sun::star::uno::Reference<com::sun::star::container::XIndexReplace> const&) const
+XMLTextListAutoStylePool::RegisterName(rtl::OUString const&)
+XMLTextListAutoStylePool::XMLTextListAutoStylePool(SvXMLExport&)
+XMLTextListAutoStylePool::exportXML() const
+XMLTextListAutoStylePool::~XMLTextListAutoStylePool()
+XMLTextMasterPageContext::CreateHeaderFooterContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&, bool, bool, bool)
+XMLTextMasterPageExport::exportHeaderFooterContent(com::sun::star::uno::Reference<com::sun::star::text::XText> const&, bool, bool)
+XMLTextMasterPageExport::exportMasterPageContent(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+XMLTextParagraphExport::Add(XmlStyleFamily, MultiPropertySetHelper&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLTextParagraphExport::CreateParaDefaultExtPropMapper(SvXMLExport&)
+XMLTextParagraphExport::FindTextStyleAndHyperlink(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool&, bool&, bool&, XMLPropertyState const**) const
+XMLTextParagraphExport::PopTextListsHelper()
+XMLTextParagraphExport::PushNewTextListsHelper()
+XMLTextParagraphExport::_collectTextEmbeddedAutoStyles(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+XMLTextParagraphExport::_exportTextEmbedded(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&)
+XMLTextParagraphExport::_exportTextFrame(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&, bool)
+XMLTextParagraphExport::_exportTextGraphic(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&)
+XMLTextParagraphExport::addHyperlinkAttributes(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyState> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> const&)
+XMLTextParagraphExport::exportAnyTextFrame(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, XMLTextParagraphExport::FrameType, bool, bool, bool, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const*)
+XMLTextParagraphExport::exportFrameFrames(bool, bool, com::sun::star::uno::Reference<com::sun::star::text::XTextFrame> const*)
+XMLTextParagraphExport::exportListAndSectionChange(com::sun::star::uno::Reference<com::sun::star::text::XTextSection>&, MultiPropertySetHelper&, short, com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, XMLTextNumRuleInfo const&, XMLTextNumRuleInfo const&, bool)
+XMLTextParagraphExport::exportListAndSectionChange(com::sun::star::uno::Reference<com::sun::star::text::XTextSection>&, com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, XMLTextNumRuleInfo const&, XMLTextNumRuleInfo const&, bool)
+XMLTextParagraphExport::exportListAndSectionChange(com::sun::star::uno::Reference<com::sun::star::text::XTextSection>&, com::sun::star::uno::Reference<com::sun::star::text::XTextSection> const&, XMLTextNumRuleInfo const&, XMLTextNumRuleInfo const&, bool)
+XMLTextParagraphExport::exportListChange(XMLTextNumRuleInfo const&, XMLTextNumRuleInfo const&)
+XMLTextParagraphExport::exportMeta(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool, bool, bool&)
+XMLTextParagraphExport::exportNumStyles(bool)
+XMLTextParagraphExport::exportParagraph(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, bool, bool, bool, MultiPropertySetHelper&, TextPNS)
+XMLTextParagraphExport::exportRuby(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+XMLTextParagraphExport::exportSoftPageBreak()
+XMLTextParagraphExport::exportTable(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, bool, bool)
+XMLTextParagraphExport::exportTableAutoStyles()
+XMLTextParagraphExport::exportTextContentEnumeration(com::sun::star::uno::Reference<com::sun::star::container::XEnumeration> const&, bool, com::sun::star::uno::Reference<com::sun::star::text::XTextSection> const&, bool, bool, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const*, TextPNS)
+XMLTextParagraphExport::exportTextField(com::sun::star::uno::Reference<com::sun::star::text::XTextField> const&, bool, bool, bool, bool*)
+XMLTextParagraphExport::exportTextField(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, bool, bool, bool*)
+XMLTextParagraphExport::exportTextFootnote(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, bool, bool)
+XMLTextParagraphExport::exportTextFootnoteConfiguration()
+XMLTextParagraphExport::exportTextFootnoteConfigurationHelper(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+XMLTextParagraphExport::exportTextFootnoteHelper(com::sun::star::uno::Reference<com::sun::star::text::XFootnote> const&, com::sun::star::uno::Reference<com::sun::star::text::XText> const&, rtl::OUString const&, bool, bool, bool)
+XMLTextParagraphExport::exportTextMark(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, xmloff::token::XMLTokenEnum const*, bool)
+XMLTextParagraphExport::exportTextRange(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, bool, bool&, XMLTextParagraphExport::FieldmarkType&)
+XMLTextParagraphExport::exportTextRangeEnumeration(com::sun::star::uno::Reference<com::sun::star::container::XEnumeration> const&, bool, bool, bool&)
+XMLTextParagraphExport::exportTextRangeSpan(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo>&, bool, bool, rtl::OUString const&, bool&, XMLTextParagraphExport::FieldmarkType&)
+XMLTextParagraphExport::exportTrackedChanges(com::sun::star::uno::Reference<com::sun::star::text::XText> const&, bool)
+XMLTextParagraphExport::recordTrackedChangesForXText(com::sun::star::uno::Reference<com::sun::star::text::XText> const&)
+XMLTextParagraphExport::recordTrackedChangesNoXText()
+XMLTextPropertySetMapper::getPropertyMapForType(TextPropMap)
+XMLTextPropertySetMapper::~XMLTextPropertySetMapper()
+XMLTextShapeStyleContext::CreateAndInsert(bool)
+XMLTextShapeStyleContext::Finish(bool)
+XMLTextShapeStyleContext::SetAttribute(int, rtl::OUString const&)
+XMLTextShapeStyleContext::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+XMLTextShapeStyleContext::~XMLTextShapeStyleContext()
+XOBitmap::GetGraphicObject() const
+XOutBitmap::ExportGraphic(Graphic const&, INetURLObject const&, GraphicFilter&, unsigned short, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const*)
+XOutBitmap::MirrorAnimation(Animation const&, bool, bool)
+XOutBitmap::MirrorGraphic(Graphic const&, BmpMirrorFlags)
+XPatternList::Create()
+XPatternList::CreateBitmap(long, Size const&) const
+XPatternList::CreateBitmapForUI(long)
+XPatternList::createInstance()
+XPolygon::CalcDistance(unsigned short, unsigned short)
+XPolygon::CalcSmoothJoin(unsigned short, unsigned short, unsigned short)
+XPolygon::CalcTangent(unsigned short, unsigned short, unsigned short)
+XPolygon::CheckAngles(o3tl::strong_int<int, FractionTag<100> >&, o3tl::strong_int<int, FractionTag<100> >, o3tl::strong_int<int, FractionTag<100> >&, o3tl::strong_int<int, FractionTag<100> >&)
+XPolygon::Distort(tools::Rectangle const&, XPolygon const&)
+XPolygon::GenBezArc(Point const&, long, long, long, long, o3tl::strong_int<int, FractionTag<100> >, o3tl::strong_int<int, FractionTag<100> >, unsigned short, unsigned short)
+XPolygon::GetBoundRect() const
+XPolygon::GetFlags(unsigned short) const
+XPolygon::GetPointCount() const
+XPolygon::Insert(unsigned short, XPolygon const&)
+XPolygon::IsControl(unsigned short) const
+XPolygon::IsSmooth(unsigned short) const
+XPolygon::Move(long, long)
+XPolygon::PointsToBezier(unsigned short)
+XPolygon::Remove(unsigned short, unsigned short)
+XPolygon::SetFlags(unsigned short, PolyFlags)
+XPolygon::SetPointCount(unsigned short)
+XPolygon::SubdivideBezier(unsigned short, bool, double)
+XPolygon::XPolygon(XPolygon const&)
+XPolygon::XPolygon(XPolygon&&)
+XPolygon::XPolygon(basegfx::B2DPolygon const&)
+XPolygon::XPolygon(tools::Rectangle const&, long, long)
+XPolygon::XPolygon(unsigned short)
+XPolygon::operator=(XPolygon const&)
+XPolygon::operator=(XPolygon&&)
+XPolygon::operator==(XPolygon const&) const
+XPolygon::operator[](unsigned short)
+XPropertyEntry::XPropertyEntry(rtl::OUString const&)
+XPropertyList::isValidIdx(long) const
+XPropertyList::~XPropertyList()
+XmlSecStatusBarControl::Command(CommandEvent const&)
+XmlSecStatusBarControl::CreateImpl(unsigned short, unsigned short, StatusBar&)
+XmlSecStatusBarControl::Paint(UserDrawEvent const&)
+XmlSecStatusBarControl::StateChangedAtStatusBarControl(unsigned short, SfxItemState, SfxPoolItem const*)
+XmlSecStatusBarControl::XmlSecStatusBarControl(unsigned short, unsigned short, StatusBar&)
+XmlSecStatusBarControl::~XmlSecStatusBarControl()
+ZCodec::ImplWriteBack()
+ZCodec::InitCompress()
+ZCodec::InitDecompress(SvStream&)
+ZipUtils::Deflater::doDeflateBytes(com::sun::star::uno::Sequence<signed char>&, int, int)
+ZipUtils::Deflater::end()
+ZipUtils::Deflater::getTotalIn() const
+ZipUtils::Deflater::getTotalOut() const
+ZipUtils::Deflater::init(int, bool)
+ZipUtils::Deflater::needsInput() const
+ZipUtils::Deflater::reset()
+ZipUtils::Inflater::doInflateBytes(com::sun::star::uno::Sequence<signed char>&, int, int)
+_NSSUTIL_EvaluateConfigDir@@NSSUTIL_3.14
+_NSSUTIL_GetSecmodName@@NSSUTIL_3.14
+_PK11_ContextGetAEADSimulation@@NSS_3.52
+_PK11_ContextSetAEADSimulation@@NSS_3.52
+_SGN_VerifyPKCS1DigestInfo@@NSSUTIL_3.17.1
+__CERT_AddTempCertToPerm@@NSS_3.4
+__CERT_ClosePermCertDB@@NSS_3.2
+__CERT_DecodeDERCertificate@@NSS_3.2
+__CERT_NewTempCertificate@@NSS_3.2
+__CERT_TraversePermCertsForNickname@@NSS_3.2
+__CERT_TraversePermCertsForSubject@@NSS_3.2
+__PBE_CreateContext@@NSS_3.2
+__PBE_DestroyContext@@NSS_3.2
+__PBE_GenerateBits@@NSS_3.2
+__PK11_CreateContextByRawKey@@NSS_3.2
+__PK11_GetKeyData@@NSS_3.2
+__PK11_SetCertificateNickname@@NSS_3.18
+__cnd_FormatDebug(char const*, int, int, char const*, int)
+__nss_InitLock@@NSS_3.2
+_lucene_shutdown()
+_pr_push_ipv6toipv4_layer
+_pr_test_ipv6_socket
+accessibility::AccessibleComponentBase::getAccessibleAtPoint(com::sun::star::awt::Point const&)
+accessibility::AccessibleComponentBase::getBackground()
+accessibility::AccessibleComponentBase::getBounds()
+accessibility::AccessibleComponentBase::getForeground()
+accessibility::AccessibleComponentBase::getLocation()
+accessibility::AccessibleComponentBase::getLocationOnScreen()
+accessibility::AccessibleComponentBase::getSize()
+accessibility::AccessibleEditableTextPara::AccessibleEditableTextPara(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> const&, accessibility::AccessibleParaManager const*)
+accessibility::AccessibleEditableTextPara::CheckIndex(int)
+accessibility::AccessibleEditableTextPara::CheckPosition(int)
+accessibility::AccessibleEditableTextPara::CheckRange(int, int)
+accessibility::AccessibleEditableTextPara::Dispose()
+accessibility::AccessibleEditableTextPara::ExtendByField(com::sun::star::accessibility::TextSegment&)
+accessibility::AccessibleEditableTextPara::GetAttributeRun(int&, int&, int)
+accessibility::AccessibleEditableTextPara::GetEditSource() const
+accessibility::AccessibleEditableTextPara::GetEditViewForwarder(bool) const
+accessibility::AccessibleEditableTextPara::GetFieldTypeNameAtIndex(int)
+accessibility::AccessibleEditableTextPara::GetSelection(int&, int&)
+accessibility::AccessibleEditableTextPara::GetTextForwarder() const
+accessibility::AccessibleEditableTextPara::GetTextLen() const
+accessibility::AccessibleEditableTextPara::GetTextRange(int, int)
+accessibility::AccessibleEditableTextPara::GetViewForwarder() const
+accessibility::AccessibleEditableTextPara::HaveChildren()
+accessibility::AccessibleEditableTextPara::HaveEditView() const
+accessibility::AccessibleEditableTextPara::LogicToPixel(tools::Rectangle const&, MapMode const&, SvxViewForwarder const&)
+accessibility::AccessibleEditableTextPara::MakeCursor(int)
+accessibility::AccessibleEditableTextPara::MakeSelection(int)
+accessibility::AccessibleEditableTextPara::MakeSelection(int, int)
+accessibility::AccessibleEditableTextPara::SetEEOffset(Point const&)
+accessibility::AccessibleEditableTextPara::SetEditSource(SvxEditSourceAdapter*)
+accessibility::AccessibleEditableTextPara::SetParagraphIndex(int)
+accessibility::AccessibleEditableTextPara::SetState(short)
+accessibility::AccessibleEditableTextPara::SkipField(int, bool)
+accessibility::AccessibleEditableTextPara::UnSetState(short)
+accessibility::AccessibleEditableTextPara::_correctValues(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+accessibility::AccessibleEditableTextPara::addAccessibleEventListener(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleEventListener> const&)
+accessibility::AccessibleEditableTextPara::containsPoint(com::sun::star::awt::Point const&)
+accessibility::AccessibleEditableTextPara::copyText(int, int)
+accessibility::AccessibleEditableTextPara::cutText(int, int)
+accessibility::AccessibleEditableTextPara::deleteText(int, int)
+accessibility::AccessibleEditableTextPara::getAccessibleAtPoint(com::sun::star::awt::Point const&)
+accessibility::AccessibleEditableTextPara::getAccessibleChild(int)
+accessibility::AccessibleEditableTextPara::getAccessibleChildCount()
+accessibility::AccessibleEditableTextPara::getAccessibleContext()
+accessibility::AccessibleEditableTextPara::getAccessibleDescription()
+accessibility::AccessibleEditableTextPara::getAccessibleIndexInParent()
+accessibility::AccessibleEditableTextPara::getAccessibleName()
+accessibility::AccessibleEditableTextPara::getAccessibleParent()
+accessibility::AccessibleEditableTextPara::getAccessibleRelationSet()
+accessibility::AccessibleEditableTextPara::getAccessibleRole()
+accessibility::AccessibleEditableTextPara::getAccessibleStateSet()
+accessibility::AccessibleEditableTextPara::getBackground()
+accessibility::AccessibleEditableTextPara::getCaretPosition()
+accessibility::AccessibleEditableTextPara::getCharacter(int)
+accessibility::AccessibleEditableTextPara::getCharacterAttributes(int, com::sun::star::uno::Sequence<rtl::OUString> const&)
+accessibility::AccessibleEditableTextPara::getCharacterBounds(int)
+accessibility::AccessibleEditableTextPara::getCharacterCount()
+accessibility::AccessibleEditableTextPara::getDefaultAttributes(com::sun::star::uno::Sequence<rtl::OUString> const&)
+accessibility::AccessibleEditableTextPara::getForeground()
+accessibility::AccessibleEditableTextPara::getHyperLink(int)
+accessibility::AccessibleEditableTextPara::getHyperLinkCount()
+accessibility::AccessibleEditableTextPara::getHyperLinkIndex(int)
+accessibility::AccessibleEditableTextPara::getImplementationName()
+accessibility::AccessibleEditableTextPara::getIndexAtPoint(com::sun::star::awt::Point const&)
+accessibility::AccessibleEditableTextPara::getLineNumberAtIndex(int)
+accessibility::AccessibleEditableTextPara::getLocale()
+accessibility::AccessibleEditableTextPara::getLocation()
+accessibility::AccessibleEditableTextPara::getLocationOnScreen()
+accessibility::AccessibleEditableTextPara::getNumberOfLineWithCaret()
+accessibility::AccessibleEditableTextPara::getRunAttributes(int, com::sun::star::uno::Sequence<rtl::OUString> const&)
+accessibility::AccessibleEditableTextPara::getSelectedText()
+accessibility::AccessibleEditableTextPara::getSelectionEnd()
+accessibility::AccessibleEditableTextPara::getSelectionStart()
+accessibility::AccessibleEditableTextPara::getSize()
+accessibility::AccessibleEditableTextPara::getSupportedServiceNames()
+accessibility::AccessibleEditableTextPara::getText()
+accessibility::AccessibleEditableTextPara::getTextAtIndex(int, short)
+accessibility::AccessibleEditableTextPara::getTextAtLineNumber(int)
+accessibility::AccessibleEditableTextPara::getTextAtLineWithCaret()
+accessibility::AccessibleEditableTextPara::getTextBeforeIndex(int, short)
+accessibility::AccessibleEditableTextPara::getTextBehindIndex(int, short)
+accessibility::AccessibleEditableTextPara::getTextRange(int, int)
+accessibility::AccessibleEditableTextPara::grabFocus()
+accessibility::AccessibleEditableTextPara::implGetLineBoundary(rtl::OUString const&, com::sun::star::i18n::Boundary&, int)
+accessibility::AccessibleEditableTextPara::implGetLocale()
+accessibility::AccessibleEditableTextPara::implGetParagraphBoundary(rtl::OUString const&, com::sun::star::i18n::Boundary&, int)
+accessibility::AccessibleEditableTextPara::implGetSelection(int&, int&)
+accessibility::AccessibleEditableTextPara::implGetText()
+accessibility::AccessibleEditableTextPara::insertText(rtl::OUString const&, int)
+accessibility::AccessibleEditableTextPara::pasteText(int)
+accessibility::AccessibleEditableTextPara::queryInterface(com::sun::star::uno::Type const&)
+accessibility::AccessibleEditableTextPara::removeAccessibleEventListener(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleEventListener> const&)
+accessibility::AccessibleEditableTextPara::replaceText(int, int, rtl::OUString const&)
+accessibility::AccessibleEditableTextPara::scrollSubstringTo(int, int, com::sun::star::accessibility::AccessibleScrollType)
+accessibility::AccessibleEditableTextPara::setAttributes(int, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+accessibility::AccessibleEditableTextPara::setCaretPosition(int)
+accessibility::AccessibleEditableTextPara::setSelection(int, int)
+accessibility::AccessibleEditableTextPara::setText(rtl::OUString const&)
+accessibility::AccessibleEditableTextPara::supportsService(rtl::OUString const&)
+accessibility::AccessibleEditableTextPara::~AccessibleEditableTextPara()
+accessibility::AccessibleGraphicShape::CreateAccessibleBaseName()
+accessibility::AccessibleGraphicShape::getImplementationName()
+accessibility::AccessibleOLEShape::CreateAccessibleBaseName()
+accessibility::AccessibleOLEShape::getImplementationName()
+accessibility::AccessibleParaManager::GetChild(int) const
+accessibility::AccessibleParaManager::InitChild(accessibility::AccessibleEditableTextPara&, SvxEditSourceAdapter&, int, int) const
+accessibility::AccessibleParaManager::IsReferencable(int) const
+accessibility::AccessibleParaManager::IsReferencable(rtl::Reference<accessibility::AccessibleEditableTextPara> const&)
+accessibility::AccessibleParaManager::SetState(int, short)
+accessibility::AccessibleParaManager::SetState(short)
+accessibility::AccessibleParaManager::ShutdownPara(std::pair<accessibility::WeakCppRef<com::sun::star::accessibility::XAccessible, accessibility::AccessibleEditableTextPara>, com::sun::star::awt::Rectangle> const&)
+accessibility::AccessibleParaManager::UnSetState(int, short)
+accessibility::AccessibleParaManager::UnSetState(short)
+accessibility::AccessibleShape::CreateAccessibleBaseName()
+accessibility::AccessibleShape::GetFullAccessibleName(accessibility::AccessibleShape*)
+accessibility::AccessibleShape::UpdateNameAndDescription()
+accessibility::AccessibleShape::UpdateStates()
+accessibility::AccessibleShape::disposing(com::sun::star::lang::EventObject const&)
+accessibility::AccessibleShape::getImplementationName()
+accessibility::AccessibleShapeInfo::AccessibleShapeInfo(accessibility::AccessibleShapeInfo const&)
+accessibility::AccessibleShapeTreeInfo::AccessibleShapeTreeInfo(accessibility::AccessibleShapeTreeInfo const&)
+accessibility::AccessibleShapeTreeInfo::dispose()
+accessibility::AccessibleShapeTreeInfo::operator=(accessibility::AccessibleShapeTreeInfo const&)
+accessibility::AccessibleTextHelper::HaveFocus()
+accessibility::ShapeTypeHandler::CreateAccessibleBaseName(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+accessibility::ShapeTypeHandler::GetTypeId(rtl::OUString const&) const
+accessibility::ShapeTypeHandler::ShapeTypeHandler()
+accessibility::ShapeTypeHandler::~ShapeTypeHandler()
+accumulate_for_scale
+addCandidateVar
+addUndoPresolve
+add_GUB
+add_SOS
+add_artificial
+add_column
+add_columnex
+add_constraint_name
+add_constraintex
+add_lag_con
+add_row
+addmpscolumn
+allocCHAR
+allocFREE
+allocINT
+allocLREAL
+allocMYBOOL
+allocREAL
+appendBinaryPQExpBuffer
+appendLink
+appendPQExpBuffer
+appendPQExpBufferChar
+appendPQExpBufferStr
+appendUndoPresolve
+append_SOSgroup
+append_SOSrec
+append_columns
+append_rows
+appendmpsitem
+auto_scale
+avmedia::MediaControlBase::SelectPlayToolBoxItem(avmedia::MediaItem&, avmedia::MediaItem const&, std::basic_string_view<char, std::char_traits<char> >)
+avmedia::MediaFloater::MediaFloater(SfxBindings*, SfxChildWindow*, vcl::Window*)
+avmedia::MediaFloater::Resize()
+avmedia::MediaFloater::ToggleFloatingMode()
+avmedia::MediaFloater::dispatchCurrentURL()
+avmedia::MediaFloater::dispose()
+avmedia::MediaFloater::~MediaFloater()
+avmedia::MediaItem::Clone(SfxItemPool*) const
+avmedia::MediaItem::GetPresentation(SfxItemPresentation, MapUnit, MapUnit, rtl::OUString&, IntlWrapper const&) const
+avmedia::MediaItem::PutValue(com::sun::star::uno::Any const&, unsigned char)
+avmedia::MediaItem::QueryValue(com::sun::star::uno::Any&, unsigned char) const
+avmedia::MediaItem::merge(avmedia::MediaItem const&)
+avmedia::MediaItem::operator==(SfxPoolItem const&) const
+avmedia::MediaItem::setDuration(double)
+avmedia::MediaPlayer::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+avmedia::MediaPlayer::GetInfo() const
+avmedia::MediaPlayer::MediaPlayer(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+avmedia::MediaPlayer::~MediaPlayer()
+avmedia::MediaToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+avmedia::MediaToolBoxControl::CreateItemWindow(vcl::Window*)
+avmedia::MediaToolBoxControl::MediaToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+avmedia::MediaToolBoxControl::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+avmedia::MediaToolBoxControl::~MediaToolBoxControl()
+avmedia::MediaWindow::AcceptDrop(AcceptDropEvent const&)
+avmedia::MediaWindow::Command(CommandEvent const&)
+avmedia::MediaWindow::ExecuteDrop(ExecuteDropEvent const&)
+avmedia::MediaWindow::KeyInput(KeyEvent const&)
+avmedia::MediaWindow::KeyUp(KeyEvent const&)
+avmedia::MediaWindow::MouseButtonDown(MouseEvent const&)
+avmedia::MediaWindow::MouseButtonUp(MouseEvent const&)
+avmedia::MediaWindow::MouseMove(MouseEvent const&)
+avmedia::MediaWindow::StartDrag(signed char, Point const&)
+avmedia::MediaWindow::getURL() const
+avmedia::MediaWindow::isValid() const
+avmedia::MediaWindow::setURL(rtl::OUString const&, rtl::OUString const&)
+avmedia::MediaWindow::start()
+basegfx::B2DCubicBezier::B2DCubicBezier(basegfx::B2DCubicBezier const&)
+basegfx::B2DCubicBezier::equal(basegfx::B2DCubicBezier const&) const
+basegfx::B2DCubicBezier::getRange() const
+basegfx::B2DCubicBezier::operator!=(basegfx::B2DCubicBezier const&) const
+basegfx::B2DCubicBezier::operator=(basegfx::B2DCubicBezier const&)
+basegfx::B2DCubicBezier::operator==(basegfx::B2DCubicBezier const&) const
+basegfx::B2DCubicBezier::transform(basegfx::B2DHomMatrix const&)
+basegfx::B2DHomMatrix::isLastLineDefault() const
+basegfx::B2DHomMatrix::operator*=(double)
+basegfx::B2DHomMatrix::operator+=(basegfx::B2DHomMatrix const&)
+basegfx::B2DHomMatrix::operator-=(basegfx::B2DHomMatrix const&)
+basegfx::B2DHomMatrix::operator/=(double)
+basegfx::B2DHomMatrix::scale(basegfx::B2DTuple const&)
+basegfx::B2DPolyPolygon::hasDoublePoints() const
+basegfx::B2DPolyRange::B2DPolyRange(basegfx::B2DPolyRange const&)
+basegfx::B2DPolyRange::operator!=(basegfx::B2DPolyRange const&) const
+basegfx::B2DPolyRange::operator==(basegfx::B2DPolyRange const&) const
+basegfx::B2DPolyRange::transform(basegfx::B2DHomMatrix const&)
+basegfx::B2DPolygon::hasDoublePoints() const
+basegfx::B2DTrapezoid::B2DTrapezoid(double const&, double const&, double const&, double const&, double const&, double const&)
+basegfx::B2DTrapezoid::getB2DPolygon() const
+basegfx::B2DVector::getEmptyVector()
+basegfx::B2IVector::operator*=(basegfx::B2DHomMatrix const&)
+basegfx::B2IVector::operator=(basegfx::B2ITuple const&)
+basegfx::B3DHomMatrix::determinant() const
+basegfx::B3DHomMatrix::isLastLineDefault() const
+basegfx::B3DHomMatrix::operator*=(double)
+basegfx::B3DHomMatrix::operator+=(basegfx::B3DHomMatrix const&)
+basegfx::B3DHomMatrix::operator-=(basegfx::B3DHomMatrix const&)
+basegfx::B3DHomMatrix::operator/=(double)
+basegfx::B3DHomMatrix::rotate(basegfx::B3DTuple const&)
+basegfx::B3DHomMatrix::scale(basegfx::B3DTuple const&)
+basegfx::B3DHomMatrix::translate(basegfx::B3DTuple const&)
+basegfx::B3DPolyPolygon::areBColorsUsed() const
+basegfx::B3DPolyPolygon::begin()
+basegfx::B3DPolyPolygon::begin() const
+basegfx::B3DPolyPolygon::end()
+basegfx::B3DPolyPolygon::end() const
+basegfx::B3DPolyPolygon::hasDoublePoints() const
+basegfx::B3DPolyPolygon::remove(unsigned int, unsigned int)
+basegfx::B3DPolyPolygon::removeDoublePoints()
+basegfx::B3DPolygon::B3DPolygon(basegfx::B3DPolygon&&)
+basegfx::B3DPolygon::append(basegfx::B3DPolygon const&, unsigned int, unsigned int)
+basegfx::B3DPolygon::areBColorsUsed() const
+basegfx::B3DPolygon::areNormalsUsed() const
+basegfx::B3DPolygon::areTextureCoordinatesUsed() const
+basegfx::B3DPolygon::flip()
+basegfx::B3DPolygon::getBColor(unsigned int) const
+basegfx::B3DPolygon::hasDoublePoints() const
+basegfx::B3DPolygon::operator!=(basegfx::B3DPolygon const&) const
+basegfx::B3DPolygon::remove(unsigned int, unsigned int)
+basegfx::B3DPolygon::setB3DPoint(unsigned int, basegfx::B3DPoint const&)
+basegfx::B3DPolygon::transformNormals(basegfx::B3DHomMatrix const&)
+basegfx::B3DPolygon::transformTextureCoordinates(basegfx::B2DHomMatrix const&)
+basegfx::BColorModifier::~BColorModifier()
+basegfx::SystemDependentData::estimateUsageInBytes() const
+basegfx::areParallel(basegfx::B3DVector const&, basegfx::B3DVector const&)
+basegfx::fround(basegfx::B3DTuple const&)
+basegfx::getContinuity(basegfx::B2DVector const&, basegfx::B2DVector const&)
+basegfx::getOrientation(basegfx::B2DVector const&, basegfx::B2DVector const&)
+basegfx::utils::B2DClipState::B2DClipState(basegfx::utils::B2DClipState&&)
+basegfx::utils::B2DClipState::operator!=(basegfx::utils::B2DClipState const&) const
+basegfx::utils::createRotateAroundCenterKeepAspectRatioStayInsideRange(basegfx::B2DRange const&, double)
+basegfx::utils::distort(basegfx::B2DPoint const&, basegfx::B2DRange const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&)
+basegfx::utils::distort(basegfx::B2DPolygon const&, basegfx::B2DRange const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&)
+basegfx::utils::getEdgeLength(basegfx::B2DPolygon const&, unsigned int)
+basegfx::utils::getIndexOfPredecessor(unsigned int, basegfx::B2DPolygon const&)
+basegfx::utils::getIndexOfSuccessor(unsigned int, basegfx::B2DPolygon const&)
+basegfx::utils::getIndexOfSuccessor(unsigned int, basegfx::B3DPolygon const&)
+basegfx::utils::getOrientationForIndex(basegfx::B2DPolygon const&, unsigned int)
+basegfx::utils::getSignedArea(basegfx::B2DPolyPolygon const&)
+basegfx::utils::getSignedArea(basegfx::B2DPolygon const&)
+basegfx::utils::getSmallestDistancePointToEdge(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, double&)
+basegfx::utils::getSmallestDistancePointToPolygon(basegfx::B2DPolygon const&, basegfx::B2DPoint const&, unsigned int&, double&)
+basegfx::utils::growInNormalDirection(basegfx::B2DPolygon const&, double)
+basegfx::utils::hasNeutralPoints(basegfx::B2DPolygon const&)
+basegfx::utils::interpolate(basegfx::B2DPolygon const&, basegfx::B2DPolygon const&, double)
+basegfx::utils::invertNormals(basegfx::B3DPolygon const&)
+basegfx::utils::isConvex(basegfx::B2DPolygon const&)
+basegfx::utils::isInEpsilonRange(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, double)
+basegfx::utils::isInside(basegfx::B3DPolygon const&, basegfx::B3DPoint const&, bool)
+basegfx::utils::isPointInTriangle(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, bool)
+basegfx::utils::isPointOnEdge(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DVector const&, double*)
+basegfx::utils::isPointOnLine(basegfx::B2DPoint const&, basegfx::B2DPoint const&, basegfx::B2DPoint const&, bool)
+basegfx::utils::isPointOnLine(basegfx::B3DPoint const&, basegfx::B3DPoint const&, basegfx::B3DPoint const&, bool)
+basegfx::utils::isPointOnPolygon(basegfx::B2DPolygon const&, basegfx::B2DPoint const&, bool)
+basegfx::utils::isPointOnPolygon(basegfx::B3DPolygon const&, basegfx::B3DPoint const&)
+basegfx::utils::reSegmentPolygon(basegfx::B2DPolygon const&, unsigned int)
+basegfx::utils::solveCrossovers(basegfx::B2DPolygon const&)
+basegfx::utils::solveCrossovers(std::vector<basegfx::B2DRange, std::allocator<basegfx::B2DRange> > const&, std::vector<basegfx::B2VectorOrientation, std::allocator<basegfx::B2VectorOrientation> > const&)
+basic::vba::registerCurrentDirectory(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&, rtl::OUString const&)
+basicide_choose_macro
+basicide_handle_basic_error
+basicide_macro_organizer
+bb_better
+bimprove
+bin_count
+blockWriteAMAT
+blockWriteBMAT
+blockWriteBOOL
+blockWriteINT
+blockWriteLREAL
+blockWriteREAL
+bsolve
+bsolve_xA2
+btran
+canvas::CanvasCustomSpriteHelper::getUpdateArea(basegfx::B2DRange const&) const
+canvas::CanvasCustomSpriteHelper::updateClipState(rtl::Reference<canvas::Sprite> const&)
+canvas::ParametricPolyPolygon::ParametricPolyPolygon(com::sun::star::uno::Reference<com::sun::star::rendering::XGraphicDevice> const&, basegfx::B2DPolygon const&, canvas::ParametricPolyPolygon::GradientType, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<double> > const&, com::sun::star::uno::Sequence<double> const&, double)
+canvas::ParametricPolyPolygon::ParametricPolyPolygon(com::sun::star::uno::Reference<com::sun::star::rendering::XGraphicDevice> const&, canvas::ParametricPolyPolygon::GradientType, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<double> > const&, com::sun::star::uno::Sequence<double> const&)
+canvas::ParametricPolyPolygon::createEllipticalGradient(com::sun::star::uno::Reference<com::sun::star::rendering::XGraphicDevice> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<double> > const&, com::sun::star::uno::Sequence<double> const&, double)
+canvas::ParametricPolyPolygon::createLinearHorizontalGradient(com::sun::star::uno::Reference<com::sun::star::rendering::XGraphicDevice> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<double> > const&, com::sun::star::uno::Sequence<double> const&)
+canvas::ParametricPolyPolygon::createRectangularGradient(com::sun::star::uno::Reference<com::sun::star::rendering::XGraphicDevice> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<double> > const&, com::sun::star::uno::Sequence<double> const&, double)
+canvas::ParametricPolyPolygon::disposing()
+canvas::ParametricPolyPolygon::getColor(double)
+canvas::ParametricPolyPolygon::getColorSpace()
+canvas::ParametricPolyPolygon::getImplementationName()
+canvas::ParametricPolyPolygon::getOutline(double)
+canvas::ParametricPolyPolygon::getPointColor(com::sun::star::geometry::RealPoint2D const&)
+canvas::ParametricPolyPolygon::getSupportedServiceNames()
+canvas::ParametricPolyPolygon::supportsService(rtl::OUString const&)
+canvas::ParametricPolyPolygon::~ParametricPolyPolygon()
+canvas::PropertySetHelper::isPropertyName(rtl::OUString const&) const
+canvas::SpriteRedrawManager::isAreaUpdateNotOpaque(basegfx::B2DRange const&, std::pair<basegfx::B2DRange, canvas::SpriteRedrawManager::SpriteInfo> const&) const
+canvas::createSurfaceProxyManager(std::shared_ptr<canvas::IRenderModule> const&)
+canvas::tools::ElapsedTime::getCurrentTime() const
+canvas::tools::ElapsedTime::getElapsedTimeImpl() const
+canvas::tools::ElapsedTime::getSystemTime()
+canvas::tools::isInside(basegfx::B2DRange const&, basegfx::B2DRange const&, basegfx::B2DHomMatrix const&)
+chart::AddPointToPoly(com::sun::star::drawing::PolyPolygonShape3D&, com::sun::star::drawing::Position3D const&, int)
+chart::AxisHelper::checkDateAxis(com::sun::star::chart2::ScaleData&, chart::ExplicitCategoriesProvider*, bool)
+chart::AxisHelper::createAxis(int, int, com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, chart::ReferenceSizeProvider*)
+chart::AxisHelper::createDefaultScale()
+chart::AxisHelper::getDateCheckedScale(com::sun::star::uno::Reference<com::sun::star::chart2::XAxis> const&, chart::ChartModel&)
+chart::AxisHelper::getDimensionIndexOfAxis(com::sun::star::uno::Reference<com::sun::star::chart2::XAxis> const&, com::sun::star::uno::Reference<com::sun::star::chart2::XDiagram> const&)
+chart::AxisHelper::getExplicitNumberFormatKeyForAxis(com::sun::star::uno::Reference<com::sun::star::chart2::XAxis> const&, com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&, com::sun::star::uno::Reference<com::sun::star::chart2::XChartDocument> const&, bool)
+chart::AxisHelper::isSecondaryYAxisNeeded(com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&)
+chart::AxisHelper::removeExplicitScaling(com::sun::star::chart2::ScaleData&)
+chart::AxisHelper::shouldAxisBeDisplayed(com::sun::star::uno::Reference<com::sun::star::chart2::XAxis> const&, com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&)
+chart::B2DHomMatrixToHomogenMatrix3(basegfx::B2DHomMatrix const&)
+chart::B3DHomMatrixToHomogenMatrix(basegfx::B3DHomMatrix const&)
+chart::B3DPointToPosition3D(basegfx::B3DPoint const&)
+chart::B3DPointToSequence(basegfx::B3DPoint const&)
+chart::BaseGFXHelper::B2IRectangleToAWTPoint(basegfx::B2IRange const&)
+chart::BaseGFXHelper::B2IRectangleToAWTSize(basegfx::B2IRange const&)
+chart::BaseGFXHelper::GetScaleFromMatrix(basegfx::B3DHomMatrix const&)
+chart::BaseGFXHelper::getBoundVolume(com::sun::star::drawing::PolyPolygonShape3D const&)
+chart::BaseGFXHelper::makeRectangle(com::sun::star::awt::Point const&, com::sun::star::awt::Size const&)
+chart::BaseGFXHelper::makeRectangle(com::sun::star::awt::Rectangle const&)
+chart::BezierToPoly(com::sun::star::drawing::PolyPolygonBezierCoords const&)
+chart::CharacterProperties::AddDefaultsToMap(std::unordered_map<int, com::sun::star::uno::Any, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, com::sun::star::uno::Any> > >&)
+chart::ChartModel::ChartModel(chart::ChartModel const&)
+chart::ChartModel::ChartModel(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+chart::ChartModel::addCloseListener(com::sun::star::uno::Reference<com::sun::star::util::XCloseListener> const&)
+chart::ChartModel::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+chart::ChartModel::addModifyListener(com::sun::star::uno::Reference<com::sun::star::util::XModifyListener> const&)
+chart::ChartModel::addStorageChangeListener(com::sun::star::uno::Reference<com::sun::star::document::XStorageChangeListener> const&)
+chart::ChartModel::attachNumberFormatsSupplier(com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&)
+chart::ChartModel::attachResource(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::close(unsigned char)
+chart::ChartModel::connectController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+chart::ChartModel::createClone()
+chart::ChartModel::createDefaultChart()
+chart::ChartModel::createInstance(rtl::OUString const&)
+chart::ChartModel::createInstanceWithArguments(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+chart::ChartModel::createInternalDataProvider(unsigned char)
+chart::ChartModel::disconnectController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+chart::ChartModel::dispose()
+chart::ChartModel::disposing(com::sun::star::lang::EventObject const&)
+chart::ChartModel::dump()
+chart::ChartModel::dumpAsXml(_xmlTextWriter*) const
+chart::ChartModel::getArgs()
+chart::ChartModel::getAvailableServiceNames()
+chart::ChartModel::getChartTypeManager()
+chart::ChartModel::getCurrentController()
+chart::ChartModel::getCurrentSelection()
+chart::ChartModel::getDataSequences()
+chart::ChartModel::getDocumentProperties()
+chart::ChartModel::getDocumentStorage()
+chart::ChartModel::getFirstDiagram()
+chart::ChartModel::getImplementationName()
+chart::ChartModel::getLocation()
+chart::ChartModel::getMapUnit(long)
+chart::ChartModel::getNumberFormatSettings()
+chart::ChartModel::getNumberFormats()
+chart::ChartModel::getNumberFormatsSupplier()
+chart::ChartModel::getPageBackground()
+chart::ChartModel::getPreferredVisualRepresentation(long)
+chart::ChartModel::getRangeHighlighter()
+chart::ChartModel::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+chart::ChartModel::getSupportedServiceNames()
+chart::ChartModel::getTitleObject()
+chart::ChartModel::getTransferData(com::sun::star::datatransfer::DataFlavor const&)
+chart::ChartModel::getTransferDataFlavors()
+chart::ChartModel::getTypes()
+chart::ChartModel::getURL()
+chart::ChartModel::getUndoManager()
+chart::ChartModel::getUsedData()
+chart::ChartModel::getUsedRangeRepresentations()
+chart::ChartModel::getVisualAreaSize(long)
+chart::ChartModel::hasControllersLocked()
+chart::ChartModel::hasLocation()
+chart::ChartModel::impl_adjustAdditionalShapesPositionAndSize(com::sun::star::awt::Size const&)
+chart::ChartModel::impl_createDefaultChartTypeTemplate()
+chart::ChartModel::impl_createDefaultData()
+chart::ChartModel::impl_createFilter(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::impl_g_getLocation()
+chart::ChartModel::impl_getCurrentController()
+chart::ChartModel::impl_isControllerConnected(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+chart::ChartModel::impl_load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+chart::ChartModel::impl_loadGraphics(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+chart::ChartModel::impl_notifyCloseListeners()
+chart::ChartModel::impl_notifyModifiedListeners()
+chart::ChartModel::impl_notifyStorageChangeListeners()
+chart::ChartModel::impl_store(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+chart::ChartModel::initNew()
+chart::ChartModel::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+chart::ChartModel::insertDefaultChart()
+chart::ChartModel::isDataFlavorSupported(com::sun::star::datatransfer::DataFlavor const&)
+chart::ChartModel::isModified()
+chart::ChartModel::isReadonly()
+chart::ChartModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::loadFromStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::lockControllers()
+chart::ChartModel::modified(com::sun::star::lang::EventObject const&)
+chart::ChartModel::queryInterface(com::sun::star::uno::Type const&)
+chart::ChartModel::removeCloseListener(com::sun::star::uno::Reference<com::sun::star::util::XCloseListener> const&)
+chart::ChartModel::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+chart::ChartModel::removeModifyListener(com::sun::star::uno::Reference<com::sun::star::util::XModifyListener> const&)
+chart::ChartModel::removeStorageChangeListener(com::sun::star::uno::Reference<com::sun::star::document::XStorageChangeListener> const&)
+chart::ChartModel::setArguments(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::setChartTypeManager(com::sun::star::uno::Reference<com::sun::star::chart2::XChartTypeManager> const&)
+chart::ChartModel::setCurrentController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+chart::ChartModel::setFirstDiagram(com::sun::star::uno::Reference<com::sun::star::chart2::XDiagram> const&)
+chart::ChartModel::setModified(unsigned char)
+chart::ChartModel::setParent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+chart::ChartModel::setTitleObject(com::sun::star::uno::Reference<com::sun::star::chart2::XTitle> const&)
+chart::ChartModel::setVisualAreaSize(long, com::sun::star::awt::Size const&)
+chart::ChartModel::store()
+chart::ChartModel::storeAsURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::storeSelf(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::storeToStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::storeToURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+chart::ChartModel::supportsService(rtl::OUString const&)
+chart::ChartModel::switchToStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+chart::ChartModel::unlockControllers()
+chart::ChartModel::update()
+chart::ChartModel::~ChartModel()
+chart::ChartModelHelper::createRangeHighlighter(com::sun::star::uno::Reference<com::sun::star::view::XSelectionSupplier> const&)
+chart::ChartModelHelper::getDefaultPageSize()
+chart::ChartModelHelper::getFirstCoordinateSystem(chart::ChartModel&)
+chart::ChartTypeHelper::getRoleOfSequenceForYAxisNumberFormatDetection(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+chart::ChartTypeHelper::isSeriesInFrontOfAxisLine(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+chart::ChartTypeHelper::isSupportingComplexCategory(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+chart::ChartTypeHelper::isSupportingOnlyDeepStackingFor3D(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+chart::ChartTypeHelper::shiftCategoryPosAtXAxisPerDefault(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+chart::DataSequenceToStringSequence(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSequence> const&)
+chart::DataSeriesHelper::getAllDataSequencesByRole(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::data::XLabeledDataSequence> > const&, rtl::OUString const&)
+chart::DataSeriesHelper::getDataSource(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> > const&)
+chart::DataSeriesHelper::getLabelForLabeledDataSequence(com::sun::star::uno::Reference<com::sun::star::chart2::data::XLabeledDataSequence> const&)
+chart::DataSeriesHelper::hasUnhiddenData(com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> const&)
+chart::DataSeriesHelper::makeLinesThickOrThin(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+chart::DataSeriesHelper::setStackModeAtSeries(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> > const&, com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&, chart::StackMode)
+chart::DataSeriesHelper::switchLinesOnOrOff(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+chart::DataSeriesHelper::switchSymbolsOnOrOff(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool, int)
+chart::DataSeriesHelper::translateIndexFromHiddenToFullSequence(int, com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSequence> const&, bool)
+chart::DataSourceHelper::createDataSource(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::data::XLabeledDataSequence> > const&)
+chart::DataSourceHelper::getUsedData(chart::ChartModel&)
+chart::DataSourceHelper::getUsedData(com::sun::star::uno::Reference<com::sun::star::chart2::XChartDocument> const&)
+chart::DataSourceHelper::getUsedDataRanges(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+chart::DiagramHelper::getDataSeriesGroups(com::sun::star::uno::Reference<com::sun::star::chart2::XDiagram> const&)
+chart::DiagramHelper::getDateNumberFormat(com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&)
+chart::DiagramHelper::getPercentNumberFormat(com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatsSupplier> const&)
+chart::DiagramHelper::getStackModeFromChartType(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&, bool&, bool&, com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&)
+chart::DiagramHelper::isDateNumberFormat(int, com::sun::star::uno::Reference<com::sun::star::util::XNumberFormats> const&)
+chart::DiagramHelper::isSupportingDateAxis(com::sun::star::uno::Reference<com::sun::star::chart2::XDiagram> const&)
+chart::Direction3DToAWTSize(com::sun::star::drawing::Direction3D const&)
+chart::DrawModelWrapper::dumpAsXml(_xmlTextWriter*) const
+chart::DrawModelWrapper::removeShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+chart::ExplicitCategoriesProvider::convertCategoryAnysToText(com::sun::star::uno::Sequence<rtl::OUString>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, chart::ChartModel&)
+chart::ExplicitCategoriesProvider::getCategoriesByLevel(int)
+chart::ExplicitCategoriesProvider::getCategoryLevelCount() const
+chart::ExplicitCategoriesProvider::getDateCategories()
+chart::ExplicitCategoriesProvider::getExplicitSimpleCategories(chart::SplitCategoriesProvider const&)
+chart::ExplicitCategoriesProvider::getOriginalCategories()
+chart::ExplicitCategoriesProvider::getSimpleCategories()
+chart::ExplicitCategoriesProvider::init()
+chart::ExplicitCategoriesProvider::isDateAxis()
+chart::HomogenMatrixToB3DHomMatrix(com::sun::star::drawing::HomogenMatrix const&)
+chart::IgnoreZ(basegfx::B3DHomMatrix const&)
+chart::NumberFormatterWrapper::getNullDate() const
+chart::ObjectIdentifier::addChildParticle(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+chart::ObjectIdentifier::createChildParticleWithIndex(chart::ObjectType, int)
+chart::ObjectIdentifier::createParticleForAxis(int, int)
+chart::ObjectIdentifier::createParticleForCoordinateSystem(com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&, chart::ChartModel&)
+chart::ObjectIdentifier::createParticleForCoordinateSystem(com::sun::star::uno::Reference<com::sun::star::chart2::XCoordinateSystem> const&, com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+chart::ObjectIdentifier::createParticleForGrid(int, int)
+chart::ObjectIdentifier::createParticleForLegend(chart::ChartModel&)
+chart::ObjectIdentifier::createPieSegmentDragParameterString(int, com::sun::star::awt::Point const&, com::sun::star::awt::Point const&)
+chart::ObjectIdentifier::createSeriesSubObjectStub(chart::ObjectType, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+chart::PolyToPointSequence(com::sun::star::drawing::PolyPolygonShape3D const&)
+chart::PopupRequest::PopupRequest()
+chart::PopupRequest::addCallback(com::sun::star::uno::Reference<com::sun::star::awt::XCallback> const&, com::sun::star::uno::Any const&)
+chart::PopupRequest::disposing()
+chart::PopupRequest::~PopupRequest()
+chart::Position3DToAWTPoint(com::sun::star::drawing::Position3D const&)
+chart::Position3DToB3DPoint(com::sun::star::drawing::Position3D const&)
+chart::Position3DToSequence(com::sun::star::drawing::Position3D const&)
+chart::PropertyHelper::setEmptyPropertyValueDefault(std::unordered_map<int, com::sun::star::uno::Any, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, com::sun::star::uno::Any> > >&, int)
+chart::PropertyHelper::setPropertyValueAny(std::unordered_map<int, com::sun::star::uno::Any, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, com::sun::star::uno::Any> > >&, int, com::sun::star::uno::Any const&)
+chart::PropertyHelper::setPropertyValueDefaultAny(std::unordered_map<int, com::sun::star::uno::Any, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, com::sun::star::uno::Any> > >&, int, com::sun::star::uno::Any const&)
+chart::RegressionCurveHelper::createRegressionCurveCalculatorByServiceName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+chart::RegressionCurveHelper::getRegressionCurveGenericName(com::sun::star::uno::Reference<com::sun::star::chart2::XRegressionCurve> const&)
+chart::RegressionCurveHelper::getRegressionCurveSpecificName(com::sun::star::uno::Reference<com::sun::star::chart2::XRegressionCurve> const&)
+chart::RegressionCurveHelper::getUINameForRegressionCurve(com::sun::star::uno::Reference<com::sun::star::chart2::XRegressionCurve> const&)
+chart::RelativePositionHelper::getCenterOfAnchoredObject(com::sun::star::awt::Point, com::sun::star::awt::Size, com::sun::star::drawing::Alignment, double)
+chart::RelativePositionHelper::getUpperLeftCornerOfAnchoredObject(com::sun::star::awt::Point, com::sun::star::awt::Size, com::sun::star::drawing::Alignment)
+chart::RelativeSizeHelper::adaptFontSizes(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::awt::Size const&, com::sun::star::awt::Size const&)
+chart::SceneProperties::AddDefaultsToMap(std::unordered_map<int, com::sun::star::uno::Any, std::hash<int>, std::equal_to<int>, std::allocator<std::pair<int const, com::sun::star::uno::Any> > >&)
+chart::SequenceToPosition3D(com::sun::star::uno::Sequence<double> const&)
+chart::StatisticsHelper::getErrorFromDataSource(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSource> const&, int, bool, bool)
+chart::StatisticsHelper::getStandardDeviation(com::sun::star::uno::Sequence<double> const&)
+chart::StatisticsHelper::getStandardError(com::sun::star::uno::Sequence<double> const&)
+chart::StatisticsHelper::getVariance(com::sun::star::uno::Sequence<double> const&)
+chart::ThreeDHelper::CameraDistanceToPerspective(double)
+chart::ThreeDHelper::PerspectiveToCameraDistance(double)
+chart::ThreeDHelper::getAutomaticCuboidPlanePositionForStandardBackWall(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+chart::ThreeDHelper::getAutomaticCuboidPlanePositionForStandardBottom(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+chart::ThreeDHelper::getAutomaticCuboidPlanePositionForStandardLeftWall(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+chart::ThreeDHelper::getCameraDistance(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+chart::ThreeDHelper::getDefaultCameraGeometry(bool)
+chart::ThreeDHelper::setCameraDistance(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, double)
+chart::ThreeDHelper::setDefaultIllumination(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+chart::ThreeDHelper::setDefaultRotation(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+chart::ThreeDHelper::setDefaultRotation(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+chart::TitleHelper::getTitle(chart::TitleHelper::eTitleType, chart::ChartModel&)
+chart::TitleHelper::getTitleType(chart::TitleHelper::eTitleType&, com::sun::star::uno::Reference<com::sun::star::chart2::XTitle> const&, chart::ChartModel&)
+chart::addPolygon(com::sun::star::drawing::PolyPolygonShape3D&, com::sun::star::drawing::PolyPolygonShape3D const&)
+chart::appendPointSequence(com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<com::sun::star::awt::Point> >&, com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<com::sun::star::awt::Point> >&)
+chart::appendPoly(com::sun::star::drawing::PolyPolygonShape3D&, com::sun::star::drawing::PolyPolygonShape3D const&)
+chart::createConfigColorScheme(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+chart::createNameContainer(com::sun::star::uno::Type const&, rtl::OUString const&, rtl::OUString const&)
+chart::getPointFromPoly(com::sun::star::drawing::PolyPolygonShape3D const&, int, int)
+chart::operator+(com::sun::star::drawing::Position3D const&, com::sun::star::drawing::Direction3D const&)
+chart::operator-(com::sun::star::drawing::Position3D const&, com::sun::star::drawing::Position3D const&)
+check_degeneracy
+check_if_less
+check_int_sec_sos_free_decl
+check_solution
+chsign_bounds
+cl_isalnum(unsigned long)
+cl_isdigit(unsigned long)
+cl_isletter(unsigned long)
+cl_isspace(unsigned long)
+cl_tcscasefold(wchar_t*, int)
+cl_tcscasefoldcmp(wchar_t const*, wchar_t const*)
+cl_tolower(wchar_t)
+cl_toupper(wchar_t)
+clean_SOSgroup
+clean_realloc
+clearRange(ScDocument*, ScRange const&)
+clearSheet(ScDocument*, short)
+clear_action
+clear_artificials
+clewErrorString
+cloneINT
+cloneLink
+cloneMYBOOL
+cloneREAL
+colamd
+colamd_recommended
+colamd_report
+colamd_set_defaults
+coldual
+collectMinorVar
+colprim
+column_in_lp
+com_sun_star_comp_MemoryStream
+com_sun_star_comp_SequenceInputStreamService
+com_sun_star_comp_SequenceOutputStreamService
+com_sun_star_comp_Xmloff_AnimationsImport
+com_sun_star_comp_comphelper_OPropertyBag
+com_sun_star_comp_dba_DataAccessDescriptorFactory
+com_sun_star_comp_dba_OCommandDefinition
+com_sun_star_comp_dba_OComponentDefinition
+com_sun_star_comp_dba_ODatabaseDocument
+com_sun_star_comp_dba_ODatabaseSource
+com_sun_star_comp_embed_InstanceLocker
+com_sun_star_comp_embed_OLESimpleStorage
+com_sun_star_comp_extensions_ConsoleHandler
+com_sun_star_comp_extensions_CsvFormatter
+com_sun_star_comp_extensions_FileHandler
+com_sun_star_comp_extensions_LoggerPool
+com_sun_star_comp_extensions_PlainTextFormatter
+com_sun_star_comp_extensions_SimpleTextFormatter
+com_sun_star_comp_rendering_SimpleCanvas
+com_sun_star_comp_task_OfficeRestartManager
+com_sun_star_comp_util_OfficeInstallationDirectories
+com_sun_star_comp_xmlscript_XMLBasicExporter
+com_sun_star_comp_xmlscript_XMLOasisBasicExporter
+compAggregate
+compRedundant
+compSparsity
+comp_bits
+compareBoundFlipVar
+compareCHAR
+compareINT
+compareImprovementQS
+compareImprovementVar
+compareLink
+compareREAL
+compareSubstitutionQS
+compareSubstitutionVar
+compare_basis
+comphelper::AsyncEventNotifierBase::AsyncEventNotifierBase()
+comphelper::AsyncEventNotifierBase::terminate()
+comphelper::AttributeList::AttributeList(comphelper::AttributeList const&)
+comphelper::AttributeList::createClone()
+comphelper::AttributeList::getTypeByName(rtl::OUString const&)
+comphelper::AttributeList::getValueByName(rtl::OUString const&)
+comphelper::AttributeList::~AttributeList()
+comphelper::Automation::AutomationInvokedZone::AutomationInvokedZone()
+comphelper::Automation::AutomationInvokedZone::~AutomationInvokedZone()
+comphelper::BackupFileHelper::fillDirFileInfo()
+comphelper::BackupFileHelper::getCustomizationDirNames()
+comphelper::BackupFileHelper::getCustomizationFileNames()
+comphelper::BackupFileHelper::getInitialBaseURL()
+comphelper::BackupFileHelper::getPackURL()
+comphelper::BackupFileHelper::getSafeModeName()
+comphelper::BackupFileHelper::isPopPossible_extensionInfo(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::BackupFileHelper::isPopPossible_file(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::BackupFileHelper::isPopPossible_files(std::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > const&, std::set<std::pair<rtl::OUString, rtl::OUString>, std::less<std::pair<rtl::OUString, rtl::OUString> >, std::allocator<std::pair<rtl::OUString, rtl::OUString> > > const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::BackupFileHelper::tryPop_extensionInfo(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::BackupFileHelper::tryPop_file(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::BackupFileHelper::tryPop_files(std::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > const&, std::set<std::pair<rtl::OUString, rtl::OUString>, std::less<std::pair<rtl::OUString, rtl::OUString> >, std::allocator<std::pair<rtl::OUString, rtl::OUString> > > const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&)
+comphelper::BackupFileHelper::tryPush_Files(std::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > const&, std::set<std::pair<rtl::OUString, rtl::OUString>, std::less<std::pair<rtl::OUString, rtl::OUString> >, std::allocator<std::pair<rtl::OUString, rtl::OUString> > > const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, rtl::OUString const&)
+comphelper::BackupFileHelper::tryPush_extensionInfo(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::BackupFileHelper::tryPush_file(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::ChainablePropertySetInfo::getProperties()
+comphelper::ChainablePropertySetInfo::getPropertyByName(rtl::OUString const&)
+comphelper::ChainablePropertySetInfo::hasPropertyByName(rtl::OUString const&)
+comphelper::ChainablePropertySetInfo::~ChainablePropertySetInfo()
+comphelper::ComponentBase::getComponent()
+comphelper::ConfigurationChanges::~ConfigurationChanges()
+comphelper::ConfigurationListener::disposing(com::sun::star::lang::EventObject const&)
+comphelper::ConfigurationListener::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+comphelper::DirectoryHelper::moveDirContent(rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > const&)
+comphelper::DirectoryHelper::scanDirsAndFiles(rtl::OUString const&, std::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> >&, std::set<std::pair<rtl::OUString, rtl::OUString>, std::less<std::pair<rtl::OUString, rtl::OUString> >, std::allocator<std::pair<rtl::OUString, rtl::OUString> > >&)
+comphelper::DirectoryHelper::splitAtLastToken(rtl::OUString const&, char16_t, rtl::OUString&)
+comphelper::DocPasswordHelper::GenerateStd97Key(unsigned short const*, com::sun::star::uno::Sequence<signed char> const&)
+comphelper::DocPasswordHelper::GetOoxHashAsSequence(rtl::OUString const&, rtl::OUString const&, unsigned int, comphelper::Hash::IterCount, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::DocPasswordRequest::getContinuations()
+comphelper::DocPasswordRequest::getRequest()
+comphelper::DocPasswordRequest::~DocPasswordRequest()
+comphelper::EmbeddedObjectContainer::CommitImageSubStorage()
+comphelper::EmbeddedObjectContainer::Get_Impl(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&, rtl::OUString const*)
+comphelper::EmbeddedObjectContainer::ReleaseImageSubStorage()
+comphelper::EmbeddedObjectContainer::TryToCopyGraphReplacement(comphelper::EmbeddedObjectContainer&, rtl::OUString const&, rtl::OUString const&)
+comphelper::Hash::calculateHash(rtl::OUString const&, std::vector<unsigned char, std::allocator<unsigned char> > const&, unsigned int, comphelper::Hash::IterCount, comphelper::HashType)
+comphelper::Hash::getLength() const
+comphelper::LibreOfficeKit::isLocalRendering()
+comphelper::MasterPropertySetInfo::add(std::unordered_map<rtl::OUString, comphelper::PropertyInfo const*, std::hash<rtl::OUString>, std::equal_to<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, comphelper::PropertyInfo const*> > >&, unsigned char)
+comphelper::MasterPropertySetInfo::getProperties()
+comphelper::MasterPropertySetInfo::getPropertyByName(rtl::OUString const&)
+comphelper::MasterPropertySetInfo::hasPropertyByName(rtl::OUString const&)
+comphelper::MasterPropertySetInfo::~MasterPropertySetInfo()
+comphelper::MimeConfigurationHelper::GetConfigurationByPath(rtl::OUString const&)
+comphelper::MimeConfigurationHelper::GetConfigurationByPathImpl(rtl::OUString const&)
+comphelper::MimeConfigurationHelper::GetDocServiceNameFromFilter(rtl::OUString const&)
+comphelper::MimeConfigurationHelper::GetFactoryNameByDocumentName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+comphelper::MimeConfigurationHelper::GetFactoryNameByStringClassID(rtl::OUString const&)
+comphelper::MimeConfigurationHelper::GetFilterFactory()
+comphelper::MimeConfigurationHelper::GetMediaTypeConfiguration()
+comphelper::MimeConfigurationHelper::GetObjPropsFromConfigEntry(com::sun::star::uno::Sequence<signed char> const&, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+comphelper::MimeConfigurationHelper::GetObjectPropsByStringClassID(rtl::OUString const&)
+comphelper::MimeConfigurationHelper::GetStringClassIDRepresentation(com::sun::star::uno::Sequence<signed char> const&)
+comphelper::MimeConfigurationHelper::GetVerbByShortcut(rtl::OUString const&, com::sun::star::embed::VerbDescriptor&)
+comphelper::MimeConfigurationHelper::GetVerbsConfiguration()
+comphelper::NamedValueCollection::impl_assign(com::sun::star::uno::Any const&)
+comphelper::NamedValueCollection::impl_assign(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+comphelper::NumberedCollection::getUntitledPrefix()
+comphelper::NumberedCollection::impl_cleanUpDeadItems(std::unordered_map<long, comphelper::NumberedCollection::TNumberedItem, std::hash<long>, std::equal_to<long>, std::allocator<std::pair<long const, comphelper::NumberedCollection::TNumberedItem> > >&, std::vector<long, std::allocator<long> > const&)
+comphelper::NumberedCollection::impl_searchFreeNumber()
+comphelper::NumberedCollection::leaseNumber(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+comphelper::NumberedCollection::releaseNumber(int)
+comphelper::NumberedCollection::releaseNumberForComponent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+comphelper::NumberedCollection::~NumberedCollection()
+comphelper::OAccessibleContextHelper::OAccessibleContextHelper()
+comphelper::OAccessibleContextHelper::implGetParentContext()
+comphelper::OAccessibleContextHelper::~OAccessibleContextHelper()
+comphelper::OAccessibleContextWrapper::getAccessibleIndexInParent()
+comphelper::OAccessibleContextWrapperHelper::getImplementationId()
+comphelper::OAccessibleKeyBindingHelper::OAccessibleKeyBindingHelper(comphelper::OAccessibleKeyBindingHelper const&)
+comphelper::OAccessibleKeyBindingHelper::getAccessibleKeyBinding(int)
+comphelper::OAccessibleKeyBindingHelper::getAccessibleKeyBindingCount()
+comphelper::OAccessibleKeyBindingHelper::~OAccessibleKeyBindingHelper()
+comphelper::OAccessibleSelectionHelper::getImplementationId()
+comphelper::OAccessibleTextHelper::getImplementationId()
+comphelper::OAccessibleWrapper::createAccessibleContext(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext> const&)
+comphelper::OAccessibleWrapper::getImplementationId()
+comphelper::OAnyEnumeration::hasMoreElements()
+comphelper::OAnyEnumeration::nextElement()
+comphelper::OAnyEnumeration::~OAnyEnumeration()
+comphelper::OCommonAccessibleComponent::OCommonAccessibleComponent()
+comphelper::OCommonAccessibleComponent::containsPoint(com::sun::star::awt::Point const&)
+comphelper::OCommonAccessibleComponent::getBounds()
+comphelper::OCommonAccessibleComponent::getLocation()
+comphelper::OCommonAccessibleComponent::getLocationOnScreen()
+comphelper::OCommonAccessibleComponent::getSize()
+comphelper::OCommonAccessibleText::implGetBreakIterator()
+comphelper::OCommonAccessibleText::implGetCharacterClassification()
+comphelper::OCommonAccessibleText::implGetGlyphBoundary(rtl::OUString const&, com::sun::star::i18n::Boundary&, int)
+comphelper::OCommonAccessibleText::implGetSentenceBoundary(rtl::OUString const&, com::sun::star::i18n::Boundary&, int)
+comphelper::OComponentProxyAggregation::OComponentProxyAggregation(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, com::sun::star::uno::Reference<com::sun::star::lang::XComponent> const&)
+comphelper::OComponentProxyAggregation::acquire()
+comphelper::OComponentProxyAggregation::getImplementationId()
+comphelper::OComponentProxyAggregation::getTypes()
+comphelper::OComponentProxyAggregation::queryInterface(com::sun::star::uno::Type const&)
+comphelper::OComponentProxyAggregation::release()
+comphelper::OComponentProxyAggregation::~OComponentProxyAggregation()
+comphelper::OContainerListener::_elementInserted(com::sun::star::container::ContainerEvent const&)
+comphelper::OContainerListener::_elementRemoved(com::sun::star::container::ContainerEvent const&)
+comphelper::OContainerListener::_elementReplaced(com::sun::star::container::ContainerEvent const&)
+comphelper::OContainerListener::setAdapter(comphelper::OContainerListenerAdapter*)
+comphelper::OContainerListenerAdapter::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OContainerListenerAdapter::elementInserted(com::sun::star::container::ContainerEvent const&)
+comphelper::OContainerListenerAdapter::elementRemoved(com::sun::star::container::ContainerEvent const&)
+comphelper::OContainerListenerAdapter::elementReplaced(com::sun::star::container::ContainerEvent const&)
+comphelper::OContainerListenerAdapter::~OContainerListenerAdapter()
+comphelper::OEnumerationByIndex::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OEnumerationByIndex::hasMoreElements()
+comphelper::OEnumerationByIndex::nextElement()
+comphelper::OEnumerationByIndex::~OEnumerationByIndex()
+comphelper::OEnumerationByName::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OEnumerationByName::hasMoreElements()
+comphelper::OEnumerationByName::nextElement()
+comphelper::OEnumerationByName::~OEnumerationByName()
+comphelper::OEventListenerHelper::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OInteractionRequest::getContinuations()
+comphelper::OInteractionRequest::getRequest()
+comphelper::OInterfaceContainerHelper2::copyAndResetInUse()
+comphelper::OMultiTypeInterfaceContainerHelper2::clear()
+comphelper::OMultiTypeInterfaceContainerHelper2::findType(com::sun::star::uno::Type const&)
+comphelper::OMultiTypeInterfaceContainerHelper2::findType(com::sun::star::uno::Type const&) const
+comphelper::OPropertyArrayAggregationHelper::fillHandles(int*, com::sun::star::uno::Sequence<rtl::OUString> const&)
+comphelper::OPropertyArrayAggregationHelper::findPropertyByName(rtl::OUString const&) const
+comphelper::OPropertyArrayAggregationHelper::getProperties()
+comphelper::OPropertyArrayAggregationHelper::getPropertyByHandle(int, com::sun::star::beans::Property&) const
+comphelper::OPropertyArrayAggregationHelper::getPropertyByName(rtl::OUString const&)
+comphelper::OPropertyChangeListener::setAdapter(comphelper::OPropertyChangeMultiplexer*)
+comphelper::OPropertyChangeMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OPropertyChangeMultiplexer::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+comphelper::OPropertyChangeMultiplexer::~OPropertyChangeMultiplexer()
+comphelper::OPropertyContainerHelper::isRegisteredProperty(rtl::OUString const&) const
+comphelper::OPropertyContainerHelper::revokeProperty(int)
+comphelper::OPropertySetAggregationHelper::getPropertyName(int) const
+comphelper::OPropertySetAggregationHelper::isCurrentlyForwardingProperty(int) const
+comphelper::OPropertySetAggregationHelper::startListening()
+comphelper::OPropertyStateContainer::getHandleForName(rtl::OUString const&)
+comphelper::OPropertyStateContainer::getPropertyStateByHandle(int) const
+comphelper::OPropertyStateContainer::setPropertyToDefaultByHandle(int)
+comphelper::OPropertyStateHelper::OPropertyStateHelper(cppu::OBroadcastHelperVar<cppu::OMultiTypeInterfaceContainerHelper, com::sun::star::uno::Type>&, cppu::IEventNotificationHook*)
+comphelper::OPropertyStateHelper::queryInterface(com::sun::star::uno::Type const&)
+comphelper::OPropertyStateHelper::~OPropertyStateHelper()
+comphelper::OSeekableInputWrapper::available()
+comphelper::OSeekableInputWrapper::closeInput()
+comphelper::OSeekableInputWrapper::getLength()
+comphelper::OSeekableInputWrapper::getPosition()
+comphelper::OSeekableInputWrapper::readBytes(com::sun::star::uno::Sequence<signed char>&, int)
+comphelper::OSeekableInputWrapper::readSomeBytes(com::sun::star::uno::Sequence<signed char>&, int)
+comphelper::OSeekableInputWrapper::seek(long)
+comphelper::OSeekableInputWrapper::skipBytes(int)
+comphelper::OSeekableInputWrapper::~OSeekableInputWrapper()
+comphelper::OSelectionChangeListener::_disposing(com::sun::star::lang::EventObject const&)
+comphelper::OSelectionChangeMultiplexer::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OSelectionChangeMultiplexer::selectionChanged(com::sun::star::lang::EventObject const&)
+comphelper::OSelectionChangeMultiplexer::~OSelectionChangeMultiplexer()
+comphelper::OSequenceOutputStream::closeOutput()
+comphelper::OSequenceOutputStream::finalizeOutput()
+comphelper::OSequenceOutputStream::flush()
+comphelper::OSequenceOutputStream::writeBytes(com::sun::star::uno::Sequence<signed char> const&)
+comphelper::OStorageHelper::GetFileSystemStorageFactory(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+comphelper::OStorageHelper::IsValidZipEntryFileName(char16_t const*, int, bool)
+comphelper::OWeakEventListenerAdapter::disposing()
+comphelper::OWrappedAccessibleChildrenManager::disposing(com::sun::star::lang::EventObject const&)
+comphelper::OWrappedAccessibleChildrenManager::implTranslateChildEventValue(com::sun::star::uno::Any const&, com::sun::star::uno::Any&)
+comphelper::OWrappedAccessibleChildrenManager::invalidateAll()
+comphelper::OWrappedAccessibleChildrenManager::removeFromCache(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> const&)
+comphelper::OWrappedAccessibleChildrenManager::~OWrappedAccessibleChildrenManager()
+comphelper::PropertyBag::addVoidProperty(rtl::OUString const&, com::sun::star::uno::Type const&, int, int)
+comphelper::PropertyBag::setAllowEmptyPropertyName(bool)
+comphelper::PropertySetInfo::addImpl(comphelper::PropertyMapEntry const*)
+comphelper::PropertySetInfo::getProperties()
+comphelper::PropertySetInfo::getPropertyByName(rtl::OUString const&)
+comphelper::PropertySetInfo::hasPropertyByName(rtl::OUString const&)
+comphelper::PropertySetInfo::~PropertySetInfo()
+comphelper::RefCountedMutex::~RefCountedMutex()
+comphelper::SequenceInputStream::available()
+comphelper::SequenceInputStream::closeInput()
+comphelper::SequenceInputStream::getLength()
+comphelper::SequenceInputStream::getPosition()
+comphelper::SequenceInputStream::readBytes(com::sun::star::uno::Sequence<signed char>&, int)
+comphelper::SequenceInputStream::readSomeBytes(com::sun::star::uno::Sequence<signed char>&, int)
+comphelper::SequenceInputStream::seek(long)
+comphelper::SequenceInputStream::skipBytes(int)
+comphelper::SimpleFileAccessInteraction::intercepted(ucbhelper::InterceptedInteraction::InterceptedRequest const&, com::sun::star::uno::Reference<com::sun::star::task::XInteractionRequest> const&)
+comphelper::SimpleFileAccessInteraction::~SimpleFileAccessInteraction()
+comphelper::SimplePasswordRequest::getContinuations()
+comphelper::SimplePasswordRequest::getRequest()
+comphelper::SimplePasswordRequest::~SimplePasswordRequest()
+comphelper::StillReadWriteInteraction::intercepted(ucbhelper::InterceptedInteraction::InterceptedRequest const&, com::sun::star::uno::Reference<com::sun::star::task::XInteractionRequest> const&)
+comphelper::ThreadPool::decBusyWorker()
+comphelper::ThreadPool::incBusyWorker()
+comphelper::ThreadPool::popWorkLocked(std::unique_lock<std::mutex>&, bool)
+comphelper::ThreadPool::shutdownLocked(std::unique_lock<std::mutex>&)
+comphelper::ThreadTask::exec()
+comphelper::UnoInterfaceToUniqueIdentifierMapper::UnoInterfaceToUniqueIdentifierMapper()
+comphelper::UnoInterfaceToUniqueIdentifierMapper::findIdentifier(rtl::OUString const&, std::_Rb_tree_const_iterator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> > >&) const
+comphelper::UnoInterfaceToUniqueIdentifierMapper::findReference(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, std::_Rb_tree_const_iterator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> > >&) const
+comphelper::UnoInterfaceToUniqueIdentifierMapper::findReserved(rtl::OUString const&) const
+comphelper::UnoInterfaceToUniqueIdentifierMapper::findReserved(rtl::OUString const&, std::_Deque_iterator<rtl::OUString, rtl::OUString const&, rtl::OUString const*>&) const
+comphelper::UnoInterfaceToUniqueIdentifierMapper::getReference(rtl::OUString const&) const
+comphelper::UnoInterfaceToUniqueIdentifierMapper::registerReference(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+comphelper::UnoInterfaceToUniqueIdentifierMapper::registerReservedReference(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+comphelper::UnoInterfaceToUniqueIdentifierMapper::reserveIdentifier(rtl::OUString const&)
+comphelper::detail::ConfigurationWrapper::createChanges() const
+comphelper::detail::ConfigurationWrapper::getGroupReadWrite(std::shared_ptr<comphelper::ConfigurationChanges> const&, rtl::OUString const&)
+comphelper::detail::ConfigurationWrapper::getLocalizedPropertyValue(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+comphelper::detail::ConfigurationWrapper::setLocalizedPropertyValue(std::shared_ptr<comphelper::ConfigurationChanges> const&, rtl::OUString const&, com::sun::star::uno::Any const&)
+comphelper::operator<<(com::sun::star::uno::Reference<com::sun::star::io::XObjectOutputStream> const&, unsigned int)
+comphelper::operator>>(com::sun::star::uno::Reference<com::sun::star::io::XObjectInputStream> const&, unsigned int&)
+comphelper::service_decl::ServiceDecl::Factory::createInstanceWithArgumentsAndContext(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+comphelper::service_decl::ServiceDecl::Factory::createInstanceWithContext(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+comphelper::service_decl::ServiceDecl::Factory::getImplementationName()
+comphelper::service_decl::ServiceDecl::Factory::getSupportedServiceNames()
+comphelper::service_decl::ServiceDecl::Factory::supportsService(rtl::OUString const&)
+comphelper::service_decl::ServiceDecl::Factory::~Factory()
+comphelper::service_decl::ServiceDecl::getFactory(char const*) const
+comphelper::service_decl::ServiceDecl::getImplementationName() const
+comphelper::service_decl::ServiceDecl::getSupportedServiceNames() const
+comphelper::service_decl::ServiceDecl::supportsService(rtl::OUString const&) const
+comphelper::service_decl::component_getFactoryHelper(char const*, std::initializer_list<comphelper::service_decl::ServiceDecl const*>)
+comphelper::xmlsec::parseDN(rtl::OUString const&)
+component_getImplementationEnvironment
+compute_dualslacks
+compute_feasibilitygap
+compute_reducedcosts
+compute_theta
+compute_violation
+connectivity::BlobHelper::getBinaryStream()
+connectivity::BlobHelper::getBytes(long, int)
+connectivity::BlobHelper::length()
+connectivity::BlobHelper::position(com::sun::star::uno::Sequence<signed char> const&, long)
+connectivity::BlobHelper::positionOfBlob(com::sun::star::uno::Reference<com::sun::star::sdbc::XBlob> const&, long)
+connectivity::DriversConfig::DriversConfig(connectivity::DriversConfig const&)
+connectivity::DriversConfig::impl_get(std::basic_string_view<char16_t, std::char_traits<char16_t> >, int) const
+connectivity::DriversConfig::operator=(connectivity::DriversConfig const&)
+connectivity::OColumnsHelper::createDescriptor()
+connectivity::OConnectionWrapper::getUnoTunnelId()
+connectivity::ODatabaseMetaDataBase::getTablePrivileges(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::ODatabaseMetaDataResultSet::ODatabaseMetaDataResultSet()
+connectivity::ODatabaseMetaDataResultSet::absolute(int)
+connectivity::ODatabaseMetaDataResultSet::afterLast()
+connectivity::ODatabaseMetaDataResultSet::beforeFirst()
+connectivity::ODatabaseMetaDataResultSet::cancel()
+connectivity::ODatabaseMetaDataResultSet::checkIndex(int)
+connectivity::ODatabaseMetaDataResultSet::clearWarnings()
+connectivity::ODatabaseMetaDataResultSet::close()
+connectivity::ODatabaseMetaDataResultSet::construct()
+connectivity::ODatabaseMetaDataResultSet::createArrayHelper() const
+connectivity::ODatabaseMetaDataResultSet::disposing()
+connectivity::ODatabaseMetaDataResultSet::findColumn(rtl::OUString const&)
+connectivity::ODatabaseMetaDataResultSet::first()
+connectivity::ODatabaseMetaDataResultSet::getArray(int)
+connectivity::ODatabaseMetaDataResultSet::getBinaryStream(int)
+connectivity::ODatabaseMetaDataResultSet::getBlob(int)
+connectivity::ODatabaseMetaDataResultSet::getBoolean(int)
+connectivity::ODatabaseMetaDataResultSet::getByte(int)
+connectivity::ODatabaseMetaDataResultSet::getBytes(int)
+connectivity::ODatabaseMetaDataResultSet::getCharacterStream(int)
+connectivity::ODatabaseMetaDataResultSet::getClob(int)
+connectivity::ODatabaseMetaDataResultSet::getDate(int)
+connectivity::ODatabaseMetaDataResultSet::getDouble(int)
+connectivity::ODatabaseMetaDataResultSet::getFloat(int)
+connectivity::ODatabaseMetaDataResultSet::getImplementationName()
+connectivity::ODatabaseMetaDataResultSet::getInfoHelper()
+connectivity::ODatabaseMetaDataResultSet::getInt(int)
+connectivity::ODatabaseMetaDataResultSet::getLong(int)
+connectivity::ODatabaseMetaDataResultSet::getMetaData()
+connectivity::ODatabaseMetaDataResultSet::getObject(int, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+connectivity::ODatabaseMetaDataResultSet::getPropertySetInfo()
+connectivity::ODatabaseMetaDataResultSet::getRef(int)
+connectivity::ODatabaseMetaDataResultSet::getRow()
+connectivity::ODatabaseMetaDataResultSet::getShort(int)
+connectivity::ODatabaseMetaDataResultSet::getStatement()
+connectivity::ODatabaseMetaDataResultSet::getString(int)
+connectivity::ODatabaseMetaDataResultSet::getSupportedServiceNames()
+connectivity::ODatabaseMetaDataResultSet::getTime(int)
+connectivity::ODatabaseMetaDataResultSet::getTimestamp(int)
+connectivity::ODatabaseMetaDataResultSet::getTypes()
+connectivity::ODatabaseMetaDataResultSet::getValue(int)
+connectivity::ODatabaseMetaDataResultSet::getWarnings()
+connectivity::ODatabaseMetaDataResultSet::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+connectivity::ODatabaseMetaDataResultSet::isAfterLast()
+connectivity::ODatabaseMetaDataResultSet::isBeforeFirst()
+connectivity::ODatabaseMetaDataResultSet::isFirst()
+connectivity::ODatabaseMetaDataResultSet::isLast()
+connectivity::ODatabaseMetaDataResultSet::last()
+connectivity::ODatabaseMetaDataResultSet::next()
+connectivity::ODatabaseMetaDataResultSet::previous()
+connectivity::ODatabaseMetaDataResultSet::queryInterface(com::sun::star::uno::Type const&)
+connectivity::ODatabaseMetaDataResultSet::refreshRow()
+connectivity::ODatabaseMetaDataResultSet::relative(int)
+connectivity::ODatabaseMetaDataResultSet::release()
+connectivity::ODatabaseMetaDataResultSet::rowDeleted()
+connectivity::ODatabaseMetaDataResultSet::rowInserted()
+connectivity::ODatabaseMetaDataResultSet::rowUpdated()
+connectivity::ODatabaseMetaDataResultSet::setBestRowIdentifierMap()
+connectivity::ODatabaseMetaDataResultSet::setCatalogsMap()
+connectivity::ODatabaseMetaDataResultSet::setColumnPrivilegesMap()
+connectivity::ODatabaseMetaDataResultSet::setColumnsMap()
+connectivity::ODatabaseMetaDataResultSet::setCrossReferenceMap()
+connectivity::ODatabaseMetaDataResultSet::setExportedKeysMap()
+connectivity::ODatabaseMetaDataResultSet::setImportedKeysMap()
+connectivity::ODatabaseMetaDataResultSet::setIndexInfoMap()
+connectivity::ODatabaseMetaDataResultSet::setPrimaryKeysMap()
+connectivity::ODatabaseMetaDataResultSet::setProcedureColumnsMap()
+connectivity::ODatabaseMetaDataResultSet::setProceduresMap()
+connectivity::ODatabaseMetaDataResultSet::setSchemasMap()
+connectivity::ODatabaseMetaDataResultSet::setTablePrivilegesMap()
+connectivity::ODatabaseMetaDataResultSet::setTableTypes()
+connectivity::ODatabaseMetaDataResultSet::setTablesMap()
+connectivity::ODatabaseMetaDataResultSet::setType(connectivity::ODatabaseMetaDataResultSet::MetaDataResultSetType)
+connectivity::ODatabaseMetaDataResultSet::setTypeInfoMap()
+connectivity::ODatabaseMetaDataResultSet::setUDTsMap()
+connectivity::ODatabaseMetaDataResultSet::setVersionColumnsMap()
+connectivity::ODatabaseMetaDataResultSet::supportsService(rtl::OUString const&)
+connectivity::ODatabaseMetaDataResultSet::wasNull()
+connectivity::ODatabaseMetaDataResultSet::~ODatabaseMetaDataResultSet()
+connectivity::OKeyValue::OKeyValue(int)
+connectivity::OKeysHelper::cloneDescriptorColumns(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+connectivity::OResultSetPrivileges::disposing()
+connectivity::OResultSetPrivileges::getValue(int)
+connectivity::OResultSetPrivileges::next()
+connectivity::ORowSetValue::getUInt8() const
+connectivity::ORowSetValue::impl_fill(int, bool, connectivity::detail::IValueSource const&)
+connectivity::OSQLParseNode::OSQLParseNode(char const*, connectivity::SQLNodeType, unsigned int)
+connectivity::OSQLParseNode::OSQLParseNode(connectivity::OSQLParseNode const&)
+connectivity::OSQLParseNode::OSQLParseNode(rtl::OUString const&, connectivity::SQLNodeType, unsigned int)
+connectivity::OSQLParseNode::OSQLParseNode(std::basic_string_view<char, std::char_traits<char> >, connectivity::SQLNodeType, unsigned int)
+connectivity::OSQLParseNode::addDateValue(rtl::OUStringBuffer&, connectivity::SQLParseNodeParameter const&) const
+connectivity::OSQLParseNode::append(connectivity::OSQLParseNode*)
+connectivity::OSQLParseNode::convertDateString(connectivity::SQLParseNodeParameter const&, rtl::OUString const&)
+connectivity::OSQLParseNode::convertDateTimeString(connectivity::SQLParseNodeParameter const&, rtl::OUString const&)
+connectivity::OSQLParseNode::convertTimeString(connectivity::SQLParseNodeParameter const&, rtl::OUString const&)
+connectivity::OSQLParseNode::eraseBraces(connectivity::OSQLParseNode*&)
+connectivity::OSQLParseNode::getTableComponents(connectivity::OSQLParseNode const*, com::sun::star::uno::Any&, rtl::OUString&, rtl::OUString&, com::sun::star::uno::Reference<com::sun::star::sdbc::XDatabaseMetaData> const&)
+connectivity::OSQLParseNode::impl_parseLikeNodeToString_throw(rtl::OUStringBuffer&, connectivity::SQLParseNodeParameter const&, bool) const
+connectivity::OSQLParseNode::impl_parseNodeToString_throw(rtl::OUStringBuffer&, connectivity::SQLParseNodeParameter const&, bool) const
+connectivity::OSQLParseNode::impl_parseTableNameNodeToString_throw(rtl::OUStringBuffer&, connectivity::SQLParseNodeParameter const&) const
+connectivity::OSQLParseNode::impl_parseTableRangeNodeToString_throw(rtl::OUStringBuffer&, connectivity::SQLParseNodeParameter const&) const
+connectivity::OSQLParseNode::insert(unsigned int, connectivity::OSQLParseNode*)
+connectivity::OSQLParseNode::operator=(connectivity::OSQLParseNode const&)
+connectivity::OSQLParseNode::parseLeaf(rtl::OUStringBuffer&, connectivity::SQLParseNodeParameter const&) const
+connectivity::OSQLParseNode::parseNodeToStr(rtl::OUString&, com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatter> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, com::sun::star::lang::Locale const&, connectivity::IParseContext const*, bool, bool, rtl::OUString, bool) const
+connectivity::OSQLParseNode::removeAt(unsigned int)
+connectivity::OSQLParseNode::replace(connectivity::OSQLParseNode*, connectivity::OSQLParseNode*)
+connectivity::OSQLParseNode::substituteParameterNames(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseNode::~OSQLParseNode()
+connectivity::OSQLParseTreeIterator::OSQLParseTreeIterator(connectivity::OSQLParseTreeIterator const&, connectivity::OSQLParser const&, connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::appendColumns(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> const&)
+connectivity::OSQLParseTreeIterator::findColumn(rtl::OUString const&, rtl::OUString&, bool)
+connectivity::OSQLParseTreeIterator::findColumn(std::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> > > > const&, rtl::OUString const&, rtl::OUString&)
+connectivity::OSQLParseTreeIterator::findSelectColumn(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::OSQLParseTreeIterator::getColumnRange(connectivity::OSQLParseNode const*, rtl::OUString&, rtl::OUString&, rtl::OUString&) const
+connectivity::OSQLParseTreeIterator::getFunctionReturnType(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::getGroupByTree() const
+connectivity::OSQLParseTreeIterator::getHavingTree() const
+connectivity::OSQLParseTreeIterator::getQualified_join(std::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> > > >&, connectivity::OSQLParseNode const*, rtl::OUString&)
+connectivity::OSQLParseTreeIterator::getSelectColumnNames() const
+connectivity::OSQLParseTreeIterator::getSelect_statement(std::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> > > >&, connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::getTableNode(std::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> > > >&, connectivity::OSQLParseNode const*, rtl::OUString&)
+connectivity::OSQLParseTreeIterator::getUniqueColumnName(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, rtl::OUString const&) const
+connectivity::OSQLParseTreeIterator::impl_appendError(com::sun::star::sdbc::SQLException const&)
+connectivity::OSQLParseTreeIterator::impl_appendError(connectivity::IParseContext::ErrorCode, rtl::OUString const*, rtl::OUString const*)
+connectivity::OSQLParseTreeIterator::impl_createTableObject(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::OSQLParseTreeIterator::impl_fillJoinConditions(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::impl_getQueryParameterColumns(com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> const&)
+connectivity::OSQLParseTreeIterator::impl_locateRecordSource(rtl::OUString const&)
+connectivity::OSQLParseTreeIterator::impl_traverse(connectivity::TraversalParts)
+connectivity::OSQLParseTreeIterator::isTableNode(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::setGroupByColumnName(rtl::OUString const&, rtl::OUString&)
+connectivity::OSQLParseTreeIterator::setOrderByColumnName(rtl::OUString const&, rtl::OUString&, bool)
+connectivity::OSQLParseTreeIterator::setSelectColumnName(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, bool, int, bool)
+connectivity::OSQLParseTreeIterator::traverseByColumnNames(connectivity::OSQLParseNode const*, bool)
+connectivity::OSQLParseTreeIterator::traverseCreateColumns(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseGroupByColumnNames(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseOnePredicate(connectivity::OSQLParseNode const*, rtl::OUString&, connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseOneTableName(std::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> > > >&, connectivity::OSQLParseNode const*, rtl::OUString const&)
+connectivity::OSQLParseTreeIterator::traverseOrderByColumnNames(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseParameter(connectivity::OSQLParseNode const*, connectivity::OSQLParseNode const*, rtl::OUString const&, rtl::OUString&, rtl::OUString const&)
+connectivity::OSQLParseTreeIterator::traverseParameters(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseSearchCondition(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseSelectColumnNames(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseSelectionCriteria(connectivity::OSQLParseNode const*)
+connectivity::OSQLParseTreeIterator::traverseTableNames(std::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> > > >&)
+connectivity::OSQLParser::RuleIDToRule(unsigned int)
+connectivity::OSQLParser::SQLlex()
+connectivity::OSQLParser::StrToRuleID(rtl::OString const&)
+connectivity::OSQLParser::buildComparisonRule(connectivity::OSQLParseNode*&, connectivity::OSQLParseNode*)
+connectivity::OSQLParser::buildDate(int, connectivity::OSQLParseNode*&)
+connectivity::OSQLParser::buildLikeRule(connectivity::OSQLParseNode*, connectivity::OSQLParseNode*&, connectivity::OSQLParseNode const*)
+connectivity::OSQLParser::buildNode(connectivity::OSQLParseNode*&, connectivity::OSQLParseNode*, connectivity::OSQLParseNode*, connectivity::OSQLParseNode*)
+connectivity::OSQLParser::buildNode_Date(double const&, int)
+connectivity::OSQLParser::buildNode_STR_NUM(connectivity::OSQLParseNode*&)
+connectivity::OSQLParser::buildPredicateRule(connectivity::OSQLParseNode*&, connectivity::OSQLParseNode*, connectivity::OSQLParseNode*, connectivity::OSQLParseNode*)
+connectivity::OSQLParser::buildStringNodes(connectivity::OSQLParseNode*&)
+connectivity::OSQLParser::convertNode(int, connectivity::OSQLParseNode*)
+connectivity::OSQLParser::error(char const*)
+connectivity::OSQLParser::extractDate(connectivity::OSQLParseNode const*, double&)
+connectivity::OSQLParser::getErrorHelper() const
+connectivity::OSQLParser::getFunctionParameterType(unsigned int, unsigned int)
+connectivity::OSQLParser::getMutex()
+connectivity::OSQLParser::killThousandSeparator(connectivity::OSQLParseNode*)
+connectivity::OSQLParser::reduceLiteral(connectivity::OSQLParseNode*&, bool)
+connectivity::OSQLParser::setParseTree(connectivity::OSQLParseNode*)
+connectivity::OSQLParser::stringToDouble(rtl::OUString const&, short)
+connectivity::OSkipDeletedSet::moveAbsolute(int, bool)
+connectivity::OSortIndex::Freeze()
+connectivity::OTableHelper::addKey(rtl::OUString const&, std::shared_ptr<connectivity::sdbcx::KeyProperties> const&)
+connectivity::OTableHelper::getColumnDescription(rtl::OUString const&) const
+connectivity::OTableHelper::getIndexService() const
+connectivity::OTableHelper::getKeyProperties(rtl::OUString const&) const
+connectivity::OTableHelper::getKeyService() const
+connectivity::OTableHelper::refreshForeignKeys(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+connectivity::OTableHelper::refreshPrimaryKeys(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+connectivity::SQLError::raiseException(int) const
+connectivity::component::OComponentPreparedStatement::createResultSet()
+connectivity::component::OComponentPreparedStatement::getImplementationName()
+connectivity::component::OComponentPreparedStatement::getSupportedServiceNames()
+connectivity::component::OComponentPreparedStatement::supportsService(rtl::OUString const&)
+connectivity::component::OComponentStatement::createResultSet()
+connectivity::component::OComponentStatement::getImplementationName()
+connectivity::component::OComponentStatement::getSupportedServiceNames()
+connectivity::component::OComponentStatement::supportsService(rtl::OUString const&)
+connectivity::file::OBoolOperator::Exec(std::stack<connectivity::file::OOperand*, std::deque<connectivity::file::OOperand*, std::allocator<connectivity::file::OOperand*> > >&)
+connectivity::file::OBoolOperator::operate(connectivity::file::OOperand const*, connectivity::file::OOperand const*) const
+connectivity::file::OColumns::createObject(rtl::OUString const&)
+connectivity::file::OConnection::createCatalog()
+connectivity::file::OConnection::createStatement()
+connectivity::file::OConnection::getImplementationName()
+connectivity::file::OConnection::getMetaData()
+connectivity::file::OConnection::getSupportedServiceNames()
+connectivity::file::OConnection::getUnoTunnelId()
+connectivity::file::OConnection::prepareCall(rtl::OUString const&)
+connectivity::file::OConnection::prepareStatement(rtl::OUString const&)
+connectivity::file::OConnection::supportsService(rtl::OUString const&)
+connectivity::file::OConnection::throwUrlNotValid(rtl::OUString const&, rtl::OUString const&)
+connectivity::file::ODatabaseMetaData::getColumns(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::file::ODatabaseMetaData::getURL()
+connectivity::file::ODatabaseMetaData::impl_getTypeInfo_throw()
+connectivity::file::OFileCatalog::refreshTables()
+connectivity::file::OFileDriver::acceptsURL(rtl::OUString const&)
+connectivity::file::OFileDriver::connect(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+connectivity::file::OFileDriver::getImplementationName()
+connectivity::file::OFileTable::getUnoTunnelId()
+connectivity::file::OFileTable::queryInterface(com::sun::star::uno::Type const&)
+connectivity::file::OFileTable::refreshColumns()
+connectivity::file::OOp_ISNOTNULL::operate(connectivity::file::OOperand const*, connectivity::file::OOperand const*) const
+connectivity::file::OOp_ISNULL::Exec(std::stack<connectivity::file::OOperand*, std::deque<connectivity::file::OOperand*, std::allocator<connectivity::file::OOperand*> > >&)
+connectivity::file::OOp_ISNULL::operate(connectivity::file::OOperand const*, connectivity::file::OOperand const*) const
+connectivity::file::OOp_LIKE::operate(connectivity::file::OOperand const*, connectivity::file::OOperand const*) const
+connectivity::file::OPreparedStatement::AddParameter(connectivity::OSQLParseNode const*, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+connectivity::file::OPreparedStatement::checkAndResizeParameters(int)
+connectivity::file::OPreparedStatement::createResultSet()
+connectivity::file::OPreparedStatement::describeColumn(connectivity::OSQLParseNode const*, connectivity::OSQLParseNode const*, com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> const&)
+connectivity::file::OPreparedStatement::describeParameter()
+connectivity::file::OPreparedStatement::getImplementationName()
+connectivity::file::OPreparedStatement::getSupportedServiceNames()
+connectivity::file::OPreparedStatement::initResultSet(connectivity::file::OResultSet*)
+connectivity::file::OPreparedStatement::makeResultSet()
+connectivity::file::OPreparedStatement::scanParameter(connectivity::OSQLParseNode*, std::vector<connectivity::OSQLParseNode*, std::allocator<connectivity::OSQLParseNode*> >&)
+connectivity::file::OPreparedStatement::setParameter(int, connectivity::ORowSetValue const&)
+connectivity::file::OPreparedStatement::supportsService(rtl::OUString const&)
+connectivity::file::OResultSet::ExecuteRow(connectivity::IResultSetHelper::Movement, int, bool, bool)
+connectivity::file::OResultSet::GetOrderbyKeyValue(rtl::Reference<connectivity::OValueRefVector> const&)
+connectivity::file::OResultSet::OpenImpl()
+connectivity::file::OResultSet::checkIndex(int)
+connectivity::file::OResultSet::clearInsertRow()
+connectivity::file::OResultSet::construct()
+connectivity::file::OResultSet::createArrayHelper() const
+connectivity::file::OResultSet::doTableSpecials(com::sun::star::uno::Reference<com::sun::star::sdbcx::XColumnsSupplier> const&)
+connectivity::file::OResultSet::getImplementationName()
+connectivity::file::OResultSet::getInfoHelper()
+connectivity::file::OResultSet::getPropertySetInfo()
+connectivity::file::OResultSet::getSupportedServiceNames()
+connectivity::file::OResultSet::getValue(int)
+connectivity::file::OResultSet::initializeRow(rtl::Reference<connectivity::OValueRefVector>&, int)
+connectivity::file::OResultSet::setBoundedColumns(rtl::Reference<connectivity::OValueRefVector> const&, rtl::Reference<connectivity::OValueRefVector> const&, rtl::Reference<connectivity::ORefVector<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> > > const&, com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&, bool, com::sun::star::uno::Reference<com::sun::star::sdbc::XDatabaseMetaData> const&, std::vector<int, std::allocator<int> >&)
+connectivity::file::OResultSet::sortRows()
+connectivity::file::OResultSet::supportsService(rtl::OUString const&)
+connectivity::file::OResultSet::updateValue(int, connectivity::ORowSetValue const&)
+connectivity::file::OStatement::createResultSet()
+connectivity::file::OStatement::getImplementationName()
+connectivity::file::OStatement::getSupportedServiceNames()
+connectivity::file::OStatement::supportsService(rtl::OUString const&)
+connectivity::file::OStatement_BASE2::release()
+connectivity::file::OStatement_Base::GetAssignValues()
+connectivity::file::OStatement_Base::ParseAssignValues(std::vector<rtl::OUString, std::allocator<rtl::OUString> > const&, connectivity::OSQLParseNode*, int)
+connectivity::file::OStatement_Base::SetAssignValue(rtl::OUString const&, rtl::OUString const&, bool, unsigned int)
+connectivity::file::OStatement_Base::acquire()
+connectivity::file::OStatement_Base::analyzeSQL()
+connectivity::file::OStatement_Base::closeResultSet()
+connectivity::file::OStatement_Base::createColumnMapping()
+connectivity::file::OStatement_Base::disposeResultSet()
+connectivity::file::OStatement_Base::disposing()
+connectivity::file::OStatement_Base::queryInterface(com::sun::star::uno::Type const&)
+connectivity::file::OStatement_Base::setOrderbyColumn(connectivity::OSQLParseNode const*, connectivity::OSQLParseNode const*)
+connectivity::file::OTables::createObject(rtl::OUString const&)
+connectivity::find(__gnu_cxx::__normal_iterator<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const*, std::vector<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet>, std::allocator<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> > > >, __gnu_cxx::__normal_iterator<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const*, std::vector<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet>, std::allocator<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> > > > const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, comphelper::UStringMixEqual const&)
+connectivity::odbc::OConnection::Construct(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+connectivity::odbc::OConnection::OConnection(void*, connectivity::odbc::ODBCDriver*)
+connectivity::odbc::OConnection::OpenConnection(rtl::OUString const&, int, bool)
+connectivity::odbc::OConnection::clearWarnings()
+connectivity::odbc::OConnection::close()
+connectivity::odbc::OConnection::commit()
+connectivity::odbc::OConnection::createStatement()
+connectivity::odbc::OConnection::createStatementHandle()
+connectivity::odbc::OConnection::disposing()
+connectivity::odbc::OConnection::freeStatementHandle(void*&)
+connectivity::odbc::OConnection::getAutoCommit()
+connectivity::odbc::OConnection::getCatalog()
+connectivity::odbc::OConnection::getImplementationName()
+connectivity::odbc::OConnection::getMetaData()
+connectivity::odbc::OConnection::getOdbcFunction(ODBC3SQLFunctionId) const
+connectivity::odbc::OConnection::getSupportedServiceNames()
+connectivity::odbc::OConnection::getTransactionIsolation()
+connectivity::odbc::OConnection::getTypeMap()
+connectivity::odbc::OConnection::getWarnings()
+connectivity::odbc::OConnection::isClosed()
+connectivity::odbc::OConnection::isReadOnly()
+connectivity::odbc::OConnection::nativeSQL(rtl::OUString const&)
+connectivity::odbc::OConnection::prepareCall(rtl::OUString const&)
+connectivity::odbc::OConnection::prepareStatement(rtl::OUString const&)
+connectivity::odbc::OConnection::rollback()
+connectivity::odbc::OConnection::setAutoCommit(unsigned char)
+connectivity::odbc::OConnection::setCatalog(rtl::OUString const&)
+connectivity::odbc::OConnection::setReadOnly(unsigned char)
+connectivity::odbc::OConnection::setTransactionIsolation(int)
+connectivity::odbc::OConnection::setTypeMap(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+connectivity::odbc::OConnection::supportsService(rtl::OUString const&)
+connectivity::odbc::OConnection::~OConnection()
+connectivity::odbc::ODBCDriver::ODBCDriver(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+connectivity::odbc::ODBCDriver::acceptsURL(rtl::OUString const&)
+connectivity::odbc::ODBCDriver::connect(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+connectivity::odbc::ODBCDriver::disposing()
+connectivity::odbc::ODBCDriver::getImplementationName()
+connectivity::odbc::ODBCDriver::getMajorVersion()
+connectivity::odbc::ODBCDriver::getMinorVersion()
+connectivity::odbc::ODBCDriver::getPropertyInfo(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+connectivity::odbc::ODBCDriver::getSupportedServiceNames()
+connectivity::odbc::ODBCDriver::supportsService(rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::ODatabaseMetaData(void*, connectivity::odbc::OConnection*)
+connectivity::odbc::ODatabaseMetaData::allProceduresAreCallable()
+connectivity::odbc::ODatabaseMetaData::allTablesAreSelectable()
+connectivity::odbc::ODatabaseMetaData::dataDefinitionCausesTransactionCommit()
+connectivity::odbc::ODatabaseMetaData::dataDefinitionIgnoredInTransactions()
+connectivity::odbc::ODatabaseMetaData::deletesAreDetected(int)
+connectivity::odbc::ODatabaseMetaData::doesMaxRowSizeIncludeBlobs()
+connectivity::odbc::ODatabaseMetaData::getBestRowIdentifier(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, int, unsigned char)
+connectivity::odbc::ODatabaseMetaData::getCatalogTerm()
+connectivity::odbc::ODatabaseMetaData::getCatalogs()
+connectivity::odbc::ODatabaseMetaData::getColumnPrivileges(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getColumns(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getCrossReference(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getDatabaseProductName()
+connectivity::odbc::ODatabaseMetaData::getDatabaseProductVersion()
+connectivity::odbc::ODatabaseMetaData::getDefaultTransactionIsolation()
+connectivity::odbc::ODatabaseMetaData::getDriverMajorVersion()
+connectivity::odbc::ODatabaseMetaData::getDriverMinorVersion()
+connectivity::odbc::ODatabaseMetaData::getDriverName()
+connectivity::odbc::ODatabaseMetaData::getDriverVersion()
+connectivity::odbc::ODatabaseMetaData::getExportedKeys(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getExtraNameCharacters()
+connectivity::odbc::ODatabaseMetaData::getImportedKeys(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getIndexInfo(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, unsigned char, unsigned char)
+connectivity::odbc::ODatabaseMetaData::getMaxBinaryLiteralLength()
+connectivity::odbc::ODatabaseMetaData::getMaxCatalogNameLength()
+connectivity::odbc::ODatabaseMetaData::getMaxCharLiteralLength()
+connectivity::odbc::ODatabaseMetaData::getMaxColumnNameLength()
+connectivity::odbc::ODatabaseMetaData::getMaxColumnsInGroupBy()
+connectivity::odbc::ODatabaseMetaData::getMaxColumnsInIndex()
+connectivity::odbc::ODatabaseMetaData::getMaxColumnsInOrderBy()
+connectivity::odbc::ODatabaseMetaData::getMaxColumnsInSelect()
+connectivity::odbc::ODatabaseMetaData::getMaxColumnsInTable()
+connectivity::odbc::ODatabaseMetaData::getMaxConnections()
+connectivity::odbc::ODatabaseMetaData::getMaxCursorNameLength()
+connectivity::odbc::ODatabaseMetaData::getMaxIndexLength()
+connectivity::odbc::ODatabaseMetaData::getMaxProcedureNameLength()
+connectivity::odbc::ODatabaseMetaData::getMaxRowSize()
+connectivity::odbc::ODatabaseMetaData::getMaxSchemaNameLength()
+connectivity::odbc::ODatabaseMetaData::getMaxStatementLength()
+connectivity::odbc::ODatabaseMetaData::getMaxTableNameLength()
+connectivity::odbc::ODatabaseMetaData::getMaxUserNameLength()
+connectivity::odbc::ODatabaseMetaData::getNumericFunctions()
+connectivity::odbc::ODatabaseMetaData::getPrimaryKeys(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getProcedureColumns(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getProcedureTerm()
+connectivity::odbc::ODatabaseMetaData::getProcedures(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getSQLKeywords()
+connectivity::odbc::ODatabaseMetaData::getSchemaTerm()
+connectivity::odbc::ODatabaseMetaData::getSchemas()
+connectivity::odbc::ODatabaseMetaData::getSearchStringEscape()
+connectivity::odbc::ODatabaseMetaData::getStringFunctions()
+connectivity::odbc::ODatabaseMetaData::getSystemFunctions()
+connectivity::odbc::ODatabaseMetaData::getTablePrivileges(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::getTableTypes()
+connectivity::odbc::ODatabaseMetaData::getTables(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<rtl::OUString> const&)
+connectivity::odbc::ODatabaseMetaData::getTimeDateFunctions()
+connectivity::odbc::ODatabaseMetaData::getUDTs(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<int> const&)
+connectivity::odbc::ODatabaseMetaData::getURL()
+connectivity::odbc::ODatabaseMetaData::getURLImpl()
+connectivity::odbc::ODatabaseMetaData::getUserName()
+connectivity::odbc::ODatabaseMetaData::getVersionColumns(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaData::impl_getCatalogSeparator_throw()
+connectivity::odbc::ODatabaseMetaData::impl_getIdentifierQuoteString_throw()
+connectivity::odbc::ODatabaseMetaData::impl_getMaxStatements_throw()
+connectivity::odbc::ODatabaseMetaData::impl_getMaxTablesInSelect_throw()
+connectivity::odbc::ODatabaseMetaData::impl_getTypeInfo_throw()
+connectivity::odbc::ODatabaseMetaData::impl_isCatalogAtStart_throw()
+connectivity::odbc::ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw()
+connectivity::odbc::ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw()
+connectivity::odbc::ODatabaseMetaData::insertsAreDetected(int)
+connectivity::odbc::ODatabaseMetaData::isReadOnly()
+connectivity::odbc::ODatabaseMetaData::nullPlusNonNullIsNull()
+connectivity::odbc::ODatabaseMetaData::nullsAreSortedAtEnd()
+connectivity::odbc::ODatabaseMetaData::nullsAreSortedAtStart()
+connectivity::odbc::ODatabaseMetaData::nullsAreSortedHigh()
+connectivity::odbc::ODatabaseMetaData::nullsAreSortedLow()
+connectivity::odbc::ODatabaseMetaData::othersDeletesAreVisible(int)
+connectivity::odbc::ODatabaseMetaData::othersInsertsAreVisible(int)
+connectivity::odbc::ODatabaseMetaData::othersUpdatesAreVisible(int)
+connectivity::odbc::ODatabaseMetaData::ownDeletesAreVisible(int)
+connectivity::odbc::ODatabaseMetaData::ownInsertsAreVisible(int)
+connectivity::odbc::ODatabaseMetaData::ownUpdatesAreVisible(int)
+connectivity::odbc::ODatabaseMetaData::storesLowerCaseIdentifiers()
+connectivity::odbc::ODatabaseMetaData::storesLowerCaseQuotedIdentifiers()
+connectivity::odbc::ODatabaseMetaData::storesMixedCaseIdentifiers()
+connectivity::odbc::ODatabaseMetaData::storesUpperCaseIdentifiers()
+connectivity::odbc::ODatabaseMetaData::storesUpperCaseQuotedIdentifiers()
+connectivity::odbc::ODatabaseMetaData::supportsANSI92EntryLevelSQL()
+connectivity::odbc::ODatabaseMetaData::supportsANSI92FullSQL()
+connectivity::odbc::ODatabaseMetaData::supportsANSI92IntermediateSQL()
+connectivity::odbc::ODatabaseMetaData::supportsBatchUpdates()
+connectivity::odbc::ODatabaseMetaData::supportsCatalogsInIndexDefinitions()
+connectivity::odbc::ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions()
+connectivity::odbc::ODatabaseMetaData::supportsCatalogsInProcedureCalls()
+connectivity::odbc::ODatabaseMetaData::supportsColumnAliasing()
+connectivity::odbc::ODatabaseMetaData::supportsConvert(int, int)
+connectivity::odbc::ODatabaseMetaData::supportsCoreSQLGrammar()
+connectivity::odbc::ODatabaseMetaData::supportsCorrelatedSubqueries()
+connectivity::odbc::ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions()
+connectivity::odbc::ODatabaseMetaData::supportsDataManipulationTransactionsOnly()
+connectivity::odbc::ODatabaseMetaData::supportsDifferentTableCorrelationNames()
+connectivity::odbc::ODatabaseMetaData::supportsExpressionsInOrderBy()
+connectivity::odbc::ODatabaseMetaData::supportsExtendedSQLGrammar()
+connectivity::odbc::ODatabaseMetaData::supportsFullOuterJoins()
+connectivity::odbc::ODatabaseMetaData::supportsGroupBy()
+connectivity::odbc::ODatabaseMetaData::supportsGroupByBeyondSelect()
+connectivity::odbc::ODatabaseMetaData::supportsGroupByUnrelated()
+connectivity::odbc::ODatabaseMetaData::supportsIntegrityEnhancementFacility()
+connectivity::odbc::ODatabaseMetaData::supportsLikeEscapeClause()
+connectivity::odbc::ODatabaseMetaData::supportsLimitedOuterJoins()
+connectivity::odbc::ODatabaseMetaData::supportsMinimumSQLGrammar()
+connectivity::odbc::ODatabaseMetaData::supportsMixedCaseIdentifiers()
+connectivity::odbc::ODatabaseMetaData::supportsMultipleResultSets()
+connectivity::odbc::ODatabaseMetaData::supportsMultipleTransactions()
+connectivity::odbc::ODatabaseMetaData::supportsNonNullableColumns()
+connectivity::odbc::ODatabaseMetaData::supportsOpenCursorsAcrossCommit()
+connectivity::odbc::ODatabaseMetaData::supportsOpenCursorsAcrossRollback()
+connectivity::odbc::ODatabaseMetaData::supportsOpenStatementsAcrossCommit()
+connectivity::odbc::ODatabaseMetaData::supportsOpenStatementsAcrossRollback()
+connectivity::odbc::ODatabaseMetaData::supportsOrderByUnrelated()
+connectivity::odbc::ODatabaseMetaData::supportsOuterJoins()
+connectivity::odbc::ODatabaseMetaData::supportsPositionedDelete()
+connectivity::odbc::ODatabaseMetaData::supportsPositionedUpdate()
+connectivity::odbc::ODatabaseMetaData::supportsResultSetConcurrency(int, int)
+connectivity::odbc::ODatabaseMetaData::supportsResultSetType(int)
+connectivity::odbc::ODatabaseMetaData::supportsSchemasInIndexDefinitions()
+connectivity::odbc::ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions()
+connectivity::odbc::ODatabaseMetaData::supportsSchemasInProcedureCalls()
+connectivity::odbc::ODatabaseMetaData::supportsSelectForUpdate()
+connectivity::odbc::ODatabaseMetaData::supportsStoredProcedures()
+connectivity::odbc::ODatabaseMetaData::supportsSubqueriesInComparisons()
+connectivity::odbc::ODatabaseMetaData::supportsSubqueriesInExists()
+connectivity::odbc::ODatabaseMetaData::supportsSubqueriesInIns()
+connectivity::odbc::ODatabaseMetaData::supportsSubqueriesInQuantifieds()
+connectivity::odbc::ODatabaseMetaData::supportsTableCorrelationNames()
+connectivity::odbc::ODatabaseMetaData::supportsTransactionIsolationLevel(int)
+connectivity::odbc::ODatabaseMetaData::supportsTransactions()
+connectivity::odbc::ODatabaseMetaData::supportsTypeConversion()
+connectivity::odbc::ODatabaseMetaData::supportsUnion()
+connectivity::odbc::ODatabaseMetaData::supportsUnionAll()
+connectivity::odbc::ODatabaseMetaData::updatesAreDetected(int)
+connectivity::odbc::ODatabaseMetaData::usesLocalFilePerTable()
+connectivity::odbc::ODatabaseMetaData::usesLocalFiles()
+connectivity::odbc::ODatabaseMetaData::~ODatabaseMetaData()
+connectivity::odbc::ODatabaseMetaDataResultSet::ODatabaseMetaDataResultSet(connectivity::odbc::OConnection*)
+connectivity::odbc::ODatabaseMetaDataResultSet::absolute(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::acquire()
+connectivity::odbc::ODatabaseMetaDataResultSet::afterLast()
+connectivity::odbc::ODatabaseMetaDataResultSet::beforeFirst()
+connectivity::odbc::ODatabaseMetaDataResultSet::cancel()
+connectivity::odbc::ODatabaseMetaDataResultSet::checkColumnCount()
+connectivity::odbc::ODatabaseMetaDataResultSet::clearWarnings()
+connectivity::odbc::ODatabaseMetaDataResultSet::close()
+connectivity::odbc::ODatabaseMetaDataResultSet::convertFastPropertyValue(com::sun::star::uno::Any&, com::sun::star::uno::Any&, int, com::sun::star::uno::Any const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::createArrayHelper() const
+connectivity::odbc::ODatabaseMetaDataResultSet::disposing()
+connectivity::odbc::ODatabaseMetaDataResultSet::findColumn(rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::first()
+connectivity::odbc::ODatabaseMetaDataResultSet::getArray(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getBinaryStream(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getBlob(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getBoolean(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getByte(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getBytes(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getCharacterStream(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getClob(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getCursorName()
+connectivity::odbc::ODatabaseMetaDataResultSet::getDate(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getDouble(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getFastPropertyValue(com::sun::star::uno::Any&, int) const
+connectivity::odbc::ODatabaseMetaDataResultSet::getFetchSize()
+connectivity::odbc::ODatabaseMetaDataResultSet::getFloat(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getInfoHelper()
+connectivity::odbc::ODatabaseMetaDataResultSet::getInt(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getLong(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getMetaData()
+connectivity::odbc::ODatabaseMetaDataResultSet::getObject(int, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::getPropertySetInfo()
+connectivity::odbc::ODatabaseMetaDataResultSet::getRef(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getRow()
+connectivity::odbc::ODatabaseMetaDataResultSet::getShort(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getStatement()
+connectivity::odbc::ODatabaseMetaDataResultSet::getString(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getTime(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getTimestamp(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::getTypes()
+connectivity::odbc::ODatabaseMetaDataResultSet::getWarnings()
+connectivity::odbc::ODatabaseMetaDataResultSet::impl_getColumnType_nothrow(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::isAfterLast()
+connectivity::odbc::ODatabaseMetaDataResultSet::isBeforeFirst()
+connectivity::odbc::ODatabaseMetaDataResultSet::isFirst()
+connectivity::odbc::ODatabaseMetaDataResultSet::isLast()
+connectivity::odbc::ODatabaseMetaDataResultSet::last()
+connectivity::odbc::ODatabaseMetaDataResultSet::mapColumn(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::next()
+connectivity::odbc::ODatabaseMetaDataResultSet::openBestRowIdentifier(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, int, bool)
+connectivity::odbc::ODatabaseMetaDataResultSet::openCatalogs()
+connectivity::odbc::ODatabaseMetaDataResultSet::openColumnPrivileges(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::openColumns(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::openExportedKeys(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::openForeignKeys(com::sun::star::uno::Any const&, rtl::OUString const*, rtl::OUString const*, com::sun::star::uno::Any const&, rtl::OUString const*, rtl::OUString const*)
+connectivity::odbc::ODatabaseMetaDataResultSet::openImportedKeys(com::sun::star::uno::Any const&, rtl::OUString const&, rtl::OUString const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::openIndexInfo(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool, bool)
+connectivity::odbc::ODatabaseMetaDataResultSet::openPrimaryKeys(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::openProcedureColumns(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::openProcedures(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::openSchemas()
+connectivity::odbc::ODatabaseMetaDataResultSet::openSpecialColumns(bool, com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, int, bool)
+connectivity::odbc::ODatabaseMetaDataResultSet::openTablePrivileges(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::openTables(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::star::uno::Sequence<rtl::OUString> const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::openTablesTypes()
+connectivity::odbc::ODatabaseMetaDataResultSet::openTypeInfo()
+connectivity::odbc::ODatabaseMetaDataResultSet::openVersionColumns(com::sun::star::uno::Any const&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::ODatabaseMetaDataResultSet::previous()
+connectivity::odbc::ODatabaseMetaDataResultSet::queryInterface(com::sun::star::uno::Type const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::refreshRow()
+connectivity::odbc::ODatabaseMetaDataResultSet::relative(int)
+connectivity::odbc::ODatabaseMetaDataResultSet::release()
+connectivity::odbc::ODatabaseMetaDataResultSet::rowDeleted()
+connectivity::odbc::ODatabaseMetaDataResultSet::rowInserted()
+connectivity::odbc::ODatabaseMetaDataResultSet::rowUpdated()
+connectivity::odbc::ODatabaseMetaDataResultSet::setFastPropertyValue_NoBroadcast(int, com::sun::star::uno::Any const&)
+connectivity::odbc::ODatabaseMetaDataResultSet::wasNull()
+connectivity::odbc::ODatabaseMetaDataResultSet::~ODatabaseMetaDataResultSet()
+connectivity::odbc::OPreparedStatement::FreeParams()
+connectivity::odbc::OPreparedStatement::OPreparedStatement(connectivity::odbc::OConnection*, rtl::OUString const&)
+connectivity::odbc::OPreparedStatement::acquire()
+connectivity::odbc::OPreparedStatement::addBatch()
+connectivity::odbc::OPreparedStatement::allocBindBuf(int, int)
+connectivity::odbc::OPreparedStatement::checkParameterIndex(int)
+connectivity::odbc::OPreparedStatement::clearBatch()
+connectivity::odbc::OPreparedStatement::clearParameters()
+connectivity::odbc::OPreparedStatement::close()
+connectivity::odbc::OPreparedStatement::createResultSet()
+connectivity::odbc::OPreparedStatement::execute()
+connectivity::odbc::OPreparedStatement::executeBatch()
+connectivity::odbc::OPreparedStatement::executeQuery()
+connectivity::odbc::OPreparedStatement::executeUpdate()
+connectivity::odbc::OPreparedStatement::getConnection()
+connectivity::odbc::OPreparedStatement::getImplementationName()
+connectivity::odbc::OPreparedStatement::getLengthBuf(int)
+connectivity::odbc::OPreparedStatement::getMetaData()
+connectivity::odbc::OPreparedStatement::getSupportedServiceNames()
+connectivity::odbc::OPreparedStatement::getTypes()
+connectivity::odbc::OPreparedStatement::initBoundParam()
+connectivity::odbc::OPreparedStatement::prepareStatement()
+connectivity::odbc::OPreparedStatement::putParamData(int)
+connectivity::odbc::OPreparedStatement::queryInterface(com::sun::star::uno::Type const&)
+connectivity::odbc::OPreparedStatement::release()
+connectivity::odbc::OPreparedStatement::setArray(int, com::sun::star::uno::Reference<com::sun::star::sdbc::XArray> const&)
+connectivity::odbc::OPreparedStatement::setBinaryStream(int, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, int)
+connectivity::odbc::OPreparedStatement::setBlob(int, com::sun::star::uno::Reference<com::sun::star::sdbc::XBlob> const&)
+connectivity::odbc::OPreparedStatement::setBoolean(int, unsigned char)
+connectivity::odbc::OPreparedStatement::setByte(int, signed char)
+connectivity::odbc::OPreparedStatement::setBytes(int, com::sun::star::uno::Sequence<signed char> const&)
+connectivity::odbc::OPreparedStatement::setCharacterStream(int, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, int)
+connectivity::odbc::OPreparedStatement::setClob(int, com::sun::star::uno::Reference<com::sun::star::sdbc::XClob> const&)
+connectivity::odbc::OPreparedStatement::setDate(int, com::sun::star::util::Date const&)
+connectivity::odbc::OPreparedStatement::setDouble(int, double)
+connectivity::odbc::OPreparedStatement::setFastPropertyValue_NoBroadcast(int, com::sun::star::uno::Any const&)
+connectivity::odbc::OPreparedStatement::setFloat(int, float)
+connectivity::odbc::OPreparedStatement::setInt(int, int)
+connectivity::odbc::OPreparedStatement::setLong(int, long)
+connectivity::odbc::OPreparedStatement::setNull(int, int)
+connectivity::odbc::OPreparedStatement::setObject(int, com::sun::star::uno::Any const&)
+connectivity::odbc::OPreparedStatement::setObjectNull(int, int, rtl::OUString const&)
+connectivity::odbc::OPreparedStatement::setObjectWithInfo(int, com::sun::star::uno::Any const&, int, int)
+connectivity::odbc::OPreparedStatement::setParameter(int, int, com::sun::star::uno::Sequence<signed char> const&)
+connectivity::odbc::OPreparedStatement::setParameter(int, int, short, rtl::OUString const&)
+connectivity::odbc::OPreparedStatement::setParameter(int, int, unsigned long, int, void const*, unsigned long, long)
+connectivity::odbc::OPreparedStatement::setParameterPre(int)
+connectivity::odbc::OPreparedStatement::setRef(int, com::sun::star::uno::Reference<com::sun::star::sdbc::XRef> const&)
+connectivity::odbc::OPreparedStatement::setShort(int, short)
+connectivity::odbc::OPreparedStatement::setStream(int, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, long, int)
+connectivity::odbc::OPreparedStatement::setString(int, rtl::OUString const&)
+connectivity::odbc::OPreparedStatement::setTime(int, com::sun::star::util::Time const&)
+connectivity::odbc::OPreparedStatement::setTimestamp(int, com::sun::star::util::DateTime const&)
+connectivity::odbc::OPreparedStatement::supportsService(rtl::OUString const&)
+connectivity::odbc::OPreparedStatement::~OPreparedStatement()
+connectivity::odbc::OResultSet::OResultSet(void*, connectivity::odbc::OStatement_Base*)
+connectivity::odbc::OResultSet::absolute(int)
+connectivity::odbc::OResultSet::acquire()
+connectivity::odbc::OResultSet::afterLast()
+connectivity::odbc::OResultSet::allocBindColumn(int, int)
+connectivity::odbc::OResultSet::allocBuffer()
+connectivity::odbc::OResultSet::beforeFirst()
+connectivity::odbc::OResultSet::cancel()
+connectivity::odbc::OResultSet::cancelRowUpdates()
+connectivity::odbc::OResultSet::clearWarnings()
+connectivity::odbc::OResultSet::close()
+connectivity::odbc::OResultSet::compareBookmarks(com::sun::star::uno::Any const&, com::sun::star::uno::Any const&)
+connectivity::odbc::OResultSet::construct()
+connectivity::odbc::OResultSet::convertFastPropertyValue(com::sun::star::uno::Any&, com::sun::star::uno::Any&, int, com::sun::star::uno::Any const&)
+connectivity::odbc::OResultSet::createArrayHelper() const
+connectivity::odbc::OResultSet::deleteRow()
+connectivity::odbc::OResultSet::deleteRows(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+connectivity::odbc::OResultSet::disposing()
+connectivity::odbc::OResultSet::ensureCacheForColumn(int)
+connectivity::odbc::OResultSet::fillColumn(int)
+connectivity::odbc::OResultSet::fillNeededData(short)
+connectivity::odbc::OResultSet::findColumn(rtl::OUString const&)
+connectivity::odbc::OResultSet::first()
+connectivity::odbc::OResultSet::getArray(int)
+connectivity::odbc::OResultSet::getBinaryStream(int)
+connectivity::odbc::OResultSet::getBlob(int)
+connectivity::odbc::OResultSet::getBookmark()
+connectivity::odbc::OResultSet::getBoolean(int)
+connectivity::odbc::OResultSet::getByte(int)
+connectivity::odbc::OResultSet::getBytes(int)
+connectivity::odbc::OResultSet::getCharacterStream(int)
+connectivity::odbc::OResultSet::getClob(int)
+connectivity::odbc::OResultSet::getCursorName() const
+connectivity::odbc::OResultSet::getDate(int)
+connectivity::odbc::OResultSet::getDouble(int)
+connectivity::odbc::OResultSet::getDriverPos() const
+connectivity::odbc::OResultSet::getFastPropertyValue(com::sun::star::uno::Any&, int) const
+connectivity::odbc::OResultSet::getFetchSize() const
+connectivity::odbc::OResultSet::getFloat(int)
+connectivity::odbc::OResultSet::getImplementationName()
+connectivity::odbc::OResultSet::getInfoHelper()
+connectivity::odbc::OResultSet::getInt(int)
+connectivity::odbc::OResultSet::getLong(int)
+connectivity::odbc::OResultSet::getMetaData()
+connectivity::odbc::OResultSet::getObject(int, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+connectivity::odbc::OResultSet::getPropertySetInfo()
+connectivity::odbc::OResultSet::getRef(int)
+connectivity::odbc::OResultSet::getResultSetConcurrency() const
+connectivity::odbc::OResultSet::getResultSetType() const
+connectivity::odbc::OResultSet::getRow()
+connectivity::odbc::OResultSet::getShort(int)
+connectivity::odbc::OResultSet::getStatement()
+connectivity::odbc::OResultSet::getString(int)
+connectivity::odbc::OResultSet::getSupportedServiceNames()
+connectivity::odbc::OResultSet::getTime(int)
+connectivity::odbc::OResultSet::getTimestamp(int)
+connectivity::odbc::OResultSet::getTypes()
+connectivity::odbc::OResultSet::getWarnings()
+connectivity::odbc::OResultSet::hasOrderedBookmarks()
+connectivity::odbc::OResultSet::hashBookmark(com::sun::star::uno::Any const&)
+connectivity::odbc::OResultSet::impl_getBookmark()
+connectivity::odbc::OResultSet::impl_getBoolean(int)
+connectivity::odbc::OResultSet::impl_getBytes(int)
+connectivity::odbc::OResultSet::impl_getColumnType_nothrow(int)
+connectivity::odbc::OResultSet::impl_getDate(int)
+connectivity::odbc::OResultSet::impl_getLong(int)
+connectivity::odbc::OResultSet::impl_getString(int)
+connectivity::odbc::OResultSet::impl_getTime(int)
+connectivity::odbc::OResultSet::impl_getTimestamp(int)
+connectivity::odbc::OResultSet::insertRow()
+connectivity::odbc::OResultSet::invalidateCache()
+connectivity::odbc::OResultSet::isAfterLast()
+connectivity::odbc::OResultSet::isBeforeFirst()
+connectivity::odbc::OResultSet::isBookmarkable() const
+connectivity::odbc::OResultSet::isFirst()
+connectivity::odbc::OResultSet::isLast()
+connectivity::odbc::OResultSet::isRowDeleted() const
+connectivity::odbc::OResultSet::last()
+connectivity::odbc::OResultSet::move(connectivity::IResultSetHelper::Movement, int, bool)
+connectivity::odbc::OResultSet::moveImpl(connectivity::IResultSetHelper::Movement, int)
+connectivity::odbc::OResultSet::moveRelativeToBookmark(com::sun::star::uno::Any const&, int)
+connectivity::odbc::OResultSet::moveToBookmark(com::sun::star::uno::Any const&)
+connectivity::odbc::OResultSet::moveToCurrentRow()
+connectivity::odbc::OResultSet::moveToInsertRow()
+connectivity::odbc::OResultSet::next()
+connectivity::odbc::OResultSet::previous()
+connectivity::odbc::OResultSet::queryInterface(com::sun::star::uno::Type const&)
+connectivity::odbc::OResultSet::refreshRow()
+connectivity::odbc::OResultSet::relative(int)
+connectivity::odbc::OResultSet::release()
+connectivity::odbc::OResultSet::releaseBuffer()
+connectivity::odbc::OResultSet::rowDeleted()
+connectivity::odbc::OResultSet::rowInserted()
+connectivity::odbc::OResultSet::rowUpdated()
+connectivity::odbc::OResultSet::setFastPropertyValue_NoBroadcast(int, com::sun::star::uno::Any const&)
+connectivity::odbc::OResultSet::setFetchDirection(int)
+connectivity::odbc::OResultSet::setFetchSize(int)
+connectivity::odbc::OResultSet::supportsService(rtl::OUString const&)
+connectivity::odbc::OResultSet::unbind(bool)
+connectivity::odbc::OResultSet::updateBinaryStream(int, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, int)
+connectivity::odbc::OResultSet::updateBoolean(int, unsigned char)
+connectivity::odbc::OResultSet::updateByte(int, signed char)
+connectivity::odbc::OResultSet::updateBytes(int, com::sun::star::uno::Sequence<signed char> const&)
+connectivity::odbc::OResultSet::updateCharacterStream(int, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, int)
+connectivity::odbc::OResultSet::updateDate(int, com::sun::star::util::Date const&)
+connectivity::odbc::OResultSet::updateDouble(int, double)
+connectivity::odbc::OResultSet::updateFloat(int, float)
+connectivity::odbc::OResultSet::updateInt(int, int)
+connectivity::odbc::OResultSet::updateLong(int, long)
+connectivity::odbc::OResultSet::updateNull(int)
+connectivity::odbc::OResultSet::updateNumericObject(int, com::sun::star::uno::Any const&, int)
+connectivity::odbc::OResultSet::updateObject(int, com::sun::star::uno::Any const&)
+connectivity::odbc::OResultSet::updateRow()
+connectivity::odbc::OResultSet::updateShort(int, short)
+connectivity::odbc::OResultSet::updateString(int, rtl::OUString const&)
+connectivity::odbc::OResultSet::updateTime(int, com::sun::star::util::Time const&)
+connectivity::odbc::OResultSet::updateTimestamp(int, com::sun::star::util::DateTime const&)
+connectivity::odbc::OResultSet::updateValue(int, short, void const*)
+connectivity::odbc::OResultSet::wasNull()
+connectivity::odbc::OResultSet::~OResultSet()
+connectivity::odbc::OResultSetMetaData::getCatalogName(int)
+connectivity::odbc::OResultSetMetaData::getCharColAttrib(int, int)
+connectivity::odbc::OResultSetMetaData::getColumnCount()
+connectivity::odbc::OResultSetMetaData::getColumnDisplaySize(int)
+connectivity::odbc::OResultSetMetaData::getColumnLabel(int)
+connectivity::odbc::OResultSetMetaData::getColumnName(int)
+connectivity::odbc::OResultSetMetaData::getColumnODBCType(connectivity::odbc::OConnection const*, void*, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, int)
+connectivity::odbc::OResultSetMetaData::getColumnServiceName(int)
+connectivity::odbc::OResultSetMetaData::getColumnType(int)
+connectivity::odbc::OResultSetMetaData::getColumnTypeName(int)
+connectivity::odbc::OResultSetMetaData::getNumColAttrib(connectivity::odbc::OConnection const*, void*, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, int, int)
+connectivity::odbc::OResultSetMetaData::getNumColAttrib(int, int)
+connectivity::odbc::OResultSetMetaData::getPrecision(int)
+connectivity::odbc::OResultSetMetaData::getScale(int)
+connectivity::odbc::OResultSetMetaData::getSchemaName(int)
+connectivity::odbc::OResultSetMetaData::getTableName(int)
+connectivity::odbc::OResultSetMetaData::isAutoIncrement(int)
+connectivity::odbc::OResultSetMetaData::isCaseSensitive(int)
+connectivity::odbc::OResultSetMetaData::isCurrency(int)
+connectivity::odbc::OResultSetMetaData::isDefinitelyWritable(int)
+connectivity::odbc::OResultSetMetaData::isNullable(int)
+connectivity::odbc::OResultSetMetaData::isReadOnly(int)
+connectivity::odbc::OResultSetMetaData::isSearchable(int)
+connectivity::odbc::OResultSetMetaData::isSigned(int)
+connectivity::odbc::OResultSetMetaData::isWritable(int)
+connectivity::odbc::OResultSetMetaData::~OResultSetMetaData()
+connectivity::odbc::OStatement::acquire()
+connectivity::odbc::OStatement::addBatch(rtl::OUString const&)
+connectivity::odbc::OStatement::clearBatch()
+connectivity::odbc::OStatement::executeBatch()
+connectivity::odbc::OStatement::getImplementationName()
+connectivity::odbc::OStatement::getSupportedServiceNames()
+connectivity::odbc::OStatement::queryInterface(com::sun::star::uno::Type const&)
+connectivity::odbc::OStatement::release()
+connectivity::odbc::OStatement::supportsService(rtl::OUString const&)
+connectivity::odbc::OStatement_BASE2::disposing()
+connectivity::odbc::OStatement_Base::OStatement_Base(connectivity::odbc::OConnection*)
+connectivity::odbc::OStatement_Base::acquire()
+connectivity::odbc::OStatement_Base::cancel()
+connectivity::odbc::OStatement_Base::clearMyResultSet()
+connectivity::odbc::OStatement_Base::clearWarnings()
+connectivity::odbc::OStatement_Base::close()
+connectivity::odbc::OStatement_Base::convertFastPropertyValue(com::sun::star::uno::Any&, com::sun::star::uno::Any&, int, com::sun::star::uno::Any const&)
+connectivity::odbc::OStatement_Base::createArrayHelper() const
+connectivity::odbc::OStatement_Base::createResultSet()
+connectivity::odbc::OStatement_Base::disposeResultSet()
+connectivity::odbc::OStatement_Base::disposing()
+connectivity::odbc::OStatement_Base::execute(rtl::OUString const&)
+connectivity::odbc::OStatement_Base::executeQuery(rtl::OUString const&)
+connectivity::odbc::OStatement_Base::executeUpdate(rtl::OUString const&)
+connectivity::odbc::OStatement_Base::getColumnCount()
+connectivity::odbc::OStatement_Base::getConnection()
+connectivity::odbc::OStatement_Base::getCursorName() const
+connectivity::odbc::OStatement_Base::getCursorProperties(int, bool)
+connectivity::odbc::OStatement_Base::getEscapeProcessing() const
+connectivity::odbc::OStatement_Base::getFastPropertyValue(com::sun::star::uno::Any&, int) const
+connectivity::odbc::OStatement_Base::getFetchDirection() const
+connectivity::odbc::OStatement_Base::getFetchSize() const
+connectivity::odbc::OStatement_Base::getGeneratedValues()
+connectivity::odbc::OStatement_Base::getInfoHelper()
+connectivity::odbc::OStatement_Base::getMaxFieldSize() const
+connectivity::odbc::OStatement_Base::getMaxRows() const
+connectivity::odbc::OStatement_Base::getMoreResults()
+connectivity::odbc::OStatement_Base::getPropertySetInfo()
+connectivity::odbc::OStatement_Base::getQueryTimeOut() const
+connectivity::odbc::OStatement_Base::getResultSet()
+connectivity::odbc::OStatement_Base::getResultSet(bool)
+connectivity::odbc::OStatement_Base::getResultSetConcurrency() const
+connectivity::odbc::OStatement_Base::getResultSetType() const
+connectivity::odbc::OStatement_Base::getRowCount()
+connectivity::odbc::OStatement_Base::getTypes()
+connectivity::odbc::OStatement_Base::getUpdateCount()
+connectivity::odbc::OStatement_Base::getWarnings()
+connectivity::odbc::OStatement_Base::isUsingBookmarks() const
+connectivity::odbc::OStatement_Base::lockIfNecessary(rtl::OUString const&)
+connectivity::odbc::OStatement_Base::queryInterface(com::sun::star::uno::Type const&)
+connectivity::odbc::OStatement_Base::release()
+connectivity::odbc::OStatement_Base::reset()
+connectivity::odbc::OStatement_Base::setCursorName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+connectivity::odbc::OStatement_Base::setEscapeProcessing(bool)
+connectivity::odbc::OStatement_Base::setFastPropertyValue_NoBroadcast(int, com::sun::star::uno::Any const&)
+connectivity::odbc::OStatement_Base::setFetchDirection(int)
+connectivity::odbc::OStatement_Base::setFetchSize(int)
+connectivity::odbc::OStatement_Base::setMaxFieldSize(long)
+connectivity::odbc::OStatement_Base::setMaxRows(long)
+connectivity::odbc::OStatement_Base::setQueryTimeOut(long)
+connectivity::odbc::OStatement_Base::setResultSetConcurrency(int)
+connectivity::odbc::OStatement_Base::setResultSetType(int)
+connectivity::odbc::OStatement_Base::setUsingBookmarks(bool)
+connectivity::odbc::OStatement_Base::setWarning(com::sun::star::sdbc::SQLWarning const&)
+connectivity::odbc::OStatement_Base::~OStatement_Base()
+connectivity::odbc::OTools::GetInfo(connectivity::odbc::OConnection const*, void*, unsigned short, int&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+connectivity::odbc::OTools::GetInfo(connectivity::odbc::OConnection const*, void*, unsigned short, rtl::OUString&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, unsigned short)
+connectivity::odbc::OTools::GetInfo(connectivity::odbc::OConnection const*, void*, unsigned short, unsigned int&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+connectivity::odbc::OTools::GetInfo(connectivity::odbc::OConnection const*, void*, unsigned short, unsigned short&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+connectivity::odbc::OTools::MapOdbcType2Jdbc(short)
+connectivity::odbc::OTools::ThrowException(connectivity::odbc::OConnection const*, short, void*, short, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, bool)
+connectivity::odbc::OTools::bindValue(connectivity::odbc::OConnection const*, void*, int, short, short, void const*, void*, long*, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, unsigned short, bool)
+connectivity::odbc::OTools::getBindTypes(bool, bool, short, short&, short&)
+connectivity::odbc::OTools::getBytesValue(connectivity::odbc::OConnection const*, void*, int, short, bool&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+connectivity::odbc::OTools::getStringValue(connectivity::odbc::OConnection const*, void*, int, short, bool&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, unsigned short)
+connectivity::odbc::OTools::getValue(connectivity::odbc::OConnection const*, void*, int, short, bool&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, void*, long)
+connectivity::odbc::OTools::jdbcTypeToOdbc(int)
+connectivity::parse::OParseColumn::construct()
+connectivity::parse::OParseColumn::createArrayHelper() const
+connectivity::parse::OParseColumn::getInfoHelper()
+connectivity::parse::OParseColumn::~OParseColumn()
+connectivity::sdbcx::IObjectCollection::~IObjectCollection()
+connectivity::sdbcx::OCollection::disposeElements()
+connectivity::sdbcx::OCollection::dropImpl(int, bool)
+connectivity::sdbcx::OCollection::notifyElementRemoved(rtl::OUString const&)
+connectivity::sdbcx::OColumn::construct()
+connectivity::sdbcx::OColumn::createArrayHelper(int) const
+connectivity::sdbcx::OColumn::getInfoHelper()
+connectivity::sdbcx::OColumn::getSupportedServiceNames()
+connectivity::sdbcx::ODescriptor::ODescriptor(cppu::OBroadcastHelperVar<cppu::OMultiTypeInterfaceContainerHelper, com::sun::star::uno::Type>&, bool, bool)
+connectivity::sdbcx::ODescriptor::getTypes()
+connectivity::sdbcx::ODescriptor::getUnoTunnelId()
+connectivity::sdbcx::ODescriptor::queryInterface(com::sun::star::uno::Type const&)
+connectivity::sdbcx::ODescriptor::setNew(bool)
+connectivity::sdbcx::ODescriptor::~ODescriptor()
+connectivity::sdbcx::OGroup::OGroup(bool)
+connectivity::sdbcx::OGroup::OGroup(rtl::OUString const&, bool)
+connectivity::sdbcx::OGroup::acquire()
+connectivity::sdbcx::OGroup::createArrayHelper() const
+connectivity::sdbcx::OGroup::disposing()
+connectivity::sdbcx::OGroup::getGrantablePrivileges(rtl::OUString const&, int)
+connectivity::sdbcx::OGroup::getImplementationName()
+connectivity::sdbcx::OGroup::getInfoHelper()
+connectivity::sdbcx::OGroup::getName()
+connectivity::sdbcx::OGroup::getPrivileges(rtl::OUString const&, int)
+connectivity::sdbcx::OGroup::getPropertySetInfo()
+connectivity::sdbcx::OGroup::getSupportedServiceNames()
+connectivity::sdbcx::OGroup::getTypes()
+connectivity::sdbcx::OGroup::getUsers()
+connectivity::sdbcx::OGroup::grantPrivileges(rtl::OUString const&, int, int)
+connectivity::sdbcx::OGroup::queryInterface(com::sun::star::uno::Type const&)
+connectivity::sdbcx::OGroup::release()
+connectivity::sdbcx::OGroup::revokePrivileges(rtl::OUString const&, int, int)
+connectivity::sdbcx::OGroup::setName(rtl::OUString const&)
+connectivity::sdbcx::OGroup::supportsService(rtl::OUString const&)
+connectivity::sdbcx::OGroup::~OGroup()
+connectivity::sdbcx::OIndex::getImplementationName()
+connectivity::sdbcx::OIndex::getSupportedServiceNames()
+connectivity::sdbcx::OIndex::refreshColumns()
+connectivity::sdbcx::OIndex::supportsService(rtl::OUString const&)
+connectivity::sdbcx::OIndexColumn::construct()
+connectivity::sdbcx::OIndexColumn::createArrayHelper(int) const
+connectivity::sdbcx::OIndexColumn::getImplementationName()
+connectivity::sdbcx::OIndexColumn::getInfoHelper()
+connectivity::sdbcx::OIndexColumn::getSupportedServiceNames()
+connectivity::sdbcx::OIndexColumn::supportsService(rtl::OUString const&)
+connectivity::sdbcx::OKey::OKey(bool)
+connectivity::sdbcx::OKey::OKey(rtl::OUString const&, std::shared_ptr<connectivity::sdbcx::KeyProperties> const&, bool)
+connectivity::sdbcx::OKey::acquire()
+connectivity::sdbcx::OKey::construct()
+connectivity::sdbcx::OKey::createArrayHelper(int) const
+connectivity::sdbcx::OKey::createDataDescriptor()
+connectivity::sdbcx::OKey::disposing()
+connectivity::sdbcx::OKey::getColumns()
+connectivity::sdbcx::OKey::getImplementationName()
+connectivity::sdbcx::OKey::getInfoHelper()
+connectivity::sdbcx::OKey::getName()
+connectivity::sdbcx::OKey::getPropertySetInfo()
+connectivity::sdbcx::OKey::getSupportedServiceNames()
+connectivity::sdbcx::OKey::getTypes()
+connectivity::sdbcx::OKey::queryInterface(com::sun::star::uno::Type const&)
+connectivity::sdbcx::OKey::release()
+connectivity::sdbcx::OKey::setName(rtl::OUString const&)
+connectivity::sdbcx::OKey::supportsService(rtl::OUString const&)
+connectivity::sdbcx::OKey::~OKey()
+connectivity::sdbcx::OTable::getName()
+connectivity::sdbcx::OTable::refreshColumns()
+connectivity::sdbcx::OTable::refreshIndexes()
+connectivity::sdbcx::OTable::refreshKeys()
+connectivity::sdbcx::OUser::changePassword(rtl::OUString const&, rtl::OUString const&)
+connectivity::sdbcx::OUser::getGrantablePrivileges(rtl::OUString const&, int)
+connectivity::sdbcx::OUser::getPrivileges(rtl::OUString const&, int)
+connectivity_calc_ODriver
+connectivity_dbase_ODriver
+connectivity_flat_ODriver
+connectivity_hsqldb_ODriverDelegator_implementation
+connectivity_writer_ODriver
+construct_duals
+construct_sensitivity_duals
+construct_sensitivity_obj
+construct_solution
+copyToClip(ScDocument*, ScRange const&, ScDocument*)
+copy_field(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+copy_hash_table
+copy_lp
+countActiveLink
+countInactiveLink
+countsUndoLadder
+covariant return thunk to ScEditWindow::GetEditEngine() const
+cppu_Any_extraction_failure_msg@@UDK_3.1
+cppu_unsatisfied_iquery_msg@@UDK_3_0_0
+cppu_unsatisfied_iset_msg@@UDK_3.3
+cppunitTestPlugIn
+cpuid::getCpuInstructionSetFlags()
+crash_basis
+createLink
+createPQExpBuffer
+createPackedVector
+createUndoLadder
+createUndoPaste(ScDocShell&, ScRange const&, std::unique_ptr<ScDocument, o3tl::default_delete<ScDocument> >)
+create_BB
+create_SOSgroup
+create_SOSrec
+create_SalInstance
+create_hash_table
+css_comp_Impress_oox_PowerPointExport
+cutToClip(ScDocShell&, ScRange const&, ScDocument*, bool)
+daxpy
+dbaccess::OAuthenticationContinuation::canSetAccount()
+dbaccess::OAuthenticationContinuation::canSetPassword()
+dbaccess::OAuthenticationContinuation::canSetRealm()
+dbaccess::OAuthenticationContinuation::canSetUserName()
+dbaccess::OAuthenticationContinuation::getRememberAccountModes(com::sun::star::ucb::RememberAuthentication&)
+dbaccess::OAuthenticationContinuation::getRememberPasswordModes(com::sun::star::ucb::RememberAuthentication&)
+dbaccess::OAuthenticationContinuation::setAccount(rtl::OUString const&)
+dbaccess::OAuthenticationContinuation::setPassword(rtl::OUString const&)
+dbaccess::OAuthenticationContinuation::setRealm(rtl::OUString const&)
+dbaccess::OAuthenticationContinuation::setRememberAccount(com::sun::star::ucb::RememberAuthentication)
+dbaccess::OAuthenticationContinuation::setRememberPassword(com::sun::star::ucb::RememberAuthentication)
+dbaccess::OAuthenticationContinuation::setUserName(rtl::OUString const&)
+dbaccess::ODsnTypeCollection::TypeIterator::TypeIterator(dbaccess::ODsnTypeCollection::TypeIterator const&)
+dbaccess::ResourceManager::loadString(TranslateId, char const*, std::basic_string_view<char16_t, std::char_traits<char16_t> >, char const*, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+dbahsql::CreateStmtParser::parseColumnPart(rtl::OUString const&)
+dbahsql::CreateStmtParser::parsePrimaryKeys(rtl::OUString const&)
+dbahsql::FbCreateStmtParser::appendPrimaryKeyPart(rtl::OUStringBuffer&) const
+dbahsql::FbCreateStmtParser::ensureProperTableLengths() const
+dbahsql::HsqlImporter::insertRow(std::vector<com::sun::star::uno::Any, std::allocator<com::sun::star::uno::Any> > const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::vector<dbahsql::ColumnDefinition, std::allocator<dbahsql::ColumnDefinition> > const&)
+dbahsql::HsqlImporter::parseTableRows(std::vector<int, std::allocator<int> > const&, std::vector<dbahsql::ColumnDefinition, std::allocator<dbahsql::ColumnDefinition> > const&, rtl::OUString const&)
+dbahsql::HsqlImporter::processTree(dbahsql::HsqlBinaryNode&, dbahsql::HsqlRowInputStream&, std::vector<dbahsql::ColumnDefinition, std::allocator<dbahsql::ColumnDefinition> > const&, rtl::OUString const&, int)
+dbaui::DBSubComponentController::appendError(rtl::OUString const&)
+dbaui::DBSubComponentController::attachModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+dbaui::DBSubComponentController::clearError()
+dbaui::DBSubComponentController::connectionLostMessage() const
+dbaui::DBSubComponentController::disconnect()
+dbaui::DBSubComponentController::displayError()
+dbaui::DBSubComponentController::getCurrentStartNumber() const
+dbaui::DBSubComponentController::getDataSource() const
+dbaui::DBSubComponentController::getDataSourceName() const
+dbaui::DBSubComponentController::getDatabaseDocument() const
+dbaui::DBSubComponentController::getError() const
+dbaui::DBSubComponentController::getMetaData() const
+dbaui::DBSubComponentController::getNumberFormatter() const
+dbaui::DBSubComponentController::getSdbMetaData() const
+dbaui::DBSubComponentController::getTitle()
+dbaui::DBSubComponentController::hasError() const
+dbaui::DBSubComponentController::haveDataSource() const
+dbaui::DBSubComponentController::initializeConnection(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&)
+dbaui::DBSubComponentController::isReadOnly() const
+dbaui::DBSubComponentController::suspend(unsigned char)
+dbaui::ODataView::attachFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+dbaui::OGenericUnoController::Execute(unsigned short, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+dbaui::OGenericUnoController::ImplBroadcastFeatureState(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, bool)
+dbaui::OGenericUnoController::ImplInvalidateFeature(int, com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, bool)
+dbaui::OGenericUnoController::InvalidateAll_Impl()
+dbaui::OGenericUnoController::InvalidateFeature_Impl()
+dbaui::OGenericUnoController::OGenericUnoController(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+dbaui::OGenericUnoController::attachModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+dbaui::OGenericUnoController::closeTask()
+dbaui::OGenericUnoController::connect(com::sun::star::uno::Reference<com::sun::star::sdbc::XDataSource> const&)
+dbaui::OGenericUnoController::connect(rtl::OUString const&, rtl::OUString const&, dbtools::SQLExceptionInfo*)
+dbaui::OGenericUnoController::disposing()
+dbaui::OGenericUnoController::disposing(com::sun::star::lang::EventObject const&)
+dbaui::OGenericUnoController::fillSupportedFeatures()
+dbaui::OGenericUnoController::getLayoutManager(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+dbaui::OGenericUnoController::getModel()
+dbaui::OGenericUnoController::getTitle()
+dbaui::OGenericUnoController::getTopMostContainerWindow() const
+dbaui::OGenericUnoController::getViewData()
+dbaui::OGenericUnoController::impl_getTitleHelper_throw()
+dbaui::OGenericUnoController::impl_initialize()
+dbaui::OGenericUnoController::isFeatureSupported(int)
+dbaui::OGenericUnoController::isUserDefinedFeature(rtl::OUString const&) const
+dbaui::OGenericUnoController::isUserDefinedFeature(unsigned short)
+dbaui::OGenericUnoController::onLoadedMenu(com::sun::star::uno::Reference<com::sun::star::frame::XLayoutManager> const&)
+dbaui::OGenericUnoController::releaseNumberForComponent()
+dbaui::OGenericUnoController::restoreViewData(com::sun::star::uno::Any const&)
+dbaui::OGenericUnoController::startConnectionListening(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&)
+dbaui::OGenericUnoController::stopConnectionListening(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&)
+dbaui::OGenericUnoController::~OGenericUnoController()
+dbaui::UndoManager::addUndoAction(com::sun::star::uno::Reference<com::sun::star::document::XUndoAction> const&)
+dbaui::UndoManager::addUndoManagerListener(com::sun::star::uno::Reference<com::sun::star::document::XUndoManagerListener> const&)
+dbaui::UndoManager::clear()
+dbaui::UndoManager::clearRedo()
+dbaui::UndoManager::disposing()
+dbaui::UndoManager::enterHiddenUndoContext()
+dbaui::UndoManager::enterUndoContext(rtl::OUString const&)
+dbaui::UndoManager::getAllRedoActionTitles()
+dbaui::UndoManager::getAllUndoActionTitles()
+dbaui::UndoManager::getCurrentRedoActionTitle()
+dbaui::UndoManager::getCurrentUndoActionTitle()
+dbaui::UndoManager::getParent()
+dbaui::UndoManager::isLocked()
+dbaui::UndoManager::isRedoPossible()
+dbaui::UndoManager::isUndoPossible()
+dbaui::UndoManager::leaveUndoContext()
+dbaui::UndoManager::lock()
+dbaui::UndoManager::redo()
+dbaui::UndoManager::removeUndoManagerListener(com::sun::star::uno::Reference<com::sun::star::document::XUndoManagerListener> const&)
+dbaui::UndoManager::reset()
+dbaui::UndoManager::setParent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+dbaui::UndoManager::undo()
+dbaui::UndoManager::unlock()
+dbaui::UndoManager::~UndoManager()
+dbtools::CharsetIteratorDerefHelper::CharsetIteratorDerefHelper(unsigned short, rtl::OUString const&)
+dbtools::DBTypeConversion::getNsFromTime(com::sun::star::util::Time const&)
+dbtools::DBTypeConversion::setValue(com::sun::star::uno::Reference<com::sun::star::sdb::XColumnUpdate> const&, com::sun::star::uno::Reference<com::sun::star::util::XNumberFormatter> const&, com::sun::star::util::Date const&, rtl::OUString const&, int, short, short)
+dbtools::DatabaseMetaData::DatabaseMetaData(dbtools::DatabaseMetaData const&)
+dbtools::DatabaseMetaData::DatabaseMetaData(dbtools::DatabaseMetaData&&)
+dbtools::DatabaseMetaData::generateASBeforeCorrelationName() const
+dbtools::DatabaseMetaData::getCatalogSeparator() const
+dbtools::DatabaseMetaData::getIdentifierQuoteString() const
+dbtools::DatabaseMetaData::isConnected() const
+dbtools::DatabaseMetaData::operator=(dbtools::DatabaseMetaData const&)
+dbtools::DatabaseMetaData::shouldEscapeDateTime() const
+dbtools::DatabaseMetaData::shouldSubstituteParameterNames() const
+dbtools::FilterManager::appendFilterComponent(rtl::OUStringBuffer&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+dbtools::FilterManager::getComposedFilter() const
+dbtools::FilterManager::getComposedHaving() const
+dbtools::FilterManager::isThereAtMostOneFilterComponent(rtl::OUString&) const
+dbtools::FilterManager::isThereAtMostOneHavingComponent(rtl::OUString&) const
+dbtools::OAutoConnectionDisposer::clearConnection()
+dbtools::OAutoConnectionDisposer::cursorMoved(com::sun::star::lang::EventObject const&)
+dbtools::OAutoConnectionDisposer::disposing(com::sun::star::lang::EventObject const&)
+dbtools::OAutoConnectionDisposer::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+dbtools::OAutoConnectionDisposer::rowChanged(com::sun::star::lang::EventObject const&)
+dbtools::OAutoConnectionDisposer::rowSetChanged(com::sun::star::lang::EventObject const&)
+dbtools::OAutoConnectionDisposer::startPropertyListening(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+dbtools::OAutoConnectionDisposer::startRowSetListening()
+dbtools::OAutoConnectionDisposer::stopPropertyListening(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+dbtools::OAutoConnectionDisposer::stopRowSetListening()
+dbtools::OCharsetMap::CharsetIterator::CharsetIterator(dbtools::OCharsetMap const*, std::_Rb_tree_const_iterator<unsigned short> const&)
+dbtools::OCharsetMap::CharsetIterator::operator--()
+dbtools::OCharsetMap::lateConstruct()
+dbtools::OPredicateInputController::getSeparatorChars(com::sun::star::lang::Locale const&, char16_t&, char16_t&) const
+dbtools::OPredicateInputController::implParseNode(std::unique_ptr<connectivity::OSQLParseNode, std::default_delete<connectivity::OSQLParseNode> >, bool) const
+dbtools::OPredicateInputController::implPredicateTree(rtl::OUString&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&) const
+dbtools::OPropertyMap::OPropertyMap()
+dbtools::ParameterManager::analyzeFieldLinks(dbtools::FilterManager&, bool&)
+dbtools::ParameterManager::cacheConnectionInfo()
+dbtools::ParameterManager::classifyLinks(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+dbtools::ParameterManager::collectInnerParameters(bool)
+dbtools::ParameterManager::completeParameters(com::sun::star::uno::Reference<com::sun::star::task::XInteractionHandler> const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&)
+dbtools::ParameterManager::consultParameterListeners(osl::ResettableGuard<osl::Mutex>&)
+dbtools::ParameterManager::createFilterConditionFromColumnLink(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString&)
+dbtools::ParameterManager::createOuterParameters()
+dbtools::ParameterManager::externalParameterVisited(int)
+dbtools::ParameterManager::fillLinkedParameters(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+dbtools::ParameterManager::getColumns(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&, bool)
+dbtools::ParameterManager::getConnection(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&)
+dbtools::ParameterManager::getParentColumns(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&, bool)
+dbtools::ParameterManager::initializeComposerByComponent(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+dbtools::SQLExceptionInfo::implDetermineType()
+dbtools::SQLExceptionInfo::isKindOf(dbtools::SQLExceptionInfo::TYPE) const
+dbtools::SQLExceptionInfo::operator=(com::sun::star::sdb::SQLErrorEvent const&)
+dbtools::SQLExceptionIteratorHelper::SQLExceptionIteratorHelper(com::sun::star::sdbc::SQLException const&)
+dbtools::SQLExceptionIteratorHelper::current(dbtools::SQLExceptionInfo&) const
+dbtools::SQLExceptionIteratorHelper::next()
+dbtools::StatementComposer::getQuery()
+dbtools::StatementComposer::setFilter(rtl::OUString const&)
+dbtools::StatementComposer::setHavingClause(rtl::OUString const&)
+dbtools::StatementComposer::setOrder(rtl::OUString const&)
+dbtools::collectColumnInformation(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::multimap<rtl::OUString, std::pair<std::pair<bool, bool>, int>, comphelper::UStringMixLess, std::allocator<std::pair<rtl::OUString const, std::pair<std::pair<bool, bool>, int> > > >&)
+dbtools::createSDBCXColumn(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, rtl::OUString const&, bool, bool, bool, bool, int)
+dbtools::createStandardCreateStatement(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, dbtools::ISQLStatementHelper*, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+dbtools::getBooleanDataSourceSetting(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&, rtl::OUString const&)
+dbtools::isAggregateColumn(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+dbtools::isAggregateColumn(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const&)
+dbtools::isDataSourcePropertyEnabled(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, rtl::OUString const&, bool)
+dbtools::param::ParameterWrapper::ParameterWrapper(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+dbtools::param::ParameterWrapper::ParameterWrapper(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XParameters> const&, std::vector<int, std::allocator<int> >&&)
+dbtools::param::ParameterWrapper::acquire()
+dbtools::param::ParameterWrapper::convertFastPropertyValue(com::sun::star::uno::Any&, com::sun::star::uno::Any&, int, com::sun::star::uno::Any const&)
+dbtools::param::ParameterWrapper::dispose()
+dbtools::param::ParameterWrapper::getFastPropertyValue(com::sun::star::uno::Any&, int) const
+dbtools::param::ParameterWrapper::getImplementationId()
+dbtools::param::ParameterWrapper::getInfoHelper()
+dbtools::param::ParameterWrapper::getPropertySetInfo()
+dbtools::param::ParameterWrapper::getTypes()
+dbtools::param::ParameterWrapper::impl_getPseudoAggregatePropertyName(int) const
+dbtools::param::ParameterWrapper::queryInterface(com::sun::star::uno::Type const&)
+dbtools::param::ParameterWrapper::release()
+dbtools::param::ParameterWrapper::setFastPropertyValue_NoBroadcast(int, com::sun::star::uno::Any const&)
+dbtools::param::ParameterWrapper::~ParameterWrapper()
+dbtools::param::ParameterWrapperContainer::ParameterWrapperContainer()
+dbtools::param::ParameterWrapperContainer::createEnumeration()
+dbtools::param::ParameterWrapperContainer::disposing()
+dbtools::param::ParameterWrapperContainer::getByIndex(int)
+dbtools::param::ParameterWrapperContainer::getCount()
+dbtools::param::ParameterWrapperContainer::getElementType()
+dbtools::param::ParameterWrapperContainer::hasElements()
+dbtools::param::ParameterWrapperContainer::impl_checkDisposed_throw()
+dbtools::param::ParameterWrapperContainer::~ParameterWrapperContainer()
+dbtools::throwFeatureNotImplementedRuntimeException(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+dcopy
+ddot
+ddrand
+debug_print
+debug_print_bounds
+debug_print_solution
+decrementUndoLadder
+default_basis
+del_column
+del_columnex
+del_constraint
+del_constraintex
+del_splitvars
+del_varnameex
+delete_SOSrec
+der_alloc
+desktop::CallbackFlushHandler::CallbackData::getJson[abi:cxx11]() const
+desktop::CallbackFlushHandler::CallbackData::getPayload[abi:cxx11]() const
+desktop::CallbackFlushHandler::CallbackData::getRectangleAndPart() const
+desktop::CallbackFlushHandler::CallbackData::getViewId() const
+desktop::CallbackFlushHandler::CallbackData::setJson(boost::property_tree::basic_ptree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)
+desktop::CallbackFlushHandler::CallbackData::setJson(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+desktop::CallbackFlushHandler::CallbackData::updateRectangleAndPart(desktop::RectangleAndPart const&)
+desktop::CallbackFlushHandler::CallbackData::validate() const
+desktop::CallbackFlushHandler::Invoke()
+desktop::CallbackFlushHandler::TimeoutIdle::Invoke()
+desktop::CallbackFlushHandler::TimeoutIdle::TimeoutIdle(desktop::CallbackFlushHandler*)
+desktop::CallbackFlushHandler::addViewStates(int)
+desktop::CallbackFlushHandler::enqueueUpdatedType(int, SfxViewShell const*, int)
+desktop::CallbackFlushHandler::enqueueUpdatedTypes()
+desktop::CallbackFlushHandler::libreOfficeKitViewCallback(int, char const*)
+desktop::CallbackFlushHandler::libreOfficeKitViewCallbackWithViewId(int, char const*, int)
+desktop::CallbackFlushHandler::libreOfficeKitViewUpdatedCallback(int)
+desktop::CallbackFlushHandler::libreOfficeKitViewUpdatedCallbackPerViewId(int, int, int)
+desktop::CallbackFlushHandler::processInvalidateTilesEvent(int, desktop::CallbackFlushHandler::CallbackData&)
+desktop::CallbackFlushHandler::processWindowEvent(int, desktop::CallbackFlushHandler::CallbackData&)
+desktop::CallbackFlushHandler::queue(int, desktop::CallbackFlushHandler::CallbackData&)
+desktop::CallbackFlushHandler::removeAll(int)
+desktop::CallbackFlushHandler::removeAll(int, std::function<bool (desktop::CallbackFlushHandler::CallbackData const&)> const&)
+desktop::CallbackFlushHandler::removeViewStates(int)
+desktop::CallbackFlushHandler::resetUpdatedType(int)
+desktop::CallbackFlushHandler::resetUpdatedTypePerViewId(int, int)
+desktop::CallbackFlushHandler::setUpdatedType(int, bool)
+desktop::CallbackFlushHandler::setUpdatedTypePerViewId(int, int, int, bool)
+desktop::CallbackFlushHandler::toQueue2(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
+desktop::CallbackFlushHandler::toQueue2(std::reverse_iterator<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >)
+desktop::Lockfile::isStale() const
+desktop::Lockfile::syncToFile() const
+destroyPQExpBuffer
+dl_cairo_surface_set_device_scale(_cairo_surface*, double, double)
+dload
+dnormi
+dp_misc::AbortChannel::sendAbort()
+dp_misc::DescriptionInfoset::getDependencies() const
+dp_misc::getExtensionDefaultUpdateURL()
+drawinglayer::Primitive2dXmlDump::decomposeAndWrite(drawinglayer::primitive2d::Primitive2DContainer const&, tools::XmlWriter&)
+drawinglayer::Primitive2dXmlDump::dump(drawinglayer::primitive2d::Primitive2DContainer const&, rtl::OUString const&)
+drawinglayer::animation::AnimationEntry::AnimationEntry()
+drawinglayer::animation::AnimationEntry::~AnimationEntry()
+drawinglayer::animation::AnimationEntryFixed::clone() const
+drawinglayer::animation::AnimationEntryFixed::getDuration() const
+drawinglayer::animation::AnimationEntryFixed::getNextEventTime(double) const
+drawinglayer::animation::AnimationEntryFixed::getStateAtTime(double) const
+drawinglayer::animation::AnimationEntryFixed::operator==(drawinglayer::animation::AnimationEntry const&) const
+drawinglayer::animation::AnimationEntryLinear::clone() const
+drawinglayer::animation::AnimationEntryLinear::getDuration() const
+drawinglayer::animation::AnimationEntryLinear::getNextEventTime(double) const
+drawinglayer::animation::AnimationEntryLinear::getStateAtTime(double) const
+drawinglayer::animation::AnimationEntryLinear::operator==(drawinglayer::animation::AnimationEntry const&) const
+drawinglayer::animation::AnimationEntryList::clone() const
+drawinglayer::animation::AnimationEntryList::getNextEventTime(double) const
+drawinglayer::animation::AnimationEntryList::getStateAtTime(double) const
+drawinglayer::animation::AnimationEntryList::impGetIndexAtTime(double, double&) const
+drawinglayer::animation::AnimationEntryList::operator==(drawinglayer::animation::AnimationEntry const&) const
+drawinglayer::animation::AnimationEntryLoop::clone() const
+drawinglayer::animation::AnimationEntryLoop::getDuration() const
+drawinglayer::animation::AnimationEntryLoop::getNextEventTime(double) const
+drawinglayer::animation::AnimationEntryLoop::getStateAtTime(double) const
+drawinglayer::animation::AnimationEntryLoop::operator==(drawinglayer::animation::AnimationEntry const&) const
+drawinglayer::attribute::FillGradientAttribute::getAngle() const
+drawinglayer::attribute::FillGradientAttribute::getBorder() const
+drawinglayer::attribute::FillGradientAttribute::getOffsetX() const
+drawinglayer::attribute::FillGradientAttribute::getOffsetY() const
+drawinglayer::attribute::FillGradientAttribute::getSteps() const
+drawinglayer::attribute::FillGradientAttribute::getStyle() const
+drawinglayer::attribute::FillGraphicAttribute::FillGraphicAttribute(drawinglayer::attribute::FillGraphicAttribute const&)
+drawinglayer::attribute::FillGraphicAttribute::getGraphic() const
+drawinglayer::attribute::FillGraphicAttribute::getGraphicRange() const
+drawinglayer::attribute::FillGraphicAttribute::getOffsetX() const
+drawinglayer::attribute::FillGraphicAttribute::getOffsetY() const
+drawinglayer::attribute::FillGraphicAttribute::getTiling() const
+drawinglayer::attribute::FillGraphicAttribute::isDefault() const
+drawinglayer::attribute::FillGraphicAttribute::operator=(drawinglayer::attribute::FillGraphicAttribute const&)
+drawinglayer::attribute::FillGraphicAttribute::operator==(drawinglayer::attribute::FillGraphicAttribute const&) const
+drawinglayer::attribute::FillHatchAttribute::FillHatchAttribute(drawinglayer::attribute::FillHatchAttribute const&)
+drawinglayer::attribute::FillHatchAttribute::FillHatchAttribute(drawinglayer::attribute::FillHatchAttribute&&)
+drawinglayer::attribute::FillHatchAttribute::getAngle() const
+drawinglayer::attribute::FillHatchAttribute::getDistance() const
+drawinglayer::attribute::FillHatchAttribute::getMinimalDiscreteDistance() const
+drawinglayer::attribute::FillHatchAttribute::getStyle() const
+drawinglayer::attribute::FillHatchAttribute::operator=(drawinglayer::attribute::FillHatchAttribute const&)
+drawinglayer::attribute::FillHatchAttribute::operator==(drawinglayer::attribute::FillHatchAttribute const&) const
+drawinglayer::attribute::FontAttribute::FontAttribute(drawinglayer::attribute::FontAttribute const&)
+drawinglayer::attribute::FontAttribute::FontAttribute(drawinglayer::attribute::FontAttribute&&)
+drawinglayer::attribute::FontAttribute::getBiDiStrong() const
+drawinglayer::attribute::FontAttribute::getFamilyName() const
+drawinglayer::attribute::FontAttribute::getItalic() const
+drawinglayer::attribute::FontAttribute::getMonospaced() const
+drawinglayer::attribute::FontAttribute::getOutline() const
+drawinglayer::attribute::FontAttribute::getRTL() const
+drawinglayer::attribute::FontAttribute::getStyleName() const
+drawinglayer::attribute::FontAttribute::getSymbol() const
+drawinglayer::attribute::FontAttribute::getVertical() const
+drawinglayer::attribute::FontAttribute::getWeight() const
+drawinglayer::attribute::FontAttribute::operator=(drawinglayer::attribute::FontAttribute const&)
+drawinglayer::attribute::FontAttribute::operator==(drawinglayer::attribute::FontAttribute const&) const
+drawinglayer::attribute::LineAttribute::getColor() const
+drawinglayer::attribute::LineAttribute::getLineCap() const
+drawinglayer::attribute::LineAttribute::getLineJoin() const
+drawinglayer::attribute::LineAttribute::getMiterMinimumAngle() const
+drawinglayer::attribute::LineAttribute::isDefault() const
+drawinglayer::attribute::LineAttribute::operator=(drawinglayer::attribute::LineAttribute const&)
+drawinglayer::attribute::LineStartEndAttribute::LineStartEndAttribute()
+drawinglayer::attribute::LineStartEndAttribute::LineStartEndAttribute(drawinglayer::attribute::LineStartEndAttribute const&)
+drawinglayer::attribute::LineStartEndAttribute::getB2DPolyPolygon() const
+drawinglayer::attribute::LineStartEndAttribute::getWidth() const
+drawinglayer::attribute::LineStartEndAttribute::isActive() const
+drawinglayer::attribute::LineStartEndAttribute::isCentered() const
+drawinglayer::attribute::LineStartEndAttribute::isDefault() const
+drawinglayer::attribute::LineStartEndAttribute::operator=(drawinglayer::attribute::LineStartEndAttribute const&)
+drawinglayer::attribute::LineStartEndAttribute::operator==(drawinglayer::attribute::LineStartEndAttribute const&) const
+drawinglayer::attribute::MaterialAttribute3D::MaterialAttribute3D()
+drawinglayer::attribute::MaterialAttribute3D::MaterialAttribute3D(basegfx::BColor const&)
+drawinglayer::attribute::MaterialAttribute3D::MaterialAttribute3D(drawinglayer::attribute::MaterialAttribute3D const&)
+drawinglayer::attribute::MaterialAttribute3D::getColor() const
+drawinglayer::attribute::MaterialAttribute3D::getEmission() const
+drawinglayer::attribute::MaterialAttribute3D::getSpecular() const
+drawinglayer::attribute::MaterialAttribute3D::getSpecularIntensity() const
+drawinglayer::attribute::MaterialAttribute3D::operator=(drawinglayer::attribute::MaterialAttribute3D const&)
+drawinglayer::attribute::MaterialAttribute3D::operator==(drawinglayer::attribute::MaterialAttribute3D const&) const
+drawinglayer::attribute::Sdr3DLightAttribute::getColor() const
+drawinglayer::attribute::Sdr3DLightAttribute::getSpecular() const
+drawinglayer::attribute::Sdr3DLightAttribute::operator=(drawinglayer::attribute::Sdr3DLightAttribute const&)
+drawinglayer::attribute::Sdr3DLightAttribute::operator==(drawinglayer::attribute::Sdr3DLightAttribute const&) const
+drawinglayer::attribute::Sdr3DObjectAttribute::Sdr3DObjectAttribute(drawinglayer::attribute::Sdr3DObjectAttribute const&)
+drawinglayer::attribute::Sdr3DObjectAttribute::getDoubleSided() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getMaterial() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getNormalsInvert() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getNormalsKind() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getReducedLineGeometry() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getShadow3D() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getTextureFilter() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getTextureKind() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getTextureMode() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getTextureProjectionX() const
+drawinglayer::attribute::Sdr3DObjectAttribute::getTextureProjectionY() const
+drawinglayer::attribute::Sdr3DObjectAttribute::operator=(drawinglayer::attribute::Sdr3DObjectAttribute const&)
+drawinglayer::attribute::Sdr3DObjectAttribute::operator==(drawinglayer::attribute::Sdr3DObjectAttribute const&) const
+drawinglayer::attribute::SdrAllFillAttributesHelper::createPrimitive2DSequence(basegfx::B2DRange const&, basegfx::B2DRange const&)
+drawinglayer::attribute::SdrAllFillAttributesHelper::getFillGradientAttribute() const
+drawinglayer::attribute::SdrFillGraphicAttribute::SdrFillGraphicAttribute(drawinglayer::attribute::SdrFillGraphicAttribute const&)
+drawinglayer::attribute::SdrFillGraphicAttribute::SdrFillGraphicAttribute(drawinglayer::attribute::SdrFillGraphicAttribute&&)
+drawinglayer::attribute::SdrFillGraphicAttribute::getGraphicLogicSize() const
+drawinglayer::attribute::SdrFillGraphicAttribute::getOffset() const
+drawinglayer::attribute::SdrFillGraphicAttribute::getOffsetPosition() const
+drawinglayer::attribute::SdrFillGraphicAttribute::getRectPoint() const
+drawinglayer::attribute::SdrFillGraphicAttribute::getSize() const
+drawinglayer::attribute::SdrFillGraphicAttribute::getTiling() const
+drawinglayer::attribute::SdrFillGraphicAttribute::operator=(drawinglayer::attribute::SdrFillGraphicAttribute const&)
+drawinglayer::attribute::SdrFillGraphicAttribute::operator==(drawinglayer::attribute::SdrFillGraphicAttribute const&) const
+drawinglayer::attribute::SdrGlowAttribute::operator=(drawinglayer::attribute::SdrGlowAttribute&&)
+drawinglayer::attribute::SdrLightingAttribute::SdrLightingAttribute(drawinglayer::attribute::SdrLightingAttribute const&)
+drawinglayer::attribute::SdrLightingAttribute::SdrLightingAttribute(drawinglayer::attribute::SdrLightingAttribute&&)
+drawinglayer::attribute::SdrLightingAttribute::getAmbientLightColor() const
+drawinglayer::attribute::SdrLightingAttribute::operator=(drawinglayer::attribute::SdrLightingAttribute const&)
+drawinglayer::attribute::SdrLightingAttribute::operator==(drawinglayer::attribute::SdrLightingAttribute const&) const
+drawinglayer::attribute::SdrLightingAttribute::solveColorModel(basegfx::B3DVector const&, basegfx::BColor const&, basegfx::BColor const&, basegfx::BColor const&, unsigned short) const
+drawinglayer::attribute::SdrLineAttribute::SdrLineAttribute(drawinglayer::attribute::SdrLineAttribute&&)
+drawinglayer::attribute::SdrLineFillShadowAttribute3D::operator==(drawinglayer::attribute::SdrLineFillShadowAttribute3D const&) const
+drawinglayer::attribute::SdrLineStartEndAttribute::SdrLineStartEndAttribute(drawinglayer::attribute::SdrLineStartEndAttribute&&)
+drawinglayer::attribute::SdrSceneAttribute::SdrSceneAttribute(drawinglayer::attribute::SdrSceneAttribute const&)
+drawinglayer::attribute::SdrSceneAttribute::SdrSceneAttribute(drawinglayer::attribute::SdrSceneAttribute&&)
+drawinglayer::attribute::SdrSceneAttribute::getShadeMode() const
+drawinglayer::attribute::SdrSceneAttribute::getTwoSidedLighting() const
+drawinglayer::attribute::SdrSceneAttribute::operator=(drawinglayer::attribute::SdrSceneAttribute const&)
+drawinglayer::attribute::SdrSceneAttribute::operator==(drawinglayer::attribute::SdrSceneAttribute const&) const
+drawinglayer::attribute::SdrShadowAttribute::SdrShadowAttribute(drawinglayer::attribute::SdrShadowAttribute&&)
+drawinglayer::attribute::StrokeAttribute::getDotDashArray() const
+drawinglayer::attribute::StrokeAttribute::getFullDotDashLen() const
+drawinglayer::attribute::StrokeAttribute::isDefault() const
+drawinglayer::attribute::StrokeAttribute::operator=(drawinglayer::attribute::StrokeAttribute const&)
+drawinglayer::attribute::StrokeAttribute::operator=(drawinglayer::attribute::StrokeAttribute&&)
+drawinglayer::convertToBitmapEx(drawinglayer::primitive2d::Primitive2DContainer&&, drawinglayer::geometry::ViewInformation2D const&, unsigned int, unsigned int, unsigned int)
+drawinglayer::geometry::ViewInformation2D::ViewInformation2D(drawinglayer::geometry::ViewInformation2D const&)
+drawinglayer::geometry::ViewInformation2D::ViewInformation2D(drawinglayer::geometry::ViewInformation2D&&)
+drawinglayer::geometry::ViewInformation2D::getDiscreteViewport() const
+drawinglayer::geometry::ViewInformation2D::getReducedDisplayQuality() const
+drawinglayer::geometry::ViewInformation2D::operator==(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::geometry::ViewInformation3D::operator==(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive2d::AnimatedBlinkPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::AnimatedBlinkPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::AnimatedInterpolatePrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::AnimatedInterpolatePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::AnimatedSwitchPrimitive2D(drawinglayer::animation::AnimationEntry const&, drawinglayer::primitive2d::Primitive2DContainer&&, bool)
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::setAnimationEntry(drawinglayer::animation::AnimationEntry const&)
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::~AnimatedSwitchPrimitive2D()
+drawinglayer::primitive2d::BackgroundColorPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BackgroundColorPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BackgroundColorPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BackgroundColorPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::BackgroundColorPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::BasePrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BitmapPrimitive2D::estimateUsage()
+drawinglayer::primitive2d::BitmapPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BitmapPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::BitmapPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::BorderLine::operator==(drawinglayer::primitive2d::BorderLine const&) const
+drawinglayer::primitive2d::BorderLinePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BorderLinePrimitive2D::getFullWidth() const
+drawinglayer::primitive2d::BorderLinePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::BorderLinePrimitive2D::isHorizontalOrVertical(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::BorderLinePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::ControlPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ControlPrimitive2D::createBitmapDecomposition(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ControlPrimitive2D::createPlaceholderDecomposition() const
+drawinglayer::primitive2d::ControlPrimitive2D::createXControl()
+drawinglayer::primitive2d::ControlPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ControlPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ControlPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::ControlPrimitive2D::getXControl() const
+drawinglayer::primitive2d::ControlPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::DiscreteBitmapPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::DiscreteBitmapPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::DiscreteBitmapPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::DiscreteShadowPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::DiscreteShadowPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::DiscreteShadowPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::DiscreteShadowPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::Embedded3DPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::Embedded3DPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::Embedded3DPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::Embedded3DPrimitive2D::impGetShadow3D() const
+drawinglayer::primitive2d::Embedded3DPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::createFill(drawinglayer::primitive2d::Primitive2DContainer&, bool) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::createNonOverlappingFill(drawinglayer::primitive2d::Primitive2DContainer&, std::vector<drawinglayer::texture::B2DHomMatrixAndBColor, std::allocator<drawinglayer::texture::B2DHomMatrixAndBColor> > const&, basegfx::BColor const&, basegfx::B2DPolygon const&) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::createOverlappingFill(drawinglayer::primitive2d::Primitive2DContainer&, std::vector<drawinglayer::texture::B2DHomMatrixAndBColor, std::allocator<drawinglayer::texture::B2DHomMatrixAndBColor> > const&, basegfx::BColor const&, basegfx::B2DPolygon const&) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::generateMatricesAndColors(std::vector<drawinglayer::texture::B2DHomMatrixAndBColor, std::allocator<drawinglayer::texture::B2DHomMatrixAndBColor> >&, basegfx::BColor&) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::FillGradientPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::FillGradientPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::FillGraphicPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::FillGraphicPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::FillGraphicPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::FillGraphicPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::GlowPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GlowPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::GlowPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::GraphicPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GraphicPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GraphicPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::GraphicPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::GridPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GridPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GridPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GridPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::GridPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::GroupPrimitive2D::estimateUsage()
+drawinglayer::primitive2d::GroupPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::GroupPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::GroupPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::HelplinePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::HelplinePrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::HelplinePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::HelplinePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::HiddenGeometryPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::HiddenGeometryPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::HiddenGeometryPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::InvertPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::LocalesAreEqual(com::sun::star::lang::Locale const&, com::sun::star::lang::Locale const&)
+drawinglayer::primitive2d::MarkerArrayPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MarkerArrayPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MarkerArrayPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::MarkerArrayPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::MaskPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MaskPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::MaskPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::MediaPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MediaPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MediaPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::MediaPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::MetafilePrimitive2D::accessMetafile(GDIMetaFile&) const
+drawinglayer::primitive2d::MetafilePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MetafilePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::MetafilePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::MetafilePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::ModifiedColorPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::ModifiedColorPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::ObjectAndViewTransformationDependentPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ObjectInfoPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::ObjectInfoPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PageHierarchyPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PagePreviewPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PagePreviewPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PagePreviewPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PagePreviewPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::calculateNeededDiscreteBufferSize(unsigned int&, unsigned int&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::createContent(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::createTileImage(unsigned int, unsigned int) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::estimateUsage()
+drawinglayer::primitive2d::PatternFillPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PatternFillPrimitive2D::getTileSize(unsigned int&, unsigned int&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PatternFillPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonColorPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonColorPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonColorPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonGradientPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonGradientPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonGradientPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonGraphicPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonGraphicPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonGraphicPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonHairlinePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonHairlinePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonHairlinePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonHairlinePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonHatchPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonHatchPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonHatchPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonMarkerPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonMarkerPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonMarkerPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonMarkerPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonSelectionPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonSelectionPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonSelectionPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonSelectionPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolyPolygonStrokePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonStrokePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolyPolygonStrokePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolyPolygonStrokePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolygonHairlinePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonHairlinePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolygonHairlinePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolygonMarkerPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonMarkerPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonMarkerPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonMarkerPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolygonMarkerPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolygonStrokeArrowPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonStrokeArrowPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonStrokeArrowPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolygonStrokeArrowPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::PolygonStrokePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonStrokePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::PolygonStrokePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::PolygonStrokePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::Primitive2DContainer::maybeInvert(bool) const
+drawinglayer::primitive2d::ScenePrimitive2D::calculateDiscreteSizes(drawinglayer::geometry::ViewInformation2D const&, basegfx::B2DRange&, basegfx::B2DRange&, basegfx::B2DRange&) const
+drawinglayer::primitive2d::ScenePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ScenePrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ScenePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ScenePrimitive2D::getGeometry2D() const
+drawinglayer::primitive2d::ScenePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::ScenePrimitive2D::getShadow2D() const
+drawinglayer::primitive2d::ScenePrimitive2D::impGetShadow3D() const
+drawinglayer::primitive2d::ScenePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::ScenePrimitive2D::tryToCheckLastVisualisationDirectHit(basegfx::B2DPoint const&, bool&) const
+drawinglayer::primitive2d::SdrFrameBorderData::SdrConnectStyleData::SdrConnectStyleData(svx::frame::Style const&, basegfx::B2DVector const&, bool)
+drawinglayer::primitive2d::SdrFrameBorderData::SdrConnectStyleData::operator==(drawinglayer::primitive2d::SdrFrameBorderData::SdrConnectStyleData const&) const
+drawinglayer::primitive2d::SdrFrameBorderData::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, double) const
+drawinglayer::primitive2d::SdrFrameBorderData::getMinimalNonZeroBorderWidth() const
+drawinglayer::primitive2d::SdrFrameBorderData::operator==(drawinglayer::primitive2d::SdrFrameBorderData const&) const
+drawinglayer::primitive2d::SdrFrameBorderPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SdrFrameBorderPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SdrFrameBorderPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::SdrFrameBorderPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::ShadowPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ShadowPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::ShadowPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::ShadowPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::SoftEdgePrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SoftEdgePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::SoftEdgePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::StructureTagPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::StructureTagPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::checkPreconditions()
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::createAtom(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SvgGradientEntry const&, drawinglayer::primitive2d::SvgGradientEntry const&, int, int) const
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::SvgLinearGradientPrimitive2D::~SvgLinearGradientPrimitive2D()
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::checkPreconditions()
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::createAtom(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::primitive2d::SvgGradientEntry const&, drawinglayer::primitive2d::SvgGradientEntry const&, int, int) const
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::SvgRadialGradientPrimitive2D::~SvgRadialGradientPrimitive2D()
+drawinglayer::primitive2d::TextBreakupHelper::allowChange(unsigned int, basegfx::B2DHomMatrix&, unsigned int, unsigned int)
+drawinglayer::primitive2d::TextBreakupHelper::breakup(drawinglayer::primitive2d::BreakupUnit)
+drawinglayer::primitive2d::TextBreakupHelper::breakupPortion(drawinglayer::primitive2d::Primitive2DContainer&, int, int, bool)
+drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D::impCreateGeometryContent(std::vector<com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive2D>, std::allocator<com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive2D> > >&, basegfx::utils::B2DHomMatrixBufferedOnDemandDecompose const&, rtl::OUString const&, int, int, std::vector<double, std::allocator<double> > const&, drawinglayer::attribute::FontAttribute const&) const
+drawinglayer::primitive2d::TextDecoratedPortionPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::TextHierarchyBlockPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextHierarchyBulletPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextHierarchyEditPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextHierarchyFieldPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextHierarchyFieldPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::TextHierarchyLinePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextHierarchyParagraphPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextHierarchyParagraphPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::TextLayouterDevice::addTextRectActions(tools::Rectangle const&, rtl::OUString const&, DrawTextFlags, GDIMetaFile&) const
+drawinglayer::primitive2d::TextLayouterDevice::getFontAscent() const
+drawinglayer::primitive2d::TextLayouterDevice::getFontDescent() const
+drawinglayer::primitive2d::TextLayouterDevice::getOverlineHeight() const
+drawinglayer::primitive2d::TextLayouterDevice::getStrikeoutOffset() const
+drawinglayer::primitive2d::TextLayouterDevice::getTextOutlines(std::vector<basegfx::B2DPolyPolygon, std::allocator<basegfx::B2DPolyPolygon> >&, rtl::OUString const&, unsigned int, unsigned int, std::vector<double, std::allocator<double> > const&) const
+drawinglayer::primitive2d::TextSimplePortionPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TextSimplePortionPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::TransformPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::TransformPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TransformPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::TransparencePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::TransparencePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::UnifiedTransparencePrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::UnifiedTransparencePrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::UnifiedTransparencePrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::UnifiedTransparencePrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::ViewTransformationDependentPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::WrongSpellPrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const
+drawinglayer::primitive2d::WrongSpellPrimitive2D::getPrimitive2DID() const
+drawinglayer::primitive2d::WrongSpellPrimitive2D::operator==(drawinglayer::primitive2d::BasePrimitive2D const&) const
+drawinglayer::primitive2d::createEmbeddedGlowPrimitive(drawinglayer::primitive2d::Primitive2DContainer&&, drawinglayer::attribute::SdrGlowAttribute const&)
+drawinglayer::primitive2d::createEmbeddedShadowPrimitive(drawinglayer::primitive2d::Primitive2DContainer&&, drawinglayer::attribute::SdrShadowAttribute const&, basegfx::B2DHomMatrix const&, drawinglayer::primitive2d::Primitive2DContainer const*)
+drawinglayer::primitive2d::createEmbeddedSoftEdgePrimitive(drawinglayer::primitive2d::Primitive2DContainer&&, int)
+drawinglayer::primitive2d::createHiddenGeometryPrimitives2D(bool, basegfx::B2DRange const&, basegfx::B2DHomMatrix const&)
+drawinglayer::primitive2d::createNewSdrFillAttribute(SfxItemSet const&)
+drawinglayer::primitive2d::createNewTransparenceGradientAttribute(SfxItemSet const&)
+drawinglayer::primitive2d::createPolyPolygonFillPrimitive(basegfx::B2DPolyPolygon const&, basegfx::B2DRange const&, drawinglayer::attribute::SdrFillAttribute const&, drawinglayer::attribute::FillGradientAttribute const&)
+drawinglayer::primitive2d::createPolyPolygonFillPrimitive(basegfx::B2DPolyPolygon const&, drawinglayer::attribute::SdrFillAttribute const&, drawinglayer::attribute::FillGradientAttribute const&)
+drawinglayer::primitive2d::createPolygonLinePrimitive(basegfx::B2DPolygon const&, drawinglayer::attribute::SdrLineAttribute const&, drawinglayer::attribute::SdrLineStartEndAttribute const&)
+drawinglayer::primitive2d::createTextPrimitive(basegfx::B2DPolyPolygon const&, basegfx::B2DHomMatrix const&, drawinglayer::attribute::SdrTextAttribute const&, drawinglayer::attribute::SdrLineAttribute const&, bool, bool)
+drawinglayer::primitive2d::idToString(unsigned int)
+drawinglayer::primitive2d::mapTextLineToFontLineStyle(drawinglayer::primitive2d::TextLine)
+drawinglayer::primitive2d::mapTextStrikeoutToFontStrikeout(drawinglayer::primitive2d::TextStrikeout)
+drawinglayer::primitive3d::BasePrimitive3D::BasePrimitive3D()
+drawinglayer::primitive3d::BasePrimitive3D::get3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::BasePrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::BasePrimitive3D::getDecomposition(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+drawinglayer::primitive3d::BasePrimitive3D::getRange(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+drawinglayer::primitive3d::BasePrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::BasePrimitive3D::~BasePrimitive3D()
+drawinglayer::primitive3d::BufferedDecompositionPrimitive3D::BufferedDecompositionPrimitive3D()
+drawinglayer::primitive3d::BufferedDecompositionPrimitive3D::create3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::BufferedDecompositionPrimitive3D::get3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::GroupPrimitive3D::GroupPrimitive3D(drawinglayer::primitive3d::Primitive3DContainer const&)
+drawinglayer::primitive3d::GroupPrimitive3D::get3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::GroupPrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::GroupPrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::ModifiedColorPrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::ModifiedColorPrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D::PolyPolygonMaterialPrimitive3D(basegfx::B3DPolyPolygon const&, drawinglayer::attribute::MaterialAttribute3D const&, bool)
+drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::PolygonHairlinePrimitive3D::PolygonHairlinePrimitive3D(basegfx::B3DPolygon const&, basegfx::BColor const&)
+drawinglayer::primitive3d::PolygonHairlinePrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::PolygonHairlinePrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::PolygonHairlinePrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::SdrCubePrimitive3D::create3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrCubePrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrCubePrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::create3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::get3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::getSlices() const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::impCreateSlices()
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::SdrExtrudePrimitive3D::~SdrExtrudePrimitive3D()
+drawinglayer::primitive3d::SdrLathePrimitive3D::create3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrLathePrimitive3D::get3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrLathePrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrLathePrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::SdrLathePrimitive3D::getSlices() const
+drawinglayer::primitive3d::SdrLathePrimitive3D::impCreateSlices()
+drawinglayer::primitive3d::SdrLathePrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::SdrLathePrimitive3D::~SdrLathePrimitive3D()
+drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D::create3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::SdrPrimitive3D::SdrPrimitive3D(basegfx::B3DHomMatrix const&, basegfx::B2DVector const&, drawinglayer::attribute::SdrLineFillShadowAttribute3D const&, drawinglayer::attribute::Sdr3DObjectAttribute const&)
+drawinglayer::primitive3d::SdrPrimitive3D::get3DRangeFromSlices(std::vector<drawinglayer::primitive3d::Slice3D, std::allocator<drawinglayer::primitive3d::Slice3D> > const&) const
+drawinglayer::primitive3d::SdrPrimitive3D::getStandard3DRange() const
+drawinglayer::primitive3d::SdrPrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::SdrSpherePrimitive3D::create3DDecomposition(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrSpherePrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::SdrSpherePrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::SdrSpherePrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::TransformPrimitive3D::getB3DRange(drawinglayer::geometry::ViewInformation3D const&) const
+drawinglayer::primitive3d::TransformPrimitive3D::getPrimitive3DID() const
+drawinglayer::primitive3d::TransformPrimitive3D::operator==(drawinglayer::primitive3d::BasePrimitive3D const&) const
+drawinglayer::primitive3d::arePrimitive3DReferencesEqual(com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive3D> const&, com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive3D> const&)
+drawinglayer::primitive3d::createExtrudeSlices(std::vector<drawinglayer::primitive3d::Slice3D, std::allocator<drawinglayer::primitive3d::Slice3D> >&, basegfx::B2DPolyPolygon const&, double, double, double, bool, bool, bool)
+drawinglayer::primitive3d::createLatheSlices(std::vector<drawinglayer::primitive3d::Slice3D, std::allocator<drawinglayer::primitive3d::Slice3D> >&, basegfx::B2DPolyPolygon const&, double, double, double, unsigned int, bool, bool, bool)
+drawinglayer::primitive3d::createReducedOutlines(drawinglayer::geometry::ViewInformation3D const&, basegfx::B3DHomMatrix const&, basegfx::B3DPolygon const&, basegfx::B3DPolygon const&, basegfx::B3DPolyPolygon&)
+drawinglayer::primitive3d::extractHorizontalLinesFromSlice(std::vector<drawinglayer::primitive3d::Slice3D, std::allocator<drawinglayer::primitive3d::Slice3D> > const&, bool)
+drawinglayer::primitive3d::extractPlanesFromSlice(std::vector<basegfx::B3DPolyPolygon, std::allocator<basegfx::B3DPolyPolygon> >&, std::vector<drawinglayer::primitive3d::Slice3D, std::allocator<drawinglayer::primitive3d::Slice3D> > const&, bool, bool, bool, bool, double, double, bool, basegfx::B2DHomMatrix const&)
+drawinglayer::primitive3d::extractVerticalLinesFromSlice(std::vector<drawinglayer::primitive3d::Slice3D, std::allocator<drawinglayer::primitive3d::Slice3D> > const&)
+drawinglayer::primitive3d::getB3DRangeFromPrimitive3DReference(com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive3D> const&, drawinglayer::geometry::ViewInformation3D const&)
+drawinglayer::primitive3d::idToString(unsigned int)
+drawinglayer::processor2d::BaseProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&)
+drawinglayer::processor2d::ContourExtractor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&)
+drawinglayer::processor2d::HitTestProcessor2D::check3DHit(drawinglayer::primitive2d::ScenePrimitive2D const&)
+drawinglayer::processor2d::HitTestProcessor2D::checkFillHitWithTolerance(basegfx::B2DPolyPolygon const&, double) const
+drawinglayer::processor2d::HitTestProcessor2D::checkHairlineHitWithTolerance(basegfx::B2DPolygon const&, double) const
+drawinglayer::processor2d::HitTestProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&)
+drawinglayer::processor2d::LineGeometryExtractor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&)
+drawinglayer::processor2d::ObjectInfoPrimitiveExtractor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&)
+drawinglayer::processor2d::TextAsPolygonExtractor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D const&)
+drawinglayer::processor3d::BaseProcessor3D::processBasePrimitive3D(drawinglayer::primitive3d::BasePrimitive3D const&)
+drawinglayer::processor3d::CutFindProcessor::processBasePrimitive3D(drawinglayer::primitive3d::BasePrimitive3D const&)
+drawinglayer_XPrimitive2DRenderer
+drophash
+dscal
+dswap
+dualize_lp
+dualloop
+editeng::CustomPropertyField::Clone() const
+editeng::CustomPropertyField::createBeginComment() const
+editeng::CustomPropertyField::operator==(SvxFieldData const&) const
+editeng::FieldUpdater::FieldUpdater(EditTextObject&)
+editeng::FieldUpdater::FieldUpdater(editeng::FieldUpdater const&)
+editeng::HangulHanjaConversion::IsUseSavedConversionDirectionState()
+editeng::SvxBorderLine::GetValueString(MapUnit, MapUnit, IntlWrapper const*, bool) const
+editeng::SvxBorderLine::ScaleMetrics(long, long)
+eliminate_artificials
+endlu(SvStream&)
+enlargePQExpBuffer
+epoxy_egl_version
+epoxy_extension_in_string
+epoxy_glsl_version
+epoxy_glx_version
+epoxy_has_egl
+epoxy_has_egl_extension
+epoxy_has_glx
+epoxy_has_glx_extension
+epoxy_is_desktop_gl
+epoxy_set_resolver_failure_handler
+eventattacher_EventAttacher
+expand_column
+explain
+feasibilityOffset
+feasiblePhase1
+fieldlen(char const*)
+fillLink
+fillbranches_BB
+fimprove
+finalize_scaling
+findAnti_artificial
+findBasicArtificial
+findBasicFixedvar
+findBasisPos
+findImprovementVar
+findIndex
+findIndexEx
+findLoadedDocShellByName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+findNonBasicSlack
+findSubstitutionVar
+find_int_bbvar
+find_row
+find_rowReplacement
+find_sc_bbvar
+find_sos_bbvar
+find_var
+findhash
+findnode_BB
+findself_BB
+firebird_plugin
+firstActiveLink
+firstInactiveLink
+firstfunc
+formWeights
+formula::DoubleVectorRefToken::Clone() const
+formula::FormEditData::FormEditData(formula::FormEditData const&)
+formula::FormEditData::SaveValues()
+formula::FormEditData::operator=(formula::FormEditData const&)
+formula::FormulaByteToken::GetByte() const
+formula::FormulaByteToken::GetInForceArray() const
+formula::FormulaByteToken::SetByte(unsigned char)
+formula::FormulaByteToken::SetInForceArray(formula::ParamClass)
+formula::FormulaByteToken::operator==(formula::FormulaToken const&) const
+formula::FormulaCompiler::AddSubLine()
+formula::FormulaCompiler::CheckSetForceArrayParameter(boost::intrusive_ptr<formula::FormulaToken> const&, unsigned char)
+formula::FormulaCompiler::CompareLine()
+formula::FormulaCompiler::ConcatLine()
+formula::FormulaCompiler::CreateStringFromDoubleRef(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+formula::FormulaCompiler::CreateStringFromExternal(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+formula::FormulaCompiler::CreateStringFromIndex(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+formula::FormulaCompiler::CreateStringFromMatrix(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+formula::FormulaCompiler::CreateStringFromSingleRef(rtl::OUStringBuffer&, formula::FormulaToken const*) const
+formula::FormulaCompiler::Expression()
+formula::FormulaCompiler::ExtendRangeReference(formula::FormulaToken&, formula::FormulaToken&)
+formula::FormulaCompiler::Factor()
+formula::FormulaCompiler::FindAddInFunction(rtl::OUString const&, bool) const
+formula::FormulaCompiler::ForceArrayOperator(boost::intrusive_ptr<formula::FormulaToken> const&)
+formula::FormulaCompiler::GetForceArrayParameter(formula::FormulaToken const*, unsigned short) const
+formula::FormulaCompiler::HandleColRowName()
+formula::FormulaCompiler::HandleDbData()
+formula::FormulaCompiler::HandleExternalReference(formula::FormulaToken const&)
+formula::FormulaCompiler::HandleRange()
+formula::FormulaCompiler::HandleTableRef()
+formula::FormulaCompiler::InitSymbolsAPI() const
+formula::FormulaCompiler::InitSymbolsEnglish() const
+formula::FormulaCompiler::InitSymbolsEnglishXL() const
+formula::FormulaCompiler::InitSymbolsNative() const
+formula::FormulaCompiler::InitSymbolsODFF() const
+formula::FormulaCompiler::InitSymbolsOOXML() const
+formula::FormulaCompiler::InitSymbolsPODF() const
+formula::FormulaCompiler::IntersectionLine()
+formula::FormulaCompiler::LocalizeString(rtl::OUString&) const
+formula::FormulaCompiler::MergeRangeReference(formula::FormulaToken**, formula::FormulaToken* const*)
+formula::FormulaCompiler::MulDivLine()
+formula::FormulaCompiler::NextToken()
+formula::FormulaCompiler::OpCodeMap::copyFrom(formula::FormulaCompiler::OpCodeMap const&)
+formula::FormulaCompiler::OpCodeMap::createSequenceOfAvailableMappings(formula::FormulaCompiler const&, int) const
+formula::FormulaCompiler::OpCodeMap::createSequenceOfFormulaTokens(formula::FormulaCompiler const&, com::sun::star::uno::Sequence<rtl::OUString> const&) const
+formula::FormulaCompiler::OpCodeMap::putCopyOpCode(rtl::OUString const&, OpCode)
+formula::FormulaCompiler::OpCodeMap::putOpCode(rtl::OUString const&, OpCode, CharClass const*)
+formula::FormulaCompiler::PopTokenArray()
+formula::FormulaCompiler::PostOpLine()
+formula::FormulaCompiler::PowLine()
+formula::FormulaCompiler::PutCode(boost::intrusive_ptr<formula::FormulaToken>&)
+formula::FormulaCompiler::RangeLine()
+formula::FormulaCompiler::SetError(FormulaError)
+formula::FormulaCompiler::UnaryLine()
+formula::FormulaCompiler::UnionLine()
+formula::FormulaCompiler::fillAddInToken(std::vector<com::sun::star::sheet::FormulaOpCodeMapEntry, std::allocator<com::sun::star::sheet::FormulaOpCodeMapEntry> >&, bool) const
+formula::FormulaCompiler::fillFromAddInCollectionEnglishName(std::shared_ptr<formula::FormulaCompiler::OpCodeMap> const&) const
+formula::FormulaCompiler::fillFromAddInCollectionUpperName(std::shared_ptr<formula::FormulaCompiler::OpCodeMap> const&) const
+formula::FormulaCompiler::fillFromAddInMap(std::shared_ptr<formula::FormulaCompiler::OpCodeMap> const&, formula::FormulaGrammar::Grammar) const
+formula::FormulaCompiler::loadSymbols(std::pair<char const*, int> const*, formula::FormulaGrammar::Grammar, std::shared_ptr<formula::FormulaCompiler::OpCodeMap>&, formula::FormulaCompiler::SeparatorType) const
+formula::FormulaDoubleToken::GetDouble() const
+formula::FormulaDoubleToken::GetDoubleAsReference()
+formula::FormulaDoubleToken::GetDoubleType() const
+formula::FormulaDoubleToken::operator==(formula::FormulaToken const&) const
+formula::FormulaErrorToken::GetError() const
+formula::FormulaErrorToken::SetError(FormulaError)
+formula::FormulaErrorToken::operator==(formula::FormulaToken const&) const
+formula::FormulaExternalToken::GetExternal() const
+formula::FormulaExternalToken::operator==(formula::FormulaToken const&) const
+formula::FormulaFAPToken::GetFAPOrigToken() const
+formula::FormulaFAPToken::operator==(formula::FormulaToken const&) const
+formula::FormulaGrammar::isSupported(formula::FormulaGrammar::Grammar)
+formula::FormulaGrammar::setEnglishBit(formula::FormulaGrammar::Grammar, bool)
+formula::FormulaHelper::FillArgStrings(rtl::OUString const&, int, unsigned short, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&) const
+formula::FormulaHelper::GetArgStrings(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, rtl::OUString const&, int, unsigned short) const
+formula::FormulaHelper::GetCategoryCount() const
+formula::FormulaHelper::GetFunctionEnd(rtl::OUString const&, int) const
+formula::FormulaIndexToken::GetIndex() const
+formula::FormulaIndexToken::GetSheet() const
+formula::FormulaIndexToken::SetIndex(unsigned short)
+formula::FormulaIndexToken::SetSheet(short)
+formula::FormulaIndexToken::operator==(formula::FormulaToken const&) const
+formula::FormulaJumpToken::GetInForceArray() const
+formula::FormulaJumpToken::GetJump() const
+formula::FormulaJumpToken::SetInForceArray(formula::ParamClass)
+formula::FormulaJumpToken::operator==(formula::FormulaToken const&) const
+formula::FormulaJumpToken::~FormulaJumpToken()
+formula::FormulaMissingToken::GetDouble() const
+formula::FormulaMissingToken::GetString() const
+formula::FormulaMissingToken::operator==(formula::FormulaToken const&) const
+formula::FormulaSpaceToken::GetByte() const
+formula::FormulaSpaceToken::GetChar() const
+formula::FormulaSpaceToken::operator==(formula::FormulaToken const&) const
+formula::FormulaStringOpToken::Clone() const
+formula::FormulaStringOpToken::FormulaStringOpToken(formula::FormulaStringOpToken const&)
+formula::FormulaStringOpToken::GetString() const
+formula::FormulaStringOpToken::SetString(svl::SharedString const&)
+formula::FormulaStringOpToken::operator==(formula::FormulaToken const&) const
+formula::FormulaStringToken::Clone() const
+formula::FormulaStringToken::FormulaStringToken(formula::FormulaStringToken const&)
+formula::FormulaStringToken::GetString() const
+formula::FormulaStringToken::SetString(svl::SharedString const&)
+formula::FormulaStringToken::operator==(formula::FormulaToken const&) const
+formula::FormulaToken::IsRef() const
+formula::FormulaTokenArray::AddOpCode(OpCode)
+formula::FormulaTokenArray::AddStringXML(rtl::OUString const&)
+formula::FormulaTokenArray::CheckAllRPNTokens()
+formula::FormulaTokenArray::CheckToken(formula::FormulaToken const&)
+formula::FormulaTokenArray::MergeArray()
+formula::FormulaTokenArray::NeedsOoxmlRewrite()
+formula::FormulaTokenArray::NeedsPodfRewrite(formula::MissingConventionODF const&)
+formula::FormulaTokenArray::RemoveToken(unsigned short, unsigned short)
+formula::FormulaTokenArray::RewriteMissing(formula::MissingConvention const&)
+formula::FormulaTokenArray::operator=(formula::FormulaTokenArray const&)
+formula::FormulaTokenArray::operator=(formula::FormulaTokenArray&&)
+formula::FormulaTokenArrayPlainIterator::AfterRemoveToken(unsigned short, unsigned short)
+formula::FormulaTokenArrayPlainIterator::PeekNext()
+formula::FormulaTokenIterator::GetNonEndOfPathToken(short) const
+formula::FormulaTokenIterator::Item::Item(formula::FormulaTokenArray const*, short, short)
+formula::FormulaTokenIterator::Push(formula::FormulaTokenArray const*)
+formula::FormulaTypedDoubleToken::GetDoubleType() const
+formula::FormulaTypedDoubleToken::SetDoubleType(short)
+formula::FormulaTypedDoubleToken::operator==(formula::FormulaToken const&) const
+formula::FormulaUnknownToken::operator==(formula::FormulaToken const&) const
+formula::RefButton::LinkStubClick(void*, weld::Button&)
+formula::RefEdit::GetFocus()
+formula::RefEdit::LoseFocus()
+formula::SingleVectorRefToken::Clone() const
+framework::ActionTriggerHelper::FillActionTriggerContainerFromMenu(com::sun::star::uno::Reference<com::sun::star::container::XIndexContainer> const&, Menu const*)
+framework::AddonsOptions::GetAddonsHelpMenu() const
+framework::AddonsOptions::GetAddonsMenu() const
+framework::AddonsOptions::GetAddonsMenuBarPart() const
+framework::AddonsOptions::GetAddonsNotebookBarResourceName(unsigned int) const
+framework::AddonsOptions::GetAddonsToolBarCount() const
+framework::AddonsOptions::GetAddonsToolBarPart(unsigned int) const
+framework::AddonsOptions::GetAddonsToolbarResourceName(unsigned int) const
+framework::AddonsOptions::GetImageFromURL(rtl::OUString const&, bool, bool) const
+framework::AddonsOptions::GetMergeMenuInstructions() const
+framework::AddonsOptions::GetMergeNotebookBarInstructions(rtl::OUString const&, std::vector<framework::MergeNotebookBarInstruction, std::allocator<framework::MergeNotebookBarInstruction> >&) const
+framework::AddonsOptions::GetMergeStatusbarInstructions() const
+framework::AddonsOptions::GetMergeToolbarInstructions(rtl::OUString const&, std::vector<framework::MergeToolbarInstruction, std::allocator<framework::MergeToolbarInstruction> >&) const
+framework::AddonsOptions::GetOwnStaticMutex()
+framework::AddonsOptions::HasAddonsMenu() const
+framework::CreateDockingWindow(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, rtl::OUString const&)
+framework::CreateStatusBarController(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, StatusBar*, unsigned short, rtl::OUString const&)
+framework::CreateWeldToolBoxController(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, weld::Toolbar*, weld::Builder*, rtl::OUString const&)
+framework::Desktop::Desktop(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+framework::Desktop::activate()
+framework::Desktop::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+framework::Desktop::addFrameActionListener(com::sun::star::uno::Reference<com::sun::star::frame::XFrameActionListener> const&)
+framework::Desktop::addTerminateListener(com::sun::star::uno::Reference<com::sun::star::frame::XTerminateListener> const&)
+framework::Desktop::constructorInit()
+framework::Desktop::contextChanged()
+framework::Desktop::convertFastPropertyValue(com::sun::star::uno::Any&, com::sun::star::uno::Any&, int, com::sun::star::uno::Any const&)
+framework::Desktop::deactivate()
+framework::Desktop::dispatchFinished(com::sun::star::frame::DispatchResultEvent const&)
+framework::Desktop::disposing()
+framework::Desktop::disposing(com::sun::star::lang::EventObject const&)
+framework::Desktop::findFrame(rtl::OUString const&, int)
+framework::Desktop::getActiveFrame()
+framework::Desktop::getActiveTask()
+framework::Desktop::getComponentWindow()
+framework::Desktop::getComponents()
+framework::Desktop::getContainerWindow()
+framework::Desktop::getController()
+framework::Desktop::getCreator()
+framework::Desktop::getCurrentComponent()
+framework::Desktop::getCurrentFrame()
+framework::Desktop::getFastPropertyValue(com::sun::star::uno::Any&, int) const
+framework::Desktop::getFrames()
+framework::Desktop::getImplementationName()
+framework::Desktop::getInfoHelper()
+framework::Desktop::getName()
+framework::Desktop::getPropertySetInfo()
+framework::Desktop::getSupportedServiceNames()
+framework::Desktop::getTasks()
+framework::Desktop::getTypes()
+framework::Desktop::getUntitledPrefix()
+framework::Desktop::handle(com::sun::star::uno::Reference<com::sun::star::task::XInteractionRequest> const&)
+framework::Desktop::impl_closeFrames(bool)
+framework::Desktop::impl_getFrameComponent(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) const
+framework::Desktop::impl_sendCancelTerminationEvent(std::vector<com::sun::star::uno::Reference<com::sun::star::frame::XTerminateListener>, std::allocator<com::sun::star::uno::Reference<com::sun::star::frame::XTerminateListener> > > const&)
+framework::Desktop::impl_sendNotifyTerminationEvent()
+framework::Desktop::impl_sendQueryTerminationEvent(std::vector<com::sun::star::uno::Reference<com::sun::star::frame::XTerminateListener>, std::allocator<com::sun::star::uno::Reference<com::sun::star::frame::XTerminateListener> > >&)
+framework::Desktop::impl_sendTerminateToClipboard()
+framework::Desktop::initialize(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&)
+framework::Desktop::isActive()
+framework::Desktop::isTop()
+framework::Desktop::leaseNumber(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+framework::Desktop::queryDispatch(com::sun::star::util::URL const&, rtl::OUString const&, int)
+framework::Desktop::queryDispatches(com::sun::star::uno::Sequence<com::sun::star::frame::DispatchDescriptor> const&)
+framework::Desktop::queryInterface(com::sun::star::uno::Type const&)
+framework::Desktop::registerDispatchProviderInterceptor(com::sun::star::uno::Reference<com::sun::star::frame::XDispatchProviderInterceptor> const&)
+framework::Desktop::releaseDispatchProviderInterceptor(com::sun::star::uno::Reference<com::sun::star::frame::XDispatchProviderInterceptor> const&)
+framework::Desktop::releaseNumber(int)
+framework::Desktop::releaseNumberForComponent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+framework::Desktop::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+framework::Desktop::removeFrameActionListener(com::sun::star::uno::Reference<com::sun::star::frame::XFrameActionListener> const&)
+framework::Desktop::removeTerminateListener(com::sun::star::uno::Reference<com::sun::star::frame::XTerminateListener> const&)
+framework::Desktop::setActiveFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+framework::Desktop::setComponent(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+framework::Desktop::setCreator(com::sun::star::uno::Reference<com::sun::star::frame::XFramesSupplier> const&)
+framework::Desktop::setFastPropertyValue_NoBroadcast(int, com::sun::star::uno::Any const&)
+framework::Desktop::setName(rtl::OUString const&)
+framework::Desktop::supportsService(rtl::OUString const&)
+framework::Desktop::terminate()
+framework::Desktop::terminateQuickstarterToo()
+framework::Desktop::~Desktop()
+framework::DispatchHelper::dispatchFinished(com::sun::star::frame::DispatchResultEvent const&)
+framework::DispatchHelper::disposing(com::sun::star::lang::EventObject const&)
+framework::DispatchHelper::executeDispatch(com::sun::star::uno::Reference<com::sun::star::frame::XDispatchProvider> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+framework::DispatchHelper::getImplementationName()
+framework::DispatchHelper::getSupportedServiceNames()
+framework::DispatchHelper::supportsService(rtl::OUString const&)
+framework::DispatchHelper::~DispatchHelper()
+framework::FrameListAnalyzer::impl_analyze()
+framework::GenericToolbarController::dispose()
+framework::GenericToolbarController::execute(short)
+framework::GenericToolbarController::statusChanged(com::sun::star::frame::FeatureStateEvent const&)
+framework::GenericToolbarController::~GenericToolbarController()
+framework::IsDockingWindowVisible(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, rtl::OUString const&)
+framework::RefreshToolbars(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+framework::TitleHelper::addTitleChangeListener(com::sun::star::uno::Reference<com::sun::star::frame::XTitleChangeListener> const&)
+framework::TitleHelper::disposing(com::sun::star::lang::EventObject const&)
+framework::TitleHelper::documentEventOccured(com::sun::star::document::DocumentEvent const&)
+framework::TitleHelper::frameAction(com::sun::star::frame::FrameActionEvent const&)
+framework::TitleHelper::getTitle()
+framework::TitleHelper::impl_appendComponentTitle(rtl::OUStringBuffer&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+framework::TitleHelper::impl_appendDebugVersion(rtl::OUStringBuffer&)
+framework::TitleHelper::impl_appendModuleName(rtl::OUStringBuffer&)
+framework::TitleHelper::impl_appendProductName(rtl::OUStringBuffer&)
+framework::TitleHelper::impl_appendSafeMode(rtl::OUStringBuffer&)
+framework::TitleHelper::impl_convertURL2Title(rtl::OUString const&)
+framework::TitleHelper::impl_sendTitleChangedEvent()
+framework::TitleHelper::impl_setSubTitle(com::sun::star::uno::Reference<com::sun::star::frame::XTitle> const&)
+framework::TitleHelper::impl_startListeningForController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+framework::TitleHelper::impl_startListeningForFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+framework::TitleHelper::impl_startListeningForModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+framework::TitleHelper::impl_updateListeningForFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+framework::TitleHelper::impl_updateTitle(bool)
+framework::TitleHelper::impl_updateTitleForController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&, bool)
+framework::TitleHelper::impl_updateTitleForFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, bool)
+framework::TitleHelper::impl_updateTitleForModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel3> const&, bool)
+framework::TitleHelper::removeTitleChangeListener(com::sun::star::uno::Reference<com::sun::star::frame::XTitleChangeListener> const&)
+framework::TitleHelper::setTitle(rtl::OUString const&)
+framework::TitleHelper::titleChanged(com::sun::star::frame::TitleChangedEvent const&)
+framework::TitleHelper::~TitleHelper()
+freeLink
+freePackedVector
+freePricer
+freeUndoLadder
+freeWeights
+free_BB
+free_SOSgroup
+free_SOSrec
+free_duals
+free_hash_item
+free_hash_table
+free_lp
+free_pseudoclass
+free_pseudocost
+free_utf_tbl()
+freecuts_BB
+fsolve
+ftran
+gcd
+getDataArea
+getExistMark
+getFollowPageWords_af_NA
+getFollowPageWords_af_ZA
+getFollowPageWords_ak_GH
+getFollowPageWords_am_ET
+getFollowPageWords_an_ES
+getFollowPageWords_ar_AE
+getFollowPageWords_ar_BH
+getFollowPageWords_ar_DZ
+getFollowPageWords_ar_EG
+getFollowPageWords_ar_IQ
+getFollowPageWords_ar_JO
+getFollowPageWords_ar_KW
+getFollowPageWords_ar_LB
+getFollowPageWords_ar_LY
+getFollowPageWords_ar_MA
+getFollowPageWords_ar_OM
+getFollowPageWords_ar_QA
+getFollowPageWords_ar_SA
+getFollowPageWords_ar_SY
+getFollowPageWords_ar_TN
+getFollowPageWords_ar_YE
+getFollowPageWords_ast_ES
+getFollowPageWords_axk_CG
+getFollowPageWords_az_AZ
+getFollowPageWords_be_BY
+getFollowPageWords_beq_CG
+getFollowPageWords_bg_BG
+getFollowPageWords_bkw_CG
+getFollowPageWords_bm_ML
+getFollowPageWords_bn_BD
+getFollowPageWords_bn_IN
+getFollowPageWords_bo_CN
+getFollowPageWords_bo_IN
+getFollowPageWords_br_FR
+getFollowPageWords_bs_BA
+getFollowPageWords_bvx_CG
+getFollowPageWords_ca_ES
+getFollowPageWords_ca_ES_valencia
+getFollowPageWords_cs_CZ
+getFollowPageWords_cu_RU
+getFollowPageWords_cv_RU
+getFollowPageWords_cy_GB
+getFollowPageWords_da_DK
+getFollowPageWords_dde_CG
+getFollowPageWords_de_AT
+getFollowPageWords_de_CH
+getFollowPageWords_de_DE
+getFollowPageWords_de_LI
+getFollowPageWords_de_LU
+getFollowPageWords_dsb_DE
+getFollowPageWords_dz_BT
+getFollowPageWords_ebo_CG
+getFollowPageWords_ee_GH
+getFollowPageWords_el_GR
+getFollowPageWords_en_AU
+getFollowPageWords_en_BW
+getFollowPageWords_en_BZ
+getFollowPageWords_en_CA
+getFollowPageWords_en_DK
+getFollowPageWords_en_GH
+getFollowPageWords_en_GM
+getFollowPageWords_en_HK
+getFollowPageWords_en_IE
+getFollowPageWords_en_IL
+getFollowPageWords_en_IN
+getFollowPageWords_en_JM
+getFollowPageWords_en_KE
+getFollowPageWords_en_LK
+getFollowPageWords_en_MW
+getFollowPageWords_en_MY
+getFollowPageWords_en_NA
+getFollowPageWords_en_NG
+getFollowPageWords_en_NZ
+getFollowPageWords_en_PH
+getFollowPageWords_en_TT
+getFollowPageWords_en_ZA
+getFollowPageWords_en_ZM
+getFollowPageWords_en_ZW
+getFollowPageWords_eo
+getFollowPageWords_es_AR
+getFollowPageWords_es_BO
+getFollowPageWords_es_CL
+getFollowPageWords_es_CO
+getFollowPageWords_es_CR
+getFollowPageWords_es_DO
+getFollowPageWords_es_EC
+getFollowPageWords_es_ES
+getFollowPageWords_es_GT
+getFollowPageWords_es_HN
+getFollowPageWords_es_MX
+getFollowPageWords_es_NI
+getFollowPageWords_es_PA
+getFollowPageWords_es_PE
+getFollowPageWords_es_PR
+getFollowPageWords_es_PY
+getFollowPageWords_es_SV
+getFollowPageWords_es_UY
+getFollowPageWords_es_VE
+getFollowPageWords_et_EE
+getFollowPageWords_eu_ES
+getFollowPageWords_fa_IR
+getFollowPageWords_fi_FI
+getFollowPageWords_fo_FO
+getFollowPageWords_fr_BE
+getFollowPageWords_fr_BF
+getFollowPageWords_fr_BJ
+getFollowPageWords_fr_CA
+getFollowPageWords_fr_CH
+getFollowPageWords_fr_CI
+getFollowPageWords_fr_FR
+getFollowPageWords_fr_LU
+getFollowPageWords_fr_MC
+getFollowPageWords_fr_ML
+getFollowPageWords_fr_NE
+getFollowPageWords_fr_SN
+getFollowPageWords_fr_TG
+getFollowPageWords_fur_IT
+getFollowPageWords_fy_NL
+getFollowPageWords_ga_IE
+getFollowPageWords_gd_GB
+getFollowPageWords_gl_ES
+getFollowPageWords_gsc_FR
+getFollowPageWords_gu_IN
+getFollowPageWords_gug_PY
+getFollowPageWords_ha_Latn_GH
+getFollowPageWords_ha_Latn_NG
+getFollowPageWords_haw_US
+getFollowPageWords_he_IL
+getFollowPageWords_hi_IN
+getFollowPageWords_hil_PH
+getFollowPageWords_hr_HR
+getFollowPageWords_hsb_DE
+getFollowPageWords_ht_HT
+getFollowPageWords_hu_HU
+getFollowPageWords_hy_AM
+getFollowPageWords_ia
+getFollowPageWords_id_ID
+getFollowPageWords_ilo_PH
+getFollowPageWords_is_IS
+getFollowPageWords_it_CH
+getFollowPageWords_it_IT
+getFollowPageWords_iyx_CG
+getFollowPageWords_ja_JP
+getFollowPageWords_jbo
+getFollowPageWords_ka_GE
+getFollowPageWords_kab_DZ
+getFollowPageWords_kk_KZ
+getFollowPageWords_kkw_CG
+getFollowPageWords_kl_GL
+getFollowPageWords_km_KH
+getFollowPageWords_kmr_Latn_TR
+getFollowPageWords_kn_IN
+getFollowPageWords_kng_CG
+getFollowPageWords_ko_KR
+getFollowPageWords_ky_KG
+getFollowPageWords_la_VA
+getFollowPageWords_lb_LU
+getFollowPageWords_ldi_CG
+getFollowPageWords_lg_UG
+getFollowPageWords_lgr_SB
+getFollowPageWords_lif_NP
+getFollowPageWords_lij_IT
+getFollowPageWords_lld_IT
+getFollowPageWords_ln_CD
+getFollowPageWords_lo_LA
+getFollowPageWords_lt_LT
+getFollowPageWords_ltg_LV
+getFollowPageWords_lv_LV
+getFollowPageWords_mai_IN
+getFollowPageWords_mdw_CG
+getFollowPageWords_min_ID
+getFollowPageWords_mk_MK
+getFollowPageWords_mkw_CG
+getFollowPageWords_ml_IN
+getFollowPageWords_mn_Cyrl_MN
+getFollowPageWords_mos_BF
+getFollowPageWords_mr_IN
+getFollowPageWords_ms_MY
+getFollowPageWords_mt_MT
+getFollowPageWords_my_MM
+getFollowPageWords_myv_RU
+getFollowPageWords_nb_NO
+getFollowPageWords_nds_DE
+getFollowPageWords_ne_NP
+getFollowPageWords_ngz_CG
+getFollowPageWords_njx_CG
+getFollowPageWords_njy_CG
+getFollowPageWords_nl_BE
+getFollowPageWords_nl_NL
+getFollowPageWords_nn_NO
+getFollowPageWords_no_NO
+getFollowPageWords_nr_ZA
+getFollowPageWords_nso_ZA
+getFollowPageWords_ny_MW
+getFollowPageWords_oc_FR
+getFollowPageWords_om_ET
+getFollowPageWords_or_IN
+getFollowPageWords_pa_IN
+getFollowPageWords_pap_BQ
+getFollowPageWords_pap_CW
+getFollowPageWords_pjt_AU
+getFollowPageWords_pl_PL
+getFollowPageWords_plt_MG
+getFollowPageWords_pt_AO
+getFollowPageWords_pt_BR
+getFollowPageWords_pt_PT
+getFollowPageWords_pui_CO
+getFollowPageWords_puu_CG
+getFollowPageWords_ro_RO
+getFollowPageWords_ru_RU
+getFollowPageWords_rue_SK
+getFollowPageWords_rw_RW
+getFollowPageWords_sc_IT
+getFollowPageWords_sdj_CG
+getFollowPageWords_sg_CF
+getFollowPageWords_shs_CA
+getFollowPageWords_sid_ET
+getFollowPageWords_sk_SK
+getFollowPageWords_sl_SI
+getFollowPageWords_so_SO
+getFollowPageWords_sr_CS
+getFollowPageWords_sr_Latn_CS
+getFollowPageWords_sr_Latn_ME
+getFollowPageWords_sr_Latn_RS
+getFollowPageWords_sr_ME
+getFollowPageWords_sr_RS
+getFollowPageWords_ss_ZA
+getFollowPageWords_st_ZA
+getFollowPageWords_sun_ID
+getFollowPageWords_sv_FI
+getFollowPageWords_sv_SE
+getFollowPageWords_sw_TZ
+getFollowPageWords_szl_PL
+getFollowPageWords_ta_IN
+getFollowPageWords_te_IN
+getFollowPageWords_tek_CG
+getFollowPageWords_tg_TJ
+getFollowPageWords_th_TH
+getFollowPageWords_ti_ER
+getFollowPageWords_ti_ET
+getFollowPageWords_tk_TM
+getFollowPageWords_tn_ZA
+getFollowPageWords_tpi_PG
+getFollowPageWords_tr_TR
+getFollowPageWords_ts_ZA
+getFollowPageWords_tsa_CG
+getFollowPageWords_tt_RU
+getFollowPageWords_tyx_CG
+getFollowPageWords_ug_CN
+getFollowPageWords_uk_UA
+getFollowPageWords_ur_PK
+getFollowPageWords_uz_UZ
+getFollowPageWords_ve_ZA
+getFollowPageWords_vec_IT
+getFollowPageWords_vi_VN
+getFollowPageWords_vif_CG
+getFollowPageWords_vro_EE
+getFollowPageWords_wa_BE
+getFollowPageWords_xh_ZA
+getFollowPageWords_xku_CG
+getFollowPageWords_yi_US
+getFollowPageWords_yom_CG
+getFollowPageWords_zh_CN
+getFollowPageWords_zh_HK
+getFollowPageWords_zh_MO
+getFollowPageWords_zh_SG
+getFollowPageWords_zh_TW
+getFollowPageWords_zu_ZA
+getFormula(ScDocument*, short, int, short)
+getHangul2HanjaData
+getHangul2HanjaIndex
+getHangul2HanjaIndexCount
+getHanja2HangulData
+getHanja2HangulIndex
+getIndex1
+getIndex2
+getLenArray
+getMDO
+getPricer
+getRangeByName(ScDocument*, rtl::OUString const&)
+getStandardAccessibleFactory
+getSvtAccessibilityComponentFactory
+get_Lrows
+get_Ncolumns
+get_Norig_columns
+get_Norig_rows
+get_Nrows
+get_OF_active
+get_anti_degen
+get_artificialRow
+get_basis
+get_basisOF
+get_basiscolumn
+get_basiscrash
+get_bb_depthlimit
+get_bb_floorfirst
+get_bb_rule
+get_bounds
+get_bounds_tighter
+get_break_at_value
+get_ca_charset
+get_ca_charset_length
+get_captype(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cs_info*)
+get_captype_utf8(std::vector<w_char, std::allocator<w_char> > const&, int)
+get_casechars[abi:cxx11](char const*)
+get_colIndexA
+get_col_name
+get_column
+get_columnex
+get_constr_class
+get_constr_type
+get_constr_value
+get_constraints
+get_cu_charset
+get_cu_charset_length
+get_current_cs(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+get_desktop_environment
+get_dual_solution
+get_dv_lower
+get_dv_upper
+get_dz_charset
+get_dz_charset_length
+get_encoding_name_for_icu
+get_epsb
+get_epsd
+get_epsel
+get_epsint
+get_epsperturb
+get_epspivot
+get_hu_charset
+get_hu_charset_length
+get_improve
+get_indexdata_ko_dict
+get_indexdata_zh_TW_radical
+get_indexdata_zh_TW_stroke
+get_indexdata_zh_pinyin
+get_indexdata_zh_radical
+get_indexdata_zh_stroke
+get_indexdata_zh_zhuyin
+get_infinite
+get_ja_charset
+get_ja_charset_length
+get_ja_phonetic_alphanumeric_first
+get_ja_phonetic_alphanumeric_first_length
+get_ja_phonetic_alphanumeric_last
+get_ja_phonetic_alphanumeric_last_length
+get_ko_phonetic
+get_ku_alphanumeric
+get_ku_alphanumeric_length
+get_lambda
+get_lang_num(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+get_ln_charset
+get_ln_charset_length
+get_lowbo
+get_lp_index
+get_lp_name
+get_mat
+get_mat_byindex
+get_max_level
+get_maxpivot
+get_mip_gap
+get_multiprice
+get_my_dictionary
+get_my_dictionary_length
+get_nameindex
+get_ne_charset
+get_ne_charset_length
+get_negrange
+get_nonzeros
+get_obj_bound
+get_orig_index
+get_origcol_name
+get_origrow_name
+get_partialprice
+get_piv_rule
+get_pivoting
+get_presolve
+get_presolveloops
+get_primal_solution
+get_print_sol
+get_pseudobranchcost
+get_pseudocosts
+get_pseudonodecost
+get_pseudorange
+get_ptr_constraints
+get_ptr_dual_solution
+get_ptr_lambda
+get_ptr_primal_solution
+get_ptr_sensitivity_obj
+get_ptr_sensitivity_objex
+get_ptr_sensitivity_rhs
+get_refactfrequency
+get_rh
+get_rh_lower
+get_rh_range
+get_rh_upper
+get_row
+get_row_name
+get_rowex
+get_scalelimit
+get_scaling
+get_sensitivity_obj
+get_sensitivity_objex
+get_sensitivity_rhs
+get_sid_charset
+get_sid_charset_length
+get_simplextype
+get_solutioncount
+get_solutionlimit
+get_status
+get_statustext
+get_stored_pointer(char const*)
+get_str_constr_class
+get_str_constr_type
+get_str_piv_rule
+get_timeout
+get_total_iter
+get_total_nodes
+get_upbo
+get_var_branch
+get_var_dualresult
+get_var_primalresult
+get_var_priority
+get_variables
+get_verbose
+get_vro_alphanumeric
+get_vro_alphanumeric_length
+get_working_objective
+get_zh_TW_charset
+get_zh_TW_charset_length
+get_zh_TW_radical
+get_zh_TW_radical_length
+get_zh_TW_stroke
+get_zh_TW_stroke_length
+get_zh_charset
+get_zh_charset_length
+get_zh_pinyin
+get_zh_pinyin_length
+get_zh_radical
+get_zh_radical_length
+get_zh_stroke
+get_zh_stroke_length
+get_zh_zhuyin
+get_zh_zhuyin_length
+getpeereid
+getvaluePackedVector
+guess_basis
+has_BFP
+has_XLI
+hashval
+heuristics
+hnj_fopen
+hnj_free
+hnj_hyphen_free
+hnj_hyphen_hyph_
+hnj_hyphen_hyphenate
+hnj_hyphen_hyphenate2
+hnj_hyphen_hyphenate3
+hnj_hyphen_hyphword
+hnj_hyphen_lhmin
+hnj_hyphen_load
+hnj_hyphen_load_file
+hnj_hyphen_load_line
+hnj_hyphen_norm
+hnj_hyphen_rhmin
+hnj_hyphen_strnlen
+hnj_ligature
+hnj_malloc
+hnj_realloc
+hnj_strchomp
+hpsort
+hpsortex
+i18nutil::casefolding::getConditionalValue(char16_t const*, int, int, com::sun::star::lang::Locale const&, MappingType)
+i18nutil::widthfolding::getCompositionChar(char16_t, char16_t)
+idamax
+identify_GUB
+impose_bounds
+inc_col_space
+inc_columns
+inc_lag_space
+inc_mat_space
+inc_matcol_space
+inc_matrow_space
+inc_presolve_space
+inc_row_space
+inc_rowcol_space
+inc_rows
+includeMDO
+incrementUndoLadder
+ini_close
+ini_create
+ini_open
+ini_readdata
+ini_writecomment
+ini_writedata
+ini_writeheader
+initPQExpBuffer
+initPricer
+init_BLAS
+init_phonet_hash(phonetable&)
+init_pseudocost
+init_rowcol_names
+initbranches_BB
+initcuts_BB
+initialize_solution
+initialize_utf_tbl()
+insertLink
+insertRangeData(ScDocument*, ScAddress const&, std::vector<std::vector<char const*, std::allocator<char const*> >, std::allocator<std::vector<char const*, std::allocator<char const*> > > > const&)
+insertRangeNames(ScDocument*, ScRangeName*, RangeNameDef const*, RangeNameDef const*)
+intpow
+invert
+isActiveLink
+isBasisVarFeasible
+isDegenerateBasis
+isDualFeasible
+isINT
+isLayoutEnabled(vcl::Window const*)
+isOrigFixed
+isP1extra
+isPhase1
+isPrimalFeasible
+isPrimalSimplex
+is_BasisReady
+is_OF_nz
+is_SOS_var
+is_action
+is_add_rowmode
+is_anti_degen
+is_bb_mode
+is_binary
+is_break_at_first
+is_chsign
+is_constr_type
+is_debug
+is_encoding_supported_by_icu
+is_feasible
+is_fixedvar
+is_infinite
+is_int
+is_integerscaling
+is_lag_trace
+is_maxim
+is_nativeBFP
+is_nativeBLAS
+is_nativeXLI
+is_negative
+is_obj_in_basis
+is_piv_mode
+is_piv_rule
+is_presolve
+is_sc_violated
+is_scalemode
+is_scaletype
+is_semicont
+is_slackbasis
+is_splitvar
+is_trace
+is_unbounded
+is_use_names
+isnz_origobj
+jvmaccess::UnoVirtualMachine::CreationException::CreationException()
+jvmaccess::UnoVirtualMachine::CreationException::CreationException(jvmaccess::UnoVirtualMachine::CreationException const&)
+jvmaccess::UnoVirtualMachine::CreationException::operator=(jvmaccess::UnoVirtualMachine::CreationException const&)
+jvmaccess::UnoVirtualMachine::CreationException::~CreationException()
+jvmaccess::UnoVirtualMachine::~UnoVirtualMachine()
+jvmaccess::VirtualMachine::AttachGuard::CreationException::CreationException()
+jvmaccess::VirtualMachine::AttachGuard::CreationException::CreationException(jvmaccess::VirtualMachine::AttachGuard::CreationException const&)
+jvmaccess::VirtualMachine::AttachGuard::CreationException::operator=(jvmaccess::VirtualMachine::AttachGuard::CreationException const&)
+jvmaccess::VirtualMachine::AttachGuard::CreationException::~CreationException()
+jvmaccess::VirtualMachine::attachThread(bool*) const
+jvmaccess::VirtualMachine::detachThread() const
+jvmaccess::VirtualMachine::~VirtualMachine()
+lag_solve
+lastActiveLink
+lastInactiveLink
+ldif_close
+ldif_countlines
+ldif_fetch_url
+ldif_getline
+ldif_is_not_printable
+ldif_must_b64_encode_register
+ldif_must_b64_encode_release
+ldif_open
+ldif_open_url
+ldif_parse_line
+ldif_parse_line2
+ldif_put
+ldif_put_wrap
+ldif_read_record
+ldif_sput
+ldif_sput_wrap
+legacy_AddSecmodDB@@NSSDBM_3.12
+legacy_DeleteSecmodDB@@NSSDBM_3.12
+legacy_Open@@NSSDBM_3.12
+legacy_ReadSecmodDB@@NSSDBM_3.12
+legacy_ReleaseSecmodDBData@@NSSDBM_3.12
+legacy_SetCryptFunctions@@NSSDBM_3.12
+legacy_Shutdown@@NSSDBM_3.12
+lenfield
+lex_fatal_error
+libVersionPoint
+libabw::AbiDocument::isFileFormatSupported(librevenge::RVNGInputStream*)
+libabw::AbiDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGTextInterface*)
+libcdr::CDRDocument::isSupported(librevenge::RVNGInputStream*)
+libcdr::CDRDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libcdr::CMXDocument::isSupported(librevenge::RVNGInputStream*)
+libcdr::CMXDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libebook::EBOOKDocument::isSupported(librevenge::RVNGInputStream*, libebook::EBOOKDocument::Type*)
+libebook::EBOOKDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGTextInterface*, char const*)
+libebook::EBOOKDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGTextInterface*, libebook::EBOOKDocument::Type, char const*)
+libfreehand::FreeHandDocument::isSupported(librevenge::RVNGInputStream*)
+libfreehand::FreeHandDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libmspub::MSPUBDocument::isSupported(librevenge::RVNGInputStream*)
+libmspub::MSPUBDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libpagemaker::PMDocument::isSupported(librevenge::RVNGInputStream*)
+libpagemaker::PMDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libqxp::QXPDocument::isSupported(librevenge::RVNGInputStream*, libqxp::QXPDocument::Type*)
+libqxp::QXPDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*, libqxp::QXPPathResolver*)
+libreofficekit_hook
+libreofficekit_hook_2
+libvisio::VisioDocument::isSupported(librevenge::RVNGInputStream*)
+libvisio::VisioDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libvisio::VisioDocument::parseStencils(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+libzmf::ZMFDocument::isSupported(librevenge::RVNGInputStream*, libzmf::ZMFDocument::Type*, libzmf::ZMFDocument::Kind*)
+libzmf::ZMFDocument::parse(librevenge::RVNGInputStream*, librevenge::RVNGDrawingInterface*)
+lin_solve
+line_tok(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char)
+line_uniq(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char)
+line_uniq_app(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char)
+linguistic::IsNumeric(rtl::OUString const&)
+linguistic::LinguLanguageToLocale(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+linguistic::PropertyChgHelper::AddAsPropListener()
+linguistic::PropertyChgHelper::GetCurrentValues()
+linguistic::PropertyChgHelper::LaunchEvent(com::sun::star::linguistic2::LinguServiceEvent const&)
+linguistic::PropertyChgHelper::PropertyChgHelper(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, com::sun::star::uno::Reference<com::sun::star::linguistic2::XLinguProperties> const&, int)
+linguistic::PropertyChgHelper::RemoveAsPropListener()
+linguistic::PropertyChgHelper::SetDefaultValues()
+linguistic::PropertyChgHelper::SetTmpPropVals(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+linguistic::PropertyChgHelper::addLinguServiceEventListener(com::sun::star::uno::Reference<com::sun::star::linguistic2::XLinguServiceEventListener> const&)
+linguistic::PropertyChgHelper::disposing(com::sun::star::lang::EventObject const&)
+linguistic::PropertyChgHelper::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+linguistic::PropertyChgHelper::propertyChange_Impl(com::sun::star::beans::PropertyChangeEvent const&)
+linguistic::PropertyChgHelper::removeLinguServiceEventListener(com::sun::star::uno::Reference<com::sun::star::linguistic2::XLinguServiceEventListener> const&)
+linguistic::PropertyChgHelper::~PropertyChgHelper()
+linguistic::PropertyHelper_Spell::GetCurrentValues()
+linguistic::PropertyHelper_Spell::PropertyHelper_Spell(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, com::sun::star::uno::Reference<com::sun::star::linguistic2::XLinguProperties> const&)
+linguistic::PropertyHelper_Spell::SetDefaultValues()
+linguistic::PropertyHelper_Spell::SetTmpPropVals(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+linguistic::PropertyHelper_Spell::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+linguistic::PropertyHelper_Spell::propertyChange_Impl(com::sun::star::beans::PropertyChangeEvent const&)
+linguistic::PropertyHelper_Spell::~PropertyHelper_Spell()
+linguistic::SpellAlternatives::SetAlternatives(com::sun::star::uno::Sequence<rtl::OUString> const&)
+linguistic::SpellAlternatives::SetFailureType(short)
+linguistic::SpellAlternatives::SetWordLanguage(rtl::OUString const&, o3tl::strong_int<unsigned short, LanguageTypeTag>)
+linguistic::SpellAlternatives::SpellAlternatives()
+load_BLAS
+longdual_testset
+lower_utf(w_char, int)
+lp_solve_version
+lp_yy_create_buffer
+lp_yy_delete_buffer
+lp_yy_flush_buffer
+lp_yy_init_buffer
+lp_yy_load_buffer_state
+lp_yy_scan_buffer
+lp_yy_scan_bytes
+lp_yy_scan_string
+lp_yy_switch_to_buffer
+lp_yylex
+lp_yyparse
+lp_yyrestart
+lucene_i64tot(long, wchar_t*, int)
+lucene_snwprintf(wchar_t*, unsigned long, wchar_t const*, ...)
+lucene_tcscasecmp(wchar_t const*, wchar_t const*)
+lucene_tcslwr(wchar_t*)
+lucene_utf8charlen(unsigned char)
+lucene_utf8towc(wchar_t&, char const*)
+lucene_utf8towcs(wchar_t*, char const*, unsigned long)
+lucene_vsnwprintf(wchar_t*, unsigned long, wchar_t const*, __va_list_tag (&) [1])
+lucene_wcstoutf8(char*, wchar_t const*, unsigned long)
+lucene_wcstoutf8string[abi:cxx11](wchar_t const*, unsigned long)
+lucene_wctoutf8(char*, wchar_t)
+lucene_wprintf(wchar_t const*, ...)
+main
+makeNotebookbarTabControl
+makeNotebookbarToolBox
+makePriceLoop
+make_SOSchain
+make_lag
+mat_additem
+mat_appendcol
+mat_appendrow
+mat_appendvalue
+mat_checkcounts
+mat_colcompact
+mat_collength
+mat_computemax
+mat_create
+mat_equalRows
+mat_expandcolumn
+mat_extractmat
+mat_findcolumn
+mat_findelm
+mat_findins
+mat_free
+mat_get_data
+mat_getitem
+mat_indexrange
+mat_mapreplace
+mat_memopt
+mat_mergemat
+mat_multadd
+mat_multcol
+mat_multrow
+mat_nonzeros
+mat_nz_unused
+mat_rowcompact
+mat_rowlength
+mat_set_rowmap
+mat_setcol
+mat_setitem
+mat_setrow
+mat_setvalue
+mat_shiftcols
+mat_shiftrows
+mat_transpose
+mat_validate
+mat_zerocompact
+mdo_calloc
+mdo_free
+memopt_lp
+mempool_create
+mempool_free
+mempool_obtainVector
+mempool_releaseVector
+minmax_to_scale
+mkallcap(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cs_info const*)
+mkallcap_utf(std::vector<w_char, std::allocator<w_char> >&, int)
+mkallsmall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cs_info const*)
+mkallsmall_utf(std::vector<w_char, std::allocator<w_char> >&, int)
+mkinitcap(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cs_info const*)
+mkinitcap_utf(std::vector<w_char, std::allocator<w_char> >&, int)
+mkinitsmall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cs_info const*)
+mkinitsmall_utf(std::vector<w_char, std::allocator<w_char> >&, int)
+mm_is_valid
+mm_read_banner
+mm_read_mtx_array_size
+mm_read_mtx_crd
+mm_read_mtx_crd_data
+mm_read_mtx_crd_entry
+mm_read_mtx_crd_size
+mm_read_unsymmetric_sparse
+mm_typecode_to_str
+mm_write_banner
+mm_write_mtx_array_size
+mm_write_mtx_crd
+mm_write_mtx_crd_size
+mod
+modifyOF1
+modifyUndoLadder
+msfilter::MSCodec97::MSCodec97(unsigned long, rtl::OUString const&)
+msfilter::MSCodec_CryptoAPI::GetDigestFromSalt(unsigned char const*, unsigned char*)
+msfilter::MSCodec_CryptoAPI::GetEncryptionData()
+msfilter::MSCodec_CryptoAPI::InitCipher(unsigned int)
+msfilter::MSCodec_CryptoAPI::InitKey(unsigned short const*, unsigned char const*)
+msfilter::MSCodec_Std97::GetDigestFromSalt(unsigned char const*, unsigned char*)
+msfilter::rtfutil::OutChar(char16_t, int*, unsigned short, bool*, bool)
+msfilter::util::GETVMLShapeType(rtl::OString const&)
+multi_create
+multi_enteringtheta
+multi_enteringvar
+multi_free
+multi_getvar
+multi_indexSet
+multi_mustupdate
+multi_populateSet
+multi_recompute
+multi_removevar
+multi_resize
+multi_restart
+multi_size
+multi_truncatingvar
+multi_used
+multi_valueInit
+multi_valueList
+my_daxpy
+my_dcopy
+my_ddot
+my_dload
+my_dnormi
+my_dscal
+my_dswap
+my_idamax
+mychomp(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
+myopen(std::basic_ifstream<char, std::char_traits<char> >&, char const*, std::_Ios_Openmode)
+mystrdup(char const*)
+mystrrep(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+mystrsep(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&)
+namecpy
+negate_constraint
+nextActiveLink
+nextInactiveLink
+nextbranch_BB
+normalizeVector
+nss_DumpCertificateCacheInfo@@NSS_3.4
+null_tmp_store
+obtain_column
+ooo::vba::ConcreteXShapeGeometryAttributes::getHeight() const
+ooo::vba::ConcreteXShapeGeometryAttributes::getLeft() const
+ooo::vba::ConcreteXShapeGeometryAttributes::getTop() const
+ooo::vba::ConcreteXShapeGeometryAttributes::getWidth() const
+ooo::vba::ConcreteXShapeGeometryAttributes::setHeight(double)
+ooo::vba::ConcreteXShapeGeometryAttributes::setLeft(double)
+ooo::vba::ConcreteXShapeGeometryAttributes::setTop(double)
+ooo::vba::ConcreteXShapeGeometryAttributes::setWidth(double)
+ooo::vba::ContainerUtilities::FieldInList(com::sun::star::uno::Sequence<rtl::OUString> const&, rtl::OUString const&)
+ooo::vba::DebugHelper::basicexception(com::sun::star::uno::Exception const&, ErrCode, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+ooo::vba::Millimeter::Millimeter()
+ooo::vba::Millimeter::Millimeter(double)
+ooo::vba::Millimeter::getInHundredthsOfOneMillimeter() const
+ooo::vba::Millimeter::setInPoints(double)
+ooo::vba::UserFormGeometryHelper::getHeight() const
+ooo::vba::UserFormGeometryHelper::getInnerHeight() const
+ooo::vba::UserFormGeometryHelper::getInnerWidth() const
+ooo::vba::UserFormGeometryHelper::getLeft() const
+ooo::vba::UserFormGeometryHelper::getOffsetX() const
+ooo::vba::UserFormGeometryHelper::getOffsetY() const
+ooo::vba::UserFormGeometryHelper::getTop() const
+ooo::vba::UserFormGeometryHelper::getWidth() const
+ooo::vba::UserFormGeometryHelper::implGetPos(bool) const
+ooo::vba::UserFormGeometryHelper::implGetSize(bool, bool) const
+ooo::vba::UserFormGeometryHelper::implSetPos(double, bool)
+ooo::vba::UserFormGeometryHelper::implSetSize(double, bool, bool)
+ooo::vba::UserFormGeometryHelper::setHeight(double)
+ooo::vba::UserFormGeometryHelper::setInnerHeight(double)
+ooo::vba::UserFormGeometryHelper::setInnerWidth(double)
+ooo::vba::UserFormGeometryHelper::setLeft(double)
+ooo::vba::UserFormGeometryHelper::setTop(double)
+ooo::vba::UserFormGeometryHelper::setWidth(double)
+ooo::vba::getPixelTo100thMillimeterConversionFactor(com::sun::star::uno::Reference<com::sun::star::awt::XDevice> const&, bool)
+ooo::vba::setPropertyValue(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&, rtl::OUString const&, com::sun::star::uno::Any const&)
+oox::AttributeConversion::decodeHyper(rtl::OUString const&)
+oox::AttributeConversion::decodeInteger(rtl::OUString const&)
+oox::AttributeConversion::decodeIntegerHex(rtl::OUString const&)
+oox::AttributeConversion::decodeUnsigned(rtl::OUString const&)
+oox::AttributeConversion::decodeXString(rtl::OUString const&)
+oox::AttributeList::AttributeList(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::AttributeList::getAttribList() const
+oox::AttributeList::getBool(int) const
+oox::AttributeList::getDateTime(int) const
+oox::AttributeList::getDouble(int) const
+oox::AttributeList::getHighlightColor(int) const
+oox::AttributeList::getHyper(int) const
+oox::AttributeList::getInteger(int) const
+oox::AttributeList::getIntegerHex(int) const
+oox::AttributeList::getString(int) const
+oox::AttributeList::getToken(int) const
+oox::AttributeList::getTokenList(int) const
+oox::AttributeList::getUnsigned(int) const
+oox::AttributeList::getXString(int) const
+oox::BinaryInputStream::copyToStream(oox::BinaryOutputStream&)
+oox::BinaryInputStream::readCharArray(int)
+oox::BinaryInputStream::readCharArrayUC(int, unsigned short)
+oox::BinaryInputStream::readCompressedUnicodeArray(int, bool)
+oox::BinaryInputStream::readNulUnicodeArray()
+oox::BinaryStreamBase::alignToBlock(int, long)
+oox::BinaryStreamBase::~BinaryStreamBase()
+oox::BinaryXInputStream::readData(com::sun::star::uno::Sequence<signed char>&, int, unsigned long)
+oox::BinaryXInputStream::readMemory(void*, int, unsigned long)
+oox::BinaryXInputStream::skip(int, unsigned long)
+oox::BinaryXOutputStream::writeData(com::sun::star::uno::Sequence<signed char> const&, unsigned long)
+oox::BinaryXOutputStream::writeMemory(void const*, int, unsigned long)
+oox::GrabBagStack::isStackEmpty() const
+oox::GraphicHelper::convertHmmToAppFont(com::sun::star::awt::Point const&) const
+oox::GraphicHelper::convertHmmToAppFont(com::sun::star::awt::Size const&) const
+oox::GraphicHelper::convertHmmToScreenPixel(com::sun::star::awt::Point const&) const
+oox::GraphicHelper::convertHmmToScreenPixel(com::sun::star::awt::Size const&) const
+oox::GraphicHelper::convertHmmToScreenPixelX(int) const
+oox::GraphicHelper::convertHmmToScreenPixelY(int) const
+oox::GraphicHelper::convertScreenPixelToHmm(com::sun::star::awt::Size const&) const
+oox::GraphicHelper::convertScreenPixelXToHmm(double) const
+oox::GraphicHelper::convertScreenPixelYToHmm(double) const
+oox::GraphicHelper::getDefaultChartAreaLineStyle()
+oox::GraphicHelper::getDefaultChartAreaLineWidth()
+oox::GraphicHelper::getOriginalSize(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&) const
+oox::GraphicHelper::getPaletteColor(int) const
+oox::GraphicHelper::getSchemeColor(int) const
+oox::GraphicHelper::importGraphic(com::sun::star::uno::Sequence<signed char> const&) const
+oox::GraphicHelper::initializeGraphicMapperIfNeeded() const
+oox::GraphicHelper::setGraphicMapper(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphicMapper> const&)
+oox::IProgressBar::~IProgressBar()
+oox::ModelObjectHelper::getFillBitmap(rtl::OUString const&)
+oox::ModelObjectHelper::hasLineMarker(rtl::OUString const&) const
+oox::ModelObjectHelper::insertFillBitmapXGraphic(com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+oox::ModelObjectHelper::insertFillGradient(com::sun::star::awt::Gradient const&)
+oox::ModelObjectHelper::insertFillHatch(com::sun::star::drawing::Hatch const&)
+oox::ModelObjectHelper::insertLineDash(com::sun::star::drawing::LineDash const&)
+oox::ModelObjectHelper::insertLineMarker(rtl::OUString const&, com::sun::star::drawing::PolyPolygonBezierCoords const&)
+oox::ModelObjectHelper::insertTransGrandient(com::sun::star::awt::Gradient const&)
+oox::ObjectContainer::ObjectContainer(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&, rtl::OUString const&)
+oox::ObjectContainer::createContainer() const
+oox::ObjectContainer::getObject(rtl::OUString const&) const
+oox::ObjectContainer::hasObject(rtl::OUString const&) const
+oox::ObjectContainer::insertObject(rtl::OUString const&, com::sun::star::uno::Any const&, bool)
+oox::ProgressBar::ProgressBar(com::sun::star::uno::Reference<com::sun::star::task::XStatusIndicator> const&, rtl::OUString const&)
+oox::ProgressBar::getPosition() const
+oox::ProgressBar::setPosition(double)
+oox::PropertyMap::assignAll(oox::PropertyMap const&)
+oox::PropertyMap::assignUsed(oox::PropertyMap const&)
+oox::PropertyMap::empty() const
+oox::PropertyMap::erase(int)
+oox::PropertyMap::fillPropertyNameMap(std::map<rtl::OUString, com::sun::star::uno::Any, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Any> > >&) const
+oox::PropertyMap::fillSequences(com::sun::star::uno::Sequence<rtl::OUString>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&) const
+oox::PropertyMap::getPropertyName(int)
+oox::PropertyMap::hasProperty(int) const
+oox::PropertyMap::makePropertySet() const
+oox::PropertyMap::setAnyProperty(int, com::sun::star::uno::Any const&)
+oox::PropertySet::hasProperty(int) const
+oox::PropertySet::implGetPropertyValue(com::sun::star::uno::Any&, rtl::OUString const&) const
+oox::PropertySet::implSetPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+oox::PropertySet::setProperties(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+oox::SegmentProgressBar::getPosition() const
+oox::SegmentProgressBar::setPosition(double)
+oox::SequenceInputStream::SequenceInputStream(com::sun::star::uno::Sequence<signed char> const&)
+oox::SequenceInputStream::readMemory(void*, int, unsigned long)
+oox::SequenceSeekableStream::SequenceSeekableStream(com::sun::star::uno::Sequence<signed char> const&)
+oox::SequenceSeekableStream::close()
+oox::SequenceSeekableStream::size() const
+oox::StorageBase::StorageBase(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, bool)
+oox::StorageBase::StorageBase(com::sun::star::uno::Reference<com::sun::star::io::XStream> const&, bool)
+oox::StorageBase::StorageBase(oox::StorageBase const&, rtl::OUString const&, bool)
+oox::StorageBase::copyStorageToStorage(oox::StorageBase&)
+oox::StorageBase::copyToStorage(oox::StorageBase&, rtl::OUString const&)
+oox::StorageBase::getElementNames(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&) const
+oox::StorageBase::getPath() const
+oox::StorageBase::getSubStorage(rtl::OUString const&, bool)
+oox::StorageBase::getXStorage() const
+oox::StorageBase::isRootStorage() const
+oox::StorageBase::openInputStream(rtl::OUString const&)
+oox::StorageBase::~StorageBase()
+oox::core::ContextHandler2Helper::ContextHandler2Helper(bool, oox::core::XmlFilterBase&)
+oox::core::ContextHandler2Helper::implCharacters(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+oox::core::ContextHandler2Helper::implCreateChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::core::ContextHandler2Helper::implCreateRecordContext(int, oox::SequenceInputStream&)
+oox::core::ContextHandler2Helper::implEndElement(int)
+oox::core::ContextHandler2Helper::implEndRecord(int)
+oox::core::ContextHandler2Helper::implStartElement(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::core::ContextHandler2Helper::implStartRecord(int, oox::SequenceInputStream&)
+oox::core::ContextHandler2Helper::popElementInfo()
+oox::core::ContextHandler2Helper::prepareMceContext(int, oox::AttributeList const&)
+oox::core::ContextHandler2Helper::processCollectedChars()
+oox::core::ContextHandler2Helper::pushElementInfo(int)
+oox::core::ContextHandler2Helper::~ContextHandler2Helper()
+oox::core::ContextHandler::ContextHandler(std::shared_ptr<oox::core::FragmentBaseData> const&)
+oox::core::ContextHandler::characters(rtl::OUString const&)
+oox::core::ContextHandler::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::core::ContextHandler::createRecordContext(int, oox::SequenceInputStream&)
+oox::core::ContextHandler::endFastElement(int)
+oox::core::ContextHandler::endRecord(int)
+oox::core::ContextHandler::getFragmentPath() const
+oox::core::ContextHandler::implSetLocator(com::sun::star::uno::Reference<com::sun::star::xml::sax::XLocator> const&)
+oox::core::ContextHandler::startFastElement(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::core::ContextHandler::startRecord(int, oox::SequenceInputStream&)
+oox::core::FastParser::FastParser()
+oox::core::FastParser::clearDocumentHandler()
+oox::core::FastParser::parseStream(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, rtl::OUString const&)
+oox::core::FastParser::parseStream(com::sun::star::xml::sax::InputSource const&, bool)
+oox::core::FastParser::parseStream(oox::StorageBase&, rtl::OUString const&)
+oox::core::FastParser::registerNamespace(int)
+oox::core::FastParser::setDocumentHandler(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastDocumentHandler> const&)
+oox::core::FastTokenHandler::getImplementationName()
+oox::core::FastTokenHandler::getSupportedServiceNames()
+oox::core::FastTokenHandler::getTokenDirect(char const*, int) const
+oox::core::FastTokenHandler::getTokenFromUTF8(com::sun::star::uno::Sequence<signed char> const&)
+oox::core::FastTokenHandler::getUTF8Identifier(int)
+oox::core::FastTokenHandler::supportsService(rtl::OUString const&)
+oox::core::FastTokenHandler::~FastTokenHandler()
+oox::core::FilterBase::FilterBase(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+oox::core::FilterBase::getFilterData() const
+oox::core::FilterBase::getMainDocumentStream() const
+oox::core::FilterBase::getModelObjectHelper() const
+oox::core::FilterBase::getModelObjectHelperForModel(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&) const
+oox::core::FilterBase::getOleObjectHelper() const
+oox::core::FilterBase::implFinalizeExport(utl::MediaDescriptor&)
+oox::core::FilterBase::implGetInputStream(utl::MediaDescriptor&) const
+oox::core::FilterBase::implGetOutputStream(utl::MediaDescriptor&) const
+oox::core::FilterBase::openOutputStream(rtl::OUString const&) const
+oox::core::FilterBase::setMediaDescriptor(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+oox::core::FilterBase::~FilterBase()
+oox::core::FilterDetect::detect(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+oox::core::FilterDetect::getImplementationName()
+oox::core::FilterDetect::getSupportedServiceNames()
+oox::core::FilterDetect::supportsService(rtl::OUString const&)
+oox::core::FilterDetect::~FilterDetect()
+oox::core::FragmentHandler::FragmentHandler(oox::core::XmlFilterBase&, rtl::OUString const&)
+oox::core::FragmentHandler::FragmentHandler(oox::core::XmlFilterBase&, rtl::OUString const&, std::shared_ptr<oox::core::Relations>)
+oox::core::FragmentHandler::characters(rtl::OUString const&)
+oox::core::FragmentHandler::createFastChildContext(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::core::FragmentHandler::endDocument()
+oox::core::FragmentHandler::endFastElement(int)
+oox::core::FragmentHandler::startDocument()
+oox::core::FragmentHandler::startFastElement(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::core::FragmentHandler::~FragmentHandler()
+oox::core::Relations::Relations(rtl::OUString const&)
+oox::core::Relations::getFragmentPathFromFirstType(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+oox::core::Relations::getFragmentPathFromFirstTypeFromOfficeDoc(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+oox::core::Relations::getFragmentPathFromRelation(oox::core::Relation const&) const
+oox::core::Relations::getInternalTargetFromRelId(rtl::OUString const&) const
+oox::core::Relations::getRelationFromFirstType(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+oox::core::XmlFilterBase::checkDocumentProperties(com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> const&)
+oox::core::XmlFilterBase::getDiagramFontHeights()
+oox::core::XmlFilterBase::getTextFieldStack() const
+oox::core::XmlFilterBase::importCustomFragments(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+oox::core::XmlFilterBase::importFragment(rtl::OUString const&)
+oox::core::XmlFilterBase::importFragment(rtl::Reference<oox::core::FragmentHandler> const&, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastSAXSerializable> const&)
+oox::core::XmlFilterBase::importRelations(rtl::OUString const&)
+oox::core::XmlFilterBase::isMSO2007Document() const
+oox::core::XmlFilterBase::setDiagramFontHeights(std::map<rtl::OUString, std::map<std::shared_ptr<oox::drawingml::Shape>, com::sun::star::uno::Reference<com::sun::star::drawing::XShape>, std::less<std::shared_ptr<oox::drawingml::Shape> >, std::allocator<std::pair<std::shared_ptr<oox::drawingml::Shape> const, com::sun::star::uno::Reference<com::sun::star::drawing::XShape> > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::map<std::shared_ptr<oox::drawingml::Shape>, com::sun::star::uno::Reference<com::sun::star::drawing::XShape>, std::less<std::shared_ptr<oox::drawingml::Shape> >, std::allocator<std::pair<std::shared_ptr<oox::drawingml::Shape> const, com::sun::star::uno::Reference<com::sun::star::drawing::XShape> > > > > > >*)
+oox::core::XmlFilterBase::setMissingExtDrawing()
+oox::crypto::AgileEngine::calculateBlock(std::vector<unsigned char, std::allocator<unsigned char> > const&, std::vector<unsigned char, std::allocator<unsigned char> >&, std::vector<unsigned char, std::allocator<unsigned char> >&, std::vector<unsigned char, std::allocator<unsigned char> >&)
+oox::crypto::AgileEngine::calculateHashFinal(rtl::OUString const&, std::vector<unsigned char, std::allocator<unsigned char> >&)
+oox::crypto::AgileEngine::cryptoType(oox::crypto::AgileEncryptionInfo const&)
+oox::crypto::AgileEngine::decryptEncryptionKey(rtl::OUString const&)
+oox::crypto::AgileEngine::decryptHmacKey()
+oox::crypto::AgileEngine::decryptHmacValue()
+oox::crypto::AgileEngine::encryptBlock(std::vector<unsigned char, std::allocator<unsigned char> > const&, std::vector<unsigned char, std::allocator<unsigned char> >&, std::vector<unsigned char, std::allocator<unsigned char> >&, std::vector<unsigned char, std::allocator<unsigned char> >&)
+oox::crypto::AgileEngine::encryptEncryptionKey(rtl::OUString const&)
+oox::crypto::AgileEngine::encryptHmacKey()
+oox::crypto::AgileEngine::encryptHmacValue()
+oox::crypto::AgileEngine::setupEncryptionKey(rtl::OUString const&)
+oox::crypto::Crypto::Crypto()
+oox::crypto::Standard2007Engine::calculateEncryptionKey(rtl::OUString const&)
+oox::crypto::Standard2007Engine::checkDataIntegrity()
+oox::crypto::Standard2007Engine::generateEncryptionKey(rtl::OUString const&)
+oox::crypto::Standard2007Engine::generateVerifier()
+oox::crypto::Standard2007Engine::readEncryptionInfo(com::sun::star::uno::Reference<com::sun::star::io::XInputStream>&)
+oox::drawingml::ChartExport::ExportContent_()
+oox::drawingml::ChartExport::InitPlotArea()
+oox::drawingml::ChartExport::InitRangeSegmentationProperties(com::sun::star::uno::Reference<com::sun::star::chart2::XChartDocument> const&)
+oox::drawingml::ChartExport::_exportAxis(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, int, char const*, oox::drawingml::AxisIdPair const&)
+oox::drawingml::ChartExport::exportAdditionalShapes(com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> const&)
+oox::drawingml::ChartExport::exportAllSeries(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&, bool&)
+oox::drawingml::ChartExport::exportAreaChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportAxes()
+oox::drawingml::ChartExport::exportAxesId(bool, bool)
+oox::drawingml::ChartExport::exportAxis(oox::drawingml::AxisIdPair const&)
+oox::drawingml::ChartExport::exportBarChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportBitmapFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportBubbleChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportCandleStickSeries(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> > const&, bool&)
+oox::drawingml::ChartExport::exportChart(com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> const&)
+oox::drawingml::ChartExport::exportChartSpace(com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> const&, bool)
+oox::drawingml::ChartExport::exportDataLabels(com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> const&, int, int, oox::drawingml::DataLabelsRange&)
+oox::drawingml::ChartExport::exportDataPoints(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, int, int)
+oox::drawingml::ChartExport::exportDataTable()
+oox::drawingml::ChartExport::exportDoughnutChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportErrorBar(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+oox::drawingml::ChartExport::exportExternalData(com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> const&)
+oox::drawingml::ChartExport::exportFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportFirstSliceAng()
+oox::drawingml::ChartExport::exportGradientFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportGrouping(bool)
+oox::drawingml::ChartExport::exportHatch(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportHiLowLines()
+oox::drawingml::ChartExport::exportLegend(com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> const&)
+oox::drawingml::ChartExport::exportLineChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportManualLayout(com::sun::star::chart2::RelativePosition const&, com::sun::star::chart2::RelativeSize const&, bool)
+oox::drawingml::ChartExport::exportMarker(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportMissingValueTreatment(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportPieChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportPlotArea(com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> const&)
+oox::drawingml::ChartExport::exportRadarChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportScatterChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportScatterChartSeries(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> > const*)
+oox::drawingml::ChartExport::exportSeries(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> > const&, bool&)
+oox::drawingml::ChartExport::exportSeriesCategory(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSequence> const&, int)
+oox::drawingml::ChartExport::exportSeriesText(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSequence> const&)
+oox::drawingml::ChartExport::exportSeriesValues(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataSequence> const&, int)
+oox::drawingml::ChartExport::exportShapeProps(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportSmooth()
+oox::drawingml::ChartExport::exportSolidFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportStockChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportSurfaceChart(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportTextProps(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ChartExport::exportTitle(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, rtl::OUString const*)
+oox::drawingml::ChartExport::exportTrendlines(com::sun::star::uno::Reference<com::sun::star::chart2::XDataSeries> const&)
+oox::drawingml::ChartExport::exportUpDownBars(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportVaryColors(com::sun::star::uno::Reference<com::sun::star::chart2::XChartType> const&)
+oox::drawingml::ChartExport::exportView3D()
+oox::drawingml::ChartExport::getChartType()
+oox::drawingml::ChartExport::getNumberFormatCode(int) const
+oox::drawingml::ChartExport::getSplitCategoriesList(rtl::OUString const&)
+oox::drawingml::ChartExport::isDeep3dChart()
+oox::drawingml::ChartExport::parseFormula(rtl::OUString const&)
+oox::drawingml::ClrScheme::ToAny(com::sun::star::uno::Any&) const
+oox::drawingml::ClrScheme::setColor(int, Color)
+oox::drawingml::Color::addChartTintTransformation(double)
+oox::drawingml::Color::addTransformation(int, int)
+oox::drawingml::Color::clearTransparence()
+oox::drawingml::Color::equals(oox::drawingml::Color const&, oox::GraphicHelper const&, Color) const
+oox::drawingml::Color::getColorTransformationName(int)
+oox::drawingml::Color::getColorTransformationToken(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+oox::drawingml::Color::getDmlPresetColor(int, Color)
+oox::drawingml::Color::getHighlightColor(int, Color)
+oox::drawingml::Color::getLumMod()
+oox::drawingml::Color::getLumOff()
+oox::drawingml::Color::getSchemeColorIndex() const
+oox::drawingml::Color::getTintOrShade()
+oox::drawingml::Color::getTransparency() const
+oox::drawingml::Color::hasTransparency() const
+oox::drawingml::Color::setHighlight(int)
+oox::drawingml::Color::setHslClr(int, int, int)
+oox::drawingml::Color::setPrstClr(int)
+oox::drawingml::Color::setResolvedRgb(Color) const
+oox::drawingml::Color::setScrgbClr(int, int, int)
+oox::drawingml::Color::setSysClr(int, int)
+oox::drawingml::Color::setUnused()
+oox::drawingml::Color::toCrgb() const
+oox::drawingml::Color::toHsl() const
+oox::drawingml::Color::toRgb() const
+oox::drawingml::ConnectorShapeContext::onCreateContext(int, oox::AttributeList const&)
+oox::drawingml::ConnectorShapeContext::~ConnectorShapeContext()
+oox::drawingml::DrawingML::ColorWithIntensity(unsigned int, unsigned int)
+oox::drawingml::DrawingML::CreateOutputStream(rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&, char const*, char const*, rtl::OUString*)
+oox::drawingml::DrawingML::EqualGradients(com::sun::star::awt::Gradient, com::sun::star::awt::Gradient)
+oox::drawingml::DrawingML::GetAlignment(com::sun::star::style::ParagraphAdjust)
+oox::drawingml::DrawingML::GetComponentDir() const
+oox::drawingml::DrawingML::GetCustomGeometryPointValue(com::sun::star::drawing::EnhancedCustomShapeParameter const&, SdrObjCustomShape const&)
+oox::drawingml::DrawingML::GetDatetimeTypeFromDate(SvxDateFormat)
+oox::drawingml::DrawingML::GetDatetimeTypeFromTime(SvxTimeFormat)
+oox::drawingml::DrawingML::GetFieldValue(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, bool&)
+oox::drawingml::DrawingML::GetProperty(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&)
+oox::drawingml::DrawingML::GetPropertyAndState(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyState> const&, rtl::OUString const&, com::sun::star::beans::PropertyState&)
+oox::drawingml::DrawingML::GetRelationCompPrefix() const
+oox::drawingml::DrawingML::GetScriptType(rtl::OUString const&)
+oox::drawingml::DrawingML::HasEnhancedCustomShapeSegmentCommand(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, short)
+oox::drawingml::DrawingML::IsFontworkShape(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::IsGroupShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::DrawingML::SubstituteBullet(char16_t, com::sun::star::awt::FontDescriptor&)
+oox::drawingml::DrawingML::WriteArtisticEffect(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteBlipFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, int)
+oox::drawingml::DrawingML::WriteBlipOrNormalFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&)
+oox::drawingml::DrawingML::WriteColor(Color, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, int)
+oox::drawingml::DrawingML::WriteColor(Color, int)
+oox::drawingml::DrawingML::WriteColor(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, int)
+oox::drawingml::DrawingML::WriteColorTransformations(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, int)
+oox::drawingml::DrawingML::WriteConnectorConnections(EscherConnectorListEntry&, int, int)
+oox::drawingml::DrawingML::WriteCustomGeometry(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, SdrObjCustomShape const&)
+oox::drawingml::DrawingML::WriteCustomGeometryPoint(com::sun::star::drawing::EnhancedCustomShapeParameterPair const&, SdrObjCustomShape const&)
+oox::drawingml::DrawingML::WriteFromTo(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, com::sun::star::awt::Size const&, std::shared_ptr<sax_fastparser::FastSerializerHelper> const&)
+oox::drawingml::DrawingML::WriteGlowEffect(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteGrabBagGradientFill(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::awt::Gradient)
+oox::drawingml::DrawingML::WriteGradientFill(com::sun::star::awt::Gradient, com::sun::star::awt::Gradient, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteGradientStop(unsigned short, Color, int)
+oox::drawingml::DrawingML::WriteGraphicCropProperties(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, Size const&, MapMode const&)
+oox::drawingml::DrawingML::WriteImageBrightnessContrastTransparence(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteLineArrow(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool)
+oox::drawingml::DrawingML::WriteLinespacing(com::sun::star::style::LineSpacing const&)
+oox::drawingml::DrawingML::WriteLstStyles(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, bool&, int&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteMediaNonVisualProperties(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::DrawingML::WriteParagraph(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, bool&, int&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteParagraphNumbering(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, float, short)
+oox::drawingml::DrawingML::WriteParagraphProperties(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&, float, int)
+oox::drawingml::DrawingML::WriteParagraphTabStops(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WritePattFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WritePattFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::drawing::Hatch const&)
+oox::drawingml::DrawingML::WritePolyPolygon(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, bool)
+oox::drawingml::DrawingML::WritePolyPolygon(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, tools::PolyPolygon const&, bool)
+oox::drawingml::DrawingML::WritePresetShape(char const*, MSO_SPT, bool, com::sun::star::beans::PropertyValue const&)
+oox::drawingml::DrawingML::WritePresetShape(char const*, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >&)
+oox::drawingml::DrawingML::WriteRun(com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&, bool&, int&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteRunProperties(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, bool, int, bool, bool&, int&, short, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteShapeEffect(std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+oox::drawingml::DrawingML::WriteShapeStyle(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteSoftEdgeEffect(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteSolidFill(Color, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, int)
+oox::drawingml::DrawingML::WriteSolidFill(Color, int)
+oox::drawingml::DrawingML::WriteSolidFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::DrawingML::WriteSolidFill(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, int)
+oox::drawingml::DrawingML::WriteSrcRectXGraphic(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+oox::drawingml::DrawingML::WriteStyleProperties(int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+oox::drawingml::DrawingML::WriteText(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, bool, bool, int, bool)
+oox::drawingml::DrawingML::WriteTransformation(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, tools::Rectangle const&, int, bool, bool, int, bool)
+oox::drawingml::DrawingML::WriteWdpPicture(rtl::OUString const&, com::sun::star::uno::Sequence<signed char> const&)
+oox::drawingml::DrawingML::WriteXGraphicBlip(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&, bool)
+oox::drawingml::DrawingML::WriteXGraphicBlipFill(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&, int, bool, bool)
+oox::drawingml::DrawingML::WriteXGraphicBlipMode(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+oox::drawingml::DrawingML::WriteXGraphicStretch(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, com::sun::star::uno::Reference<com::sun::star::graphic::XGraphic> const&)
+oox::drawingml::DrawingML::getBulletMarginIndentation(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, short, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+oox::drawingml::DrawingML::writeDiagramRels(com::sun::star::uno::Sequence<com::sun::star::uno::Sequence<com::sun::star::uno::Any> > const&, com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, int)
+oox::drawingml::GraphicShapeContext::onCreateContext(int, oox::AttributeList const&)
+oox::drawingml::GraphicalObjectFrameContext::onCreateContext(int, oox::AttributeList const&)
+oox::drawingml::GraphicalObjectFrameContext::onEndElement()
+oox::drawingml::Shape::Shape(std::shared_ptr<oox::drawingml::Shape> const&)
+oox::drawingml::Shape::addChildren(oox::core::XmlFilterBase&, oox::drawingml::Shape&, oox::drawingml::Theme const*, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, std::map<rtl::OUString, std::shared_ptr<oox::drawingml::Shape>, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::shared_ptr<oox::drawingml::Shape> > > >*, basegfx::B2DHomMatrix const&)
+oox::drawingml::Shape::applyShapeReference(oox::drawingml::Shape const&, bool)
+oox::drawingml::Shape::cloneFillProperties()
+oox::drawingml::Shape::convertSmartArtToMetafile(oox::core::XmlFilterBase const&)
+oox::drawingml::Shape::createAndInsert(oox::core::XmlFilterBase&, rtl::OUString const&, oox::drawingml::Theme const*, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, bool, bool, basegfx::B2DHomMatrix&, oox::drawingml::FillProperties const&, std::shared_ptr<oox::drawingml::Shape>)
+oox::drawingml::Shape::finalizeServiceName(oox::core::XmlFilterBase&, rtl::OUString const&, com::sun::star::awt::Rectangle const&)
+oox::drawingml::Shape::getActualEffectProperties(oox::drawingml::Theme const*) const
+oox::drawingml::Shape::getActualFillProperties(oox::drawingml::Theme const*, oox::drawingml::FillProperties const*) const
+oox::drawingml::Shape::getActualLineProperties(oox::drawingml::Theme const*) const
+oox::drawingml::Shape::getShapeStyleRef(int) const
+oox::drawingml::Shape::getTableProperties()
+oox::drawingml::Shape::keepDiagramCompatibilityInfo()
+oox::drawingml::Shape::keepDiagramDrawing(oox::core::XmlFilterBase&, rtl::OUString const&)
+oox::drawingml::Shape::putPropertiesToGrabBag(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+oox::drawingml::Shape::putPropertyToGrabBag(com::sun::star::beans::PropertyValue const&)
+oox::drawingml::Shape::putPropertyToGrabBag(rtl::OUString const&, com::sun::star::uno::Any const&)
+oox::drawingml::Shape::renderDiagramToGraphic(oox::core::XmlFilterBase const&)
+oox::drawingml::Shape::resolveRelationshipsOfTypeFromOfficeDoc(oox::core::XmlFilterBase&, rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+oox::drawingml::Shape::setChartType(bool)
+oox::drawingml::Shape::setDefaults(bool)
+oox::drawingml::Shape::setDiagramType()
+oox::drawingml::Shape::setLockedCanvas(bool)
+oox::drawingml::Shape::setMasterTextListStyle(std::shared_ptr<oox::drawingml::TextListStyle> const&)
+oox::drawingml::Shape::setOleObjectType()
+oox::drawingml::Shape::setServiceName(char const*)
+oox::drawingml::Shape::setTableType()
+oox::drawingml::Shape::setTextBody(std::shared_ptr<oox::drawingml::TextBody> const&)
+oox::drawingml::Shape::setTextBox(bool)
+oox::drawingml::Shape::setWps(bool)
+oox::drawingml::Shape::syncDiagramFontHeights()
+oox::drawingml::ShapeContext::onCreateContext(int, oox::AttributeList const&)
+oox::drawingml::ShapeContext::~ShapeContext()
+oox::drawingml::ShapeExport::GetNewShapeID(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::GetNewShapeID(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, oox::core::XmlFilterBase*)
+oox::drawingml::ShapeExport::GetShapeID(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::GetShapeName(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::MapSize(com::sun::star::awt::Size const&) const
+oox::drawingml::ShapeExport::NonEmptyText(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+oox::drawingml::ShapeExport::WriteBorderLine(int, com::sun::star::table::BorderLine2 const&)
+oox::drawingml::ShapeExport::WriteClosedPolyPolygonShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteConnectorShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteCustomShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteEllipseShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteGraphicObjectShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteGraphicObjectShapePart(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, Graphic const*)
+oox::drawingml::ShapeExport::WriteGroupShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteLineShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteMathShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteNonVisualProperties(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteOLE2Shape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteOpenPolyPolygonShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WritePolyPolygonShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, bool)
+oox::drawingml::ShapeExport::WriteRectangleShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteTable(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteTableCellBorders(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ShapeExport::WriteTableCellProperties(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&)
+oox::drawingml::ShapeExport::WriteTableShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapeExport::WriteUnknownShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+oox::drawingml::ShapePropertyInfo::ShapePropertyInfo(o3tl::enumarray<oox::drawingml::ShapeProperty, int> const&, bool, bool, bool, bool, bool)
+oox::drawingml::ShapePropertyMap::hasNamedLineMarkerInTable(rtl::OUString const&) const
+oox::drawingml::ShapePropertyMap::setAnyProperty(oox::drawingml::ShapeProperty, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setFillBitmap(int, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setFillBitmapName(com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setFillGradient(int, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setFillHatch(int, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setGradientTrans(int, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setLineDash(int, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::setLineMarker(int, com::sun::star::uno::Any const&)
+oox::drawingml::ShapePropertyMap::supportsProperty(oox::drawingml::ShapeProperty) const
+oox::drawingml::Theme::addTheme(com::sun::star::uno::Reference<com::sun::star::drawing::XDrawPage> const&) const
+oox::drawingml::Theme::getEffectStyle(int) const
+oox::drawingml::Theme::getFillStyle(int) const
+oox::drawingml::Theme::getFontStyle(int) const
+oox::drawingml::Theme::getLineStyle(int) const
+oox::drawingml::Theme::resolveFont(rtl::OUString const&) const
+oox::drawingml::ThemeFragmentHandler::onCreateContext(int, oox::AttributeList const&)
+oox::drawingml::ThemeFragmentHandler::~ThemeFragmentHandler()
+oox::drawingml::chart::ChartConverter::convertFromModel(oox::core::XmlFilterBase&, oox::drawingml::chart::ChartSpaceModel&, com::sun::star::uno::Reference<com::sun::star::chart2::XChartDocument> const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, com::sun::star::awt::Point const&, com::sun::star::awt::Size const&)
+oox::drawingml::chart::ChartConverter::createDataProvider(com::sun::star::uno::Reference<com::sun::star::chart2::XChartDocument> const&)
+oox::drawingml::chart::ChartConverter::createDataSequence(com::sun::star::uno::Reference<com::sun::star::chart2::data::XDataProvider> const&, oox::drawingml::chart::DataSequenceModel const&, rtl::OUString const&, rtl::OUString const&)
+oox::formulaimport::XmlStream::Tag::Tag(int, com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastAttributeList> const&)
+oox::formulaimport::XmlStream::Tag::Tag(int, oox::formulaimport::XmlStream::AttributeList const&)
+oox::formulaimport::XmlStream::checkTag(int, bool)
+oox::formulaimport::XmlStream::currentTag() const
+oox::formulaimport::XmlStream::findTagInternal(int, bool)
+oox::formulaimport::XmlStream::moveToNextTag()
+oox::formulaimport::XmlStream::skipElementInternal(int, bool)
+oox::ole::AxCheckBoxModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxCheckBoxModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxCheckBoxModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxCheckBoxModel::getControlType() const
+oox::ole::AxComboBoxModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxComboBoxModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxComboBoxModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxComboBoxModel::getControlType() const
+oox::ole::AxCommandButtonModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxCommandButtonModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxCommandButtonModel::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxCommandButtonModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxCommandButtonModel::getControlType() const
+oox::ole::AxCommandButtonModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxCommandButtonModel::importPictureData(int, oox::BinaryInputStream&)
+oox::ole::AxCommandButtonModel::importProperty(int, rtl::OUString const&)
+oox::ole::AxContainerModelBase::AxContainerModelBase(bool)
+oox::ole::AxContainerModelBase::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxContainerModelBase::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxContainerModelBase::importClassTable(oox::BinaryInputStream&, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+oox::ole::AxContainerModelBase::importProperty(int, rtl::OUString const&)
+oox::ole::AxControlModelBase::AxControlModelBase()
+oox::ole::AxControlModelBase::importProperty(int, rtl::OUString const&)
+oox::ole::AxFontData::AxFontData()
+oox::ole::AxFontData::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxFontData::getHeightPoints() const
+oox::ole::AxFontData::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxFontData::importGuidAndFont(oox::BinaryInputStream&)
+oox::ole::AxFontData::importStdFont(oox::BinaryInputStream&)
+oox::ole::AxFontDataModel::AxFontDataModel(bool)
+oox::ole::AxFontDataModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxFontDataModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxFontDataModel::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxFontDataModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxFontDataModel::importProperty(int, rtl::OUString const&)
+oox::ole::AxFrameModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxFrameModel::getControlType() const
+oox::ole::AxImageModel::AxImageModel()
+oox::ole::AxImageModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxImageModel::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxImageModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxImageModel::getControlType() const
+oox::ole::AxImageModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxImageModel::importPictureData(int, oox::BinaryInputStream&)
+oox::ole::AxImageModel::importProperty(int, rtl::OUString const&)
+oox::ole::AxLabelModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxLabelModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxLabelModel::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxLabelModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxLabelModel::getControlType() const
+oox::ole::AxLabelModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxLabelModel::importProperty(int, rtl::OUString const&)
+oox::ole::AxListBoxModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxListBoxModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxListBoxModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxListBoxModel::getControlType() const
+oox::ole::AxMorphDataModelBase::AxMorphDataModelBase()
+oox::ole::AxMorphDataModelBase::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxMorphDataModelBase::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxMorphDataModelBase::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxMorphDataModelBase::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxMorphDataModelBase::importPictureData(int, oox::BinaryInputStream&)
+oox::ole::AxMorphDataModelBase::importProperty(int, rtl::OUString const&)
+oox::ole::AxMultiPageModel::AxMultiPageModel()
+oox::ole::AxMultiPageModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxMultiPageModel::getControlType() const
+oox::ole::AxMultiPageModel::importPageAndMultiPageProperties(oox::BinaryInputStream&, int)
+oox::ole::AxNumericFieldModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxNumericFieldModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxNumericFieldModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxNumericFieldModel::getControlType() const
+oox::ole::AxOptionButtonModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxOptionButtonModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxOptionButtonModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxOptionButtonModel::getControlType() const
+oox::ole::AxPageModel::AxPageModel()
+oox::ole::AxPageModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxPageModel::getControlType() const
+oox::ole::AxScrollBarModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxScrollBarModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxScrollBarModel::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxScrollBarModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxScrollBarModel::getControlType() const
+oox::ole::AxScrollBarModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxScrollBarModel::importProperty(int, rtl::OUString const&)
+oox::ole::AxSpinButtonModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxSpinButtonModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxSpinButtonModel::exportBinaryModel(oox::BinaryOutputStream&)
+oox::ole::AxSpinButtonModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxSpinButtonModel::getControlType() const
+oox::ole::AxSpinButtonModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxSpinButtonModel::importProperty(int, rtl::OUString const&)
+oox::ole::AxTabStripModel::AxTabStripModel()
+oox::ole::AxTabStripModel::getControlType() const
+oox::ole::AxTabStripModel::importBinaryModel(oox::BinaryInputStream&)
+oox::ole::AxTextBoxModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxTextBoxModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxTextBoxModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxTextBoxModel::getControlType() const
+oox::ole::AxToggleButtonModel::AxToggleButtonModel()
+oox::ole::AxToggleButtonModel::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::AxToggleButtonModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxToggleButtonModel::exportCompObj(oox::BinaryOutputStream&)
+oox::ole::AxToggleButtonModel::getControlType() const
+oox::ole::AxUserFormModel::AxUserFormModel()
+oox::ole::AxUserFormModel::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::AxUserFormModel::getControlType() const
+oox::ole::ControlConverter::convertAxBackground(oox::PropertyMap&, unsigned int, unsigned int, oox::ole::ApiTransparencyMode) const
+oox::ole::ControlConverter::convertAxBorder(oox::PropertyMap&, unsigned int, int, int) const
+oox::ole::ControlConverter::convertAxOrientation(oox::PropertyMap&, std::pair<int, int> const&, int)
+oox::ole::ControlConverter::convertAxPicture(oox::PropertyMap&, com::sun::star::uno::Sequence<signed char> const&, int) const
+oox::ole::ControlConverter::convertAxPicture(oox::PropertyMap&, com::sun::star::uno::Sequence<signed char> const&, unsigned int) const
+oox::ole::ControlConverter::convertAxState(oox::PropertyMap&, rtl::OUString const&, int, oox::ole::ApiDefaultStateMode, bool)
+oox::ole::ControlConverter::convertAxVisualEffect(oox::PropertyMap&, int)
+oox::ole::ControlConverter::convertColor(oox::PropertyMap&, int, unsigned int) const
+oox::ole::ControlConverter::convertOrientation(oox::PropertyMap&, bool)
+oox::ole::ControlConverter::convertPicture(oox::PropertyMap&, com::sun::star::uno::Sequence<signed char> const&) const
+oox::ole::ControlConverter::convertPosition(oox::PropertyMap&, std::pair<int, int> const&) const
+oox::ole::ControlConverter::convertScrollBar(oox::PropertyMap&, int, int, int, int, int, bool)
+oox::ole::ControlConverter::convertScrollabilitySettings(oox::PropertyMap&, std::pair<int, int> const&, std::pair<int, int> const&, int) const
+oox::ole::ControlConverter::convertSize(oox::PropertyMap&, std::pair<int, int> const&) const
+oox::ole::ControlConverter::convertToAxBorder(oox::PropertySet const&, unsigned int&, int&, int&)
+oox::ole::ControlConverter::convertToAxOrientation(oox::PropertySet const&, int&)
+oox::ole::ControlConverter::convertToAxState(oox::PropertySet const&, rtl::OUString&, int&, oox::ole::ApiDefaultStateMode)
+oox::ole::ControlConverter::convertToAxVisualEffect(oox::PropertySet const&, int&)
+oox::ole::ControlConverter::convertToMSColor(oox::PropertySet const&, int, unsigned int&, unsigned int)
+oox::ole::ControlConverter::convertToMSOrientation(oox::PropertySet const&, bool&)
+oox::ole::ControlConverter::convertVerticalAlign(oox::PropertyMap&, int)
+oox::ole::ControlModelBase::ControlModelBase()
+oox::ole::ControlModelBase::convertFromProperties(oox::PropertySet&, oox::ole::ControlConverter const&)
+oox::ole::ControlModelBase::convertProperties(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::ControlModelBase::convertSize(oox::PropertyMap&, oox::ole::ControlConverter const&) const
+oox::ole::ControlModelBase::getServiceName() const
+oox::ole::ControlModelBase::importPictureData(int, oox::BinaryInputStream&)
+oox::ole::ControlModelBase::importProperty(int, rtl::OUString const&)
+oox::ole::EmbeddedControl::convertFromProperties(com::sun::star::uno::Reference<com::sun::star::awt::XControlModel> const&, oox::ole::ControlConverter const&)
+oox::ole::EmbeddedControl::convertProperties(com::sun::star::uno::Reference<com::sun::star::awt::XControlModel> const&, oox::ole::ControlConverter const&) const
+oox::ole::EmbeddedControl::createModelFromGuid(rtl::OUString const&)
+oox::ole::EmbeddedControl::getServiceName() const
+oox::ole::MSConvertOCXControls::importControlFromStream(oox::BinaryInputStream&, com::sun::star::uno::Reference<com::sun::star::form::XFormComponent>&, rtl::OUString const&)
+oox::ole::MSConvertOCXControls::importControlFromStream(oox::BinaryInputStream&, com::sun::star::uno::Reference<com::sun::star::form::XFormComponent>&, rtl::OUString const&, int)
+oox::ole::OleFormCtrlExportHelper::exportCompObj(com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+oox::ole::OleFormCtrlExportHelper::exportName(com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+oox::ole::OleHelper::decodeOleColor(oox::GraphicHelper const&, unsigned int, bool)
+oox::ole::OleHelper::exportGuid(oox::BinaryOutputStream&, SvGlobalName const&)
+oox::ole::OleHelper::importGuid(oox::BinaryInputStream&)
+oox::ole::OleHelper::importStdFont(oox::ole::StdFontInfo&, oox::BinaryInputStream&, bool)
+oox::ole::OleHelper::importStdPic(com::sun::star::uno::Sequence<signed char>&, oox::BinaryInputStream&)
+oox::ole::OleStorage::OleStorage(oox::ole::OleStorage const&, com::sun::star::uno::Reference<com::sun::star::container::XNameContainer> const&, rtl::OUString const&, bool)
+oox::ole::OleStorage::OleStorage(oox::ole::OleStorage const&, com::sun::star::uno::Reference<com::sun::star::io::XStream> const&, rtl::OUString const&)
+oox::ole::OleStorage::implCommit() const
+oox::ole::OleStorage::implGetElementNames(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&) const
+oox::ole::OleStorage::implGetXStorage() const
+oox::ole::OleStorage::implIsStorage() const
+oox::ole::OleStorage::implOpenInputStream(rtl::OUString const&)
+oox::ole::OleStorage::implOpenOutputStream(rtl::OUString const&)
+oox::ole::OleStorage::implOpenSubStorage(rtl::OUString const&, bool)
+oox::ole::OleStorage::initStorage(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&)
+oox::ole::OleStorage::initStorage(com::sun::star::uno::Reference<com::sun::star::io::XStream> const&)
+oox::ole::VbaMacroAttacherBase::resolveAndAttachMacro(com::sun::star::uno::Reference<com::sun::star::script::vba::XVBAMacroResolver> const&)
+oox::ole::VbaProject::copyStorage(oox::StorageBase&)
+oox::ole::VbaProject::createBasicLibrary()
+oox::ole::VbaProject::createDialogLibrary()
+oox::ole::VbaProject::getLibraryContainer(int)
+oox::ole::VbaProject::importVba(oox::StorageBase&, oox::GraphicHelper const&)
+oox::ole::VbaProject::openLibrary(int)
+oox::ole::VbaProject::prepareImport()
+oox::shape::ShapeContextHandler::getChartShapeContext(int)
+oox::shape::ShapeContextHandler::getContextHandler(int)
+oox::shape::ShapeContextHandler::getDiagramShapeContext()
+oox::shape::ShapeContextHandler::getDrawingShapeContext()
+oox::shape::ShapeContextHandler::getGraphicShapeContext(int)
+oox::shape::ShapeContextHandler::getLockedCanvasContext(int)
+oox::shape::ShapeContextHandler::getWpgContext(int)
+oox::shape::ShapeContextHandler::getWpsContext(int, int)
+oox::shape::ShapeContextHandler::~ShapeContextHandler()
+oox::shape::ShapeFilterBase::getChartConverter()
+oox::shape::ShapeFilterBase::getCurrentTheme() const
+oox::shape::ShapeFilterBase::getImplementationName()
+oox::shape::ShapeFilterBase::getSchemeColor(int) const
+oox::shape::ShapeFilterBase::getTableStyles()
+oox::shape::ShapeFilterBase::getVmlDrawing()
+oox::shape::ShapeFilterBase::implCreateGraphicHelper() const
+oox::shape::ShapeFilterBase::implCreateVbaProject() const
+oox::shape::ShapeFilterBase::setCurrentTheme(std::shared_ptr<oox::drawingml::Theme> const&)
+oox::shape::ShapeFilterBase::~ShapeFilterBase()
+oox::vml::ConversionHelper::decodeBool(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+oox::vml::ConversionHelper::decodeMeasureToEmu(oox::GraphicHelper const&, rtl::OUString const&, int, bool, bool)
+oox::vml::ConversionHelper::decodeMeasureToHmm(oox::GraphicHelper const&, rtl::OUString const&, int, bool, bool)
+oox::vml::ConversionHelper::decodeMeasureToTwip(oox::GraphicHelper const&, rtl::OUString const&, int, bool, bool)
+oox::vml::ConversionHelper::decodePercent(rtl::OUString const&, double)
+oox::vml::ConversionHelper::decodeRotation(rtl::OUString const&)
+oox::vml::ConversionHelper::decodeVmlPath(std::vector<std::vector<com::sun::star::awt::Point, std::allocator<com::sun::star::awt::Point> >, std::allocator<std::vector<com::sun::star::awt::Point, std::allocator<com::sun::star::awt::Point> > > >&, std::vector<std::vector<com::sun::star::drawing::PolygonFlags, std::allocator<com::sun::star::drawing::PolygonFlags> >, std::allocator<std::vector<com::sun::star::drawing::PolygonFlags, std::allocator<com::sun::star::drawing::PolygonFlags> > > >&, rtl::OUString const&)
+oox::vml::ConversionHelper::separatePair(rtl::OUString&, rtl::OUString&, rtl::OUString const&, char16_t)
+oox::vml::Drawing::convertClientAnchor(com::sun::star::awt::Rectangle&, rtl::OUString const&) const
+oox::vml::Drawing::createAndInsertClientXShape(oox::vml::ShapeBase const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, com::sun::star::awt::Rectangle const&) const
+oox::vml::Drawing::createAndInsertXShape(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, com::sun::star::awt::Rectangle const&) const
+oox::vml::Drawing::finalizeFragmentImport()
+oox::vml::Drawing::getControlInfo(rtl::OUString const&) const
+oox::vml::Drawing::getLocalShapeIndex(rtl::OUString const&) const
+oox::vml::Drawing::isShapeSupported(oox::vml::ShapeBase const&) const
+oox::vml::Drawing::notifyXShapeInserted(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&, com::sun::star::awt::Rectangle const&, oox::vml::ShapeBase const&, bool)
+oox::vml::Drawing::registerBlockId(int)
+oox::vml::FillModel::assignUsed(oox::vml::FillModel const&)
+oox::vml::ShapeBase::ShapeBase(oox::vml::Drawing&)
+oox::vml::ShapeBase::calcShapeRectangle(oox::vml::ShapeParentAnchor const*) const
+oox::vml::ShapeBase::convertAndInsert(com::sun::star::uno::Reference<com::sun::star::drawing::XShapes> const&, oox::vml::ShapeParentAnchor const*) const
+oox::vml::ShapeBase::convertShapeProperties(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&) const
+oox::vml::ShapeBase::finalizeFragmentImport()
+oox::vml::ShapeBase::getChildById(rtl::OUString const&) const
+oox::vml::ShapeBase::getChildTypeById(rtl::OUString const&) const
+oox::vml::ShapeBase::getContainer() const
+oox::vml::ShapeBase::setContainer(oox::vml::ShapeContainer*)
+oox::vml::TextBox::TextBox(oox::vml::ShapeTypeModel&)
+oox::vml::TextBox::appendPortion(oox::vml::TextParagraphModel const&, oox::vml::TextFontModel const&, rtl::OUString const&)
+oox::vml::TextBox::convert(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&) const
+oox::vml::VMLExport::AddFlipXY()
+oox::vml::VMLExport::AddLineDimensions(tools::Rectangle const&)
+oox::vml::VMLExport::AddRectangleDimensions(rtl::OStringBuffer&, tools::Rectangle const&, bool)
+oox::vml::VMLExport::ShapeIdString(unsigned int)
+openclwrapper::errorString(int)
+openclwrapper::setOpenCLCmdQueuePosition(int)
+operator+(DateTime const&, tools::Time const&)
+operator-(DateTime const&, int)
+operator-(DateTime const&, tools::Time const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, CodeCompleteDataCache const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, OpCode const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, OpenCLConfig const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, OpenCLConfig::ImplMatcher const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, OpenCLDeviceInfo const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, OpenCLPlatformInfo const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, ScRangeList const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, SwIndex const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, SwPaM const&)
+operator<<(std::basic_ostream<char, std::char_traits<char> >&, std::set<OpenCLConfig::ImplMatcher, std::less<OpenCLConfig::ImplMatcher>, std::allocator<OpenCLConfig::ImplMatcher> > const&)
+operator==(BigInt const&, BigInt const&)
+operator==(SkMatrix const&, SkMatrix const&)
+operator==(SkPaint const&, SkPaint const&)
+operator==(SkPath const&, SkPath const&)
+operator>=(Fraction const&, Fraction const&)
+org_libreoffice_chart2_Chart2ToolboxController
+org_libreoffice_comp_chart2_sidebar_ChartPanelFactory
+org_openoffice_comp_abp_OAddressBookSourcePilot
+org_openoffice_comp_comphelper_EnumerableMap
+parse_array(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::vector<w_char, std::allocator<w_char> >&, int, int)
+parse_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, int)
+partial_activeBlocks
+partial_blockEnd
+partial_blockNextPos
+partial_blockStart
+partial_blockStep
+partial_countBlocks
+partial_createBlocks
+partial_findBlocks
+partial_freeBlocks
+partial_isVarActive
+pasteFromClip(ScDocument*, ScRange const&, ScDocument*)
+pasteOneCellFromClip(ScDocument*, ScRange const&, ScDocument*, InsertDeleteFlags)
+performiteration
+perturb_bounds
+pgtls_close
+pgtls_get_peer_certificate_hash
+pgtls_init
+pgtls_init_library
+pgtls_open_client
+pgtls_read
+pgtls_read_pending
+pgtls_verify_peer_name_matches_certificate_guts
+pgtls_write
+phonet(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, phonetable&)
+popPackedVector
+pop_BB
+pop_basis
+posmat
+post_BB
+post_MIPOBJ
+postprocess
+postsolve
+pre_BB
+pre_MIPOBJ
+prepareMDO
+prepare_GUB
+preprocess
+presolve
+prevActiveLink
+prevInactiveLink
+primloop
+printFormula(ScDocument*, short, int, short, char const*)
+printRange(ScDocument*, ScRange const&, char const*, bool)
+printRange(ScDocument*, ScRange const&, rtl::OString const&, bool)
+print_L0
+print_constraints
+print_debugdump
+print_duals
+print_indent
+print_lp
+print_objective
+print_scales
+print_solution
+print_str
+print_tableau
+printfPQExpBuffer
+printmatSQ
+printmatUT
+printvec
+privateSnippetExecutor
+probe_BB
+prod_Ax
+prod_xA
+prod_xA2
+psp::JobData::constructFromStreamBuffer(void const*, unsigned int, psp::JobData&)
+psp::JobData::getStreamBuffer(void*&, unsigned int&)
+psp::JobData::resolveDefaultBackend()
+psp::JobData::setCollate(bool)
+psp::JobData::setDefaultBackend(bool)
+psp::JobData::setPaper(int, int)
+psp::JobData::setPaperBin(int)
+psp::PrintFontManager::PrintFontManager()
+psp::PrintFontManager::Substitute(vcl::font::FontSelectPattern&, rtl::OUString&)
+psp::PrintFontManager::addFontFile(rtl::OUString const&)
+psp::PrintFontManager::addFontconfigDir(rtl::OString const&)
+psp::PrintFontManager::analyzeFontFile(int, rtl::OString const&, char const*) const
+psp::PrintFontManager::analyzeSfntFamilyName(void const*, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&)
+psp::PrintFontManager::analyzeSfntFile(psp::PrintFontManager::PrintFont&) const
+psp::PrintFontManager::convertSfntName(void*)
+psp::PrintFontManager::countFontconfigFonts()
+psp::PrintFontManager::createFontSubset(FontSubsetInfo&, int, rtl::OUString const&, unsigned short const*, unsigned char const*, int*, int)
+psp::PrintFontManager::deinitFontconfig()
+psp::PrintFontManager::fillPrintFontInfo(psp::PrintFontManager::PrintFont const&, psp::FastPrintFontInfo&)
+psp::PrintFontManager::fillPrintFontInfo(psp::PrintFontManager::PrintFont&, psp::PrintFontInfo&) const
+psp::PrintFontManager::findFontFileID(int, rtl::OString const&, int, int) const
+psp::PrintFontManager::findFontFileIDs(int, rtl::OString const&) const
+psp::PrintFontManager::getDirectory(int) const
+psp::PrintFontManager::getDirectoryAtom(rtl::OString const&)
+psp::PrintFontManager::getFontAscend(int)
+psp::PrintFontManager::getFontBoundingBox(int, int&, int&, int&, int&)
+psp::PrintFontManager::getFontDescend(int)
+psp::PrintFontManager::getFontInfo(int, psp::PrintFontInfo&) const
+psp::PrintFontManager::getFontOptions(FontAttributes const&, int)
+psp::PrintFontManager::getGlyphWidths(int, bool, std::vector<int, std::allocator<int> >&, std::map<char16_t, unsigned int, std::less<char16_t>, std::allocator<std::pair<char16_t const, unsigned int> > >&)
+psp::PrintFontManager::getPSName(int)
+psp::PrintFontManager::initFontconfig()
+psp::PrintFontManager::initialize()
+psp::PrintFontManager::matchFamilyName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+psp::PrintFontManager::~PrintFontManager()
+psp::PrinterInfoManager::PrinterInfoManager(psp::PrinterInfoManager::Type)
+psp::PrinterInfoManager::checkFeatureToken(rtl::OUString const&, char const*) const
+psp::PrinterInfoManager::checkPrintersChanged(bool)
+psp::PrinterInfoManager::endSpool(rtl::OUString const&, rtl::OUString const&, _IO_FILE*, psp::JobData const&, bool, rtl::OUString const&)
+psp::PrinterInfoManager::initialize()
+psp::PrinterInfoManager::release()
+psp::PrinterInfoManager::setDefaultPaper(psp::PPDContext&) const
+psp::PrinterInfoManager::setupJobContextData(psp::JobData&)
+psp::PrinterInfoManager::startSpool(rtl::OUString const&, bool)
+psp::PrinterInfoManager::~PrinterInfoManager()
+pushPackedVector
+push_BB
+push_basis
+put_abortfunc
+put_bb_branchfunc
+put_bb_nodefunc
+put_logfunc
+put_msgfunc
+puthash
+pyuno::Runtime::Runtime(pyuno::Runtime const&)
+pyuno::Runtime::operator=(pyuno::Runtime const&)
+pyuno::Runtime::pyIterUnpack(_object*, com::sun::star::uno::Any&) const
+rand_uniform
+randomdens
+randomseed
+rcfbound_BB
+read_LP
+read_LP1
+read_MPS
+read_XLI
+read_basis
+read_error
+read_freeMPS
+read_freemps
+read_lp
+read_lp1
+read_lpex
+read_mps
+read_params
+recompute_solution
+refactRecent
+reg_closeKey(void*)
+reg_closeRegistry(void*)
+reg_dumpRegistry(void*)
+reg_openKey(void*, _rtl_uString*, void**)
+reg_openRegistry(_rtl_uString*, void**)
+reg_openRootKey(void*, void**)
+relationChar
+removeLink
+remove_ignored_chars(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+remove_ignored_chars_utf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::vector<w_char, std::allocator<w_char> > const&)
+rename_var
+replaceBasisVar
+report
+reportdesign::OReportDefinition::OReportDefinition(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+reportdesign::OReportDefinition::OReportDefinition(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShape>&)
+reportdesign::OReportDefinition::WriteThroughComponent(com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&, com::sun::star::uno::Reference<com::sun::star::lang::XComponent> const&, char const*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+reportdesign::OReportDefinition::WriteThroughComponent(com::sun::star::uno::Reference<com::sun::star::lang::XComponent> const&, char const*, char const*, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+reportdesign::OReportDefinition::acquire()
+reportdesign::OReportDefinition::addCloseListener(com::sun::star::uno::Reference<com::sun::star::util::XCloseListener> const&)
+reportdesign::OReportDefinition::addDocumentEventListener(com::sun::star::uno::Reference<com::sun::star::document::XDocumentEventListener> const&)
+reportdesign::OReportDefinition::addEventListener(com::sun::star::uno::Reference<com::sun::star::document::XEventListener> const&)
+reportdesign::OReportDefinition::addModifyListener(com::sun::star::uno::Reference<com::sun::star::util::XModifyListener> const&)
+reportdesign::OReportDefinition::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+reportdesign::OReportDefinition::addStorageChangeListener(com::sun::star::uno::Reference<com::sun::star::document::XStorageChangeListener> const&)
+reportdesign::OReportDefinition::addTitleChangeListener(com::sun::star::uno::Reference<com::sun::star::frame::XTitleChangeListener> const&)
+reportdesign::OReportDefinition::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+reportdesign::OReportDefinition::attachResource(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+reportdesign::OReportDefinition::close(unsigned char)
+reportdesign::OReportDefinition::connectController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+reportdesign::OReportDefinition::create(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)
+reportdesign::OReportDefinition::createClone()
+reportdesign::OReportDefinition::createInstance(rtl::OUString const&)
+reportdesign::OReportDefinition::createInstanceWithArguments(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+reportdesign::OReportDefinition::disableSetModified()
+reportdesign::OReportDefinition::disconnectController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+reportdesign::OReportDefinition::dispose()
+reportdesign::OReportDefinition::disposing()
+reportdesign::OReportDefinition::enableSetModified()
+reportdesign::OReportDefinition::fillArgs(utl::MediaDescriptor&)
+reportdesign::OReportDefinition::getActiveConnection()
+reportdesign::OReportDefinition::getArgs()
+reportdesign::OReportDefinition::getAutoGrow()
+reportdesign::OReportDefinition::getAvailableMimeTypes()
+reportdesign::OReportDefinition::getAvailableServiceNames()
+reportdesign::OReportDefinition::getCaption()
+reportdesign::OReportDefinition::getCommand()
+reportdesign::OReportDefinition::getCommandType()
+reportdesign::OReportDefinition::getContext()
+reportdesign::OReportDefinition::getControlBorder()
+reportdesign::OReportDefinition::getControlBorderColor()
+reportdesign::OReportDefinition::getCurrentController()
+reportdesign::OReportDefinition::getCurrentSelection()
+reportdesign::OReportDefinition::getDataSourceName()
+reportdesign::OReportDefinition::getDetail()
+reportdesign::OReportDefinition::getDetailFields()
+reportdesign::OReportDefinition::getDocumentBaseURL() const
+reportdesign::OReportDefinition::getDocumentProperties()
+reportdesign::OReportDefinition::getDocumentStorage()
+reportdesign::OReportDefinition::getDocumentSubStorage(rtl::OUString const&, int)
+reportdesign::OReportDefinition::getDocumentSubStoragesNames()
+reportdesign::OReportDefinition::getEmbeddedObjectContainer() const
+reportdesign::OReportDefinition::getEscapeProcessing()
+reportdesign::OReportDefinition::getEventBroadcaster()
+reportdesign::OReportDefinition::getFilter()
+reportdesign::OReportDefinition::getFunctions()
+reportdesign::OReportDefinition::getGroupKeepTogether()
+reportdesign::OReportDefinition::getGroups()
+reportdesign::OReportDefinition::getHeight()
+reportdesign::OReportDefinition::getIdentifier()
+reportdesign::OReportDefinition::getImplementationId()
+reportdesign::OReportDefinition::getImplementationName()
+reportdesign::OReportDefinition::getImplementationName_Static()
+reportdesign::OReportDefinition::getInteractionHandler() const
+reportdesign::OReportDefinition::getMapUnit(long)
+reportdesign::OReportDefinition::getMasterFields()
+reportdesign::OReportDefinition::getMimeType()
+reportdesign::OReportDefinition::getName()
+reportdesign::OReportDefinition::getNumberFormatSettings()
+reportdesign::OReportDefinition::getNumberFormats()
+reportdesign::OReportDefinition::getPageFooter()
+reportdesign::OReportDefinition::getPageFooterOn()
+reportdesign::OReportDefinition::getPageFooterOption()
+reportdesign::OReportDefinition::getPageHeader()
+reportdesign::OReportDefinition::getPageHeaderOn()
+reportdesign::OReportDefinition::getPageHeaderOption()
+reportdesign::OReportDefinition::getParent()
+reportdesign::OReportDefinition::getPosition()
+reportdesign::OReportDefinition::getPositionX()
+reportdesign::OReportDefinition::getPositionY()
+reportdesign::OReportDefinition::getPreferredVisualRepresentation(long)
+reportdesign::OReportDefinition::getPrintRepeatedValues()
+reportdesign::OReportDefinition::getPropertySetInfo()
+reportdesign::OReportDefinition::getPropertyValue(rtl::OUString const&)
+reportdesign::OReportDefinition::getReportFooter()
+reportdesign::OReportDefinition::getReportFooterOn()
+reportdesign::OReportDefinition::getReportHeader()
+reportdesign::OReportDefinition::getReportHeaderOn()
+reportdesign::OReportDefinition::getSdrModelFromUnoModel() const
+reportdesign::OReportDefinition::getSection()
+reportdesign::OReportDefinition::getShapeType()
+reportdesign::OReportDefinition::getSize()
+reportdesign::OReportDefinition::getSomething(com::sun::star::uno::Sequence<signed char> const&)
+reportdesign::OReportDefinition::getStorage() const
+reportdesign::OReportDefinition::getStyleFamilies()
+reportdesign::OReportDefinition::getSupportedServiceNames()
+reportdesign::OReportDefinition::getSupportedServiceNames_Static()
+reportdesign::OReportDefinition::getTitle()
+reportdesign::OReportDefinition::getTransferData(com::sun::star::datatransfer::DataFlavor const&)
+reportdesign::OReportDefinition::getTransferDataFlavors()
+reportdesign::OReportDefinition::getTypes()
+reportdesign::OReportDefinition::getUIConfigurationManager()
+reportdesign::OReportDefinition::getUIConfigurationManager2()
+reportdesign::OReportDefinition::getURL()
+reportdesign::OReportDefinition::getUndoManager()
+reportdesign::OReportDefinition::getUnoTunnelId()
+reportdesign::OReportDefinition::getUntitledPrefix()
+reportdesign::OReportDefinition::getViewData()
+reportdesign::OReportDefinition::getVisualAreaSize(long)
+reportdesign::OReportDefinition::getWidth()
+reportdesign::OReportDefinition::hasControllersLocked()
+reportdesign::OReportDefinition::impl_getTitleHelper_throw()
+reportdesign::OReportDefinition::impl_getUntitledHelper_throw()
+reportdesign::OReportDefinition::impl_loadFromStorage_nolck_throw(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+reportdesign::OReportDefinition::init()
+reportdesign::OReportDefinition::initNew()
+reportdesign::OReportDefinition::isDataFlavorSupported(com::sun::star::datatransfer::DataFlavor const&)
+reportdesign::OReportDefinition::isEnableSetModified() const
+reportdesign::OReportDefinition::isModified()
+reportdesign::OReportDefinition::isSetModifiedEnabled()
+reportdesign::OReportDefinition::leaseNumber(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+reportdesign::OReportDefinition::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+reportdesign::OReportDefinition::loadFromStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+reportdesign::OReportDefinition::lockControllers()
+reportdesign::OReportDefinition::notifyDocumentEvent(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XController2> const&, com::sun::star::uno::Any const&)
+reportdesign::OReportDefinition::notifyEvent(rtl::OUString const&)
+reportdesign::OReportDefinition::queryInterface(com::sun::star::uno::Type const&)
+reportdesign::OReportDefinition::release()
+reportdesign::OReportDefinition::releaseNumber(int)
+reportdesign::OReportDefinition::releaseNumberForComponent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+reportdesign::OReportDefinition::removeCloseListener(com::sun::star::uno::Reference<com::sun::star::util::XCloseListener> const&)
+reportdesign::OReportDefinition::removeDocumentEventListener(com::sun::star::uno::Reference<com::sun::star::document::XDocumentEventListener> const&)
+reportdesign::OReportDefinition::removeEventListener(com::sun::star::uno::Reference<com::sun::star::document::XEventListener> const&)
+reportdesign::OReportDefinition::removeModifyListener(com::sun::star::uno::Reference<com::sun::star::util::XModifyListener> const&)
+reportdesign::OReportDefinition::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+reportdesign::OReportDefinition::removeStorageChangeListener(com::sun::star::uno::Reference<com::sun::star::document::XStorageChangeListener> const&)
+reportdesign::OReportDefinition::removeTitleChangeListener(com::sun::star::uno::Reference<com::sun::star::frame::XTitleChangeListener> const&)
+reportdesign::OReportDefinition::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+reportdesign::OReportDefinition::setActiveConnection(com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection> const&)
+reportdesign::OReportDefinition::setAutoGrow(unsigned char)
+reportdesign::OReportDefinition::setCaption(rtl::OUString const&)
+reportdesign::OReportDefinition::setCommand(rtl::OUString const&)
+reportdesign::OReportDefinition::setCommandType(int)
+reportdesign::OReportDefinition::setControlBorder(short)
+reportdesign::OReportDefinition::setControlBorderColor(int)
+reportdesign::OReportDefinition::setCurrentController(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+reportdesign::OReportDefinition::setDataSourceName(rtl::OUString const&)
+reportdesign::OReportDefinition::setDetailFields(com::sun::star::uno::Sequence<rtl::OUString> const&)
+reportdesign::OReportDefinition::setEscapeProcessing(unsigned char)
+reportdesign::OReportDefinition::setFilter(rtl::OUString const&)
+reportdesign::OReportDefinition::setGroupKeepTogether(short)
+reportdesign::OReportDefinition::setHeight(int)
+reportdesign::OReportDefinition::setIdentifier(rtl::OUString const&)
+reportdesign::OReportDefinition::setMasterFields(com::sun::star::uno::Sequence<rtl::OUString> const&)
+reportdesign::OReportDefinition::setMimeType(rtl::OUString const&)
+reportdesign::OReportDefinition::setModified(unsigned char)
+reportdesign::OReportDefinition::setName(rtl::OUString const&)
+reportdesign::OReportDefinition::setPageFooterOn(unsigned char)
+reportdesign::OReportDefinition::setPageFooterOption(short)
+reportdesign::OReportDefinition::setPageHeaderOn(unsigned char)
+reportdesign::OReportDefinition::setPageHeaderOption(short)
+reportdesign::OReportDefinition::setParent(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+reportdesign::OReportDefinition::setPosition(com::sun::star::awt::Point const&)
+reportdesign::OReportDefinition::setPositionX(int)
+reportdesign::OReportDefinition::setPositionY(int)
+reportdesign::OReportDefinition::setPrintRepeatedValues(unsigned char)
+reportdesign::OReportDefinition::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+reportdesign::OReportDefinition::setReportFooterOn(unsigned char)
+reportdesign::OReportDefinition::setReportHeaderOn(unsigned char)
+reportdesign::OReportDefinition::setSection(rtl::OUString const&, bool, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::report::XSection>&)
+reportdesign::OReportDefinition::setSize(com::sun::star::awt::Size const&)
+reportdesign::OReportDefinition::setTitle(rtl::OUString const&)
+reportdesign::OReportDefinition::setViewData(com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&)
+reportdesign::OReportDefinition::setVisualAreaSize(long, com::sun::star::awt::Size const&)
+reportdesign::OReportDefinition::setWidth(int)
+reportdesign::OReportDefinition::storeToStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+reportdesign::OReportDefinition::supportsService(rtl::OUString const&)
+reportdesign::OReportDefinition::switchToStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+reportdesign::OReportDefinition::unlockControllers()
+reportdesign::OReportDefinition::~OReportDefinition()
+resetPQExpBuffer
+reset_basis
+reset_params
+resizePricer
+resize_SOSgroup
+resize_lp
+restartPricer
+restoreINT
+restoreUndoLadder
+restore_basis
+reverseword(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
+reverseword_utf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
+rhs_store
+roundPower2
+roundToPrecision
+roundVector
+row_decimals
+row_intstats
+rowdual
+rowprim
+rptui::ConditionalExpression::ConditionalExpression(char const*)
+rptui::OCommentUndoAction::Redo()
+rptui::OCommentUndoAction::Undo()
+rptui::OCustomShape::EndCreate(SdrDragStat&, SdrCreateCmd)
+rptui::OCustomShape::GetImplPage() const
+rptui::OCustomShape::GetObjIdentifier() const
+rptui::OCustomShape::GetObjInventor() const
+rptui::OCustomShape::NbcMove(Size const&)
+rptui::OCustomShape::NbcResize(Point const&, Fraction const&, Fraction const&)
+rptui::OCustomShape::NbcSetLogicRect(tools::Rectangle const&)
+rptui::OCustomShape::OCustomShape(SdrModel&, com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&)
+rptui::OCustomShape::getAwtComponent()
+rptui::OCustomShape::getUnoShape()
+rptui::OCustomShape::impl_setUnoShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+rptui::OCustomShape::~OCustomShape()
+rptui::OObjectBase::OObjectBase(com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&)
+rptui::OObjectBase::OObjectBase(rtl::OUString const&)
+rptui::OObjectBase::SetPropsFromRect(tools::Rectangle const&)
+rptui::OObjectBase::_propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+rptui::OObjectBase::createObject(SdrModel&, com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&)
+rptui::OObjectBase::ensureSdrObjectOwnership(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+rptui::OObjectBase::getAwtComponent()
+rptui::OObjectBase::getObjectType(com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&)
+rptui::OObjectBase::getSection() const
+rptui::OObjectBase::getUnoShapeOf(SdrObject&)
+rptui::OObjectBase::supportsService(rtl::OUString const&) const
+rptui::OObjectBase::~OObjectBase()
+rptui::OOle2Obj::CloneSdrObject(SdrModel&) const
+rptui::OOle2Obj::EndCreate(SdrDragStat&, SdrCreateCmd)
+rptui::OOle2Obj::GetImplPage() const
+rptui::OOle2Obj::GetObjIdentifier() const
+rptui::OOle2Obj::GetObjInventor() const
+rptui::OOle2Obj::NbcMove(Size const&)
+rptui::OOle2Obj::NbcResize(Point const&, Fraction const&, Fraction const&)
+rptui::OOle2Obj::NbcSetLogicRect(tools::Rectangle const&)
+rptui::OOle2Obj::OOle2Obj(SdrModel&, com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&, SdrObjKind)
+rptui::OOle2Obj::OOle2Obj(SdrModel&, rptui::OOle2Obj const&)
+rptui::OOle2Obj::getAwtComponent()
+rptui::OOle2Obj::getUnoShape()
+rptui::OOle2Obj::impl_createDataProvider_nothrow(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+rptui::OOle2Obj::impl_setUnoShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+rptui::OOle2Obj::initializeOle()
+rptui::OOle2Obj::~OOle2Obj()
+rptui::OPropertyMediator::disposing()
+rptui::OPropertyMediator::disposing(com::sun::star::lang::EventObject const&)
+rptui::OPropertyMediator::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+rptui::OPropertyMediator::startListening()
+rptui::OPropertyMediator::stopListening()
+rptui::OPropertyMediator::~OPropertyMediator()
+rptui::OReportModel::AllocPage(bool)
+rptui::OReportModel::GetPageNumType() const
+rptui::OReportModel::RemovePage(unsigned short)
+rptui::OReportModel::SetChanged(bool)
+rptui::OReportModel::SetModified(bool)
+rptui::OReportModel::createNewPage(com::sun::star::uno::Reference<com::sun::star::report::XSection> const&)
+rptui::OReportModel::createShape(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShape>&, int)
+rptui::OReportModel::createUnoModel()
+rptui::OReportModel::getReportDefinition() const
+rptui::OReportPage::CloneSdrPage(SdrModel&) const
+rptui::OReportPage::NbcInsertObject(SdrObject*, unsigned long)
+rptui::OReportPage::OReportPage(rptui::OReportModel&, com::sun::star::uno::Reference<com::sun::star::report::XSection> const&)
+rptui::OReportPage::createUnoPage()
+rptui::OReportPage::insertObject(com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&)
+rptui::OReportPage::removeSdrObject(com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&)
+rptui::OReportPage::removeTempObject(SdrObject const*)
+rptui::OReportPage::~OReportPage()
+rptui::OUnoObject::CloneSdrObject(SdrModel&) const
+rptui::OUnoObject::EndCreate(SdrDragStat&, SdrCreateCmd)
+rptui::OUnoObject::GetImplPage() const
+rptui::OUnoObject::GetObjIdentifier() const
+rptui::OUnoObject::GetObjInventor() const
+rptui::OUnoObject::NbcMove(Size const&)
+rptui::OUnoObject::NbcResize(Point const&, Fraction const&, Fraction const&)
+rptui::OUnoObject::NbcSetLogicRect(tools::Rectangle const&)
+rptui::OUnoObject::OUnoObject(SdrModel&, com::sun::star::uno::Reference<com::sun::star::report::XReportComponent> const&, rtl::OUString const&, SdrObjKind)
+rptui::OUnoObject::OUnoObject(SdrModel&, rptui::OUnoObject const&)
+rptui::OUnoObject::_propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+rptui::OUnoObject::impl_initializeModel_nothrow()
+rptui::OUnoObject::impl_setUnoShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+rptui::OUnoObject::~OUnoObject()
+rptui::OXUndoEnvironment::AddSection(com::sun::star::uno::Reference<com::sun::star::report::XSection> const&)
+rptui::OXUndoEnvironment::Clear(rptui::OXUndoEnvironment::Accessor const&)
+rptui::OXUndoEnvironment::IsLocked() const
+rptui::OXUndoEnvironment::IsUndoMode() const
+rptui::OXUndoEnvironment::ModeChanged()
+rptui::OXUndoEnvironment::Notify(SfxBroadcaster&, SfxHint const&)
+rptui::OXUndoEnvironment::OXUndoEnvironment(rptui::OReportModel&)
+rptui::OXUndoEnvironment::RemoveSection(com::sun::star::uno::Reference<com::sun::star::report::XSection> const&)
+rptui::OXUndoEnvironment::RemoveSection(rptui::OReportPage const*)
+rptui::OXUndoEnvironment::disposing(com::sun::star::lang::EventObject const&)
+rptui::OXUndoEnvironment::elementInserted(com::sun::star::container::ContainerEvent const&)
+rptui::OXUndoEnvironment::elementRemoved(com::sun::star::container::ContainerEvent const&)
+rptui::OXUndoEnvironment::elementReplaced(com::sun::star::container::ContainerEvent const&)
+rptui::OXUndoEnvironment::getSection(com::sun::star::uno::Reference<com::sun::star::container::XChild> const&) const
+rptui::OXUndoEnvironment::implSetModified()
+rptui::OXUndoEnvironment::modified(com::sun::star::lang::EventObject const&)
+rptui::OXUndoEnvironment::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+rptui::OXUndoEnvironment::switchListening(com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&, bool)
+rptui::OXUndoEnvironment::switchListening(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, bool)
+rptui::OXUndoEnvironment::~OXUndoEnvironment()
+rptui::getPropertyNameMap(unsigned short)
+run_BB
+sal_detail_deinitialize@@PRIVATE_1.1
+sal_detail_initialize@@PRIVATE_1.1
+sal_detail_log@@PRIVATE_1.2
+sal_detail_logFormat@@PRIVATE_1.2
+sal_detail_log_report@@PRIVATE_1.3
+sal_detail_set_log_selector@@PRIVATE_1.6
+sal_getFullTextEncodingData
+sax::Converter::convertAngle(short&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool)
+sax::Converter::convertNumber64(long&, std::basic_string_view<char, std::char_traits<char> >, long, long)
+sax::Converter::parseDateOrDateTime(com::sun::star::util::Date*, com::sun::star::util::DateTime&, bool&, std::optional<short>*, std::basic_string_view<char, std::char_traits<char> >)
+sax_fastparser::FastAttributeList::add(sax_fastparser::FastAttributeList const&)
+sax_fastparser::FastAttributeList::createClone()
+sax_fastparser::FastAttributeList::getOptionalValueToken(int, int)
+sax_fastparser::FastAttributeList::getValueToken(int)
+sax_fastparser::FastAttributeList::~FastAttributeList()
+sax_fastparser::FastSaxParser::getImplementationName()
+sax_fastparser::FastSaxParser::getNamespaceURL(rtl::OUString const&)
+sax_fastparser::FastSaxParser::getSupportedServiceNames()
+sax_fastparser::FastSaxParser::initialize(com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+sax_fastparser::FastSaxParser::setCustomEntityNames(com::sun::star::uno::Sequence<com::sun::star::beans::Pair<rtl::OUString, rtl::OUString> > const&)
+sax_fastparser::FastSaxParser::setEntityResolver(com::sun::star::uno::Reference<com::sun::star::xml::sax::XEntityResolver> const&)
+sax_fastparser::FastSaxParser::setErrorHandler(com::sun::star::uno::Reference<com::sun::star::xml::sax::XErrorHandler> const&)
+sax_fastparser::FastSaxParser::setLocale(com::sun::star::lang::Locale const&)
+sax_fastparser::FastSaxParser::setNamespaceHandler(com::sun::star::uno::Reference<com::sun::star::xml::sax::XFastNamespaceHandler> const&)
+sax_fastparser::FastSaxParser::supportsService(rtl::OUString const&)
+sax_fastparser::FastSaxParser::~FastSaxParser()
+sc::AggregateFunction::getAggregateType() const
+sc::AggregateFunction::getColumns() const
+sc::AggregateFunction::getTransformationType() const
+sc::ColumnRemoveTransformation::getColumns() const
+sc::ColumnRemoveTransformation::getTransformationType() const
+sc::CompileFormulaContext::CompileFormulaContext(ScDocument&, formula::FormulaGrammar::Grammar)
+sc::CompileFormulaContext::setGrammar(formula::FormulaGrammar::Grammar)
+sc::CompileFormulaContext::updateTabNames()
+sc::CopyFromClipContext::CopyFromClipContext(ScDocument&, ScDocument*, ScDocument*, InsertDeleteFlags, bool, bool)
+sc::CopyFromClipContext::getClipDoc()
+sc::CopyFromClipContext::getCondFormatList()
+sc::CopyFromClipContext::getDeleteFlag() const
+sc::CopyFromClipContext::getDestRange() const
+sc::CopyFromClipContext::getInsertFlag() const
+sc::CopyFromClipContext::getSingleCell(unsigned long)
+sc::CopyFromClipContext::getSingleCellAttr(unsigned long)
+sc::CopyFromClipContext::getSingleCellNote(unsigned long) const
+sc::CopyFromClipContext::getSingleCellPattern(unsigned long) const
+sc::CopyFromClipContext::getTabEnd() const
+sc::CopyFromClipContext::getTabStart() const
+sc::CopyFromClipContext::getUndoDoc()
+sc::CopyFromClipContext::isAsLink() const
+sc::CopyFromClipContext::isCloneNotes() const
+sc::CopyFromClipContext::isDateCell(ScColumn const&, int) const
+sc::CopyFromClipContext::isSkipAttrForEmptyCells() const
+sc::CopyFromClipContext::isTableProtected() const
+sc::CopyFromClipContext::setCondFormatList(ScConditionalFormatList*)
+sc::CopyFromClipContext::setDeleteFlag(InsertDeleteFlags)
+sc::CopyFromClipContext::setDestRange(short, int, short, int)
+sc::CopyFromClipContext::setSingleCell(ScAddress const&, ScColumn const&)
+sc::CopyFromClipContext::setSingleCellColumnSize(unsigned long)
+sc::CopyFromClipContext::setSingleCellNote(unsigned long, ScPostIt const*)
+sc::CopyFromClipContext::setSingleCellPattern(unsigned long, ScPatternAttr const*)
+sc::CopyFromClipContext::setTabRange(short, short)
+sc::CopyFromClipContext::setTableProtected(bool)
+sc::CopyFromClipContext::~CopyFromClipContext()
+sc::DataTransformation::getLastRow(ScDocument const&, short)
+sc::DateTimeTransformation::getColumn() const
+sc::DateTimeTransformation::getDateTimeTransformationType() const
+sc::DateTimeTransformation::getTransformationType() const
+sc::ExternalDataMapper::ExternalDataMapper(ScDocument&)
+sc::ExternalDataMapper::getDataSources() const
+sc::ExternalDataMapper::~ExternalDataMapper()
+sc::ExternalDataSource::AddDataTransformation(std::shared_ptr<sc::DataTransformation> const&)
+sc::ExternalDataSource::getDBManager()
+sc::ExternalDataSource::getDBName() const
+sc::ExternalDataSource::getDataTransformation() const
+sc::ExternalDataSource::getID() const
+sc::ExternalDataSource::getProvider() const
+sc::ExternalDataSource::getURL() const
+sc::ExternalDataSource::getUpdateFrequency()
+sc::ExternalDataSource::getXMLImportParam() const
+sc::ExternalDataSource::setProvider(rtl::OUString const&)
+sc::ExternalDataSource::setURL(rtl::OUString const&)
+sc::FormulaGroupInterpreter::MergeCalcConfig(ScDocument const&)
+sc::FormulaGroupInterpreter::disableOpenCL_UnitTestsOnly()
+sc::FormulaGroupInterpreter::fillOpenCLInfo(std::vector<OpenCLPlatformInfo, std::allocator<OpenCLPlatformInfo> >&)
+sc::FormulaGroupInterpreter::getOpenCLDeviceInfo(int&, int&)
+sc::FormulaGroupInterpreter::getStatic()
+sc::MergeColumnTransformation::getColumns() const
+sc::MergeColumnTransformation::getMergeString() const
+sc::MergeColumnTransformation::getTransformationType() const
+sc::NumFmtUtil::isLatinScript(unsigned long, ScDocument&)
+sc::NumberTransformation::getColumn() const
+sc::NumberTransformation::getNumberTransformationType() const
+sc::NumberTransformation::getPrecision() const
+sc::NumberTransformation::getTransformationType() const
+sc::ReplaceNullTransformation::getColumn() const
+sc::ReplaceNullTransformation::getReplaceString() const
+sc::ReplaceNullTransformation::getTransformationType() const
+sc::RowHeightContext::setForceAutoSize(bool)
+sc::SplitColumnTransformation::getColumn() const
+sc::SplitColumnTransformation::getSeparator() const
+sc::SplitColumnTransformation::getTransformationType() const
+sc::TextTransformation::getColumns() const
+sc::TextTransformation::getTextTransformationType() const
+sc::TextTransformation::getTransformationType() const
+scale
+scaleCR
+scale_columns
+scale_rows
+scale_updatecolumns
+scale_updaterows
+scaled_ceil
+scaled_floor
+scaled_mat
+scaled_value
+scan_lineFIXED
+scan_lineFREE
+scram_ClientKey
+scram_H
+scram_HMAC_final
+scram_HMAC_init
+scram_HMAC_update
+scram_SaltedPassword
+scram_ServerKey
+scram_build_secret
+scripting_StringResourcePersistenceImpl_implementation
+sd::DrawDocShell::Activate(bool)
+sd::DrawDocShell::ApplySlotFilter() const
+sd::DrawDocShell::CancelSearching()
+sd::DrawDocShell::CheckPageName(weld::Window*, rtl::OUString&)
+sd::DrawDocShell::ClearUndoBuffer()
+sd::DrawDocShell::Connect(sd::ViewShell*)
+sd::DrawDocShell::Construct(bool)
+sd::DrawDocShell::ConvertFrom(SfxMedium&)
+sd::DrawDocShell::ConvertTo(SfxMedium&)
+sd::DrawDocShell::CreateDocumentInfoDialog(weld::Window*, SfxItemSet const&)
+sd::DrawDocShell::Deactivate(bool)
+sd::DrawDocShell::Disconnect(sd::ViewShell const*)
+sd::DrawDocShell::Draw(OutputDevice*, JobSetup const&, unsigned short)
+sd::DrawDocShell::DrawDocShell(SdDrawDocument*, SfxObjectCreateMode, bool, DocumentType)
+sd::DrawDocShell::DrawDocShell(SfxModelFlags, bool, DocumentType)
+sd::DrawDocShell::Execute(SfxRequest&)
+sd::DrawDocShell::Factory()
+sd::DrawDocShell::FillClass(SvGlobalName*, SotClipboardFormatId*, rtl::OUString*, int, bool) const
+sd::DrawDocShell::GetDocumentPrinter()
+sd::DrawDocShell::GetDocumentRefDev()
+sd::DrawDocShell::GetFrameView()
+sd::DrawDocShell::GetInterface() const
+sd::DrawDocShell::GetPrinter(bool)
+sd::DrawDocShell::GetState(SfxItemSet&)
+sd::DrawDocShell::GetStaticInterface()
+sd::DrawDocShell::GetStyleSheetPool()
+sd::DrawDocShell::GetUndoManager()
+sd::DrawDocShell::GetVisArea(unsigned short) const
+sd::DrawDocShell::GotoBookmark(rtl::OUString const&)
+sd::DrawDocShell::ImportFrom(SfxMedium&, com::sun::star::uno::Reference<com::sun::star::text::XTextRange> const&)
+sd::DrawDocShell::InitInterface_Impl()
+sd::DrawDocShell::InitNew(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+sd::DrawDocShell::IsNewPageNameValid(rtl::OUString&, bool)
+sd::DrawDocShell::IsPageNameUnique(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+sd::DrawDocShell::Load(SfxMedium&)
+sd::DrawDocShell::LoadFrom(SfxMedium&)
+sd::DrawDocShell::OnDocumentPrinterChanged(Printer*)
+sd::DrawDocShell::OpenBookmark(rtl::OUString const&)
+sd::DrawDocShell::RegisterInterface(SfxModule const*)
+sd::DrawDocShell::Save()
+sd::DrawDocShell::SaveAs(SfxMedium&)
+sd::DrawDocShell::SaveAsOwnFormat(SfxMedium&)
+sd::DrawDocShell::SaveCompleted(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&)
+sd::DrawDocShell::SetModified(bool)
+sd::DrawDocShell::SetPrinter(SfxPrinter*)
+sd::DrawDocShell::UpdateFontList()
+sd::DrawDocShell::UpdateRefDevice()
+sd::DrawDocShell::UpdateTablePointers()
+sd::DrawDocShell::setEditMode(sd::DrawViewShell*, bool)
+sd::DrawDocShell::~DrawDocShell()
+sd::DrawView::BlockPageOrderChangedHint(bool)
+sd::DrawView::CompleteRedraw(OutputDevice*, vcl::Region const&, sdr::contact::ViewObjectContactRedirector*)
+sd::DrawView::DeleteMarked()
+sd::DrawView::DrawView(sd::DrawDocShell*, OutputDevice*, sd::DrawViewShell*)
+sd::DrawView::HideSdrPage()
+sd::DrawView::MakeVisible(tools::Rectangle const&, vcl::Window&)
+sd::DrawView::MarkListHasChanged()
+sd::DrawView::ModelHasChanged()
+sd::DrawView::Notify(SfxBroadcaster&, SfxHint const&)
+sd::DrawView::SetAttributes(SfxItemSet const&, bool, bool, bool)
+sd::DrawView::SetMasterAttributes(SdrObject*, SdPage const&, SfxItemSet, SfxStyleSheetBasePool*, bool&, bool, bool)
+sd::DrawView::SetStyleSheet(SfxStyleSheet*, bool)
+sd::DrawView::~DrawView()
+sd::FrameView::Connect()
+sd::FrameView::Disconnect()
+sd::FrameView::GetViewShEditMode() const
+sd::FrameView::ReadUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+sd::FrameView::SetIsNavigatorShowingAllShapes(bool)
+sd::FrameView::SetPreviousViewShellType(sd::ViewShell::ShellType)
+sd::FrameView::SetViewShEditModeOnLoad(EditMode)
+sd::FrameView::SetViewShellTypeOnLoad(sd::ViewShell::ShellType)
+sd::FrameView::Update(SdOptions const*)
+sd::FrameView::WriteUserDataSequence(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
+sd::FrameView::~FrameView()
+sd::GraphicDocShell::Factory()
+sd::GraphicDocShell::GetInterface() const
+sd::GraphicDocShell::GetStaticInterface()
+sd::GraphicDocShell::GraphicDocShell(SfxModelFlags)
+sd::GraphicDocShell::InitInterface_Impl()
+sd::GraphicDocShell::RegisterInterface(SfxModule const*)
+sd::GraphicDocShell::~GraphicDocShell()
+sd::MainSequence::MainSequence()
+sd::MainSequence::MainSequence(com::sun::star::uno::Reference<com::sun::star::animations::XAnimationNode> const&)
+sd::MainSequence::createInteractiveSequence(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+sd::MainSequence::createMainSequence()
+sd::MainSequence::disposeShape(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+sd::MainSequence::disposeTextRange(com::sun::star::uno::Any const&)
+sd::MainSequence::findEffect(com::sun::star::uno::Reference<com::sun::star::animations::XAnimationNode> const&) const
+sd::MainSequence::getEffectFromOffset(int) const
+sd::MainSequence::getOffsetFromEffect(std::shared_ptr<sd::CustomAnimationEffect> const&) const
+sd::MainSequence::getRootNode()
+sd::MainSequence::hasEffect(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+sd::MainSequence::implRebuild()
+sd::MainSequence::init()
+sd::MainSequence::insertTextRange(com::sun::star::uno::Any const&)
+sd::MainSequence::lockRebuilds()
+sd::MainSequence::notify_change()
+sd::MainSequence::onTextChanged(com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+sd::MainSequence::reset()
+sd::MainSequence::reset(com::sun::star::uno::Reference<com::sun::star::animations::XAnimationNode> const&)
+sd::MainSequence::setTrigger(std::shared_ptr<sd::CustomAnimationEffect> const&, com::sun::star::uno::Reference<com::sun::star::drawing::XShape> const&)
+sd::MainSequence::startRebuildTimer()
+sd::MainSequence::startRecreateTimer()
+sd::MainSequence::unlockRebuilds()
+sd::MainSequence::~MainSequence()
+sd::ViewShell::GetFrameWeld() const
+sdr::PolyPolygonEditor::GetRelativePolyPoint(basegfx::B2DPolyPolygon const&, unsigned int, unsigned int&, unsigned int&)
+sdr::SelectionController::ApplyFormatPaintBrush(SfxItemSet&, bool, bool)
+sdr::SelectionController::ChangeFontSize(bool, FontList const*)
+sdr::SelectionController::DeleteMarked()
+sdr::SelectionController::Execute(SfxRequest&)
+sdr::SelectionController::GetAttributes(SfxItemSet&, bool) const
+sdr::SelectionController::GetMarkedSdrObjClone(SdrModel&)
+sdr::SelectionController::GetState(SfxItemSet&)
+sdr::SelectionController::GetStyleSheet(SfxStyleSheet*&) const
+sdr::SelectionController::PasteObjModel(SdrModel const&)
+sdr::SelectionController::SetAttributes(SfxItemSet const&, bool)
+sdr::SelectionController::SetStyleSheet(SfxStyleSheet*, bool)
+sdr::SelectionController::getSelectedCells(sdr::table::CellPos&, sdr::table::CellPos&)
+sdr::SelectionController::hasSelectedCells() const
+sdr::SelectionController::onKeyInput(KeyEvent const&, vcl::Window*)
+sdr::SelectionController::onMouseButtonDown(MouseEvent const&, vcl::Window*)
+sdr::SelectionController::onMouseButtonUp(MouseEvent const&, vcl::Window*)
+sdr::SelectionController::onMouseMove(MouseEvent const&, vcl::Window*)
+sdr::SelectionController::onSelectAll()
+sdr::SelectionController::onSelectionHasChanged()
+sdr::SelectionController::setCursorLogicPosition(Point const&, bool)
+sdr::ViewSelection::GetAllMarkedObjects() const
+sdr::ViewSelection::GetEdgesOfMarkedNodes() const
+sdr::ViewSelection::GetMarkedEdgesOfMarkedNodes() const
+sdr::ViewSelection::SetEdgesOfMarkedNodesDirty()
+sdr::ViewSelection::ViewSelection()
+sdr::animation::Event::~Event()
+sdr::animation::Scheduler::~Scheduler()
+sdr::animation::primitiveAnimator::~primitiveAnimator()
+sdr::contact::DisplayInfo::ClearGhostedDrawMode()
+sdr::contact::DisplayInfo::SetControlLayerProcessingActive(bool)
+sdr::contact::DisplayInfo::SetGhostedDrawMode()
+sdr::contact::DisplayInfo::SetPageProcessingActive(bool)
+sdr::contact::DisplayInfo::SetProcessLayers(SdrLayerIDSet const&)
+sdr::contact::DisplayInfo::SetRedrawArea(vcl::Region const&)
+sdr::contact::DisplayInfo::SetSubContentActive(bool)
+sdr::contact::ObjectContact::AddViewObjectContact(sdr::contact::ViewObjectContact&)
+sdr::contact::ObjectContact::AreGluePointsVisible() const
+sdr::contact::ObjectContact::DoVisualizeEnteredGroup() const
+sdr::contact::ObjectContact::InvalidatePartOfView(basegfx::B2DRange const&) const
+sdr::contact::ObjectContact::IsGraphicAnimationAllowed() const
+sdr::contact::ObjectContact::IsTextAnimationAllowed() const
+sdr::contact::ObjectContact::ObjectContact()
+sdr::contact::ObjectContact::PrepareProcessDisplay()
+sdr::contact::ObjectContact::ProcessDisplay(sdr::contact::DisplayInfo&)
+sdr::contact::ObjectContact::RemoveViewObjectContact(sdr::contact::ViewObjectContact&)
+sdr::contact::ObjectContact::SetViewObjectContactRedirector(sdr::contact::ViewObjectContactRedirector*)
+sdr::contact::ObjectContact::TryToGetOutputDevice() const
+sdr::contact::ObjectContact::TryToGetSdrPageView() const
+sdr::contact::ObjectContact::calculateGridOffsetForViewOjectContact(basegfx::B2DVector&, sdr::contact::ViewObjectContact const&) const
+sdr::contact::ObjectContact::getActiveViewContact() const
+sdr::contact::ObjectContact::isDrawModeGray() const
+sdr::contact::ObjectContact::isDrawModeHighContrast() const
+sdr::contact::ObjectContact::isOutputToPDFFile() const
+sdr::contact::ObjectContact::isOutputToPrinter() const
+sdr::contact::ObjectContact::isOutputToRecordingMetaFile() const
+sdr::contact::ObjectContact::setLazyInvalidate(sdr::contact::ViewObjectContact&)
+sdr::contact::ObjectContact::supportsGridOffsets() const
+sdr::contact::ObjectContact::~ObjectContact()
+sdr::contact::ObjectContactOfObjListPainter::GetPaintObjectCount() const
+sdr::contact::ObjectContactOfObjListPainter::GetPaintObjectViewContact(unsigned int)
+sdr::contact::ObjectContactOfObjListPainter::TryToGetOutputDevice() const
+sdr::contact::ObjectContactOfObjListPainter::isOutputToPDFFile() const
+sdr::contact::ObjectContactOfObjListPainter::isOutputToRecordingMetaFile() const
+sdr::contact::ObjectContactOfPageView::DoProcessDisplay(sdr::contact::DisplayInfo&)
+sdr::contact::ObjectContactOfPageView::GetSdrPage() const
+sdr::contact::ObjectContactOfPageView::SetUNOControlsDesignMode(bool) const
+sdr::contact::ObjectContactPainter::ObjectContactPainter()
+sdr::contact::ObjectContactPainter::~ObjectContactPainter()
+sdr::contact::ViewContact::ActionChildInserted(sdr::contact::ViewContact&)
+sdr::contact::ViewContact::AddViewObjectContact(sdr::contact::ViewObjectContact&)
+sdr::contact::ViewContact::CreateObjectSpecificViewObjectContact(sdr::contact::ObjectContact&)
+sdr::contact::ViewContact::HasViewObjectContacts() const
+sdr::contact::ViewContact::RemoveViewObjectContact(sdr::contact::ViewObjectContact&)
+sdr::contact::ViewContact::deleteAllVOCs()
+sdr::contact::ViewContact::isAnimatedInAnyViewObjectContact() const
+sdr::contact::ViewContactOfE3dScene::ActionChanged()
+sdr::contact::ViewContactOfE3dScene::CreateObjectSpecificViewObjectContact(sdr::contact::ObjectContact&)
+sdr::contact::ViewContactOfE3dScene::ViewContactOfE3dScene(E3dScene&)
+sdr::contact::ViewContactOfE3dScene::createObjectTransformation()
+sdr::contact::ViewContactOfE3dScene::createScenePrimitive2DSequence(SdrLayerIDSet const*) const
+sdr::contact::ViewContactOfE3dScene::createSdrLightingAttribute()
+sdr::contact::ViewContactOfE3dScene::createSdrSceneAttribute()
+sdr::contact::ViewContactOfE3dScene::createViewIndependentPrimitive2DSequence() const
+sdr::contact::ViewContactOfE3dScene::createViewInformation3D(basegfx::B3DRange const&)
+sdr::contact::ViewContactOfE3dScene::getAllContentRange3D() const
+sdr::contact::ViewContactOfE3dScene::getAllPrimitive3DContainer() const
+sdr::contact::ViewContactOfE3dScene::getSdrLightingAttribute() const
+sdr::contact::ViewContactOfE3dScene::getSdrSceneAttribute() const
+sdr::contact::ViewContactOfE3dScene::getViewInformation3D(basegfx::B3DRange const&) const
+sdr::contact::ViewContactOfSdrMediaObj::CreateObjectSpecificViewObjectContact(sdr::contact::ObjectContact&)
+sdr::contact::ViewContactOfSdrMediaObj::ViewContactOfSdrMediaObj(SdrMediaObj&)
+sdr::contact::ViewContactOfSdrMediaObj::createViewIndependentPrimitive2DSequence() const
+sdr::contact::ViewContactOfSdrMediaObj::getPreferredSize() const
+sdr::contact::ViewContactOfSdrMediaObj::mediaPropertiesChanged(avmedia::MediaItem const&)
+sdr::contact::ViewContactOfSdrMediaObj::~ViewContactOfSdrMediaObj()
+sdr::contact::ViewContactOfVirtObj::GetVirtObj() const
+sdr::contact::ViewObjectContact::ActionChildInserted(sdr::contact::ViewContact&)
+sdr::contact::ViewObjectContact::checkForPrimitive2DAnimations()
+sdr::contact::ViewObjectContact::createPrimitive2DSequence(sdr::contact::DisplayInfo const&) const
+sdr::contact::ViewObjectContact::getPrimitive2DSequenceSubHierarchy(sdr::contact::DisplayInfo&) const
+sdr::contact::ViewObjectContact::resetGridOffset()
+sdr::contact::ViewObjectContact::triggerLazyInvalidate()
+sdr::contact::ViewObjectContactOfSdrObj::getPageViewOutputDevice() const
+sdr::contact::ViewObjectContactOfSdrObj::getSdrObject() const
+sdr::overlay::OverlayAnimatedBitmapEx::Trigger(unsigned int)
+sdr::overlay::OverlayAnimatedBitmapEx::createOverlayObjectPrimitive2DSequence()
+sdr::overlay::OverlayAnimatedBitmapEx::~OverlayAnimatedBitmapEx()
+sdr::overlay::OverlayBitmapEx::createOverlayObjectPrimitive2DSequence()
+sdr::overlay::OverlayBitmapEx::~OverlayBitmapEx()
+sdr::overlay::OverlayManager::ImpDrawMembers(basegfx::B2DRange const&, OutputDevice&) const
+sdr::overlay::OverlayManager::ImpStripeDefinitionChanged()
+sdr::overlay::OverlayManager::create(OutputDevice&)
+sdr::overlay::OverlayManager::getCurrentViewInformation2D() const
+sdr::overlay::OverlayManager::getDiscreteOne() const
+sdr::overlay::OverlayManager::impApplyAddActions(sdr::overlay::OverlayObject&)
+sdr::overlay::OverlayManager::impApplyRemoveActions(sdr::overlay::OverlayObject&)
+sdr::overlay::OverlayManager::invalidateRange(basegfx::B2DRange const&)
+sdr::overlay::OverlayManager::setStripeColorA(Color)
+sdr::overlay::OverlayManager::setStripeColorB(Color)
+sdr::overlay::OverlayManager::setStripeLengthPixel(unsigned int)
+sdr::overlay::OverlayObject::createOverlayObjectPrimitive2DSequence()
+sdr::overlay::OverlayObject::getBaseRange() const
+sdr::overlay::OverlayObject::impCheckBlinkTimeValueRange(unsigned long)
+sdr::overlay::OverlayObject::setBaseColor(Color)
+sdr::overlay::OverlayObject::setHittable(bool)
+sdr::overlay::OverlayObject::setOffset(basegfx::B2DVector const&)
+sdr::overlay::OverlayObjectList::clear()
+sdr::overlay::OverlayObjectList::getBaseRange() const
+sdr::overlay::OverlayObjectList::isHitLogic(basegfx::B2DPoint const&, double) const
+sdr::overlay::OverlayObjectWithBasePosition::setBasePosition(basegfx::B2DPoint const&)
+sdr::overlay::OverlayPolyPolygon::createOverlayObjectPrimitive2DSequence()
+sdr::overlay::OverlayPolyPolygon::~OverlayPolyPolygon()
+sdr::overlay::OverlayPolyPolygonStripedAndFilled::createOverlayObjectPrimitive2DSequence()
+sdr::overlay::OverlayPolyPolygonStripedAndFilled::stripeDefinitionHasChanged()
+sdr::overlay::OverlayPolyPolygonStripedAndFilled::~OverlayPolyPolygonStripedAndFilled()
+sdr::overlay::OverlayPrimitive2DSequenceObject::createOverlayObjectPrimitive2DSequence()
+sdr::overlay::OverlayPrimitive2DSequenceObject::~OverlayPrimitive2DSequenceObject()
+sdr::overlay::OverlaySelection::createOverlayObjectPrimitive2DSequence()
+sdr::properties::BaseProperties::BaseProperties(SdrObject&)
+sdr::properties::BaseProperties::BroadcastItemChange(sdr::properties::ItemChangeBroadcaster const&)
+sdr::properties::BaseProperties::ClearMergedItem(unsigned short)
+sdr::properties::BaseProperties::ForceStyleToHardAttributes()
+sdr::properties::BaseProperties::GetMergedItemSet() const
+sdr::properties::BaseProperties::GetSdrObject()
+sdr::properties::BaseProperties::GetSdrObject() const
+sdr::properties::BaseProperties::SetMergedItem(SfxPoolItem const&)
+sdr::properties::BaseProperties::SetMergedItemSet(SfxItemSet const&, bool)
+sdr::properties::BaseProperties::SetMergedItemSetAndBroadcast(SfxItemSet const&, bool)
+sdr::properties::BaseProperties::applyDefaultStyleSheetFromSdrModel()
+sdr::properties::BaseProperties::dumpAsXml(_xmlTextWriter*) const
+sdr::properties::BaseProperties::getVersion() const
+sdr::properties::BaseProperties::~BaseProperties()
+sdr::properties::DefaultProperties::AllowItemChange(unsigned short, SfxPoolItem const*) const
+sdr::properties::DefaultProperties::ClearObjectItem(unsigned short)
+sdr::properties::DefaultProperties::ClearObjectItemDirect(unsigned short)
+sdr::properties::DefaultProperties::Clone(SdrObject&) const
+sdr::properties::DefaultProperties::CreateObjectSpecificItemSet(SfxItemPool&)
+sdr::properties::DefaultProperties::DefaultProperties(sdr::properties::DefaultProperties const&, SdrObject&)
+sdr::properties::DefaultProperties::ForceDefaultAttributes()
+sdr::properties::DefaultProperties::GetObjectItemSet() const
+sdr::properties::DefaultProperties::GetStyleSheet() const
+sdr::properties::DefaultProperties::ItemChange(unsigned short, SfxPoolItem const*)
+sdr::properties::DefaultProperties::ItemSetChanged(SfxItemSet const*)
+sdr::properties::DefaultProperties::PostItemChange(unsigned short)
+sdr::properties::DefaultProperties::SetObjectItem(SfxPoolItem const&)
+sdr::properties::DefaultProperties::SetObjectItemDirect(SfxPoolItem const&)
+sdr::properties::DefaultProperties::SetObjectItemSet(SfxItemSet const&)
+sdr::properties::DefaultProperties::SetStyleSheet(SfxStyleSheet*, bool)
+sdr::properties::DefaultProperties::dumpAsXml(_xmlTextWriter*) const
+sdr::properties::DefaultProperties::~DefaultProperties()
+sdr::table::Cell::IsTextEditActive() const
+sdr::table::Cell::dumpAsXml(_xmlTextWriter*, int, int) const
+sdr::table::SdrTableObj::AddToHdlList(SdrHdlList&) const
+sdr::table::SdrTableObj::AddUndo(SdrUndoAction*)
+sdr::table::SdrTableObj::AdjustTextFrameWidthAndHeight()
+sdr::table::SdrTableObj::AdjustTextFrameWidthAndHeight(tools::Rectangle&, bool, bool) const
+sdr::table::SdrTableObj::AdjustToMaxRect(tools::Rectangle const&, bool)
+sdr::table::SdrTableObj::BckCreate(SdrDragStat&)
+sdr::table::SdrTableObj::BegCreate(SdrDragStat&)
+sdr::table::SdrTableObj::BegTextEdit(SdrOutliner&)
+sdr::table::SdrTableObj::BrkCreate(SdrDragStat&)
+sdr::table::SdrTableObj::CheckTableHit(Point const&, int&, int&, unsigned short) const
+sdr::table::SdrTableObj::CheckTextHit(Point const&) const
+sdr::table::SdrTableObj::CloneSdrObject(SdrModel&) const
+sdr::table::SdrTableObj::CreateObjectSpecificProperties()
+sdr::table::SdrTableObj::CreateObjectSpecificViewContact()
+sdr::table::SdrTableObj::CropTableModelToSelection(sdr::table::CellPos const&, sdr::table::CellPos const&)
+sdr::table::SdrTableObj::DistributeColumns(int, int, bool, bool)
+sdr::table::SdrTableObj::DistributeRows(int, int, bool, bool)
+sdr::table::SdrTableObj::EndCreate(SdrDragStat&, SdrCreateCmd)
+sdr::table::SdrTableObj::EndTextEdit(SdrOutliner&)
+sdr::table::SdrTableObj::GetActiveCellItemSet() const
+sdr::table::SdrTableObj::GetCellTextEditOutliner(sdr::table::Cell const&) const
+sdr::table::SdrTableObj::GetCreatePointer() const
+sdr::table::SdrTableObj::GetHdlCount() const
+sdr::table::SdrTableObj::GetObjIdentifier() const
+sdr::table::SdrTableObj::GetOutlinerParaObject() const
+sdr::table::SdrTableObj::GetOutlinerViewAnchorMode() const
+sdr::table::SdrTableObj::GetWritingMode() const
+sdr::table::SdrTableObj::HasText() const
+sdr::table::SdrTableObj::IsAutoGrowHeight() const
+sdr::table::SdrTableObj::IsAutoGrowWidth() const
+sdr::table::SdrTableObj::IsFontwork() const
+sdr::table::SdrTableObj::IsReallyEdited() const
+sdr::table::SdrTableObj::IsTextEditActive(sdr::table::CellPos const&)
+sdr::table::SdrTableObj::IsVerticalWriting() const
+sdr::table::SdrTableObj::MovCreate(SdrDragStat&)
+sdr::table::SdrTableObj::NbcMove(Size const&)
+sdr::table::SdrTableObj::NbcReformatText()
+sdr::table::SdrTableObj::NbcResize(Point const&, Fraction const&, Fraction const&)
+sdr::table::SdrTableObj::NbcSetLogicRect(tools::Rectangle const&)
+sdr::table::SdrTableObj::NbcSetOutlinerParaObject(std::optional<OutlinerParaObject>)
+sdr::table::SdrTableObj::NewGeoData() const
+sdr::table::SdrTableObj::RecalcSnapRect()
+sdr::table::SdrTableObj::RestoreGeoData(SdrObjGeoData const&)
+sdr::table::SdrTableObj::SaveGeoData(SdrObjGeoData&) const
+sdr::table::SdrTableObj::SdrTableObj(SdrModel&, sdr::table::SdrTableObj const&)
+sdr::table::SdrTableObj::SetChanged()
+sdr::table::SdrTableObj::SetSkipChangeLayout(bool)
+sdr::table::SdrTableObj::SetVerticalWriting(bool)
+sdr::table::SdrTableObj::TakeCreatePoly(SdrDragStat const&) const
+sdr::table::SdrTableObj::TakeObjInfo(SdrObjTransformInfoRec&) const
+sdr::table::SdrTableObj::TakeObjNamePlural() const
+sdr::table::SdrTableObj::TakeObjNameSingul() const
+sdr::table::SdrTableObj::TakeTextAnchorRect(sdr::table::CellPos const&, tools::Rectangle&) const
+sdr::table::SdrTableObj::TakeTextAnchorRect(tools::Rectangle&) const
+sdr::table::SdrTableObj::TakeTextEditArea(Size*, Size*, tools::Rectangle*, tools::Rectangle*) const
+sdr::table::SdrTableObj::TakeTextEditArea(sdr::table::CellPos const&, Size*, Size*, tools::Rectangle*, tools::Rectangle*) const
+sdr::table::SdrTableObj::TakeTextRect(SdrOutliner&, tools::Rectangle&, bool, tools::Rectangle*, bool) const
+sdr::table::SdrTableObj::TakeTextRect(sdr::table::CellPos const&, SdrOutliner&, tools::Rectangle&, bool, tools::Rectangle*) const
+sdr::table::SdrTableObj::applySpecialDrag(SdrDragStat&)
+sdr::table::SdrTableObj::beginSpecialDrag(SdrDragStat&) const
+sdr::table::SdrTableObj::changeEdge(bool, int, int)
+sdr::table::SdrTableObj::createCell(rtl::Reference<sdr::table::Cell>&)
+sdr::table::SdrTableObj::createTableEdgesJson(boost::property_tree::basic_ptree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)
+sdr::table::SdrTableObj::dumpAsXml(_xmlTextWriter*) const
+sdr::table::SdrTableObj::getActiveText() const
+sdr::table::SdrTableObj::getDownCell(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getLeftCell(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getNextCell(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getNextRow(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getPreviousCell(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getPreviousRow(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getRightCell(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::getRowCount() const
+sdr::table::SdrTableObj::getSpecialDragPoly(SdrDragStat const&) const
+sdr::table::SdrTableObj::getTableLayouter() const
+sdr::table::SdrTableObj::getTableStyle() const
+sdr::table::SdrTableObj::getTableStyleSettings() const
+sdr::table::SdrTableObj::getTextCount() const
+sdr::table::SdrTableObj::getUpCell(sdr::table::CellPos const&, bool) const
+sdr::table::SdrTableObj::hasSpecialDrag() const
+sdr::table::SdrTableObj::init(int, int)
+sdr::table::SdrTableObj::isValid(sdr::table::CellPos const&) const
+sdr::table::SdrTableObj::onEditOutlinerStatusEvent(EditStatus*)
+sdr::table::SdrTableObj::setActiveText(int)
+sdr::table::SdrTableObj::setTableStyleSettings(sdr::table::TableStyleSettings const&)
+sdr::table::SdrTableObj::~SdrTableObj()
+sdr::table::SvxTableController::ChangeFontSize(bool, FontList const*)
+sdr::table::SvxTableController::SetAttrToSelectedShape(SfxItemSet const&)
+searchFor
+serious_facterror
+setCalcAsShown(ScDocument*, bool)
+setLink
+set_BFP
+set_OF_override
+set_OF_p1extra
+set_XLI
+set_action
+set_anti_degen
+set_basis
+set_basiscrash
+set_basisvar
+set_bb_floorfirst
+set_bb_rule
+set_bounds
+set_bounds_tighter
+set_break_at_first
+set_break_at_value
+set_callbacks
+set_col_name
+set_column
+set_columnex
+set_constr_type
+set_debug
+set_dv_bounds
+set_epsb
+set_epsd
+set_epsel
+set_epsint
+set_epsperturb
+set_epspivot
+set_improve
+set_infinite
+set_lag_trace
+set_lowbo
+set_lp_name
+set_mat
+set_maxpivot
+set_mip_gap
+set_multiprice
+set_negrange
+set_obj
+set_obj_bound
+set_obj_dir
+set_obj_fnex
+set_obj_in_basis
+set_outputstream
+set_partialprice
+set_pivoting
+set_preferdual
+set_presolve
+set_print_sol
+set_pseudocosts
+set_rh_lower
+set_rh_range
+set_rh_upper
+set_rh_vec
+set_row
+set_row_name
+set_rowex
+set_scalelimit
+set_scaling
+set_semicont
+set_sense
+set_simplextype
+set_solutionlimit
+set_sos_type
+set_sos_weight
+set_title
+set_trace
+set_upbo
+set_use_names
+set_var_branch
+set_var_priority
+set_var_weights
+set_verbose
+sfx2::DocumentMacroMode::allowMacroExecution()
+sfx2::DocumentMacroMode::containerHasBasicMacros(com::sun::star::uno::Reference<com::sun::star::script::XLibraryContainer> const&)
+sfx2::DocumentMacroMode::disallowMacroExecution()
+sfx2::DocumentMacroMode::hasMacroLibrary() const
+sfx2::DocumentMacroMode::isMacroExecutionDisallowed() const
+sfx2::DocumentStorageModifyListener::disposing(com::sun::star::lang::EventObject const&)
+sfx2::DocumentStorageModifyListener::modified(com::sun::star::lang::EventObject const&)
+sfx2::DocumentStorageModifyListener::~DocumentStorageModifyListener()
+sfx2::FileDialogHelper::ControlStateChanged(com::sun::star::ui::dialogs::FilePickerEvent const&)
+sfx2::FileDialogHelper::CreateMatcher(rtl::OUString const&)
+sfx2::FileDialogHelper::DialogClosed(com::sun::star::ui::dialogs::DialogClosedEvent const&)
+sfx2::FileDialogHelper::DialogSizeChanged()
+sfx2::FileDialogHelper::DirectoryChanged()
+sfx2::FileDialogHelper::Execute(std::optional<SfxAllItemSet>&, rtl::OUString&)
+sfx2::FileDialogHelper::Execute(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, std::optional<SfxAllItemSet>&, rtl::OUString&, rtl::OUString const&)
+sfx2::FileDialogHelper::FileDialogHelper(short, FileDialogFlags, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<rtl::OUString> const&, weld::Window*)
+sfx2::FileDialogHelper::FileDialogHelper(short, FileDialogFlags, rtl::OUString const&, short, SfxFilterFlags, SfxFilterFlags, rtl::OUString const&, com::sun::star::uno::Sequence<rtl::OUString> const&, weld::Window*)
+sfx2::FileDialogHelper::FileSelectionChanged()
+sfx2::FileDialogHelper::GetDialogType() const
+sfx2::FileDialogHelper::GetDisplayDirectory() const
+sfx2::FileDialogHelper::HelpRequested(com::sun::star::ui::dialogs::FilePickerEvent const&)
+sfx2::FileDialogHelper::IsPasswordEnabled() const
+sfx2::FileDialogHelper::contextToString(sfx2::FileDialogHelper::Context)
+sfx2::LinkManager::CreateObj(sfx2::SvBaseLink const*)
+sfx2::LinkManager::Insert(sfx2::SvBaseLink*)
+sfx2::LinkManager::InsertCachedComp(com::sun::star::uno::Reference<com::sun::star::lang::XComponent> const&)
+sfx2::LinkManager::InsertLink(sfx2::SvBaseLink*, sfx2::SvBaseLinkObjectType, SfxLinkUpdateMode, rtl::OUString const*)
+sfx2::LinkManager::LinkServerShell(rtl::OUString const&, SfxObjectShell&, sfx2::SvBaseLink&)
+sfx2::SafeMode::getFilePath(rtl::OUString const&)
+sfx2::SfxNotebookBar::CloseMethod(SystemWindow*)
+sfx2::SfxNotebookBar::RemoveListeners(SystemWindow const*)
+sfx2::SfxNotebookBar::ShowMenubar(SfxViewFrame const*, bool)
+sfx2::SfxNotebookBar::ShowMenubar(bool)
+sfx2::SfxNotebookBar::StateMethod(SystemWindow*, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool)
+sfx2::SfxNotebookBar::ToggleMenubar()
+sfx2::SvBaseLink::DataChanged(rtl::OUString const&, com::sun::star::uno::Any const&)
+sfx2::SvBaseLink::ExecuteEdit(rtl::OUString const&)
+sfx2::SvBaseLink::GetInsertFileDialog(rtl::OUString const&)
+sfx2::SvBaseLink::GetLinkManager() const
+sfx2::SvBaseLink::SetLinkManager(sfx2::LinkManager*)
+sfx2::SvBaseLink::SetObj(sfx2::SvLinkSource*)
+sfx2::SvLinkSource::DataChanged(rtl::OUString const&, com::sun::star::uno::Any const&)
+sfx2::SvLinkSource::GetData(com::sun::star::uno::Any&, rtl::OUString const&, bool)
+sfx2::SvLinkSource::clearStreamToLoadFrom()
+sfx2::SvLinkSource::getStreamToLoadFrom()
+sfx2::SvLinkSource::setStreamToLoadFrom(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, bool)
+sfx2::TitledDockingWindow::impl_layout()
+sfx2::TitledDockingWindow::impl_resetToolBox()
+sfx2::UserInputInterception::hasKeyHandlers() const
+sfx2::UserInputInterception::hasMouseClickListeners() const
+sfx2::isValidNCName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::isValidXmlId(std::basic_string_view<char16_t, std::char_traits<char16_t> >, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::sidebar::Context::Context()
+sfx2::sidebar::Context::EvaluateMatch(sfx2::sidebar::Context const&) const
+sfx2::sidebar::Context::operator!=(sfx2::sidebar::Context const&) const
+sfx2::sidebar::Context::operator==(sfx2::sidebar::Context const&) const
+sfx2::sidebar::ControllerItem::GetControlState(unsigned short, boost::property_tree::basic_ptree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)
+sfx2::sidebar::ControllerItem::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+sfx2::sidebar::Panel::DataChanged()
+sfx2::sidebar::Panel::GetContents() const
+sfx2::sidebar::Panel::GetElementParentWindow()
+sfx2::sidebar::Panel::GetElementWindow()
+sfx2::sidebar::Panel::GetFrameWeld()
+sfx2::sidebar::Panel::GetTitleBar() const
+sfx2::sidebar::Panel::HasIdPredicate(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+sfx2::sidebar::Panel::Panel(sfx2::sidebar::PanelDescriptor const&, weld::Widget*, bool, sfx2::sidebar::Deck*, std::function<sfx2::sidebar::Context ()> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+sfx2::sidebar::Panel::SetExpanded(bool)
+sfx2::sidebar::Panel::SetHeightPixel(int)
+sfx2::sidebar::Panel::SetLurkMode(bool)
+sfx2::sidebar::Panel::SetUIElement(com::sun::star::uno::Reference<com::sun::star::ui::XUIElement> const&)
+sfx2::sidebar::Panel::Show(bool)
+sfx2::sidebar::Panel::get_extents(tools::Rectangle&) const
+sfx2::sidebar::Panel::set_margin_bottom(int)
+sfx2::sidebar::Panel::set_margin_top(int)
+sfx2::sidebar::Panel::set_vexpand(bool)
+sfx2::sidebar::Panel::~Panel()
+sfx2::sidebar::ResourceManager::GetDeckDescriptor(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+sfx2::sidebar::ResourceManager::GetLastActiveDeck(sfx2::sidebar::Context const&)
+sfx2::sidebar::ResourceManager::GetLegacyAddonRootNode(rtl::OUString const&)
+sfx2::sidebar::ResourceManager::GetMatchingPanels(std::vector<sfx2::sidebar::ResourceManager::PanelContextDescriptor, std::allocator<sfx2::sidebar::ResourceManager::PanelContextDescriptor> >&, sfx2::sidebar::Context const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+sfx2::sidebar::ResourceManager::GetPanelDescriptor(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+sfx2::sidebar::ResourceManager::GetToolPanelNodeNames(std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, utl::OConfigurationTreeRoot const&)
+sfx2::sidebar::ResourceManager::ImplGetDeckDescriptor(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+sfx2::sidebar::ResourceManager::ImplGetPanelDescriptor(std::basic_string_view<char16_t, std::char_traits<char16_t> >) const
+sfx2::sidebar::ResourceManager::InitDeckContext(sfx2::sidebar::Context const&)
+sfx2::sidebar::ResourceManager::IsDeckEnabled(std::basic_string_view<char16_t, std::char_traits<char16_t> >, sfx2::sidebar::Context const&, com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+sfx2::sidebar::ResourceManager::ReadContextList(utl::OConfigurationNode const&, sfx2::sidebar::ContextList&, rtl::OUString const&)
+sfx2::sidebar::ResourceManager::ReadDeckList()
+sfx2::sidebar::ResourceManager::ReadLastActive()
+sfx2::sidebar::ResourceManager::ReadLegacyAddons(com::sun::star::uno::Reference<com::sun::star::frame::XController> const&)
+sfx2::sidebar::ResourceManager::ReadPanelList()
+sfx2::sidebar::ResourceManager::SaveDeckSettings(sfx2::sidebar::DeckDescriptor const*)
+sfx2::sidebar::ResourceManager::SaveDecksSettings(sfx2::sidebar::Context const&)
+sfx2::sidebar::ResourceManager::SaveLastActiveDeck(sfx2::sidebar::Context const&, rtl::OUString const&)
+sfx2::sidebar::ResourceManager::SetLastActiveDeck(sfx2::sidebar::Context const&, rtl::OUString const&)
+sfx2::sidebar::ResourceManager::StorePanelExpansionState(std::basic_string_view<char16_t, std::char_traits<char16_t> >, bool, sfx2::sidebar::Context const&)
+sfx2::sidebar::ResourceManager::UpdateModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+sfx2::sidebar::ResourceManager::disposeDecks()
+sfx2::sidebar::Sidebar::ToggleDeck(std::basic_string_view<char16_t, std::char_traits<char16_t> >, SfxViewFrame*)
+sfx2::sidebar::SidebarChildWindow::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+sfx2::sidebar::SidebarChildWindow::GetDefaultWidth(vcl::Window const*)
+sfx2::sidebar::SidebarChildWindow::GetInfo() const
+sfx2::sidebar::SidebarChildWindow::SidebarChildWindow(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+sfx2::sidebar::SidebarController::BroadcastPropertyChange()
+sfx2::sidebar::SidebarController::CanModifyChildWindowWidth()
+sfx2::sidebar::SidebarController::CreateDeck(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::sidebar::SidebarController::CreateDeck(std::basic_string_view<char16_t, std::char_traits<char16_t> >, sfx2::sidebar::Context const&, bool)
+sfx2::sidebar::SidebarController::CreatePanel(std::basic_string_view<char16_t, std::char_traits<char16_t> >, weld::Widget*, bool, sfx2::sidebar::Context const&, VclPtr<sfx2::sidebar::Deck> const&)
+sfx2::sidebar::SidebarController::CreatePanels(std::basic_string_view<char16_t, std::char_traits<char16_t> >, sfx2::sidebar::Context const&)
+sfx2::sidebar::SidebarController::CreateUIElement(com::sun::star::uno::Reference<com::sun::star::awt::XWindow> const&, rtl::OUString const&, bool, sfx2::sidebar::Context const&)
+sfx2::sidebar::SidebarController::FadeIn()
+sfx2::sidebar::SidebarController::FadeOut()
+sfx2::sidebar::SidebarController::GetDeckDragArea() const
+sfx2::sidebar::SidebarController::GetMatchingDecks()
+sfx2::sidebar::SidebarController::GetMatchingPanels(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::sidebar::SidebarController::GetSidebarControllerForFrame(com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+sfx2::sidebar::SidebarController::GetSplitWindow()
+sfx2::sidebar::SidebarController::IsDeckOpen(int)
+sfx2::sidebar::SidebarController::IsDeckVisible(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::sidebar::SidebarController::NotifyResize()
+sfx2::sidebar::SidebarController::OpenThenSwitchToDeck(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::sidebar::SidebarController::OpenThenToggleDeck(rtl::OUString const&)
+sfx2::sidebar::SidebarController::PopulatePopupMenus(weld::Menu&, weld::Menu&, std::vector<sfx2::sidebar::TabBar::DeckMenuData, std::allocator<sfx2::sidebar::TabBar::DeckMenuData> > const&) const
+sfx2::sidebar::SidebarController::ProcessNewWidth(int)
+sfx2::sidebar::SidebarController::RequestCloseDeck()
+sfx2::sidebar::SidebarController::RequestOpenDeck()
+sfx2::sidebar::SidebarController::RestrictWidth(int)
+sfx2::sidebar::SidebarController::SetChildWindowWidth(int)
+sfx2::sidebar::SidebarController::ShowPanel(sfx2::sidebar::Panel const&)
+sfx2::sidebar::SidebarController::ShowPopupMenu(weld::Menu&, weld::Menu&, std::vector<sfx2::sidebar::TabBar::DeckMenuData, std::allocator<sfx2::sidebar::TabBar::DeckMenuData> > const&) const
+sfx2::sidebar::SidebarController::SidebarController(sfx2::sidebar::SidebarDockingWindow*, SfxViewFrame const*)
+sfx2::sidebar::SidebarController::SwitchToDeck(sfx2::sidebar::DeckDescriptor const&, sfx2::sidebar::Context const&)
+sfx2::sidebar::SidebarController::SyncUpdate()
+sfx2::sidebar::SidebarController::UpdateCloseIndicator(bool)
+sfx2::sidebar::SidebarController::UpdateConfigurations()
+sfx2::sidebar::SidebarController::UpdateDeckOpenState()
+sfx2::sidebar::SidebarController::UpdateTitleBarIcons()
+sfx2::sidebar::SidebarController::create(sfx2::sidebar::SidebarDockingWindow*, SfxViewFrame const*)
+sfx2::sidebar::SidebarController::disposeDecks()
+sfx2::sidebar::SidebarController::disposing()
+sfx2::sidebar::SidebarController::disposing(com::sun::star::lang::EventObject const&)
+sfx2::sidebar::SidebarController::frameAction(com::sun::star::frame::FrameActionEvent const&)
+sfx2::sidebar::SidebarController::notifyContextChangeEvent(com::sun::star::ui::ContextChangeEventObject const&)
+sfx2::sidebar::SidebarController::notifyDeckTitle(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+sfx2::sidebar::SidebarController::propertyChange(com::sun::star::beans::PropertyChangeEvent const&)
+sfx2::sidebar::SidebarController::requestLayout()
+sfx2::sidebar::SidebarController::saveDeckState()
+sfx2::sidebar::SidebarController::statusChanged(com::sun::star::frame::FeatureStateEvent const&)
+sfx2::sidebar::SidebarController::~SidebarController()
+sfx2::sidebar::SidebarDockingWindow::CheckAlignment(SfxChildAlignment, SfxChildAlignment)
+sfx2::sidebar::SidebarDockingWindow::Close()
+sfx2::sidebar::SidebarDockingWindow::EventNotify(NotifyEvent&)
+sfx2::sidebar::SidebarDockingWindow::GetFocus()
+sfx2::sidebar::SidebarDockingWindow::SidebarDockingWindow(SfxBindings*, sfx2::sidebar::SidebarChildWindow&, vcl::Window*, long)
+sfx2::sidebar::SidebarDockingWindow::dispose()
+sfx2::sidebar::SidebarDockingWindow::~SidebarDockingWindow()
+sfx2::sidebar::SidebarPanelBase::SetParentPanel(sfx2::sidebar::Panel*)
+sfx2::sidebar::SidebarPanelBase::SidebarPanelBase(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, std::unique_ptr<PanelLayout, std::default_delete<PanelLayout> >, com::sun::star::ui::LayoutSize const&)
+sfx2::sidebar::SidebarPanelBase::createAccessible(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessible> const&)
+sfx2::sidebar::SidebarPanelBase::disposing()
+sfx2::sidebar::SidebarPanelBase::disposing(com::sun::star::lang::EventObject const&)
+sfx2::sidebar::SidebarPanelBase::getFrame()
+sfx2::sidebar::SidebarPanelBase::getHeightForWidth(int)
+sfx2::sidebar::SidebarPanelBase::getMinimalWidth()
+sfx2::sidebar::SidebarPanelBase::getRealInterface()
+sfx2::sidebar::SidebarPanelBase::getResourceURL()
+sfx2::sidebar::SidebarPanelBase::getType()
+sfx2::sidebar::SidebarPanelBase::getWindow()
+sfx2::sidebar::SidebarPanelBase::notifyContextChangeEvent(com::sun::star::ui::ContextChangeEventObject const&)
+sfx2::sidebar::SidebarPanelBase::updateModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+sfx2::sidebar::SidebarPanelBase::~SidebarPanelBase()
+sfx2::sidebar::Theme::BroadcastPropertyChange(std::vector<com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener>, std::allocator<com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> > > const*, com::sun::star::beans::PropertyChangeEvent const&)
+sfx2::sidebar::Theme::DoVetoableListenersVeto(std::vector<com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener>, std::allocator<com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> > > const*, com::sun::star::beans::PropertyChangeEvent const&)
+sfx2::sidebar::Theme::GetChangeListeners(sfx2::sidebar::Theme::ThemeItem, bool)
+sfx2::sidebar::Theme::GetCppuType(sfx2::sidebar::Theme::PropertyType)
+sfx2::sidebar::Theme::GetCurrentTheme()
+sfx2::sidebar::Theme::GetIndex(sfx2::sidebar::Theme::ThemeItem, sfx2::sidebar::Theme::PropertyType)
+sfx2::sidebar::Theme::GetInteger(sfx2::sidebar::Theme::ThemeItem)
+sfx2::sidebar::Theme::GetPropertySet()
+sfx2::sidebar::Theme::GetPropertyType(sfx2::sidebar::Theme::ThemeItem)
+sfx2::sidebar::Theme::GetVetoableListeners(sfx2::sidebar::Theme::ThemeItem, bool)
+sfx2::sidebar::Theme::HandleDataChange()
+sfx2::sidebar::Theme::InitializeTheme()
+sfx2::sidebar::Theme::IsHighContrastMode()
+sfx2::sidebar::Theme::ProcessNewValue(com::sun::star::uno::Any const&, sfx2::sidebar::Theme::ThemeItem, sfx2::sidebar::Theme::PropertyType)
+sfx2::sidebar::Theme::SetupPropertyMaps()
+sfx2::sidebar::Theme::Theme()
+sfx2::sidebar::Theme::UpdateTheme()
+sfx2::sidebar::Theme::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+sfx2::sidebar::Theme::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+sfx2::sidebar::Theme::disposing()
+sfx2::sidebar::Theme::getProperties()
+sfx2::sidebar::Theme::getPropertyByName(rtl::OUString const&)
+sfx2::sidebar::Theme::getPropertySetInfo()
+sfx2::sidebar::Theme::getPropertyValue(rtl::OUString const&)
+sfx2::sidebar::Theme::hasPropertyByName(rtl::OUString const&)
+sfx2::sidebar::Theme::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+sfx2::sidebar::Theme::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+sfx2::sidebar::Theme::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+sfx2::sidebar::Theme::~Theme()
+shift_basis
+shift_coldata
+shift_rowcoldata
+shift_rowdata
+simple_formula_FormulaOpCodeMapperObj
+simplexPricer
+singleton_column
+sizeLink
+so_stdname
+solution_is_int
+solve_BB
+solve_LP
+sortByINT
+sortByREAL
+sortREALByINT
+spaces
+spx_run
+spx_solve
+stallMonitor_check
+stallMonitor_create
+stallMonitor_creepingObj
+stallMonitor_finish
+stallMonitor_reset
+stallMonitor_shortSteps
+stallMonitor_update
+std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::locale::conv::from_utf<char>(char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::locale::conv::method_type)
+std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::locale::conv::from_utf<wchar_t>(wchar_t const*, wchar_t const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::locale::conv::method_type)
+std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::locale::conv::to_utf<char>(char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::locale::conv::method_type)
+std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > boost::locale::conv::to_utf<wchar_t>(char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::locale::conv::method_type)
+store_bounds
+store_pointer(char*, char*)
+store_re_op
+storevarandweight
+str_add_column
+str_add_constraint
+str_add_lag_con
+str_set_obj_fn
+str_set_rh_vec
+strcpylo
+strcpyup
+strlcpy
+strlinecat(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+strongbranch_BB
+strtoint
+strtolo
+strtoup
+submat
+svl::IndexedStyleSheets::ApplyToAllStyleSheets(svl::StyleSheetCallback&) const
+svl::IndexedStyleSheets::Clear(svl::StyleSheetDisposer&)
+svl::IndexedStyleSheets::GetNthStyleSheetThatMatchesPredicate(int, svl::StyleSheetPredicate&, int)
+svl::IndexedStyleSheets::GetNumberOfStyleSheetsWithPredicate(svl::StyleSheetPredicate&) const
+svl::IndexedStyleSheets::Register(SfxStyleSheetBase const&, int)
+svl::IndexedStyleSheets::Reindex()
+svt::AcceleratorExecute::st_openDocConfig(com::sun::star::uno::Reference<com::sun::star::frame::XModel> const&)
+svt::AcceleratorExecute::st_openModuleConfig(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&)
+svt::AddressBookSourceDialog::AddressBookSourceDialog(weld::Window*, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, com::sun::star::uno::Reference<com::sun::star::sdbc::XDataSource> const&, rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::util::AliasProgrammaticPair> const&)
+svt::AddressBookSourceDialog::getFieldMapping(com::sun::star::uno::Sequence<com::sun::star::util::AliasProgrammaticPair>&) const
+svt::AddressBookSourceDialog::implConstruct()
+svt::AddressBookSourceDialog::implScrollFields(int, bool, bool)
+svt::AddressBookSourceDialog::implSelectField(weld::ComboBox*, rtl::OUString const&)
+svt::AddressBookSourceDialog::initializeDatasources()
+svt::AddressBookSourceDialog::loadConfiguration()
+svt::AddressBookSourceDialog::resetFields()
+svt::AddressBookSourceDialog::resetTables()
+svt::CellController::CellController(svt::ControlBase*)
+svt::CellController::MoveAllowed(KeyEvent const&) const
+svt::CellController::resume()
+svt::CellController::suspend()
+svt::CheckBoxCellController::ActivatingMouseEvent(BrowserMouseEvent const&, bool)
+svt::CheckBoxCellController::IsValueChangedFromSaved() const
+svt::CheckBoxCellController::SaveValue()
+svt::CheckBoxControl::Clicked()
+svt::CheckBoxControl::SetPointFont(vcl::Font const&)
+svt::CheckBoxControl::dispose()
+svt::CheckBoxControl::~CheckBoxControl()
+svt::ComboBoxCellController::IsValueChangedFromSaved() const
+svt::ComboBoxCellController::MoveAllowed(KeyEvent const&) const
+svt::ComboBoxCellController::SaveValue()
+svt::ComboBoxControl::SetPointFont(vcl::Font const&)
+svt::ComboBoxControl::dispose()
+svt::ControlBase::ControlBase(BrowserDataWin*, rtl::OUString const&, rtl::OString const&)
+svt::DateControl::dispose()
+svt::DialogClosedListener::dialogClosed(com::sun::star::ui::dialogs::DialogClosedEvent const&)
+svt::DialogClosedListener::disposing(com::sun::star::lang::EventObject const&)
+svt::DocumentLockFile::WriteEntryToStream(o3tl::enumarray<LockFileComponent, rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+svt::EditBrowseBox::AsynchGetFocus()
+svt::EditBrowseBox::BrowserMouseEventPtr::Set(BrowserMouseEvent const*, bool)
+svt::EditBrowseBox::GetImage(svt::EditBrowseBox::RowStatus) const
+svt::EditBrowseBox::ResizeController(tools::SvRef<svt::CellController> const&, tools::Rectangle const&)
+svt::EditBrowseBox::implCreateActiveAccessible()
+svt::EditCellController::IsValueChangedFromSaved() const
+svt::EditCellController::LinkStubModifyHdl(void*, LinkParamNone*)
+svt::EditCellController::MoveAllowed(KeyEvent const&) const
+svt::EditCellController::SaveValue()
+svt::EditCellController::~EditCellController()
+svt::EditControlBase::EditControlBase(BrowserDataWin*)
+svt::EditControlBase::InitEditControlBase(weld::Entry*)
+svt::EmbeddedObjectRef::GetIsProtectedHdl() const
+svt::EmbeddedObjectRef::IsChart(com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&)
+svt::EmbeddedObjectRef::IsLocked() const
+svt::EmbeddedObjectRef::UpdateReplacementOnDemand()
+svt::EntryImplementation::ModifyHdl(weld::Entry&)
+svt::FormattedControlBase::FormattedControlBase(BrowserDataWin*, bool)
+svt::FormattedControlBase::InitFormattedControlBase()
+svt::FormattedControlBase::connect_changed(Link<weld::Entry&, void> const&)
+svt::FormattedControlBase::connect_focus_out(Link<weld::Widget&, void> const&)
+svt::FormattedControlBase::dispose()
+svt::FormattedFieldCellController::CommitModifications()
+svt::GenDocumentLockFile::GenDocumentLockFile(rtl::OUString const&)
+svt::GenDocumentLockFile::OpenStream()
+svt::GenDocumentLockFile::~GenDocumentLockFile()
+svt::JavaContext::getValueByName(rtl::OUString const&)
+svt::JavaContext::queryInterface(com::sun::star::uno::Type const&)
+svt::JavaContext::release()
+svt::JavaContext::~JavaContext()
+svt::JavaInteractionHandler::handle(com::sun::star::uno::Reference<com::sun::star::task::XInteractionRequest> const&)
+svt::JavaInteractionHandler::queryInterface(com::sun::star::uno::Type const&)
+svt::JavaInteractionHandler::release()
+svt::ListBoxControl::SetPointFont(vcl::Font const&)
+svt::ListBoxControl::dispose()
+svt::LockFileCommon::EscapeCharacters(rtl::OUString const&)
+svt::LockFileCommon::GenerateOwnLockFileURL(rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+svt::LockFileCommon::GetCurrentLocalTime()
+svt::LockFileCommon::GetOOOUserName()
+svt::LockFileCommon::LockFileCommon(rtl::OUString const&)
+svt::LockFileCommon::ParseEntry(com::sun::star::uno::Sequence<signed char> const&, int&)
+svt::LockFileCommon::ParseList(com::sun::star::uno::Sequence<signed char> const&, std::vector<o3tl::enumarray<LockFileComponent, rtl::OUString>, std::allocator<o3tl::enumarray<LockFileComponent, rtl::OUString> > >&)
+svt::LockFileCommon::ParseName(com::sun::star::uno::Sequence<signed char> const&, int&)
+svt::LockFileCommon::SetURL(rtl::OUString const&)
+svt::LockFileCommon::~LockFileCommon()
+svt::MSODocumentLockFile::OpenStream()
+svt::MSODocumentLockFile::WriteEntryToStream(o3tl::enumarray<LockFileComponent, rtl::OUString> const&, com::sun::star::uno::Reference<com::sun::star::io::XOutputStream> const&)
+svt::MSODocumentLockFile::getAppType(rtl::OUString const&)
+svt::MultiLineEditImplementation::GetSelected(LineEnd) const
+svt::MultiLineEditImplementation::GetText(LineEnd) const
+svt::MultiLineEditImplementation::ModifyHdl(weld::TextView&)
+svt::MultiLineTextCell::GetFocus()
+svt::MultiLineTextCell::ProcessKey(KeyEvent const&)
+svt::MultiLineTextCell::dispose()
+svt::OGenericUnoDialog::impl_ensureDialog_lck()
+svt::OStringTransferable::AddSupportedFormats()
+svt::OStringTransferable::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+svt::PatternControl::connect_changed(Link<weld::Entry&, void> const&)
+svt::PatternControl::connect_focus_out(Link<weld::Widget&, void> const&)
+svt::PatternControl::dispose()
+svt::PopupMenuControllerBase::determineBaseURL(rtl::OUString const&)
+svt::PopupMenuControllerBase::updateCommand(rtl::OUString const&)
+svt::ShareControlFile::Close()
+svt::ShareControlFile::RemoveEntry(o3tl::enumarray<LockFileComponent, rtl::OUString> const&)
+svt::ShareControlFile::SetUsersDataAndStore(std::vector<o3tl::enumarray<LockFileComponent, rtl::OUString>, std::allocator<o3tl::enumarray<LockFileComponent, rtl::OUString> > >&&)
+svt::StatusbarController::bindListener()
+svt::StatusbarController::getURLTransformer() const
+svtools::ApplyLineDashing(basegfx::B2DPolygon const&, SvxBorderLineStyle, double)
+svtools::ExtendedColorConfig::Notify(SfxBroadcaster&, SfxHint const&)
+svx::ClassificationDialog::insertCategoryField(int)
+svx::ClassificationDialog::insertField(svx::ClassificationType, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+svx::ClassificationDialog::readIn(std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> > const&)
+svx::ClassificationDialog::readRecentlyUsed()
+svx::ClassificationDialog::toggleWidgetsDependingOnCategory()
+svx::ClassificationDialog::writeRecentlyUsed()
+svx::CommonStyleManager::CreateStylePreviewRenderer(OutputDevice&, SfxStyleSheetBase*, long)
+svx::DialControl::HandleEscapeEvent()
+svx::DialControl::HandleMouseEvent(Point const&, bool)
+svx::DialControl::Init(Size const&)
+svx::DialControl::Init(Size const&, vcl::Font const&)
+svx::DialControl::InvalidateControl()
+svx::DialControl::KeyInput(KeyEvent const&)
+svx::DialControl::LoseFocus()
+svx::DialControl::MouseButtonDown(MouseEvent const&)
+svx::DialControl::MouseButtonUp(MouseEvent const&)
+svx::DialControl::MouseMove(MouseEvent const&)
+svx::DialControl::Paint(OutputDevice&, tools::Rectangle const&)
+svx::DialControl::Resize()
+svx::DialControl::SetDrawingArea(weld::DrawingArea*)
+svx::DialControl::SetModifyHdl(Link<svx::DialControl&, void> const&)
+svx::DialControl::SetRotation(o3tl::strong_int<int, FractionTag<100> >, bool)
+svx::ExtrusionBar::GetInterface() const
+svx::ExtrusionBar::GetStaticInterface()
+svx::ExtrusionBar::InitInterface_Impl()
+svx::ExtrusionBar::RegisterInterface(SfxModule const*)
+svx::FontWorkGalleryDialog::fillFavorites(unsigned short)
+svx::FontWorkGalleryDialog::initFavorites(unsigned short)
+svx::FontWorkGalleryDialog::insertSelectedFontwork()
+svx::FontworkBar::GetInterface() const
+svx::FontworkBar::GetStaticInterface()
+svx::FontworkBar::InitInterface_Impl()
+svx::FontworkBar::RegisterInterface(SfxModule const*)
+svx::FormatPaintBrushToolBoxControl::Click()
+svx::FormatPaintBrushToolBoxControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::FormatPaintBrushToolBoxControl::DoubleClick()
+svx::FormatPaintBrushToolBoxControl::FormatPaintBrushToolBoxControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::FormatPaintBrushToolBoxControl::Select(unsigned short)
+svx::FormatPaintBrushToolBoxControl::StateChangedAtToolBoxControl(unsigned short, SfxItemState, SfxPoolItem const*)
+svx::FormatPaintBrushToolBoxControl::impl_executePaintBrush()
+svx::FormatPaintBrushToolBoxControl::~FormatPaintBrushToolBoxControl()
+svx::FrameSelector::CreateAccessible()
+svx::FrameSelector::GetChildAccessible(Point const&)
+svx::FrameSelector::GetChildAccessible(int)
+svx::FrameSelector::GetChildAccessible(svx::FrameBorderType)
+svx::FrameSelector::GetClickBoundRect(svx::FrameBorderType) const
+svx::FrameSelector::GetEnabledBorderCount() const
+svx::FrameSelector::GetEnabledBorderType(int) const
+svx::FrameSelector::GetFocus()
+svx::FrameSelector::GetSelectHdl() const
+svx::FrameSelector::IsBorderSelected(svx::FrameBorderType) const
+svx::FrameSelector::KeyInput(KeyEvent const&)
+svx::FrameSelector::LoseFocus()
+svx::FrameSelector::MouseButtonDown(MouseEvent const&)
+svx::FrameSelector::Paint(OutputDevice&, tools::Rectangle const&)
+svx::FrameSelector::Resize()
+svx::FrameSelector::SetDrawingArea(weld::DrawingArea*)
+svx::FrameSelector::StyleUpdated()
+svx::FrameSelector::SupportsDontCareState() const
+svx::IPropertyValueProvider::~IPropertyValueProvider()
+svx::OColumnTransferable::AddSupportedFormats()
+svx::OColumnTransferable::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+svx::OColumnTransferable::extractColumnDescriptor(TransferableDataHelper const&, rtl::OUString&, rtl::OUString&, rtl::OUString&, int&, rtl::OUString&, rtl::OUString&)
+svx::OColumnTransferable::getDescriptorFormatId()
+svx::OComponentTransferable::AddSupportedFormats()
+svx::OComponentTransferable::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+svx::OComponentTransferable::getDescriptorFormatId(bool)
+svx::ODataAccessDescriptor::ODataAccessDescriptor(svx::ODataAccessDescriptor const&)
+svx::ODataAccessDescriptor::ODataAccessDescriptor(svx::ODataAccessDescriptor&&)
+svx::ODataAccessDescriptor::operator=(svx::ODataAccessDescriptor const&)
+svx::OMultiColumnTransferable::AddSupportedFormats()
+svx::OMultiColumnTransferable::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+svx::OMultiColumnTransferable::ObjectReleased()
+svx::OMultiColumnTransferable::getDescriptorFormatId()
+svx::OXFormsTransferable::AddSupportedFormats()
+svx::OXFormsTransferable::GetData(com::sun::star::datatransfer::DataFlavor const&, rtl::OUString const&)
+svx::OXFormsTransferable::OXFormsTransferable(svx::OXFormsDescriptor const&)
+svx::ParaAboveSpacingControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaAboveSpacingControl::CreateItemWindow(vcl::Window*)
+svx::ParaAboveSpacingControl::ParaAboveSpacingControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaBelowSpacingControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaBelowSpacingControl::CreateItemWindow(vcl::Window*)
+svx::ParaBelowSpacingControl::ParaBelowSpacingControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaFirstLineSpacingControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaFirstLineSpacingControl::CreateItemWindow(vcl::Window*)
+svx::ParaFirstLineSpacingControl::ParaFirstLineSpacingControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaLeftSpacingControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaLeftSpacingControl::CreateItemWindow(vcl::Window*)
+svx::ParaLeftSpacingControl::ParaLeftSpacingControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaRightSpacingControl::CreateImpl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::ParaRightSpacingControl::CreateItemWindow(vcl::Window*)
+svx::ParaRightSpacingControl::ParaRightSpacingControl(unsigned short, o3tl::strong_int<unsigned short, ToolBoxItemIdTag>, ToolBox&)
+svx::PropertyChangeNotifier::PropertyChangeNotifier(cppu::OWeakObject&, osl::Mutex&)
+svx::PropertyChangeNotifier::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+svx::PropertyChangeNotifier::disposing()
+svx::PropertyChangeNotifier::notifyPropertyChange(svx::ShapeProperty) const
+svx::PropertyChangeNotifier::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+svx::PropertyChangeNotifier::~PropertyChangeNotifier()
+svx::PropertyValueProvider::getCurrentValue(com::sun::star::uno::Any&) const
+svx::PropertyValueProvider::getPropertyName() const
+svx::Theme::GetColorSet()
+svx::Theme::GetName() const
+svx::Theme::SetColorSet(std::unique_ptr<svx::ColorSet, std::default_delete<svx::ColorSet> >)
+svx::Theme::SetName(rtl::OUString const&)
+svx::Theme::Theme(rtl::OUString const&)
+svx::Theme::dumpAsXml(_xmlTextWriter*) const
+svx::classification::containsProperty(com::sun::star::uno::Sequence<com::sun::star::beans::Property> const&, std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+svx::classification::convertClassificationResultToString(std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> > const&)
+svx::frame::Array::GetCellCount() const
+svx::frame::Array::GetCellStyleBL(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleBLTR(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleBR(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleBottom(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleLeft(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleRight(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleTL(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleTLBR(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleTR(unsigned long, unsigned long) const
+svx::frame::Array::GetCellStyleTop(unsigned long, unsigned long) const
+svx::frame::Array::GetColPosition(unsigned long) const
+svx::frame::Array::GetColWidth(unsigned long, unsigned long) const
+svx::frame::Array::GetMergedOrigin(unsigned long&, unsigned long&, unsigned long, unsigned long) const
+svx::frame::Array::GetMergedRange(unsigned long&, unsigned long&, unsigned long&, unsigned long&, unsigned long, unsigned long) const
+svx::frame::Array::GetRowHeight(unsigned long, unsigned long) const
+svx::frame::Array::GetRowPosition(unsigned long) const
+svx::frame::Style::Set(double, double, double)
+svx::sidebar::AreaPropertyPanelBase::GetGradient(com::sun::star::awt::GradientStyle) const
+svx::sidebar::AreaPropertyPanelBase::GetSelectedTransparencyTypeIndex() const
+svx::sidebar::AreaPropertyPanelBase::ImpUpdateTransparencies()
+svx::sidebar::AreaPropertyPanelBase::Initialize()
+svx::sidebar::AreaPropertyPanelBase::SelectFillAttrHdl_Impl()
+svx::sidebar::AreaPropertyPanelBase::SetGradient(XGradient const&)
+svx::sidebar::AreaPropertyPanelBase::SetTransparency(unsigned short)
+svx::sidebar::AreaPropertyPanelBase::Update()
+svx::sidebar::GalleryControl::~GalleryControl()
+svx::sidebar::InspectorTextPanel::Create(weld::Widget*)
+svx::sidebar::LinePropertyPanelBase::ActivateControls()
+svx::sidebar::LinePropertyPanelBase::EndLineWidthPopup()
+svx::sidebar::LinePropertyPanelBase::Initialize()
+svx::sidebar::LinePropertyPanelBase::SetWidth(long)
+svx::sidebar::LinePropertyPanelBase::SetWidthIcon()
+svx::sidebar::LinePropertyPanelBase::SetWidthIcon(int)
+svx::sidebar::LinePropertyPanelBase::enableArrowHead()
+svx::sidebar::LinePropertyPanelBase::updateLineCap(bool, bool, SfxPoolItem const*)
+svx::sidebar::LinePropertyPanelBase::updateLineJoint(bool, bool, SfxPoolItem const*)
+svx::sidebar::NBOTypeMgrBase::ImplLoad(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+svx::sidebar::NBOTypeMgrBase::ImplStore(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+svx::sidebar::NBOTypeMgrBase::IsSingleLevel(unsigned short)
+svx::sidebar::SelectionAnalyzer::GetContextForObjectId_SC(unsigned short)
+svx::sidebar::SelectionAnalyzer::GetContextForObjectId_SD(unsigned short, svx::sidebar::SelectionAnalyzer::ViewType)
+svx::sidebar::SelectionAnalyzer::GetInventorTypeFromMark(SdrMarkList const&)
+svx::sidebar::SelectionAnalyzer::GetObjectTypeFromGroup(SdrObject const*)
+svx::sidebar::SelectionAnalyzer::GetObjectTypeFromMark(SdrMarkList const&)
+svx::sidebar::SelectionAnalyzer::IsShapeType(unsigned short)
+svx::sidebar::SelectionAnalyzer::IsTextObjType(unsigned short)
+svx::sidebar::SelectionChangeHandler::disposing()
+svx::sidebar::SelectionChangeHandler::disposing(com::sun::star::lang::EventObject const&)
+svx::sidebar::SelectionChangeHandler::~SelectionChangeHandler()
+svxform::DataNavigatorManager::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+svxform::DataNavigatorManager::GetInfo() const
+svxform::NavigatorFrameManager::CreateImpl(vcl::Window*, unsigned short, SfxBindings*, SfxChildWinInfo*)
+svxform::NavigatorFrameManager::GetInfo() const
+sw::AccessibilityCheck::checkObject(SdrObject*)
+sw::BroadcastingModify::CallSwClientNotify(SfxHint const&) const
+sw::MetaFieldManager::MetaFieldManager()
+sw::MetaFieldManager::copyDocumentProperties(SwDoc const&)
+sw::MetaFieldManager::getMetaFields()
+sw::MetaFieldManager::makeMetaField(SwFormatMeta*, unsigned int, bool)
+sw::UndoManager::AddUndoAction(std::unique_ptr<SfxUndoAction, std::default_delete<SfxUndoAction> >, bool)
+sw::UndoManager::AppendUndo(std::unique_ptr<SwUndo, std::default_delete<SwUndo> >)
+sw::UndoManager::ClearRedo()
+sw::UndoManager::DelAllUndoObj()
+sw::UndoManager::DoDrawUndo(bool)
+sw::UndoManager::DoGroupUndo(bool)
+sw::UndoManager::DoRepair(bool)
+sw::UndoManager::DoUndo(bool)
+sw::UndoManager::DoesDrawUndo() const
+sw::UndoManager::DoesGroupUndo() const
+sw::UndoManager::DoesRepair() const
+sw::UndoManager::DoesUndo() const
+sw::UndoManager::EmptyActionsChanged()
+sw::UndoManager::GetFirstRedoInfo(rtl::OUString*, SwUndoId*, SwView const*) const
+sw::UndoManager::GetLastUndo()
+sw::UndoManager::GetLastUndoInfo(rtl::OUString*, SwUndoId*, SwView const*) const
+sw::UndoManager::GetRedoActionCount(bool) const
+sw::UndoManager::GetRedoComments() const
+sw::UndoManager::GetRepeatInfo(rtl::OUString*) const
+sw::UndoManager::GetUndoComments() const
+sw::UndoManager::GetUndoNodes()
+sw::UndoManager::GetUndoNodes() const
+sw::UndoManager::IsUndoNoResetModified() const
+sw::UndoManager::IsUndoNodes(SwNodes const&) const
+sw::UndoManager::IsViewUndoActionIndependent(SwView const*, unsigned short&) const
+sw::UndoManager::LockUndoNoModifiedPosition()
+sw::UndoManager::RemoveLastUndo()
+sw::UndoManager::Repeat(sw::RepeatContext&, unsigned short)
+sw::UndoManager::SetDocShell(SwDocShell*)
+sw::UndoManager::SetUndoNoModifiedPosition()
+sw::UndoManager::SetUndoNoResetModified()
+sw::UndoManager::UnLockUndoNoModifiedPosition()
+sw::UndoManager::UndoManager(std::shared_ptr<SwNodes> const&, IDocumentDrawModelAccess&, IDocumentRedlineAccess&, IDocumentState&)
+sw::UndoManager::UndoWithOffset(unsigned long)
+sw::UndoManager::dumpAsXml(_xmlTextWriter*) const
+sw::UndoManager::impl_DoUndoRedo(sw::UndoManager::UndoOrRedoType, unsigned long)
+sw::UnoCursorHint::~UnoCursorHint()
+sw::WriterMultiListener::EndListening(SwModify*)
+sw::WriterMultiListener::EndListeningAll()
+sw::WriterMultiListener::IsListeningTo(SwModify const*) const
+sw::WriterMultiListener::StartListening(SwModify*)
+sw::WriterMultiListener::WriterMultiListener(SwClient&)
+sw::search::SearchResultLocator::findOne(sw::search::LocationResult&, sw::search::SearchIndexData const&)
+sw::search::SearchResultLocator::tryParseJSON(char const*, std::vector<sw::search::SearchIndexData, std::allocator<sw::search::SearchIndexData> >&)
+sw::search::SearchResultLocator::tryParseXML(char const*, std::vector<sw::search::SearchIndexData, std::allocator<sw::search::SearchIndexData> >&)
+swapINT
+swapPTR
+swapREAL
+symamd
+symamd_report
+termPQExpBuffer
+timeNow
+time_elapsed
+toBool(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+tools::JsonWriter::addCommaBeforeField()
+tools::JsonWriter::ensureSpace(int)
+tools::JsonWriter::writeEscapedOUString(rtl::OUString const&)
+tools::Line::Intersection(tools::Line const&, Point&) const
+tools::PolyPolygon::Remove(unsigned short)
+tools::Polygon::Clear()
+tools::Polygon::ImplRead(SvStream&)
+tools::Polygon::ImplReduceEdges(tools::Polygon&, double const&, unsigned short)
+tools::Polygon::ImplWrite(SvStream&) const
+tools::Polygon::IsRect() const
+tools::Polygon::Translate(Point const&)
+tools::Time::GetNSFromTime() const
+tools::Time::MakeTimeFromNS(long)
+tools::Time::init(unsigned int, unsigned int, unsigned int, unsigned long)
+tools::XmlWriter::attributeBase64(rtl::OString const&, std::vector<char, std::allocator<char> > const&)
+tools::XmlWriter::element(rtl::OString const&)
+tools::operator+(tools::Time const&, tools::Time const&)
+transfer_solution
+transfer_solution_var
+transform_for_scale
+u16_u8(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::vector<w_char, std::allocator<w_char> > const&)
+u8_u16(std::vector<w_char, std::allocator<w_char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
+ucbhelper::ActiveDataSink::getInputStream()
+ucbhelper::ActiveDataSink::setInputStream(com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&)
+ucbhelper::CommandEnvironment::getInteractionHandler()
+ucbhelper::CommandEnvironment::getProgressHandler()
+ucbhelper::CommandEnvironment::~CommandEnvironment()
+ucbhelper::Content::Content(ucbhelper::Content&&)
+ucbhelper::Content::createCursorAny(com::sun::star::uno::Sequence<rtl::OUString> const&, ucbhelper::ResultSetInclude)
+ucbhelper::Content::getPropertyValuesInterface(com::sun::star::uno::Sequence<rtl::OUString> const&)
+ucbhelper::Content::setPropertyValues(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&)
+ucbhelper::ContentIdentifier::getContentIdentifier()
+ucbhelper::ContentIdentifier::getContentProviderScheme()
+ucbhelper::ContentIdentifier::~ContentIdentifier()
+ucbhelper::ContentProviderImplHelper::copyAdditionalPropertySet(rtl::OUString const&, rtl::OUString const&, bool)
+ucbhelper::ContentProviderImplHelper::queryExistingContent(rtl::OUString const&)
+ucbhelper::ContentProviderImplHelper::removeAdditionalPropertySet(rtl::OUString const&, bool)
+ucbhelper::ContentProviderImplHelper::renameAdditionalPropertySet(rtl::OUString const&, rtl::OUString const&, bool)
+ucbhelper::FdInputStream::available()
+ucbhelper::FdInputStream::closeInput()
+ucbhelper::FdInputStream::getLength()
+ucbhelper::FdInputStream::getPosition()
+ucbhelper::FdInputStream::readBytes(com::sun::star::uno::Sequence<signed char>&, int)
+ucbhelper::FdInputStream::readSomeBytes(com::sun::star::uno::Sequence<signed char>&, int)
+ucbhelper::FdInputStream::seek(long)
+ucbhelper::FdInputStream::skipBytes(int)
+ucbhelper::FdInputStream::~FdInputStream()
+ucbhelper::InteractionAbort::getImplementationId()
+ucbhelper::InteractionAbort::getTypes()
+ucbhelper::InteractionAbort::queryInterface(com::sun::star::uno::Type const&)
+ucbhelper::InteractionAbort::select()
+ucbhelper::InteractionApprove::getImplementationId()
+ucbhelper::InteractionApprove::getTypes()
+ucbhelper::InteractionApprove::queryInterface(com::sun::star::uno::Type const&)
+ucbhelper::InteractionApprove::select()
+ucbhelper::InteractionAuthFallback::queryInterface(com::sun::star::uno::Type const&)
+ucbhelper::InteractionAuthFallback::select()
+ucbhelper::InteractionAuthFallback::setCode(rtl::OUString const&)
+ucbhelper::InteractionDisapprove::getImplementationId()
+ucbhelper::InteractionDisapprove::getTypes()
+ucbhelper::InteractionDisapprove::queryInterface(com::sun::star::uno::Type const&)
+ucbhelper::InteractionDisapprove::select()
+ucbhelper::InteractionRequest::setSelection(rtl::Reference<ucbhelper::InteractionContinuation> const&)
+ucbhelper::InteractionRetry::getImplementationId()
+ucbhelper::InteractionRetry::getTypes()
+ucbhelper::InteractionRetry::queryInterface(com::sun::star::uno::Type const&)
+ucbhelper::InteractionRetry::select()
+ucbhelper::InteractionSupplyAuthentication::canSetAccount()
+ucbhelper::InteractionSupplyAuthentication::canSetPassword()
+ucbhelper::InteractionSupplyAuthentication::canSetRealm()
+ucbhelper::InteractionSupplyAuthentication::canSetUserName()
+ucbhelper::InteractionSupplyAuthentication::canUseSystemCredentials(unsigned char&)
+ucbhelper::InteractionSupplyAuthentication::getImplementationId()
+ucbhelper::InteractionSupplyAuthentication::getRememberAccountModes(com::sun::star::ucb::RememberAuthentication&)
+ucbhelper::InteractionSupplyAuthentication::getRememberPasswordModes(com::sun::star::ucb::RememberAuthentication&)
+ucbhelper::InteractionSupplyAuthentication::getTypes()
+ucbhelper::InteractionSupplyAuthentication::queryInterface(com::sun::star::uno::Type const&)
+ucbhelper::InteractionSupplyAuthentication::select()
+ucbhelper::InteractionSupplyAuthentication::setAccount(rtl::OUString const&)
+ucbhelper::InteractionSupplyAuthentication::setPassword(rtl::OUString const&)
+ucbhelper::InteractionSupplyAuthentication::setRealm(rtl::OUString const&)
+ucbhelper::InteractionSupplyAuthentication::setRememberAccount(com::sun::star::ucb::RememberAuthentication)
+ucbhelper::InteractionSupplyAuthentication::setRememberPassword(com::sun::star::ucb::RememberAuthentication)
+ucbhelper::InteractionSupplyAuthentication::setUseSystemCredentials(unsigned char)
+ucbhelper::InteractionSupplyAuthentication::setUserName(rtl::OUString const&)
+ucbhelper::InterceptedInteraction::intercepted(ucbhelper::InterceptedInteraction::InterceptedRequest const&, com::sun::star::uno::Reference<com::sun::star::task::XInteractionRequest> const&)
+ucbhelper::PropertyValueSet::findColumn(rtl::OUString const&)
+ucbhelper::PropertyValueSet::getArray(int)
+ucbhelper::PropertyValueSet::getBinaryStream(int)
+ucbhelper::PropertyValueSet::getBlob(int)
+ucbhelper::PropertyValueSet::getBoolean(int)
+ucbhelper::PropertyValueSet::getByte(int)
+ucbhelper::PropertyValueSet::getBytes(int)
+ucbhelper::PropertyValueSet::getCharacterStream(int)
+ucbhelper::PropertyValueSet::getClob(int)
+ucbhelper::PropertyValueSet::getDate(int)
+ucbhelper::PropertyValueSet::getDouble(int)
+ucbhelper::PropertyValueSet::getFloat(int)
+ucbhelper::PropertyValueSet::getInt(int)
+ucbhelper::PropertyValueSet::getLong(int)
+ucbhelper::PropertyValueSet::getObject(int, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+ucbhelper::PropertyValueSet::getRef(int)
+ucbhelper::PropertyValueSet::getShort(int)
+ucbhelper::PropertyValueSet::getString(int)
+ucbhelper::PropertyValueSet::getTime(int)
+ucbhelper::PropertyValueSet::getTimestamp(int)
+ucbhelper::PropertyValueSet::wasNull()
+ucbhelper::PropertyValueSet::~PropertyValueSet()
+ucbhelper::ResultSet::absolute(int)
+ucbhelper::ResultSet::addEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+ucbhelper::ResultSet::addPropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ucbhelper::ResultSet::addVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ucbhelper::ResultSet::afterLast()
+ucbhelper::ResultSet::beforeFirst()
+ucbhelper::ResultSet::close()
+ucbhelper::ResultSet::dispose()
+ucbhelper::ResultSet::first()
+ucbhelper::ResultSet::getArray(int)
+ucbhelper::ResultSet::getBinaryStream(int)
+ucbhelper::ResultSet::getBlob(int)
+ucbhelper::ResultSet::getBoolean(int)
+ucbhelper::ResultSet::getByte(int)
+ucbhelper::ResultSet::getBytes(int)
+ucbhelper::ResultSet::getCharacterStream(int)
+ucbhelper::ResultSet::getClob(int)
+ucbhelper::ResultSet::getDate(int)
+ucbhelper::ResultSet::getDouble(int)
+ucbhelper::ResultSet::getFloat(int)
+ucbhelper::ResultSet::getImplementationName()
+ucbhelper::ResultSet::getInt(int)
+ucbhelper::ResultSet::getLong(int)
+ucbhelper::ResultSet::getMetaData()
+ucbhelper::ResultSet::getObject(int, com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&)
+ucbhelper::ResultSet::getPropertySetInfo()
+ucbhelper::ResultSet::getPropertyValue(rtl::OUString const&)
+ucbhelper::ResultSet::getRef(int)
+ucbhelper::ResultSet::getRow()
+ucbhelper::ResultSet::getShort(int)
+ucbhelper::ResultSet::getStatement()
+ucbhelper::ResultSet::getString(int)
+ucbhelper::ResultSet::getSupportedServiceNames()
+ucbhelper::ResultSet::getTime(int)
+ucbhelper::ResultSet::getTimestamp(int)
+ucbhelper::ResultSet::isAfterLast()
+ucbhelper::ResultSet::isBeforeFirst()
+ucbhelper::ResultSet::isFirst()
+ucbhelper::ResultSet::isLast()
+ucbhelper::ResultSet::last()
+ucbhelper::ResultSet::next()
+ucbhelper::ResultSet::previous()
+ucbhelper::ResultSet::propertyChanged(com::sun::star::beans::PropertyChangeEvent const&) const
+ucbhelper::ResultSet::queryContent()
+ucbhelper::ResultSet::queryContentIdentifier()
+ucbhelper::ResultSet::queryContentIdentifierString()
+ucbhelper::ResultSet::refreshRow()
+ucbhelper::ResultSet::relative(int)
+ucbhelper::ResultSet::removeEventListener(com::sun::star::uno::Reference<com::sun::star::lang::XEventListener> const&)
+ucbhelper::ResultSet::removePropertyChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertyChangeListener> const&)
+ucbhelper::ResultSet::removeVetoableChangeListener(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::beans::XVetoableChangeListener> const&)
+ucbhelper::ResultSet::rowDeleted()
+ucbhelper::ResultSet::rowInserted()
+ucbhelper::ResultSet::rowUpdated()
+ucbhelper::ResultSet::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&)
+ucbhelper::ResultSet::supportsService(rtl::OUString const&)
+ucbhelper::ResultSet::wasNull()
+ucbhelper::ResultSet::~ResultSet()
+ucbhelper::ResultSetMetaData::getCatalogName(int)
+ucbhelper::ResultSetMetaData::getColumnCount()
+ucbhelper::ResultSetMetaData::getColumnDisplaySize(int)
+ucbhelper::ResultSetMetaData::getColumnLabel(int)
+ucbhelper::ResultSetMetaData::getColumnName(int)
+ucbhelper::ResultSetMetaData::getColumnServiceName(int)
+ucbhelper::ResultSetMetaData::getColumnType(int)
+ucbhelper::ResultSetMetaData::getColumnTypeName(int)
+ucbhelper::ResultSetMetaData::getPrecision(int)
+ucbhelper::ResultSetMetaData::getScale(int)
+ucbhelper::ResultSetMetaData::getSchemaName(int)
+ucbhelper::ResultSetMetaData::getTableName(int)
+ucbhelper::ResultSetMetaData::isAutoIncrement(int)
+ucbhelper::ResultSetMetaData::isCaseSensitive(int)
+ucbhelper::ResultSetMetaData::isCurrency(int)
+ucbhelper::ResultSetMetaData::isDefinitelyWritable(int)
+ucbhelper::ResultSetMetaData::isNullable(int)
+ucbhelper::ResultSetMetaData::isReadOnly(int)
+ucbhelper::ResultSetMetaData::isSearchable(int)
+ucbhelper::ResultSetMetaData::isSigned(int)
+ucbhelper::ResultSetMetaData::isWritable(int)
+ucbhelper::ResultSetMetaData::~ResultSetMetaData()
+ucbhelper::SimpleAuthenticationRequest::initialize(com::sun::star::ucb::URLAuthenticationRequest const&, bool, bool, bool, bool, bool, bool)
+ucbhelper::SimpleNameClashResolveRequest::~SimpleNameClashResolveRequest()
+undoscale
+unicode::getUnicodeDirection(char16_t)
+unicode_normalize
+unicode_to_utf8
+unicodeisalpha(unsigned short)
+unicodetolower(unsigned short, int)
+unicodetoupper(unsigned short, int)
+uniqlist(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)
+unit_lok_process_events_to_idle
+unit_online_get_fonts
+unload_BB
+unload_BLAS
+unload_basis
+unpackPackedVector
+unscale
+unscale_columns
+unscaled_mat
+unscaled_value
+unset_OF_p1extra
+updatePricer
+update_pseudocost
+update_reducedcosts
+updatecuts_BB
+upper_utf(w_char, int)
+userabort
+utf8_to_unicode
+utl::AccessibleRelationSetHelper::containsRelation(short)
+utl::AccessibleRelationSetHelper::getImplementationId()
+utl::AccessibleRelationSetHelper::getRelation(int)
+utl::AccessibleRelationSetHelper::getRelationByType(short)
+utl::AccessibleRelationSetHelper::getRelationCount()
+utl::AccessibleRelationSetHelper::getTypes()
+utl::AccessibleRelationSetHelper::~AccessibleRelationSetHelper()
+utl::AccessibleStateSetHelper::containsAll(com::sun::star::uno::Sequence<short> const&)
+utl::AccessibleStateSetHelper::getImplementationId()
+utl::AccessibleStateSetHelper::getStates()
+utl::AccessibleStateSetHelper::getTypes()
+utl::AccessibleStateSetHelper::isEmpty()
+utl::AccessibleStateSetHelper::~AccessibleStateSetHelper()
+utl::Bootstrap::data()
+utl::ConfigItem::CallNotify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+utl::ConfigItem::GetTree()
+utl::ConfigItem::RemoveChangesListener()
+utl::ConfigItem::SetSetProperties(com::sun::star::uno::Reference<com::sun::star::container::XHierarchicalNameAccess> const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
+utl::ConfigItem::impl_packLocalizedProperties(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
+utl::ConfigItem::impl_unpackLocalizedProperties(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<rtl::OUString>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
+utl::ConfigManager::doStoreConfigItems()
+utl::ConfigurationBroadcaster::ConfigurationBroadcaster()
+utl::ConfigurationBroadcaster::operator=(utl::ConfigurationBroadcaster const&)
+utl::DefaultFontConfiguration::DefaultFontConfiguration()
+utl::DefaultFontConfiguration::tryLocale(rtl::OUString const&, rtl::OUString const&) const
+utl::DefaultFontConfiguration::~DefaultFontConfiguration()
+utl::FontSubstConfiguration::FontSubstConfiguration()
+utl::FontSubstConfiguration::fillSubstVector(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const&, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&) const
+utl::FontSubstConfiguration::getSubstType(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const&) const
+utl::FontSubstConfiguration::getSubstWeight(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const&) const
+utl::FontSubstConfiguration::getSubstWidth(com::sun::star::uno::Reference<com::sun::star::container::XNameAccess> const&, rtl::OUString const&) const
+utl::FontSubstConfiguration::readLocaleSubst(rtl::OUString const&) const
+utl::FontSubstConfiguration::~FontSubstConfiguration()
+utl::GetDateTime(com::sun::star::util::DateTime const&)
+utl::GetLocaleData()
+utl::MediaDescriptor::clearComponentDataEntry(rtl::OUString const&)
+utl::OConfigurationNode::OConfigurationNode(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+utl::OConfigurationNode::_disposing(com::sun::star::lang::EventObject const&)
+utl::OConfigurationNode::clear()
+utl::OConfigurationNode::insertNode(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&) const
+utl::OConfigurationNode::isSetNode() const
+utl::OConfigurationNode::normalizeName(rtl::OUString const&, utl::OConfigurationNode::NAMEORIGIN) const
+utl::OConfigurationNode::operator=(utl::OConfigurationNode const&)
+utl::OConfigurationTreeRoot::OConfigurationTreeRoot(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&)
+utl::OConfigurationTreeRoot::clear()
+utl::OConfigurationTreeRoot::createWithProvider(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&, rtl::OUString const&, int, utl::OConfigurationTreeRoot::CREATION_MODE)
+utl::OConfigurationValueContainer::implConstruct(rtl::OUString const&, int)
+utl::OConfigurationValueContainer::implRegisterExchangeLocation(utl::NodeValueAccessor const&)
+utl::OInputStreamHelper::available()
+utl::OInputStreamHelper::closeInput()
+utl::OInputStreamHelper::getLength()
+utl::OInputStreamHelper::getPosition()
+utl::OInputStreamHelper::readBytes(com::sun::star::uno::Sequence<signed char>&, int)
+utl::OInputStreamHelper::readSomeBytes(com::sun::star::uno::Sequence<signed char>&, int)
+utl::OInputStreamHelper::seek(long)
+utl::OInputStreamHelper::skipBytes(int)
+utl::OInputStreamWrapper::checkConnected() const
+utl::OInputStreamWrapper::checkError() const
+utl::OInputStreamWrapper::readSomeBytes(com::sun::star::uno::Sequence<signed char>&, int)
+utl::OInputStreamWrapper::skipBytes(int)
+utl::OInputStreamWrapper::~OInputStreamWrapper()
+utl::OSeekableInputStreamWrapper::getLength()
+utl::OSeekableInputStreamWrapper::getPosition()
+utl::OSeekableInputStreamWrapper::~OSeekableInputStreamWrapper()
+utl::OSeekableOutputStreamWrapper::getLength()
+utl::OSeekableOutputStreamWrapper::getPosition()
+utl::OSeekableOutputStreamWrapper::queryInterface(com::sun::star::uno::Type const&)
+utl::OSeekableOutputStreamWrapper::seek(long)
+utl::OSeekableOutputStreamWrapper::~OSeekableOutputStreamWrapper()
+utl::OStreamWrapper::closeOutput()
+utl::OStreamWrapper::flush()
+utl::OStreamWrapper::getInputStream()
+utl::OStreamWrapper::getOutputStream()
+utl::OStreamWrapper::truncate()
+utl::OStreamWrapper::writeBytes(com::sun::star::uno::Sequence<signed char> const&)
+utl::OStreamWrapper::~OStreamWrapper()
+utl::ProgressHandlerWrap::pop()
+utl::ProgressHandlerWrap::push(com::sun::star::uno::Any const&)
+utl::ProgressHandlerWrap::update(com::sun::star::uno::Any const&)
+utl::SearchParam::SearchParam(utl::SearchParam const&)
+utl::TempFile::TempFile(utl::TempFile&&)
+utl::TextSearch::Init(utl::SearchParam const&, com::sun::star::lang::Locale const&)
+utl::TextSearch::getXTextSearch(i18nutil::SearchOptions2 const&)
+utl::TransliterationWrapper::loadModuleImpl() const
+utl::TransliterationWrapper::setLanguageLocaleImpl(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+utl::ZipPackageHelper::addFile(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, rtl::OUString const&)
+utl::ZipPackageHelper::addFolder(com::sun::star::uno::Reference<com::sun::star::uno::XInterface> const&, rtl::OUString const&)
+utl::dropPrefixFromConfigurationPath(rtl::OUString const&, rtl::OUString const&)
+validImprovementVar
+validSubstitutionVar
+validate_bounds
+var_store
+varmap_add
+varmap_canunlock
+varmap_clear
+varmap_compact
+varmap_delete
+varmap_lock
+varmap_validate
+vcl::AbstractTrueTypeFont::glyphOffset(unsigned int) const
+vcl::AccessibleFactoryAccess::ensureInitialized()
+vcl::BufferDevice::Dispose()
+vcl::BufferDevice::operator*()
+vcl::CloseTTFont(vcl::TrueTypeFont*)
+vcl::CommandInfoProvider::IsMirrored(rtl::OUString const&, rtl::OUString const&)
+vcl::CommandInfoProvider::IsRotated(rtl::OUString const&, rtl::OUString const&)
+vcl::ControlLayoutData::GetLineCount() const
+vcl::ControlLayoutData::GetLineStartEnd(long) const
+vcl::ControlLayoutData::ToRelativeLineIndex(long) const
+vcl::ConvertDoubleValue(double, long, unsigned short, FieldUnit, FieldUnit)
+vcl::CreateTTFromTTGlyphs(vcl::AbstractTrueTypeFont*, char const*, unsigned short const*, unsigned char const*, int)
+vcl::Cursor::Cursor(vcl::Cursor const&)
+vcl::Cursor::ImplDoHide(bool)
+vcl::Cursor::ImplDoShow(bool, bool)
+vcl::Cursor::ImplPrepForDraw(OutputDevice const*, ImplCursorData&)
+vcl::Cursor::ImplRestore()
+vcl::Cursor::LOKNotify(vcl::Window*, rtl::OUString const&)
+vcl::Cursor::operator=(vcl::Cursor const&)
+vcl::Cursor::operator==(vcl::Cursor const&) const
+vcl::EnumContext::AddEntry(rtl::OUString const&, vcl::EnumContext::Application)
+vcl::EnumContext::AddEntry(rtl::OUString const&, vcl::EnumContext::Context)
+vcl::EnumContext::GetApplication_DI() const
+vcl::EnumContext::ProvideApplicationContainers()
+vcl::EnumContext::ProvideContextContainers()
+vcl::ExtOutDevData::~ExtOutDevData()
+vcl::Font::GetCJKContextLanguageTag() const
+vcl::Font::GetFontAttributes(FontAttributes&) const
+vcl::Font::SetCJKContextLanguageTag(LanguageTag const&)
+vcl::Font::SetLanguageTag(LanguageTag const&)
+vcl::GetTTGlobalFontInfo(vcl::TrueTypeFont*, vcl::TTGlobalFontInfo_*)
+vcl::GetTTSimpleGlyphMetrics(vcl::AbstractTrueTypeFont const*, unsigned short const*, int, bool)
+vcl::GraphicFormatDetector::checkDXF()
+vcl::GraphicFormatDetector::checkMOV()
+vcl::GraphicFormatDetector::checkPBMorPGMorPPM()
+vcl::GraphicFormatDetector::checkPCD()
+vcl::GraphicFormatDetector::checkPCT()
+vcl::GraphicFormatDetector::checkRAS()
+vcl::GraphicFormatDetector::checkSVM()
+vcl::I18nHelper::I18nHelper(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, LanguageTag const&)
+vcl::I18nHelper::filterFormattingChars(rtl::OUString const&)
+vcl::I18nHelper::~I18nHelper()
+vcl::IconThemeInfo::IconThemeInfo(rtl::OUString const&)
+vcl::IconThemeInfo::IconThemeIsInVector(std::vector<vcl::IconThemeInfo, std::allocator<vcl::IconThemeInfo> > const&, rtl::OUString const&)
+vcl::IconThemeInfo::SizeByThemeName(std::basic_string_view<char16_t, std::char_traits<char16_t> >)
+vcl::IconThemeScanner::Create(rtl::OUString const&)
+vcl::IconThemeScanner::FileIsValidIconTheme(rtl::OUString const&)
+vcl::IconThemeScanner::GetStandardIconThemePath()
+vcl::IconThemeScanner::ReadIconThemesFromPath(rtl::OUString const&)
+vcl::IconThemeScanner::ScanDirectoryForIconThemes(rtl::OUString const&)
+vcl::IconThemeSelector::GetIconThemeForDesktopEnvironment(rtl::OUString const&)
+vcl::IconThemeSelector::ReturnFallback(std::vector<vcl::IconThemeInfo, std::allocator<vcl::IconThemeInfo> > const&)
+vcl::IconThemeSelector::operator!=(vcl::IconThemeSelector const&) const
+vcl::ORoadmap::ApplySettings(OutputDevice&)
+vcl::ORoadmap::DataChanged(DataChangedEvent const&)
+vcl::ORoadmap::DeselectOldRoadmapItems()
+vcl::ORoadmap::DrawHeadline(OutputDevice&)
+vcl::ORoadmap::GetByID(short)
+vcl::ORoadmap::GetByID(short) const
+vcl::ORoadmap::GetByIndex(int)
+vcl::ORoadmap::GetByIndex(int) const
+vcl::ORoadmap::GetByPointer(vcl::Window const*)
+vcl::ORoadmap::GetFocus()
+vcl::ORoadmap::GetItemCount() const
+vcl::ORoadmap::GetItemID(int) const
+vcl::ORoadmap::GetItemSelectHdl() const
+vcl::ORoadmap::GetNextAvailableItemId(int)
+vcl::ORoadmap::GetPreviousAvailableItemId(int)
+vcl::ORoadmap::GetPreviousHyperLabel(int)
+vcl::ORoadmap::InsertHyperLabel(int, rtl::OUString const&, short, bool, bool)
+vcl::ORoadmap::Paint(OutputDevice&, tools::Rectangle const&)
+vcl::ORoadmap::PreNotify(NotifyEvent&)
+vcl::ORoadmap::Select()
+vcl::ORoadmap::SetItemSelectHdl(Link<LinkParamNone*, void> const&)
+vcl::ORoadmap::UpdatefollowingHyperLabels(int)
+vcl::ORoadmap::dispose()
+vcl::ORoadmap::implInit(OutputDevice&)
+vcl::ORoadmap::~ORoadmap()
+vcl::OldStylePrintAdaptor::getPageCount() const
+vcl::OldStylePrintAdaptor::getPageParameters(int) const
+vcl::OldStylePrintAdaptor::printPage(int) const
+vcl::OpenTTFontBuffer(void const*, unsigned int, unsigned int, vcl::TrueTypeFont**, tools::SvRef<FontCharMap>)
+vcl::OpenTTFontFile(char const*, unsigned int, vcl::TrueTypeFont**, tools::SvRef<FontCharMap>)
+vcl::PDFExtOutDevData::GetCurrentGraphic() const
+vcl::PDFExtOutDevData::HasAdequateCompression(Graphic const&, tools::Rectangle const&, tools::Rectangle const&) const
+vcl::PDFExtOutDevData::PlaySyncPageAct(vcl::PDFWriter&, unsigned int&, GDIMetaFile const&)
+vcl::PDFWriter::AppendUnicodeTextString(rtl::OUString const&, rtl::OStringBuffer&)
+vcl::PDFWriter::BeginStructureElement(vcl::PDFWriter::StructElement, rtl::OUString const&)
+vcl::PDFWriter::CreateControl(vcl::PDFWriter::AnyWidget const&)
+vcl::PDFWriter::CreateDest(tools::Rectangle const&, int, vcl::PDFWriter::DestAreaType)
+vcl::PDFWriter::CreateLink(tools::Rectangle const&, int)
+vcl::PDFWriter::CreateNamedDest(rtl::OUString const&, tools::Rectangle const&, int, vcl::PDFWriter::DestAreaType)
+vcl::PDFWriter::CreateNote(tools::Rectangle const&, vcl::PDFNote const&, int)
+vcl::PDFWriter::CreateOutlineItem(int, rtl::OUString const&, int)
+vcl::PDFWriter::CreateScreen(tools::Rectangle const&, int)
+vcl::PDFWriter::DrawArc(tools::Rectangle const&, Point const&, Point const&)
+vcl::PDFWriter::DrawBitmap(Point const&, Size const&, Bitmap const&, Graphic const&)
+vcl::PDFWriter::DrawBitmapEx(Point const&, Size const&, BitmapEx const&)
+vcl::PDFWriter::DrawChord(tools::Rectangle const&, Point const&, Point const&)
+vcl::PDFWriter::DrawEllipse(tools::Rectangle const&)
+vcl::PDFWriter::DrawGradient(tools::PolyPolygon const&, Gradient const&)
+vcl::PDFWriter::DrawGradient(tools::Rectangle const&, Gradient const&)
+vcl::PDFWriter::DrawHatch(tools::PolyPolygon const&, Hatch const&)
+vcl::PDFWriter::DrawJPGBitmap(SvStream&, bool, Size const&, tools::Rectangle const&, AlphaMask const&, Graphic const&)
+vcl::PDFWriter::DrawLine(Point const&, Point const&)
+vcl::PDFWriter::DrawLine(Point const&, Point const&, LineInfo const&)
+vcl::PDFWriter::DrawPie(tools::Rectangle const&, Point const&, Point const&)
+vcl::PDFWriter::DrawPixel(Point const&, Color const&)
+vcl::PDFWriter::DrawPolyLine(tools::Polygon const&)
+vcl::PDFWriter::DrawPolyLine(tools::Polygon const&, LineInfo const&)
+vcl::PDFWriter::DrawPolyLine(tools::Polygon const&, vcl::PDFWriter::ExtLineInfo const&)
+vcl::PDFWriter::DrawPolyPolygon(tools::PolyPolygon const&)
+vcl::PDFWriter::DrawPolygon(tools::Polygon const&)
+vcl::PDFWriter::DrawRect(tools::Rectangle const&)
+vcl::PDFWriter::DrawRect(tools::Rectangle const&, unsigned long, unsigned long)
+vcl::PDFWriter::DrawStretchText(Point const&, unsigned long, rtl::OUString const&, int, int)
+vcl::PDFWriter::DrawTextArray(Point const&, rtl::OUString const&, o3tl::span<int const>, int, int)
+vcl::PDFWriter::DrawTextLine(Point const&, long, FontStrikeout, FontLineStyle, FontLineStyle)
+vcl::PDFWriter::DrawTransparent(tools::PolyPolygon const&, unsigned short)
+vcl::PDFWriter::DrawWallpaper(tools::Rectangle const&, Wallpaper const&)
+vcl::PDFWriter::EndStructureElement()
+vcl::PDFWriter::GetDateTime()
+vcl::PDFWriter::IntersectClipRegion(basegfx::B2DPolyPolygon const&)
+vcl::PDFWriter::IntersectClipRegion(tools::Rectangle const&)
+vcl::PDFWriter::MoveClipRegion(long, long)
+vcl::PDFWriter::RegisterDestReference(int, tools::Rectangle const&, int, vcl::PDFWriter::DestAreaType)
+vcl::PDFWriter::SetActualText(rtl::OUString const&)
+vcl::PDFWriter::SetAlternateText(rtl::OUString const&)
+vcl::PDFWriter::SetCurrentStructureElement(int)
+vcl::PDFWriter::SetDigitLanguage(o3tl::strong_int<unsigned short, LanguageTypeTag>)
+vcl::PDFWriter::SetFillColor(Color const&)
+vcl::PDFWriter::SetLayoutMode(vcl::text::ComplexTextLayoutFlags)
+vcl::PDFWriter::SetLineColor(Color const&)
+vcl::PDFWriter::SetLinkDest(int, int)
+vcl::PDFWriter::SetLinkPropertyID(int, int)
+vcl::PDFWriter::SetLinkURL(int, rtl::OUString const&)
+vcl::PDFWriter::SetOverlineColor()
+vcl::PDFWriter::SetOverlineColor(Color const&)
+vcl::PDFWriter::SetPageTransition(vcl::PDFWriter::PageTransition, unsigned int, int)
+vcl::PDFWriter::SetScreenStream(int, rtl::OUString const&)
+vcl::PDFWriter::SetScreenURL(int, rtl::OUString const&)
+vcl::PDFWriter::SetStructureAttribute(vcl::PDFWriter::StructAttribute, vcl::PDFWriter::StructAttributeValue)
+vcl::PDFWriter::SetStructureAttributeNumerical(vcl::PDFWriter::StructAttribute, int)
+vcl::PDFWriter::SetStructureBoundingBox(tools::Rectangle const&)
+vcl::PDFWriter::SetTextAlign(TextAlign)
+vcl::PDFWriter::SetTextFillColor()
+vcl::PDFWriter::SetTextFillColor(Color const&)
+vcl::PDFWriter::SetTextLineColor()
+vcl::PDFWriter::SetTextLineColor(Color const&)
+vcl::PNGWriter::GetChunks()
+vcl::PaintBufferGuard::SetPaintRect(tools::Rectangle const&)
+vcl::PngImageReader::getMicrosoftGifChunk(SvStream&, int*)
+vcl::PrinterController::abortJob()
+vcl::PrinterController::createProgressDialog()
+vcl::PrinterController::getBoolProperty(rtl::OUString const&, bool) const
+vcl::PrinterController::getFilteredPageCount() const
+vcl::PrinterController::getFilteredPageFile(int, GDIMetaFile&, bool)
+vcl::PrinterController::getIntProperty(rtl::OUString const&, int) const
+vcl::PrinterController::getJobState() const
+vcl::PrinterController::getPrinterModified() const
+vcl::PrinterController::getUIOptions() const
+vcl::PrinterController::getValue(rtl::OUString const&)
+vcl::PrinterController::getWindow() const
+vcl::PrinterController::isDirectPrint() const
+vcl::PrinterController::isProgressCanceled() const
+vcl::PrinterController::isShowDialogs() const
+vcl::PrinterController::isUIChoiceEnabled(rtl::OUString const&, int) const
+vcl::PrinterController::isUIOptionEnabled(rtl::OUString const&) const
+vcl::PrinterController::jobFinished(com::sun::star::view::PrintableState)
+vcl::PrinterController::jobStarted()
+vcl::PrinterController::makeEnabled(rtl::OUString const&)
+vcl::PrinterController::printFilteredPage(int)
+vcl::PrinterController::setLastPage(bool)
+vcl::PrinterController::setValue(com::sun::star::beans::PropertyValue const&)
+vcl::PrinterOptionsHelper::setUIControlOpt(com::sun::star::uno::Sequence<rtl::OUString> const&, rtl::OUString const&, com::sun::star::uno::Sequence<rtl::OUString> const&, rtl::OUString const&, com::sun::star::beans::PropertyValue const*, vcl::PrinterOptionsHelper::UIControlOptions const&)
+vcl::ReadRegion(SvStream&, vcl::Region&)
+vcl::Region::GetAsRegionBand() const
+vcl::Region::Overlaps(tools::Rectangle const&) const
+vcl::Region::Scale(double, double)
+vcl::ScriptRun::next()
+vcl::SettingsConfigItem::ImplCommit()
+vcl::SettingsConfigItem::Notify(com::sun::star::uno::Sequence<rtl::OUString> const&)
+vcl::SettingsConfigItem::SettingsConfigItem()
+vcl::SettingsConfigItem::getValues()
+vcl::SettingsConfigItem::setValue(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&)
+vcl::SettingsConfigItem::~SettingsConfigItem()
+vcl::WidgetDefinitionReader::readDefinition(tools::XmlWalker&, vcl::WidgetDefinition&, ControlType)
+vcl::WidgetDefinitionReader::readDrawingDefinition(tools::XmlWalker&, std::shared_ptr<vcl::WidgetDefinitionState> const&)
+vcl::WidgetDefinitionReader::readPart(tools::XmlWalker&, std::shared_ptr<vcl::WidgetDefinitionPart>)
+vcl::Window::CalcOutputSize(Size const&) const
+vcl::Window::EnableAlwaysOnTop(bool)
+vcl::Window::EnableInput(bool, vcl::Window const*)
+vcl::Window::EndAutoScroll()
+vcl::Window::EndExtTextInput()
+vcl::Window::EndSaveFocus(VclPtr<vcl::Window> const&)
+vcl::Window::Erase(OutputDevice&)
+vcl::Window::GetActivateMode() const
+vcl::Window::GetCursorExtTextInputWidth() const
+vcl::Window::GetCursorRect() const
+vcl::Window::GetDrawPixel(OutputDevice const*, long) const
+vcl::Window::GetLastPointerPosPixel()
+vcl::Window::GetNativeControlRegion(ControlType, ControlPart, tools::Rectangle const&, ControlState, ImplControlValue const&, tools::Rectangle&, tools::Rectangle&) const
+vcl::Window::GetOutputRectPixel() const
+vcl::Window::GetOverlineColor() const
+vcl::Window::GetParentClipMode() const
+vcl::Window::GetParentDialog() const
+vcl::Window::GetPrevStyle() const
+vcl::Window::GetTextAlign() const
+vcl::Window::HasPaintEvent() const
+vcl::Window::ImplGetWindow() const
+vcl::Window::InvalidateSizeCache()
+vcl::Window::IsAlwaysEnableInput() const
+vcl::Window::IsAlwaysOnTopEnabled() const
+vcl::Window::IsCreatedWithToolkit() const
+vcl::Window::IsDefaultSize() const
+vcl::Window::IsDialogControlStart() const
+vcl::Window::IsDockingWindow() const
+vcl::Window::IsInInitShow() const
+vcl::Window::IsLOKWindowsEmpty()
+vcl::Window::IsNativeControlSupported(ControlType, ControlPart) const
+vcl::Window::IsOverlineColor() const
+vcl::Window::IsScrollable() const
+vcl::Window::IsTextFillColor() const
+vcl::Window::NormalizedScreenToOutputPixel(Point const&) const
+vcl::Window::NotifyAllChildren(DataChangedEvent&)
+vcl::Window::PixelToLogic(vcl::Region const&) const
+vcl::Window::SaveFocus()
+vcl::Window::SetAccessibleDescription(rtl::OUString const&)
+vcl::Window::SetAccessibleRelationLabelFor(vcl::Window*)
+vcl::Window::SetAccessibleRelationLabeledBy(vcl::Window*)
+vcl::Window::SetActivateMode(ActivateModeFlags)
+vcl::Window::SetDumpAsPropertyTreeHdl(Link<tools::JsonWriter&, void> const&)
+vcl::Window::SetFakeFocus(bool)
+vcl::Window::SetHelpHdl(Link<vcl::Window&, bool> const&)
+vcl::Window::SetMapMode()
+vcl::Window::SetMnemonicActivateHdl(Link<vcl::Window&, bool> const&)
+vcl::Window::SetOverlineColor()
+vcl::Window::SetOverlineColor(Color const&)
+vcl::Window::SetTextAlign(TextAlign)
+vcl::Window::SetWindowRegionPixel()
+vcl::Window::SetWindowRegionPixel(vcl::Region const&)
+vcl::Window::StartAutoScroll(StartAutoScrollFlags)
+vcl::Window::UpdateSettings(AllSettings const&, bool)
+vcl::Window::Window(WindowType)
+vcl::Window::add_mnemonic_label(FixedText*)
+vcl::Window::add_to_size_group(std::shared_ptr<VclSizeGroup> const&)
+vcl::Window::get_border_width() const
+vcl::Window::get_fill() const
+vcl::Window::get_grid_height() const
+vcl::Window::get_grid_left_attach() const
+vcl::Window::get_grid_top_attach() const
+vcl::Window::get_grid_width() const
+vcl::Window::get_halign() const
+vcl::Window::get_hexpand() const
+vcl::Window::get_margin_bottom() const
+vcl::Window::get_margin_end() const
+vcl::Window::get_margin_start() const
+vcl::Window::get_margin_top() const
+vcl::Window::get_non_homogeneous() const
+vcl::Window::get_pack_type() const
+vcl::Window::get_padding() const
+vcl::Window::get_secondary() const
+vcl::Window::get_ungrouped_preferred_size() const
+vcl::Window::get_valign() const
+vcl::Window::list_mnemonic_labels() const
+vcl::Window::remove_from_all_size_groups()
+vcl::Window::remove_mnemonic_label(FixedText*)
+vcl::Window::reorderWithinParent(unsigned short)
+vcl::Window::set_fill(bool)
+vcl::Window::set_font_attribute(rtl::OString const&, rtl::OUString const&)
+vcl::Window::set_grid_height(int)
+vcl::Window::set_grid_left_attach(int)
+vcl::Window::set_grid_top_attach(int)
+vcl::Window::set_grid_width(int)
+vcl::Window::set_halign(VclAlign)
+vcl::Window::set_margin_bottom(int)
+vcl::Window::set_margin_end(int)
+vcl::Window::set_margin_start(int)
+vcl::Window::set_non_homogeneous(bool)
+vcl::Window::set_pack_type(VclPackType)
+vcl::Window::set_padding(int)
+vcl::Window::set_secondary(bool)
+vcl::Window::set_valign(VclAlign)
+vcl::WizardMachine::RemovePage(BuilderPage const*)
+vcl::WizardMachine::SetPage(short, std::unique_ptr<BuilderPage, std::default_delete<BuilderPage> >)
+vcl::WizardMachine::getStateHistory(std::vector<short, std::allocator<short> >&)
+vcl::WizardMachine::isAutomaticNextButtonStateEnabled() const
+vcl::WizardMachine::isTravelingSuspended() const
+vcl::WizardMachine::removePageFromHistory(short)
+vcl::WizardMachine::resumeTraveling(vcl::WizardMachine::AccessGuard)
+vcl::WizardMachine::suspendTraveling(vcl::WizardMachine::AccessGuard)
+vcl::WriteRegion(SvStream&, vcl::Region const&)
+vcl::bitmap::get_premultiply_table()
+vcl::bitmap::get_unpremultiply_table()
+vcl::escapeStringXML(rtl::OUString const&, rtl::OUString&)
+vcl::filter::PDFArrayElement::PushBack(vcl::filter::PDFElement*)
+vcl::filter::PDFArrayElement::Read(SvStream&)
+vcl::filter::PDFBooleanElement::Read(SvStream&)
+vcl::filter::PDFCommentElement::PDFCommentElement(vcl::filter::PDFDocument&)
+vcl::filter::PDFCommentElement::Read(SvStream&)
+vcl::filter::PDFDictionaryElement::Lookup(std::map<rtl::OString, vcl::filter::PDFElement*, std::less<rtl::OString>, std::allocator<std::pair<rtl::OString const, vcl::filter::PDFElement*> > > const&, rtl::OString const&)
+vcl::filter::PDFDictionaryElement::Read(SvStream&)
+vcl::filter::PDFDictionaryElement::SetKeyOffset(rtl::OString const&, unsigned long)
+vcl::filter::PDFDictionaryElement::SetKeyValueLength(rtl::OString const&, unsigned long)
+vcl::filter::PDFDocument::DecodeHexString(vcl::filter::PDFHexStringElement const*)
+vcl::filter::PDFDocument::FindStartXRef(SvStream&)
+vcl::filter::PDFDocument::GetEditBuffer()
+vcl::filter::PDFDocument::GetNextSignature()
+vcl::filter::PDFDocument::GetObjectOffset(unsigned long) const
+vcl::filter::PDFDocument::PushBackEOF(unsigned long)
+vcl::filter::PDFDocument::ReadKeyword(SvStream&)
+vcl::filter::PDFDocument::ReadXRef(SvStream&)
+vcl::filter::PDFDocument::ReadXRefStream(SvStream&)
+vcl::filter::PDFDocument::SetIDObject(unsigned long, vcl::filter::PDFObjectElement*)
+vcl::filter::PDFDocument::SkipLineBreaks(SvStream&)
+vcl::filter::PDFDocument::SkipWhitespace(SvStream&)
+vcl::filter::PDFDocument::Tokenize(SvStream&, vcl::filter::TokenizeMode, std::vector<std::unique_ptr<vcl::filter::PDFElement, std::default_delete<vcl::filter::PDFElement> >, std::allocator<std::unique_ptr<vcl::filter::PDFElement, std::default_delete<vcl::filter::PDFElement> > > >&, vcl::filter::PDFObjectElement*)
+vcl::filter::PDFDocument::WriteAnnotObject(vcl::filter::PDFObjectElement const&, int, int, tools::Rectangle const&)
+vcl::filter::PDFDocument::WriteAppearanceObject(tools::Rectangle&)
+vcl::filter::PDFDocument::WriteCatalogObject(int, vcl::filter::PDFReferenceElement*&)
+vcl::filter::PDFDocument::WritePageObject(vcl::filter::PDFObjectElement&, int)
+vcl::filter::PDFDocument::WriteSignatureObject(rtl::OUString const&, bool, unsigned long&, long&)
+vcl::filter::PDFDocument::WriteXRef(unsigned long, vcl::filter::PDFReferenceElement const*)
+vcl::filter::PDFDocument::createObject()
+vcl::filter::PDFDocument::updateObject(int)
+vcl::filter::PDFDocument::writeBuffer(void const*, unsigned long)
+vcl::filter::PDFEndArrayElement::GetOffset() const
+vcl::filter::PDFEndArrayElement::Read(SvStream&)
+vcl::filter::PDFEndDictionaryElement::GetLocation() const
+vcl::filter::PDFEndDictionaryElement::Read(SvStream&)
+vcl::filter::PDFEndObjectElement::Read(SvStream&)
+vcl::filter::PDFEndStreamElement::Read(SvStream&)
+vcl::filter::PDFHexStringElement::GetValue() const
+vcl::filter::PDFHexStringElement::Read(SvStream&)
+vcl::filter::PDFLiteralStringElement::GetValue() const
+vcl::filter::PDFLiteralStringElement::Read(SvStream&)
+vcl::filter::PDFNameElement::GetLocation() const
+vcl::filter::PDFNameElement::Read(SvStream&)
+vcl::filter::PDFNullElement::Read(SvStream&)
+vcl::filter::PDFNumberElement::GetLength() const
+vcl::filter::PDFNumberElement::GetLocation() const
+vcl::filter::PDFNumberElement::Read(SvStream&)
+vcl::filter::PDFObjectElement::AddDictionaryReference(vcl::filter::PDFReferenceElement*)
+vcl::filter::PDFObjectElement::GetArrayLength() const
+vcl::filter::PDFObjectElement::GetArrayOffset() const
+vcl::filter::PDFObjectElement::GetDictionaryReferences() const
+vcl::filter::PDFObjectElement::GetDocument()
+vcl::filter::PDFObjectElement::GetNumberElement() const
+vcl::filter::PDFObjectElement::GetObjectValue() const
+vcl::filter::PDFObjectElement::GetStoredElements()
+vcl::filter::PDFObjectElement::GetStreamBuffer() const
+vcl::filter::PDFObjectElement::ParseStoredObjects()
+vcl::filter::PDFObjectElement::Read(SvStream&)
+vcl::filter::PDFObjectElement::SetArray(vcl::filter::PDFArrayElement*)
+vcl::filter::PDFObjectElement::SetArrayLength(unsigned long)
+vcl::filter::PDFObjectElement::SetArrayOffset(unsigned long)
+vcl::filter::PDFObjectElement::SetDictionary(vcl::filter::PDFDictionaryElement*)
+vcl::filter::PDFObjectElement::SetDictionaryLength(unsigned long)
+vcl::filter::PDFObjectElement::SetDictionaryOffset(unsigned long)
+vcl::filter::PDFObjectElement::SetNumberElement(vcl::filter::PDFNumberElement*)
+vcl::filter::PDFObjectElement::SetStream(vcl::filter::PDFStreamElement*)
+vcl::filter::PDFObjectElement::SetStreamBuffer(std::unique_ptr<SvMemoryStream, std::default_delete<SvMemoryStream> >&)
+vcl::filter::PDFObjectElement::parseIfNecessary()
+vcl::filter::PDFReferenceElement::GetObjectElement() const
+vcl::filter::PDFReferenceElement::GetOffset() const
+vcl::filter::PDFReferenceElement::LookupNumber(SvStream&) const
+vcl::filter::PDFReferenceElement::Read(SvStream&)
+vcl::filter::PDFStreamElement::GetOffset() const
+vcl::filter::PDFStreamElement::PDFStreamElement(unsigned long)
+vcl::filter::PDFStreamElement::Read(SvStream&)
+vcl::filter::PDFTrailerElement::GetLocation() const
+vcl::filter::PDFTrailerElement::Read(SvStream&)
+vcl::font::FeatureDefinition::FeatureDefinition(unsigned int, TranslateId, rtl::OUString const&)
+vcl::font::FeatureDefinition::FeatureDefinition(unsigned int, TranslateId, std::vector<vcl::font::FeatureParameter, std::allocator<vcl::font::FeatureParameter> >)
+vcl::font::FeatureParameter::FeatureParameter(unsigned int, TranslateId)
+vcl::font::FeatureParameter::FeatureParameter(unsigned int, rtl::OUString)
+vcl::font::FontSelectPattern::hashCode() const
+vcl::font::FontSelectPattern::operator==(vcl::font::FontSelectPattern const&) const
+vcl::font::OpenTypeFeatureDefinitionList()
+vcl::font::PhysicalFontCollection::Clear()
+vcl::font::PhysicalFontCollection::Clone() const
+vcl::font::PhysicalFontCollection::FindFontFamily(vcl::font::FontSelectPattern&) const
+vcl::font::PhysicalFontCollection::GetFontFaceCollection() const
+vcl::font::PhysicalFontCollection::GetGlyphFallbackFont(vcl::font::FontSelectPattern&, LogicalFontInstance*, rtl::OUString&, int) const
+vcl::font::PhysicalFontCollection::ImplFindFontFamilyBySearchName(rtl::OUString const&) const
+vcl::font::PhysicalFontCollection::ImplFindFontFamilyBySubstFontAttr(utl::FontNameAttr const&) const
+vcl::font::PhysicalFontCollection::ImplFindFontFamilyOfDefaultFont() const
+vcl::font::PhysicalFontCollection::ImplInitGenericGlyphFallback() const
+vcl::font::PhysicalFontCollection::ImplInitMatchData() const
+vcl::font::PhysicalFontCollection::SetFallbackHook(vcl::font::GlyphFallbackFontSubstitution*)
+vcl::font::PhysicalFontCollection::SetPreMatchHook(vcl::font::PreMatchFontSubstitution*)
+vcl::font::PhysicalFontFamily::CalcType(ImplFontAttrs&, FontWeight&, FontWidth&, FontFamily, utl::FontNameAttr const*)
+vcl::font::PhysicalFontFamily::FindBestFontFace(vcl::font::FontSelectPattern const&) const
+vcl::font::PhysicalFontFamily::InitMatchData(utl::FontSubstConfiguration const&, rtl::OUString const&)
+vcl::font::PhysicalFontFamily::UpdateCloneFontList(vcl::font::PhysicalFontCollection&) const
+vcl::font::PhysicalFontFamily::UpdateDevFontList(vcl::font::PhysicalFontFaceCollection&) const
+vcl::importPdfVectorGraphicData(SvStream&, std::shared_ptr<VectorGraphicData>&)
+vcl::lok::unregisterPollCallbacks()
+vcl::printer::Options::ReadFromConfig(bool)
+vcl::test::OutputDeviceTestCommon::alignToCenter(tools::Rectangle, tools::Rectangle)
+vcl::test::OutputDeviceTestCommon::checkAALines(Bitmap&)
+vcl::test::OutputDeviceTestCommon::checkChecker(Bitmap&, int, int, int, int, std::vector<Color, std::allocator<Color> > const&)
+vcl::test::OutputDeviceTestCommon::checkFilled(Bitmap&, tools::Rectangle, Color)
+vcl::test::OutputDeviceTestCommon::checkIntersectingRecs(Bitmap&, int, Color)
+vcl::test::OutputDeviceTestCommon::checkLines(Bitmap&)
+vcl::test::OutputDeviceTestCommon::checkRectangle(Bitmap&)
+vcl::test::OutputDeviceTestCommon::checkRectangle(Bitmap&, int, Color)
+vcl::test::OutputDeviceTestCommon::checkRectangles(Bitmap&, std::vector<Color, std::allocator<Color> >&)
+vcl::test::OutputDeviceTestCommon::createDiamondPoints(tools::Rectangle, int, Point&, Point&, Point&, Point&)
+vcl::test::OutputDeviceTestCommon::createDropShapePolygon()
+vcl::test::OutputDeviceTestCommon::createHalfEllipsePolygon()
+vcl::test::OutputDeviceTestCommon::createHorizontalVerticalDiagonalLinePoints(tools::Rectangle, Point&, Point&, Point&, Point&, Point&, Point&)
+vcl::test::OutputDeviceTestCommon::createOpenBezier()
+vcl::test::OutputDeviceTestCommon::createOpenPolygon(tools::Rectangle const&, int)
+vcl::test::OutputDeviceTestCommon::initialSetup(long, long, Color, bool, bool)
+vcl::test::OutputDeviceTestLine::setupAALines()
+vcl::test::OutputDeviceTestLine::setupLines()
+vcl::test::OutputDeviceTestLine::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestLine::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestPixel::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestPixel::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestPolyLine::setupAALines()
+vcl::test::OutputDeviceTestPolyLine::setupLines()
+vcl::test::OutputDeviceTestPolyLine::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestPolyLine::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestPolyLineB2D::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestPolyLineB2D::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestPolyPolygon::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestPolyPolygon::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestPolyPolygonB2D::setupIntersectingRectangles()
+vcl::test::OutputDeviceTestPolyPolygonB2D::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestPolyPolygonB2D::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestPolygon::setupAALines()
+vcl::test::OutputDeviceTestPolygon::setupHalfEllipse(bool)
+vcl::test::OutputDeviceTestPolygon::setupLines()
+vcl::test::OutputDeviceTestPolygon::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestPolygon::setupRectangleOnSize4096()
+vcl::test::OutputDeviceTestRect::setupRectangleOnSize1028()
+vcl::test::OutputDeviceTestRect::setupRectangleOnSize4096()
+vcl::text::ImplLayoutArgs::AddFallbackRun(int, int, bool)
+vcl::text::ImplLayoutArgs::AddRun(int, int, bool)
+vcl::text::ImplLayoutArgs::GetNextPos(int*, bool*)
+vcl::text::ImplLayoutArgs::HasFallbackRun() const
+vcl::text::ImplLayoutArgs::ResetPos()
+vcl::text::ImplLayoutArgs::SetDXArray(int const*)
+vcl::text::ImplLayoutArgs::SetLayoutWidth(int)
+vcl::text::ImplLayoutArgs::SetOrientation(o3tl::strong_int<short, FractionTag<10> >)
+vcl::unohelper::DragAndDropClient::dragDropEnd(com::sun::star::datatransfer::dnd::DragSourceDropEvent const&)
+vcl::unohelper::DragAndDropClient::dragEnter(com::sun::star::datatransfer::dnd::DropTargetDragEnterEvent const&)
+vcl::unohelper::DragAndDropClient::dragExit(com::sun::star::datatransfer::dnd::DropTargetEvent const&)
+vcl::unohelper::DragAndDropClient::dragGestureRecognized(com::sun::star::datatransfer::dnd::DragGestureEvent const&)
+vcl::unohelper::DragAndDropClient::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&)
+vcl::unohelper::DragAndDropClient::drop(com::sun::star::datatransfer::dnd::DropTargetDropEvent const&)
+vcl::unohelper::TextDataObject::getTransferData(com::sun::star::datatransfer::DataFlavor const&)
+vcl::unohelper::TextDataObject::getTransferDataFlavors()
+vcl::unohelper::TextDataObject::isDataFlavorSupported(com::sun::star::datatransfer::DataFlavor const&)
+vcl::unohelper::TextDataObject::queryInterface(com::sun::star::uno::Type const&)
+vcl::unohelper::TextDataObject::~TextDataObject()
+vcl::unotools::VclCanvasBitmap::convertColorSpace(com::sun::star::uno::Sequence<double> const&, com::sun::star::uno::Reference<com::sun::star::rendering::XColorSpace> const&)
+vcl::unotools::VclCanvasBitmap::convertFromARGB(com::sun::star::uno::Sequence<com::sun::star::rendering::ARGBColor> const&)
+vcl::unotools::VclCanvasBitmap::convertFromIntegerColorSpace(com::sun::star::uno::Sequence<signed char> const&, com::sun::star::uno::Reference<com::sun::star::rendering::XColorSpace> const&)
+vcl::unotools::VclCanvasBitmap::convertFromPARGB(com::sun::star::uno::Sequence<com::sun::star::rendering::ARGBColor> const&)
+vcl::unotools::VclCanvasBitmap::convertFromRGB(com::sun::star::uno::Sequence<com::sun::star::rendering::RGBColor> const&)
+vcl::unotools::VclCanvasBitmap::convertIntegerFromPARGB(com::sun::star::uno::Sequence<com::sun::star::rendering::ARGBColor> const&)
+vcl::unotools::VclCanvasBitmap::convertIntegerToPARGB(com::sun::star::uno::Sequence<signed char> const&)
+vcl::unotools::VclCanvasBitmap::convertToARGB(com::sun::star::uno::Sequence<double> const&)
+vcl::unotools::VclCanvasBitmap::convertToIntegerColorSpace(com::sun::star::uno::Sequence<signed char> const&, com::sun::star::uno::Reference<com::sun::star::rendering::XIntegerBitmapColorSpace> const&)
+vcl::unotools::VclCanvasBitmap::convertToPARGB(com::sun::star::uno::Sequence<double> const&)
+vcl::unotools::VclCanvasBitmap::convertToRGB(com::sun::star::uno::Sequence<double> const&)
+vcl::unotools::VclCanvasBitmap::getBitsPerPixel()
+vcl::unotools::VclCanvasBitmap::getColorSpace()
+vcl::unotools::VclCanvasBitmap::getComponentBitCounts()
+vcl::unotools::VclCanvasBitmap::getComponentTags()
+vcl::unotools::VclCanvasBitmap::getEndianness()
+vcl::unotools::VclCanvasBitmap::getIndex(com::sun::star::uno::Sequence<double>&, int)
+vcl::unotools::VclCanvasBitmap::getMemoryLayout()
+vcl::unotools::VclCanvasBitmap::getNumberOfEntries()
+vcl::unotools::VclCanvasBitmap::getProperties()
+vcl::unotools::VclCanvasBitmap::getRenderingIntent()
+vcl::unotools::VclCanvasBitmap::getType()
+vcl::unotools::VclCanvasBitmap::setIndex(com::sun::star::uno::Sequence<double> const&, unsigned char, int)
+vcl::unotools::VclCanvasBitmap::~VclCanvasBitmap()
+vcl_crc64
+vec_compress
+vec_expand
+verifyLink
+verifyMDO
+verifyPricer
+verify_basis
+verify_solution
+verify_stability
+weld::AssistantController::AssistantController(weld::Widget*, rtl::OUString const&, rtl::OString const&)
+weld::AssistantController::~AssistantController()
+weld::CustomWidgetController::DragBeginHdl(weld::DrawingArea&)
+weld::MetricSpinButton::format_number(int) const
+weld::MetricSpinButton::spin_button_input(int*)
+weld::MetricSpinButton::spin_button_value_changed(weld::SpinButton&)
+write_LP
+write_MPS
+write_XLI
+write_basis
+write_freeMPS
+write_freemps
+write_lp
+write_lpcomment
+write_lpex
+write_lprow
+write_mps
+write_params
+writerperfect::DirectoryStream::Impl::Impl(com::sun::star::uno::Reference<com::sun::star::ucb::XContent> const&)
+yacc_read
+yieldformessages
diff --git a/bin/find-can-be-private-symbols.py b/bin/find-can-be-private-symbols.py
new file mode 100755
index 000000000..7203f8ed8
--- /dev/null
+++ b/bin/find-can-be-private-symbols.py
@@ -0,0 +1,222 @@
+#!/usr/bin/python3
+#
+# Find exported symbols that can be made non-exported.
+#
+# Noting that (a) parsing these commands is a pain, the output is quite irregular and (b) I'm fumbling in the
+# dark here, trying to guess what exactly constitutes an "import" vs an "export" of a symbol, linux linking
+# is rather complex.
+#
+# Takes about 5min to run on a decent machine.
+#
+# The standalone function analysis is reasonable reliable, but the class/method analysis is less so
+# (something to do with destructor thunks not showing up in my results?)
+#
+# Also, the class/method analysis will not catch problems like
+# 'dynamic_cast from 'Foo' with hidden type visibility to 'Bar' with default type visibility'
+# but loplugin:dyncastvisibility will do that for you
+#
+
+import subprocess
+import sys
+import re
+
+exported_symbols1 = set()
+imported_symbols1 = set()
+exported_symbols2 = set() # decoded
+imported_symbols2 = set() # decoded
+# all names that exist in the source code
+#all_source_names = set()
+
+
+#subprocess_find_all_source_names = subprocess.Popen("git grep -oh -P '\\b\\w\\w\\w+\\b' -- '*.h*' | sort -u",
+# stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True)
+#with subprocess_find_all_source_names.stdout as txt:
+# for line in txt:
+# line = line.strip()
+# all_source_names.add(line)
+#subprocess_find_all_source_names.terminate()
+
+# find all our shared libs
+subprocess_find = subprocess.Popen("find ./instdir -name *.so && find ./workdir/LinkTarget/CppunitTest -name *.so",
+ stdout=subprocess.PIPE, shell=True)
+with subprocess_find.stdout as txt:
+ for line in txt:
+ sharedlib = line.strip()
+ # look for exported symbols
+ subprocess_nm = subprocess.Popen(b"nm -D " + sharedlib, stdout=subprocess.PIPE, shell=True)
+ with subprocess_nm.stdout as txt2:
+ # We are looking for lines something like:
+ # 0000000000036ed0 T flash_component_getFactory
+ line_regex = re.compile(r'^[0-9a-fA-F]+ T ')
+ for line2_bytes in txt2:
+ line2 = line2_bytes.strip().decode("utf-8")
+ if line_regex.match(line2):
+ sym = line2.split(" ")[2].strip()
+ exported_symbols1.add(sym)
+ subprocess_nm.terminate()
+ # look for imported symbols
+ subprocess_objdump = subprocess.Popen(b"objdump -T " + sharedlib, stdout=subprocess.PIPE, shell=True)
+ with subprocess_objdump.stdout as txt2:
+ # ignore some header bumpf
+ txt2.readline()
+ txt2.readline()
+ txt2.readline()
+ txt2.readline()
+ # We are looking for lines something like:
+ # 0000000000000000 DF *UND* 0000000000000000 _ZN16FilterConfigItem10WriteInt32ERKN3rtl8OUStringEi
+ for line2_bytes in txt2:
+ line2 = line2_bytes.strip().decode("utf-8")
+ if not("*UND*"in line2): continue
+ tokens = line2.split(" ")
+ sym = tokens[len(tokens)-1].strip()
+ imported_symbols1.add(sym)
+ subprocess_objdump.terminate()
+subprocess_find.terminate()
+
+# look for imported symbols in executables
+subprocess_find = subprocess.Popen("find ./instdir -name *.bin", stdout=subprocess.PIPE, shell=True)
+with subprocess_find.stdout as txt:
+ for line in txt:
+ executable = line.strip()
+ # look for exported symbols
+ subprocess_nm = subprocess.Popen(b"nm -D " + executable + b" | grep -w U", stdout=subprocess.PIPE, shell=True)
+ with subprocess_nm.stdout as txt2:
+ # We are looking for lines something like:
+ # U sal_detail_deinitialize
+ for line2_bytes in txt2:
+ line2 = line2_bytes.strip().decode("utf-8")
+ sym = line2.split(" ")[1]
+ imported_symbols1.add(sym)
+subprocess_find.terminate()
+
+#progress = 0;
+#for sym in sorted(imported_symbols - exported_symbols):
+# progress += 1
+# if (progress % 128 == 0): print( str(int(progress * 100 / len(diff))) + "%")
+# filtered_sym = subprocess.check_output(["c++filt", sym]).strip().decode("utf-8")
+# if filtered_sym.startswith("non-virtual thunk to "): filtered_sym = filtered_sym[21:]
+# elif filtered_sym.startswith("virtual thunk to "): filtered_sym = filtered_sym[17:]
+# print("Symbol imported but not exported? " + filtered_sym)
+
+# Now we have to symbolize before comparing because sometimes (due to thunks) two
+# different encoded names symbolize to the same method/func name
+#
+progress = 0;
+progress_max_len = len(imported_symbols1) + len(exported_symbols1)
+for sym in imported_symbols1:
+ progress += 1
+ if (progress % 128 == 0): print( str(int(progress * 100 / progress_max_len)) + "%")
+ filtered_sym = subprocess.check_output(["c++filt", sym]).strip().decode("utf-8")
+ if filtered_sym.startswith("non-virtual thunk to "): filtered_sym = filtered_sym[21:]
+ elif filtered_sym.startswith("virtual thunk to "): filtered_sym = filtered_sym[17:]
+ imported_symbols2.add(filtered_sym)
+progress = 0;
+for sym in exported_symbols1:
+ progress += 1
+ if (progress % 128 == 0): print( str(int(progress * 100 / progress_max_len)) + "%")
+ filtered_sym = subprocess.check_output(["c++filt", sym]).strip().decode("utf-8")
+ if filtered_sym.startswith("non-virtual thunk to "): filtered_sym = filtered_sym[21:]
+ elif filtered_sym.startswith("virtual thunk to "): filtered_sym = filtered_sym[17:]
+ exported_symbols2.add(filtered_sym)
+
+unused_exports = exported_symbols2 - imported_symbols2
+print("exported = " + str(len(exported_symbols2)))
+print("imported = " + str(len(imported_symbols2)))
+print("unused_exports = " + str(len(unused_exports)))
+
+#def extractFunctionNameFromSignature(sym):
+# i = sym.find("(")
+# if i == -1: return sym
+# return sym[:i]
+
+with open("bin/find-can-be-private-symbols.functions.results", "wt") as f:
+ for sym in sorted(unused_exports):
+ # Filter out most of the noise.
+ # No idea where these are coming from, but not our code.
+ if sym.startswith("CERT_"): continue
+ elif sym.startswith("DER_"): continue
+ elif sym.startswith("FORM_"): continue
+ elif sym.startswith("FPDF"): continue
+ elif sym.startswith("HASH_"): continue
+ elif sym.startswith("Hunspell_"): continue
+ elif sym.startswith("LL_"): continue
+ elif sym.startswith("LP_"): continue
+ elif sym.startswith("LU"): continue
+ elif sym.startswith("MIP"): continue
+ elif sym.startswith("MPS"): continue
+ elif sym.startswith("NSS"): continue
+ elif sym.startswith("NSC_"): continue
+ elif sym.startswith("PK11"): continue
+ elif sym.startswith("PL_"): continue
+ elif sym.startswith("PQ"): continue
+ elif sym.startswith("PBE_"): continue
+ elif sym.startswith("PORT_"): continue
+ elif sym.startswith("PRP_"): continue
+ elif sym.startswith("PR_"): continue
+ elif sym.startswith("PT_"): continue
+ elif sym.startswith("QS_"): continue
+ elif sym.startswith("REPORT_"): continue
+ elif sym.startswith("RSA_"): continue
+ elif sym.startswith("SEC"): continue
+ elif sym.startswith("SGN"): continue
+ elif sym.startswith("SOS"): continue
+ elif sym.startswith("SSL_"): continue
+ elif sym.startswith("VFY_"): continue
+ elif sym.startswith("_PR_"): continue
+ elif sym.startswith("ber_"): continue
+ elif sym.startswith("bfp_"): continue
+ elif sym.startswith("ldap_"): continue
+ elif sym.startswith("ne_"): continue
+ elif sym.startswith("opj_"): continue
+ elif sym.startswith("pg_"): continue
+ elif sym.startswith("pq"): continue
+ elif sym.startswith("presolve_"): continue
+ elif sym.startswith("sqlite3_"): continue
+ elif sym.startswith("libepubgen::"): continue
+ elif sym.startswith("lucene::"): continue
+ elif sym.startswith("Hunspell::"): continue
+ elif sym.startswith("sk_"): continue
+ elif sym.startswith("_Z"): continue
+ # dynamically loaded
+ elif sym.endswith("get_implementation"): continue
+ elif sym.endswith("component_getFactory"): continue
+ elif sym == "CreateDialogFactory": continue
+ elif sym == "CreateUnoWrapper": continue
+ elif sym == "CreateWindow": continue
+ elif sym == "ExportDOC": continue
+ elif sym == "ExportPPT": continue
+ elif sym == "ExportRTF": continue
+ elif sym == "GetSaveWarningOfMSVBAStorage_ww8": continue
+ elif sym == "GetSpecialCharsForEdit": continue
+ elif sym.startswith("Import"): continue
+ elif sym.startswith("Java_com_sun_star_"): continue
+ elif sym.startswith("TestImport"): continue
+ elif sym.startswith("getAllCalendars_"): continue
+ elif sym.startswith("getAllCurrencies_"): continue
+ elif sym.startswith("getAllFormats"): continue
+ elif sym.startswith("getBreakIteratorRules_"): continue
+ elif sym.startswith("getCollationOptions_"): continue
+ elif sym.startswith("getCollatorImplementation_"): continue
+ elif sym.startswith("getContinuousNumberingLevels_"): continue
+ elif sym.startswith("getDateAcceptancePatterns_"): continue
+ elif sym.startswith("getForbiddenCharacters_"): continue
+ elif sym.startswith("getIndexAlgorithm_"): continue
+ elif sym.startswith("getLCInfo_"): continue
+ elif sym.startswith("getLocaleItem_"): continue
+ elif sym.startswith("getOutlineNumberingLevels_"): continue
+ elif sym.startswith("getReservedWords_"): continue
+ elif sym.startswith("getSTC_"): continue
+ elif sym.startswith("getSearchOptions_"): continue
+ elif sym.startswith("getTransliterations_"): continue
+ elif sym.startswith("getUnicodeScripts_"): continue
+ elif sym.startswith("lok_"): continue
+ # UDK API
+ elif sym.startswith("osl_"): continue
+ elif sym.startswith("rtl_"): continue
+ elif sym.startswith("typelib_"): continue
+ elif sym.startswith("typereg_"): continue
+ elif sym.startswith("uno_"): continue
+ # remove things we found that do not exist in our source code, they're not ours
+ #if not(extractFunctionNameFromSignature(sym) in all_source_names): continue
+ f.write(sym + "\n")
+
diff --git a/bin/find-clang-format.py b/bin/find-clang-format.py
new file mode 100755
index 000000000..713174114
--- /dev/null
+++ b/bin/find-clang-format.py
@@ -0,0 +1,67 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import os
+from difflib import unified_diff
+from pathlib import Path
+from subprocess import PIPE, Popen
+
+EXCLUDELIST = Path("solenv/clang-format/excludelist")
+THRESHOLD = os.getenv("CLANG_THRESHOLD", 5)
+CLANG_BINARY = Path(os.getenv("CLANG_FORMAT", "/opt/lo/bin/clang-format"))
+
+
+def calculate_diff_size(diff):
+ additions, removals = 0, 0
+ # ignore first 2 item in the sequence
+ # which are +++ and ---
+ for line in diff[2:]:
+ if line.startswith("+"):
+ additions += 1
+ elif line.startswith("-"):
+ removals += 1
+ return max((additions, removals))
+
+
+def format_stream(path, *extra_args):
+ process = Popen(
+ [CLANG_BINARY, *extra_args], stdout=PIPE, stderr=PIPE, stdin=PIPE,
+ )
+ stdout, stderr = process.communicate(input=path.read_bytes())
+ if stderr:
+ print("<FAIL>", str(path))
+ print(stderr.decode())
+ print("<FAIL>")
+ exit(1)
+ stdout = stdout.decode()
+ return stdout
+
+
+def main(*args):
+ if not CLANG_BINARY.exists():
+ print("Couldn't find clang-format on {!s}".format(CLANG_BINARY))
+ exit(1)
+
+ for path in EXCLUDELIST.read_text().splitlines():
+ path = Path(path)
+ if not path.exists():
+ continue
+
+ original = path.read_text()
+ new = format_stream(path, *args)
+ originalsize = len(original.splitlines())
+ diff = unified_diff(original.splitlines(), new.splitlines(), n=0)
+ diffsize = calculate_diff_size(tuple(diff))
+ if diffsize <= (originalsize * 5) // 100:
+ print(path, "(size: {}/{})".format(diffsize, originalsize))
+
+
+if __name__ == "__main__":
+ import sys
+
+ main(*sys.argv[1:])
diff --git a/bin/find-duplicated-files.py b/bin/find-duplicated-files.py
new file mode 100755
index 000000000..08d90076c
--- /dev/null
+++ b/bin/find-duplicated-files.py
@@ -0,0 +1,43 @@
+#!/usr/bin/env python3
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import os
+import sys
+
+from filecmp import dircmp
+
+"""
+This script compares two directories and lists the files which are the same in both directories.
+Intended to find duplicate icons among icon themes.
+
+Adopted from the example at https://docs.python.org/3.5/library/filecmp.html
+
+Usage: ./bin/findduplicatefiles dir1 dir2
+"""
+
+def print_diff_files(dcmp):
+ for name in dcmp.same_files:
+ print("%s found in %s and %s" % (name, dcmp.left, dcmp.right))
+ for sub_dcmp in dcmp.subdirs.values():
+ print_diff_files(sub_dcmp)
+
+if len(sys.argv) != 3:
+ print("Usage: %s dir1 dir2" % sys.argv[0])
+ exit()
+
+dir1 = sys.argv[1]
+dir2 = sys.argv[2]
+
+if not os.path.isdir(dir1) or not os.path.isdir(dir2):
+ print("Arguments must be directories!")
+ exit()
+
+dcmp = dircmp(dir1, dir2)
+print_diff_files(dcmp)
+
diff --git a/bin/find-duplicated-sids.py b/bin/find-duplicated-sids.py
new file mode 100755
index 000000000..ebffce230
--- /dev/null
+++ b/bin/find-duplicated-sids.py
@@ -0,0 +1,92 @@
+#!/usr/bin/python
+
+
+# Scan .hrc files for conflicting SID constants
+#
+# This is not as easy as it sounds because some of the constants depend on other constants whose names do not start with SID_
+#
+
+import subprocess
+import sys
+
+sidNameToValue = dict()
+sidNameToOriginalLine = dict()
+
+
+def extractSidValue(sidValue):
+ if isinstance(sidValue, int):
+ return sidValue
+ if sidValue.isdigit():
+ return int(sidValue)
+ if sidValue[0:2] == "0x":
+ return int(sidValue, 16)
+ if sidValue.find("+") != -1:
+ tokens = sidValue.split("+")
+ tokens1 = tokens[0].strip()
+ tokens2 = tokens[1].strip()
+ return extractSidValue(tokens1) + extractSidValue(tokens2)
+ rv = extractSidValue(sidNameToValue[sidValue])
+ sidNameToValue[sidValue] = rv
+ return rv
+
+
+#a = subprocess.Popen(r"git grep -P '#define\s+(SID_|SC_|DETECTIVE_|DRAWTEXTBAR_|DRAW_BAR_|RID_|OBJBAR_FORMAT_|TAB_POPUP_|DATA_MENU_|EXTRA_MENU_|FORMAT_MENU_|INSERT_MENU_|VIEW_MENU_|EDIT_MENU_|FILE_MENU_|SC_FUNCTION_|RC_)'", stdout=subprocess.PIPE, shell=True)
+a = subprocess.Popen(r"git grep -Pn '#define\s+(\S+)' -- *.hrc", stdout=subprocess.PIPE, shell=True)
+
+with a.stdout as txt:
+ for line in txt:
+ originalLine = line.strip()
+ # strip the '#define' off the front
+ idx1 = line.find(" ")
+ line = line[idx1 : len(line)].strip()
+ # extract the name
+ idx1 = line.find(" ")
+ if (idx1 == -1): continue
+ sidName = line[0 : idx1].strip()
+ line = line[idx1 : len(line)].strip()
+ # strip any trailing comments
+ idx1 = line.find("//")
+ if (idx1 != -1):
+ line = line[0 : idx1].strip()
+ idx1 = line.find("/*")
+ if (idx1 != -1):
+ line = line[0 : idx1].strip()
+ if len(line) == 0: continue
+ # strip brackets
+ if line[0] == "(": line = line[1:]
+ if line[len(line)-1] == ")": line = line[0:len(line)-1]
+ sidTextValue = line.strip()
+ # ignore the #define strings
+ if (sidTextValue.find("\"") != -1): continue
+ # ignore the multiline macros
+ if (sidTextValue.find("\\") != -1): continue
+ # check for redefinitions
+ if sidName[0:4] == "SID_" and sidNameToValue.has_key(sidName):
+ print "Redefinition:\n\t", sidNameToOriginalLine[sidName], "\n\t" , originalLine
+ else:
+ sidNameToValue[sidName] = sidTextValue
+ sidNameToOriginalLine[sidName] = originalLine
+
+ # decode the constants into their numeric values recursively
+ sidNamesToIgnore = set()
+ for sidName in sidNameToValue:
+ sidTextValue = sidNameToValue[sidName]
+ try:
+ sidValueNum = extractSidValue(sidTextValue)
+ sidNameToValue[sidName] = sidValueNum
+ except KeyError:
+ sidNamesToIgnore.add(sidName)
+
+ # check for conflicts
+ sidValueToName = dict()
+ for sidName in sidNameToValue:
+ if sidName in sidNamesToIgnore: continue
+ if sidName[0:4] != "SID_": continue
+ sidValue = sidNameToValue[sidName]
+ if sidValueToName.has_key(sidValue):
+ print "conflict:\n\t", sidNameToOriginalLine[sidName], "\n\t", sidNameToOriginalLine[sidValueToName[sidValue]]
+ else:
+ sidValueToName[sidValue] = sidName
+
+
+
diff --git a/bin/find-files-not-referenced-by-makefile.py b/bin/find-files-not-referenced-by-makefile.py
new file mode 100755
index 000000000..70232ed1c
--- /dev/null
+++ b/bin/find-files-not-referenced-by-makefile.py
@@ -0,0 +1,53 @@
+#!/usr/bin/python2
+
+# Look for CXX files that are not referenced by any makefile
+
+import subprocess
+import sys
+
+sourceFiles = set()
+
+a = subprocess.Popen("git ls-files", stdout=subprocess.PIPE, shell=True)
+with a.stdout as txt:
+ for filename in txt:
+ if filename.find(".cxx") != -1 \
+ and filename.find("precompiled") == -1 \
+ and filename.find("/workben") == -1 \
+ and not filename.startswith("odk/examples/") \
+ and not filename.startswith("bridges/") \
+ and not filename.startswith("compilerplugins/") \
+ and filename.find("/qa/") == -1 \
+ and filename.find("/test/") == -1 \
+ and not filename.startswith("testtools/") \
+ and not filename.startswith("vcl/") \
+ and not filename.startswith("cli_ure/"):
+ sourceFiles.add(filename.strip())
+
+a = subprocess.Popen("git ls-files */*.mk", stdout=subprocess.PIPE, shell=True)
+with a.stdout as txt:
+ for makefilename in txt:
+ makefilename = makefilename.strip()
+ with open(makefilename, "r") as makefile:
+ moduleName = makefilename[:makefilename.find("/")]
+ state = 0
+ for line in makefile:
+ line = line.strip()
+ if state == 0 and "_add_exception_objects" in line:
+ state = 1
+ elif state == 1 and line != "))":
+ s = line.replace("\\","").replace(")", "").strip()
+ # parse line like: $(call gb_Helper_optional,AVMEDIA,svx/source/sidebar/media/MediaPlaybackPanel) \
+ idx = s.rfind(",")
+ if idx != -1:
+ s = s[idx+1:].strip()
+ sourceFiles.discard(s + ".cxx")
+ elif state == 1:
+ state = 0
+
+
+
+
+print "files not listed in makefile"
+print "----------------------------"
+for x in sorted(sourceFiles):
+ print x
diff --git a/bin/find-german-comments b/bin/find-german-comments
new file mode 100755
index 000000000..a38b435ce
--- /dev/null
+++ b/bin/find-german-comments
@@ -0,0 +1,401 @@
+#!/usr/bin/env python3
+########################################################################
+#
+# Copyright (c) 2010 Jonas Jensen, Miklos Vajna
+#
+# Permission is hereby granted, free of charge, to any person
+# obtaining a copy of this software and associated documentation
+# files (the "Software"), to deal in the Software without
+# restriction, including without limitation the rights to use,
+# copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following
+# conditions:
+#
+# The above copyright notice and this permission notice shall be
+# included in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+# OTHER DEALINGS IN THE SOFTWARE.
+#
+########################################################################
+
+
+import sys
+import re
+import subprocess
+import os
+import argparse
+import string
+
+class Parser:
+ """
+ This parser extracts comments from source files, tries to guess
+ their language and then prints out the German ones.
+ """
+ def __init__(self):
+ self.strip = string.punctuation + " \n"
+ self.text_cat = self.start_text_cat()
+ parser = argparse.ArgumentParser(description='Searches for German comments in cxx/hxx source files inside a given root directory recursively.')
+ parser.add_argument("-f", "--filenames-only", action="store_true",
+ help="Only print the filenames of files containing German comments")
+ parser.add_argument("-v", "--verbose", action="store_true",
+ help="Turn on verbose mode (print only positives progress to stderr)")
+ parser.add_argument("-l", "--line-numbers", action="store_true",
+ help="Prints the filenames and line numbers only.")
+ parser.add_argument("-L", "--line-numbers-pos", action="store_true",
+ help="Prints the filenames and line numbers only (if positive).")
+ parser.add_argument("-t", "--threshold", action="store", default=0, type=int,
+ help="When used with '--line-numbers', only bothers outputting comment info if there are more than X number of flagged comments. Useful for weeding out false positives.")
+ parser.add_argument("directory", nargs='?', default='.', type=str, help='Give a directory to search in')
+ self.args = parser.parse_args()
+ self.check_source_files(self.args.directory)
+
+ def get_comments(self, filename):
+ """
+ Extracts the source code comments.
+ """
+ linenum = 0
+ if self.args.verbose:
+ print("processing file '%s'...\n" % filename)
+ sock = open(filename)
+ # add an empty line to trigger the output of collected oneliner
+ # comment group
+ lines = sock.readlines() + ["\n"]
+ sock.close()
+
+ in_comment = False
+ buf = []
+ count = 1
+ for i in lines:
+ if "//" in i and not in_comment:
+ # if we find a new //-style comment, then we
+ # just append it to a previous one if: there is
+ # only whitespace before the // mark that is
+ # necessary to make comments longer, giving
+ # more reliable output
+ if not len(re.sub("(.*)//.*", r"\1", i).strip(self.strip)):
+ s = re.sub(".*// ?", "", i).strip(self.strip)
+ if len(s):
+ buf.append(s)
+ else:
+ # otherwise it's an independent //-style comment in the next line
+ yield (count, "\n ".join(buf))
+ buf = [re.sub(".*// ?", "", i.strip(self.strip))]
+ elif "//" not in i and not in_comment and len(buf) > 0:
+ # first normal line after a // block
+ yield (count, "\n ".join(buf))
+ buf = []
+ elif "/*" in i and "*/" not in i and not in_comment:
+ # start of a real multiline comment
+ in_comment = True
+ linenum = count
+ s = re.sub(r".*/\*+", "", i.strip(self.strip))
+ if len(s):
+ buf.append(s.strip(self.strip))
+ elif in_comment and not "*/" in i:
+ # in multiline comment
+ s = re.sub(r"^( |\|)*\*?", "", i)
+ if len(s.strip(self.strip)):
+ buf.append(s.strip(self.strip))
+ elif "*/" in i and in_comment:
+ # end of multiline comment
+ in_comment = False
+ s = re.sub(r"\*+/.*", "", i.strip(self.strip))
+ if len(s):
+ buf.append(s)
+ yield (count, "\n ".join(buf))
+ buf = []
+ elif "/*" in i and "*/" in i:
+ # c-style oneliner comment
+ yield (count, re.sub(r".*/\*(.*)\*/.*", r"\1", i).strip(self.strip))
+ count += 1
+
+ def start_text_cat(self):
+ cwd = os.getcwd()
+ # change to our directory
+ os.chdir(os.path.split(os.path.abspath(sys.argv[0]))[0])
+ sock = subprocess.Popen(["text_cat/text_cat", "-s", "-d", "text_cat/LM"], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+ os.chdir(cwd)
+ return sock
+
+ def get_lang(self, s):
+ """ the output is 'german' or 'english' or 'german or english'. When
+ unsure, just don't warn, there are strings where you just can't
+ determine the results reliably, like '#110680#' """
+
+ self.text_cat.stdin.write(bytes(s, 'utf-8'))
+ self.text_cat.stdin.write(bytes("\n", 'utf-8'))
+ self.text_cat.stdin.flush()
+ lang = self.text_cat.stdout.readline().strip()
+ return lang
+
+ def is_german(self, s):
+ """
+ determines if a string is German or not
+ """
+ # for short strings we can't do reliable recognition, so skip
+ # short strings and less than 4 words
+ s = s.replace('\n', ' ')
+ if len(s) < 32 or len(s.split()) < 4:
+ return False
+ return self.get_lang(s) == b"german"
+
+ def check_file(self, path):
+ """
+ checks each comment in a file
+ """
+ def tab_calc(path):
+ START = 40 #Default of 10 tabs
+ if len(path) >= START:
+ return 1
+ diff = START - len(path)
+ if diff % 4 is not 0:
+ padding = 1
+ else:
+ padding = 0
+ return (diff/4)+padding
+
+ if self.args.line_numbers or self.args.line_numbers_pos:
+ TABS = "\t"*10
+ path_linenums = []
+ for linenum, s in self.get_comments(path):
+ if self.is_german(s):
+ path_linenums.append(linenum)
+ valid = len(path_linenums) > int(self.args.threshold)
+ if self.args.line_numbers:
+ print("%s ... %s positives -- %s\n" % (path, str(len(path_linenums)), str(valid)))
+ if valid:
+ if self.args.line_numbers_pos:
+ print("%s ... %s positives\n" % (path, str(len(path_linenums))))
+ return
+ if len(path) + (len(path_linenums)*4) > 75:
+ print("%s:\n" % path)
+ while path_linenums:
+ i = 0
+ numline = []
+ while i < 10:
+ try:
+ numline.append(path_linenums[0])
+ path_linenums.remove(path_linenums[0])
+ except IndexError:
+ i = 10
+ i += 1
+ numline = [str(i) for i in numline]
+ print("%s%s" % (TABS, ",".join(numline)))
+ else:
+ if self.args.line_numbers:
+ path_linenums = [str(i) for i in path_linenums]
+ print("%s:%s%s" % (path, "\t"*int(tab_calc(path)), ",".join(path_linenums)))
+
+ elif not self.args.filenames_only:
+ for linenum, s in self.get_comments(path):
+ if self.is_german(s):
+ print("%s:%s: %s" % (path, linenum, s))
+ else:
+ fnames = set([])
+ for linenum, s in self.get_comments(path):
+ if self.is_german(s):
+ # Make sure we print each filename only once
+ fnames.add(path)
+ # Print the filenames
+ for f in fnames:
+ print(f)
+
+ def first_elem(self, path):
+ """
+ Returns the root directory in our repo of a given path, so we can check against the allowlist.
+ """
+ lastElem = os.path.dirname(path)
+ done = False
+ while not done:
+ nextElem = os.path.split(lastElem)[0]
+ if nextElem is not '':
+ lastElem = nextElem
+ else:
+ done = True
+ return lastElem
+
+ def check_source_files(self, directory):
+ """
+ checks each _tracked_ file in a directory recursively
+ """
+
+ # top-level project directory -> use allowlist.
+ globalscan = False
+ if os.path.exists(directory + "/.git/config"):
+ globalscan = True
+
+ # Change into the given dir, so "git ls-tree" does work.
+ os.chdir(directory)
+
+ sock = os.popen(r"git ls-tree -r HEAD --name-only |egrep '\.(c|cc|cpp|cxx|h|hxx|mm)$'")
+ lines = sock.readlines()
+ sock.close()
+
+ # Helps to speedup a global scan
+ directory_allowlist = {
+ "ure" : 1,
+ "ios" : 1,
+ "bean" : 1,
+ "apple_remote" : 1,
+ "UnoControls" : 1,
+ "accessibility" : 1,
+ "android" : 1,
+ "animations" : 1,
+ "avmedia" : 1,
+ "basctl" : 1,
+ "basegfx" : 1,
+ "basic" : 1,
+ "binaryurp" : 1,
+ "bridges" : 1,
+ "canvas" : 1,
+ "chart2" : 1,
+ "cli_ure" : 1,
+ "codemaker" : 1,
+ "comphelper" : 1,
+ "compilerplugins" : 1,
+ "configmgr" : 1,
+ "connectivity" : 1,
+ "cppcanvas" : 1,
+ "cppu" : 1,
+ "cppuhelper" : 1,
+ "cpputools" : 1,
+ "cui" : 1,
+ "dbaccess" : 1,
+ "desktop" : 1,
+ "drawinglayer" : 1,
+ "editeng" : 1,
+ "embeddedobj" : 1,
+ "embedserv" : 1,
+ "eventattacher" : 1,
+ "extensions" : 1,
+ "external" : 1,
+ "filter" : 1,
+ "forms" : 1,
+ "formula" : 1,
+ "fpicker" : 1,
+ "framework" : 1,
+ "helpcompiler" : 1,
+ "hwpfilter" : 1,
+ "i18npool" : 1,
+ "i18nlangtag" : 1,
+ "i18nutil" : 1,
+ "idl" : 1,
+ "idlc" : 1,
+ "include" : 1,
+ "io" : 1,
+ "javaunohelper" : 1,
+ "jvmaccess" : 1,
+ "jvmfwk" : 1,
+ "jurt" : 1,
+ "l10ntools" : 1,
+ "libreofficekit" : 1,
+ "lingucomponent" : 1,
+ "linguistic" : 1,
+ "lotuswordpro" : 1,
+ "mysqlc" : 1,
+ "o3tl" : 1,
+ "odk" : 1,
+ "officecfg" : 1,
+ "onlineupdate" : 1,
+ "opencl" : 1,
+ "oox" : 1,
+ "package" : 1,
+ "postprocess" : 1,
+ "pyuno" : 1,
+ "registry" : 1,
+ "remotebridges" : 1,
+ "reportdesign" : 1,
+ "rsc" : 1,
+ "sal" : 1,
+ "salhelper" : 1,
+ "sax" : 1,
+ "sc" : 1,
+ "scaddins" : 1,
+ "sccomp" : 1,
+ "scripting" : 1,
+ "sd" : 1,
+ "sdext" : 1,
+ "sfx2" : 1,
+ "shell" : 1,
+ "setup_native" : 1,
+ "sot" : 1,
+ "slideshow" : 1,
+ "smoketest" : 1,
+ "solenv" : 1,
+ "soltools" : 1,
+ "starmath" : 1,
+ "stoc" : 1,
+ "store" : 1,
+ "svgio" : 1,
+ "svl" : 1,
+ "svtools" : 1,
+ "svx" : 1,
+ "sw" : 1,
+ "test" : 1,
+ "testtools" : 1,
+ "toolkit" : 1,
+ "tools" : 1,
+ "touch" : 1,
+ "ucb" : 1,
+ "ucbhelper" : 1,
+ "unodevtools" : 1,
+ "unotest" : 1,
+ "unoidl" : 1,
+ "unotools" : 1,
+ "unoxml" : 1,
+ "uui" : 1,
+ "vbahelper" : 1,
+ "vcl" : 1,
+ "winaccessibility" : 1,
+ "writerfilter" : 1,
+ "writerperfect" : 1,
+ "xmlhelp" : 1,
+ "xmloff" : 1,
+ "xmlreader" : 1,
+ "xmlsecurity" : 1,
+ "xmlscript" : 1,
+ }
+
+ if globalscan:
+ print("Scanning all files globally:")
+ elif directory == '.':
+ print("Scanning all files in our current directory:")
+ else:
+ print("Scanning all files in", directory + ":")
+
+ num_checked = 0
+
+ for path in lines:
+ baseDir = self.first_elem(path)
+ # If we have a globalscan use the allowlist.
+ if globalscan:
+ if not baseDir in directory_allowlist:
+ sys.stderr.write("\n - Error: Missing path %s -\n\n" % baseDir)
+ sys.exit(1)
+ elif directory_allowlist[baseDir] is 0:
+ self.check_file(path.strip())
+ num_checked = num_checked + 1
+ elif directory_allowlist[baseDir] is 1:
+ sys.stderr.write("Skipping excluded directory %s\n" % baseDir)
+ directory_allowlist[baseDir] = 2
+ elif not globalscan:
+ self.check_file(path.strip())
+ num_checked = num_checked + 1
+
+ print("Scanned %s files\n" % num_checked)
+
+try:
+ Parser()
+except KeyboardInterrupt:
+ print("Interrupted!")
+ sys.exit(0)
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/find-headers-to-move-inside-modules.py b/bin/find-headers-to-move-inside-modules.py
new file mode 100755
index 000000000..9ec0f6231
--- /dev/null
+++ b/bin/find-headers-to-move-inside-modules.py
@@ -0,0 +1,53 @@
+#!/usr/bin/python3
+
+# Look for headers inside include/ that can be moved into their respective modules.
+# Not 100% accurate
+
+import subprocess
+import sys
+
+headerSet = set()
+a = subprocess.Popen("git ls-files include/", stdout=subprocess.PIPE, shell=True)
+with a.stdout as txt:
+ for line in txt:
+ header = line[8:].strip();
+ if b"README" in header: continue
+ if header == b"version.hrc": continue
+ # ignore URE headers
+ if header.startswith(b"IwyuFilter_include.yaml"): continue
+ if header.startswith(b"cppu/"): continue
+ if header.startswith(b"cppuhelper/"): continue
+ if header.startswith(b"osl/"): continue
+ if header.startswith(b"sal/"): continue
+ if header.startswith(b"salhelper/"): continue
+ if header.startswith(b"uno/"): continue
+ # these are direct copies of mozilla code
+ if header.startswith(b"onlineupdate/mozilla/"): continue
+ headerSet.add(header)
+
+headerSetUnused = headerSet.copy()
+headerSetOnlyInOwnModule = headerSet.copy()
+a = subprocess.Popen("git grep '^#include <'", stdout=subprocess.PIPE, shell=True)
+with a.stdout as txt:
+ for line in txt:
+ idx1 = line.find(b"#include <")
+ idx2 = line.find(b">", idx1 + 10)
+ include = line[idx1 + 10 : idx2]
+ headerSetUnused.discard(include)
+ #
+ idx1 = line.find(b"/")
+ includedFromModule = line[0 : idx1]
+ idx1 = include.find(b"/")
+ module = include[0 : idx1]
+ if module != includedFromModule:
+ headerSetOnlyInOwnModule.discard(include)
+
+print("completely unused")
+print("----------------------------")
+for x in sorted(headerSetUnused):
+ print(x)
+print("")
+print("only used in own module")
+print("----------------------------")
+for x in sorted(headerSetOnlyInOwnModule):
+ print(x)
diff --git a/bin/find-mergedlib-can-be-private.classes.results b/bin/find-mergedlib-can-be-private.classes.results
new file mode 100644
index 000000000..7a05b3697
--- /dev/null
+++ b/bin/find-mergedlib-can-be-private.classes.results
@@ -0,0 +1,423 @@
+Accelerator
+B3dCamera
+B3dTransformationSet
+B3dViewport
+BitmapMedianFilter
+BitmapMonochromeMatrixFilter
+BitmapPalette
+BitmapPopArtFilter
+BitmapSobelGreyFilter
+CalendarField
+CodeCompleteDataCache
+ConvertChar
+CurrencyBox
+CurrencyFormatter
+CursorWrapper
+DateBox
+DateField
+DdeGetPutItem
+DdeHotLink
+DdeItem
+DdeLink
+DdeService
+DdeTopic
+DockingAreaWindow
+DockingManager
+DoubleCurrencyField
+DoubleNumericField
+E3dCompoundObject
+E3dDefaultAttributes
+E3dExtrudeObj
+E3dPolygonObj
+EditAbstractDialogFactory
+EditUndo
+EditUndoManager
+EditViewCallbacks
+EnhancedCustomShape
+EnhancedCustomShape::FunctionParser
+FileChangedChecker
+FilterMatch
+FixedBitmap
+FixedHyperlink
+FmDesignModeChangedHint
+FmFormObj
+FmFormPageImpl
+FmXFormShell
+FontSelectPattern
+FontSizeNames
+FontSubsetInfo
+FormattedField::StaticFormatter
+FormatterBase
+FreetypeManager::IFSD_Equal
+GroupBox
+HelpLinker
+Hunspell
+Hunzip
+ImageControl
+ImplJobSetup
+IndexerPreProcessor
+IntroWindow
+ListenerMultiplexerBase
+LongCurrencyBox
+LongCurrencyField
+LongCurrencyFormatter
+MenuToggleButton
+MetaAction
+MetaArcAction
+MetaBmpAction
+MetaBmpExScalePartAction
+MetaBmpScaleAction
+MetaBmpScalePartAction
+MetaChordAction
+MetaClipRegionAction
+MetaEllipseAction
+MetaFontAction
+MetaGradientExAction
+MetaISectRectClipRegionAction
+MetaISectRegionClipRegionAction
+MetaLayoutModeAction
+MetaMapModeAction
+MetaMoveClipRegionAction
+MetaOverlineColorAction
+MetaPieAction
+MetaPixelAction
+MetaPolyLineAction
+MetaPolyPolygonAction
+MetaPolygonAction
+MetaPopAction
+MetaPushAction
+MetaRasterOpAction
+MetaRefPointAction
+MetaRoundRectAction
+MetaTextAlignAction
+MetaTextArrayAction
+MetaTextColorAction
+MetaTextFillColorAction
+MetaTextLanguageAction
+MetaTextLineColorAction
+MetaWallpaperAction
+MetafileAccessor
+ModuleSizeExceeded
+MoreButton
+MultiListBox
+MyThes
+NativeNumberWrapper
+NfCurrencyEntry
+NotebookbarTabControlBase
+NotifyEvent
+NumericBox
+NumericField
+OFlowChainedText
+OpenFileDropTargetListener
+OpenGLFramebuffer
+OpenGLZone
+PackedTextureAtlasManager
+PatternBox
+PatternField
+PatternFormatter
+PhysicalFontFamily
+PlaceEditDialog
+PrinterOptions
+ProgressBar
+QueueInfo
+RenderList
+SalData
+SalInfoPrinter
+SalPrinter
+SalSystem
+SbClassModuleObject
+SbMethod
+SbxInfo
+SbxObject
+SdrEmbedObjectLink
+SdrGrafBlueItem
+SdrGrafContrastItem
+SdrGrafCropItem
+SdrGrafGamma100Item
+SdrGrafGreenItem
+SdrGrafLuminanceItem
+SdrGrafModeItem
+SdrGrafRedItem
+SdrGrafTransparenceItem
+SdrMeasureField
+SdrMeasureObj
+SdrSignedPercentItem
+SdrTextFixedCellHeightItem
+SdrUndoPageMasterPage
+SelectionListenerMultiplexer
+SfxAllEnumItem
+SfxDocumentInfoItem
+SfxItemSetHint
+SfxMetricItem
+SfxNavigator
+SfxObjectItem
+SfxStatusListener
+SfxStyleSheetModifiedHint
+SfxTemplatePanelControl
+SfxViewFrameItem
+SgaObject
+SkiaPackedSurfaceAtlasManager
+SkiaZone
+SpinButton
+SpinListenerMultiplexer
+SvParser<HtmlTokenId>::TokenStackType
+SvParser<int>::TokenStackType
+SvtBasePrintOptions
+SvtPrintFileOptions
+SvtPrinterOptions
+Svx3DCloseBackItem
+Svx3DCloseFrontItem
+Svx3DNormalsKindItem
+Svx3DPerspectiveItem
+Svx3DShadeModeItem
+Svx3DTextureKindItem
+Svx3DTextureModeItem
+Svx3DTextureProjectionXItem
+Svx3DTextureProjectionYItem
+SvxCurrencyToolBoxControl
+SvxEditSourceAdapter
+SvxPasswordDialog
+SvxPropertySetInfoPool
+SvxTPage
+SvxTextRotateItem
+SyntaxHighlighter::Tokenizer
+SystemWindow::ImplData
+TETextDataObject
+TabDialog
+TabPaneValue
+TextListenerMultiplexer
+Throbber
+TimeBox
+TimeFormatter
+UFlowChainedText
+UnoEditControl
+UnoWrapperBase
+VCLXDateField
+VCLXEdit
+VCLXMenuBar
+VCLXSpinField
+ValueSet
+VclBin
+VclBuilder::MenuAndId
+VclBuilder::ParserState
+VclBuilder::sortIntoBestTabTraversalOrder
+VclDrawingArea
+VclGrid
+VclWindowEvent
+XMLDashStyleExport
+XMLDashStyleImport
+XMLGradientStyleExport
+XMLGradientStyleImport
+XMLHatchStyleExport
+XMLHatchStyleImport
+XMLImageStyle
+XMLMarkerStyleExport
+XMLMarkerStyleImport
+XMLShapeStyleContext
+accessibility::AccessibleEditableTextPara
+accessibility::AccessibleParaManager
+avmedia::MediaControlBase
+avmedia::MediaFloater
+basegfx::B2DTrapezoid
+basegfx::B3DPoint
+basegfx::B3DTuple
+basegfx::BColorModifier
+basegfx::BColorModifierStack
+basegfx::BColorModifier_RGBLuminanceContrast
+basegfx::BColorModifier_black_and_white
+basegfx::BColorModifier_gamma
+basegfx::BColorModifier_gray
+basegfx::BColorModifier_invert
+basegfx::BColorModifier_replace
+basegfx::ODFGradientInfo
+basegfx::RasterConverter3D
+basegfx::SystemDependentDataHolder
+basegfx::SystemDependentDataManager
+basegfx::triangulator
+canvas
+char& std::vector<char, std::allocator<char> >
+comphelper::IndexAccessIterator
+comphelper::OAccessibleSelectionHelper
+comphelper::OEventListenerHelper
+comphelper::OPropertySetAggregationHelper
+comphelper::OPropertyStateHelper
+comphelper::OSequenceOutputStream
+comphelper::OStatefulPropertySet
+comphelper::OStreamSection
+comphelper::OWeakEventListenerAdapter
+comphelper::OWrappedAccessibleChildrenManager
+comphelper::PropertyBag
+comphelper::StillReadWriteInteraction
+comphelper::service_decl::ServiceDecl::Factory
+connectivity::sdbcx::IObjectCollection
+connectivity::sdbcx::OGroup
+connectivity::sdbcx::OKey
+dbtools::param::ParameterWrapper
+desktop::CallbackFlushHandler::CallbackData
+dp_misc::AbortChannel
+drawinglayer::animation::AnimationEntry
+drawinglayer::animation::AnimationEntryFixed
+drawinglayer::animation::AnimationEntryLinear
+drawinglayer::animation::AnimationEntryList
+drawinglayer::animation::AnimationEntryLoop
+drawinglayer::attribute::FillGraphicAttribute
+drawinglayer::attribute::FillHatchAttribute
+drawinglayer::attribute::LineStartEndAttribute
+drawinglayer::attribute::MaterialAttribute3D
+drawinglayer::attribute::Sdr3DLightAttribute
+drawinglayer::attribute::Sdr3DObjectAttribute
+drawinglayer::attribute::SdrFillGraphicAttribute
+drawinglayer::attribute::SdrGlowAttribute
+drawinglayer::attribute::SdrLightingAttribute
+drawinglayer::attribute::SdrLineAttribute
+drawinglayer::attribute::SdrLineFillShadowAttribute3D
+drawinglayer::attribute::SdrLineStartEndAttribute
+drawinglayer::attribute::SdrSceneAttribute
+drawinglayer::attribute::SdrShadowAttribute
+drawinglayer::primitive2d::AnimatedBlinkPrimitive2D
+drawinglayer::primitive2d::AnimatedInterpolatePrimitive2D
+drawinglayer::primitive2d::AnimatedSwitchPrimitive2D
+drawinglayer::primitive2d::BackgroundColorPrimitive2D
+drawinglayer::primitive2d::ControlPrimitive2D
+drawinglayer::primitive2d::DiscreteShadowPrimitive2D
+drawinglayer::primitive2d::Embedded3DPrimitive2D
+drawinglayer::primitive2d::FillGraphicPrimitive2D
+drawinglayer::primitive2d::GlowPrimitive2D
+drawinglayer::primitive2d::GridPrimitive2D
+drawinglayer::primitive2d::GroupPrimitive2D
+drawinglayer::primitive2d::HelplinePrimitive2D
+drawinglayer::primitive2d::InvertPrimitive2D
+drawinglayer::primitive2d::MarkerArrayPrimitive2D
+drawinglayer::primitive2d::MediaPrimitive2D
+drawinglayer::primitive2d::MetafilePrimitive2D
+drawinglayer::primitive2d::ObjectAndViewTransformationDependentPrimitive2D
+drawinglayer::primitive2d::PagePreviewPrimitive2D
+drawinglayer::primitive2d::PolyPolygonGradientPrimitive2D
+drawinglayer::primitive2d::PolyPolygonGraphicPrimitive2D
+drawinglayer::primitive2d::PolyPolygonHatchPrimitive2D
+drawinglayer::primitive2d::PolyPolygonSelectionPrimitive2D
+drawinglayer::primitive2d::PolygonMarkerPrimitive2D
+drawinglayer::primitive2d::PolygonStrokeArrowPrimitive2D
+drawinglayer::primitive2d::ScenePrimitive2D
+drawinglayer::primitive2d::SdrFrameBorderData::SdrConnectStyleData
+drawinglayer::primitive2d::ShadowPrimitive2D
+drawinglayer::primitive2d::TextHierarchyBlockPrimitive2D
+drawinglayer::primitive2d::TextHierarchyBulletPrimitive2D
+drawinglayer::primitive2d::TextHierarchyEditPrimitive2D
+drawinglayer::primitive2d::TextHierarchyFieldPrimitive2D
+drawinglayer::primitive2d::TextHierarchyLinePrimitive2D
+drawinglayer::primitive2d::TextHierarchyParagraphPrimitive2D
+drawinglayer::primitive2d::ViewTransformationDependentPrimitive2D
+drawinglayer::primitive2d::ViewportDependentPrimitive2D
+drawinglayer::primitive2d::WrongSpellPrimitive2D
+drawinglayer::primitive3d
+drawinglayer::primitive3d::BasePrimitive3D
+drawinglayer::primitive3d::BufferedDecompositionPrimitive3D
+drawinglayer::primitive3d::GroupPrimitive3D
+drawinglayer::primitive3d::ModifiedColorPrimitive3D
+drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D
+drawinglayer::primitive3d::PolygonHairlinePrimitive3D
+drawinglayer::primitive3d::Primitive3DContainer
+drawinglayer::primitive3d::SdrCubePrimitive3D
+drawinglayer::primitive3d::SdrExtrudePrimitive3D
+drawinglayer::primitive3d::SdrLathePrimitive3D
+drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D
+drawinglayer::primitive3d::SdrPrimitive3D
+drawinglayer::primitive3d::SdrSpherePrimitive3D
+drawinglayer::primitive3d::TransformPrimitive3D
+drawinglayer::processor2d::HitTestProcessor2D
+drawinglayer::processor3d::BaseProcessor3D
+drawinglayer::processor3d::CutFindProcessor
+emfio::WinMtfFontStyle
+formula::FormulaTokenIterator::Item
+framework
+framework::AddonMenuManager
+framework::AddonsOptions
+framework::ConfigAccess
+framework::ConstItemContainer
+framework::Converter
+framework::DispatchHelper
+framework::FrameListAnalyzer
+framework::HandlerCache
+framework::InteractionRequest
+framework::MenuAttributes
+framework::MenuConfiguration
+framework::RequestFilterSelect
+framework::RootItemContainer
+framework::SaxNamespaceFilter
+framework::StatusBarConfiguration
+framework::ToolBoxConfiguration
+framework::TransactionManager
+framework::UIConfigurationImporterOOo1x
+legacy::CntInt32
+legacy::SfxBool
+legacy::SvxAdjust
+legacy::SvxBox
+legacy::SvxBrush
+legacy::SvxColor
+legacy::SvxCrossedOut
+legacy::SvxFont
+legacy::SvxFontHeight
+legacy::SvxHorJustify
+legacy::SvxLine
+legacy::SvxPosture
+legacy::SvxTextLine
+legacy::SvxVerJustify
+legacy::SvxWeight
+psp::PrintFontManager::PrintFont
+sdr::SelectionController
+sdr::ViewSelection
+sdr::animation::primitiveAnimator
+sdr::contact::ObjectContactPainter
+sdr::properties::BaseProperties
+sdr::table::Cell
+sfx2::sidebar::Panel
+sfx2::sidebar::SidebarToolBox
+sfx2::sidebar::TabBar
+sfx2::sidebar::TabBar::Item
+svt
+svt::AddressBookSourceDialog
+svt::GenericToolboxController
+svt::GraphicAccess
+svt::IEditImplementation
+svt::MultiLineEditImplementation
+svt::MultiLineTextCell
+svt::OStringTransferable
+svt::PopupMenuControllerBase
+svt::TemplateFolderCache
+svtools::AsynchronLink
+svtools::ToolbarPopup
+svx::DialControl::DialControl_Impl
+svx::IPropertyValueProvider
+svx::sidebar::GalleryControl
+svxform
+svxform::DataNavigatorManager
+svxform::NavigatorFrameManager
+svxform::OLocalExchange
+svxform::OLocalExchangeHelper
+svxform::OSQLParserClient
+toolkitform
+ucbhelper::ActiveDataSink
+ucbhelper::InteractionApprove
+ucbhelper::InteractionDisapprove
+ucbhelper::InteractionSupplyAuthentication
+ucbhelper::InterceptedInteraction
+ucbhelper::SimpleNameClashResolveRequest
+utl::Bootstrap::Impl
+utl::DefaultFontConfiguration
+utl::DesktopTerminationObserver
+utl::FontSubstConfiguration
+utl::OConfigurationValueContainer
+utl::ProgressHandlerWrap
+utl::ZipPackageHelper
+utl::detail::Options
+vcl::AccessibleFactoryAccess
+vcl::EventPoster
+vcl::ExtOutDevData
+vcl::ILibreOfficeKitNotifier
+vcl::ORoadmap
+vcl::OldStylePrintAdaptor
+vcl::PDFWriter::AnyWidget
+vcl::test::OutputDeviceTestGradient
+void OpenGLTexture
+wchar_t& std::vector<wchar_t, std::allocator<wchar_t> >
diff --git a/bin/find-mergedlib-can-be-private.py b/bin/find-mergedlib-can-be-private.py
new file mode 100755
index 000000000..f21f74052
--- /dev/null
+++ b/bin/find-mergedlib-can-be-private.py
@@ -0,0 +1,151 @@
+#!/usr/bin/python2
+#
+# Generate a custom linker script/map file for the --enabled-mergedlibs merged library
+# which reduces the startup time and enables further optimisations with --enable-lto because 60% or more
+# of the symbols become internal only.
+#
+
+import subprocess
+import sys
+import re
+import multiprocessing
+
+exported_symbols = set()
+imported_symbols = set()
+
+
+# Copied from solenv/gbuild/extensions/pre_MergedLibsList.mk
+# TODO there has to be a way to run gmake and get it to dump this list for me
+merged_libs = { \
+ "avmedia" \
+ ,"basctl" \
+ ,"basprov" \
+ ,"basegfx" \
+ ,"canvasfactory" \
+ ,"canvastools" \
+ ,"comphelper" \
+ ,"configmgr" \
+ ,"cppcanvas" \
+ ,"crashreport)" \
+ ,"dbtools" \
+ ,"deployment" \
+ ,"deploymentmisc" \
+ ,"desktopbe1)" \
+ ,"desktop_detector)" \
+ ,"drawinglayer" \
+ ,"editeng" \
+ ,"expwrap" \
+ ,"filterconfig" \
+ ,"fsstorage" \
+ ,"fwk" \
+ ,"helplinker)" \
+ ,"i18npool" \
+ ,"i18nutil" \
+ ,"lng" \
+ ,"localebe1" \
+ ,"msfilter" \
+ ,"mtfrenderer" \
+ ,"opencl" \
+ ,"package2" \
+ ,"sax" \
+ ,"sb" \
+ ,"simplecanvas" \
+ ,"sfx" \
+ ,"sofficeapp" \
+ ,"sot" \
+ ,"spl" \
+ ,"stringresource" \
+ ,"svl" \
+ ,"svt" \
+ ,"svx" \
+ ,"svxcore" \
+ ,"tk" \
+ ,"tl" \
+ ,"ucb1" \
+ ,"ucbhelper" \
+ ,"ucpexpand1" \
+ ,"ucpfile1" \
+ ,"unoxml" \
+ ,"utl" \
+ ,"uui" \
+ ,"vcl" \
+ ,"xmlscript" \
+ ,"xo" \
+ ,"xstor" }
+
+# look for symbols exported by libmerged
+subprocess_nm = subprocess.Popen("nm -D instdir/program/libmergedlo.so", stdout=subprocess.PIPE, shell=True)
+with subprocess_nm.stdout as txt:
+ # We are looking for lines something like:
+ # 0000000000036ed0 T flash_component_getFactory
+ line_regex = re.compile(r'^[0-9a-fA-F]+ T ')
+ for line in txt:
+ line = line.strip()
+ if line_regex.match(line):
+ exported_symbols.add(line.split(" ")[2])
+subprocess_nm.terminate()
+
+# look for symbols imported from libmerged
+subprocess_find = subprocess.Popen("(find instdir/program/ -type f; ls ./workdir/LinkTarget/CppunitTest/*.so) | xargs grep -l mergedlo",
+ stdout=subprocess.PIPE, shell=True)
+with subprocess_find.stdout as txt:
+ for line in txt:
+ sharedlib = line.strip()
+ s = sharedlib[sharedlib.find("/lib") + 4 : len(sharedlib) - 3]
+ if s in merged_libs: continue
+ # look for imported symbols
+ subprocess_objdump = subprocess.Popen("objdump -T " + sharedlib, stdout=subprocess.PIPE, shell=True)
+ with subprocess_objdump.stdout as txt2:
+ # ignore some header bumpf
+ txt2.readline()
+ txt2.readline()
+ txt2.readline()
+ txt2.readline()
+ # We are looking for lines something like (noting that one of them uses spaces, and the other tabs)
+ # 0000000000000000 DF *UND* 0000000000000000 _ZN16FilterConfigItem10WriteInt32ERKN3rtl8OUStringEi
+ for line2 in txt2:
+ line2 = line2.strip()
+ if line2.find("*UND*") == -1: continue
+ tokens = line2.split(" ")
+ sym = tokens[len(tokens)-1].strip()
+ imported_symbols.add(sym)
+ subprocess_objdump.terminate()
+subprocess_find.terminate()
+
+intersec_symbols = exported_symbols.intersection(imported_symbols)
+print("no symbols exported from libmerged = " + str(len(exported_symbols)))
+print("no symbols that can be made internal = " + str(len(intersec_symbols)))
+
+# Now look for classes where none of the class symbols are imported,
+# i.e. we can mark the whole class as hidden
+
+def extract_class(sym):
+ filtered_sym = subprocess.check_output(["c++filt", sym]).strip()
+ if filtered_sym.startswith("vtable for "):
+ classname = filtered_sym[11:]
+ return classname
+ if filtered_sym.startswith("non-virtual thunk to "):
+ filtered_sym = filtered_sym[21:]
+ elif filtered_sym.startswith("virtual thunk to "):
+ filtered_sym = filtered_sym[17:]
+ i = filtered_sym.find("(")
+ if i != -1:
+ i = filtered_sym.rfind("::", 0, i)
+ if i != -1:
+ classname = filtered_sym[:i]
+ return classname
+ return ""
+
+pool = multiprocessing.Pool(multiprocessing.cpu_count())
+classes_with_exported_symbols = set(pool.map(extract_class, list(exported_symbols)))
+classes_with_imported_symbols = set(pool.map(extract_class, list(imported_symbols)))
+
+# Some stuff is particular to Windows, so won't be found by a Linux analysis, so remove
+# those classes.
+can_be_private_classes = classes_with_exported_symbols - classes_with_imported_symbols;
+can_be_private_classes.discard("SpinField")
+
+with open("bin/find-mergedlib-can-be-private.classes.results", "wt") as f:
+ for sym in sorted(can_be_private_classes):
+ if sym.startswith("std::") or sym.startswith("void std::"): continue
+ f.write(sym + "\n")
diff --git a/bin/find-most-common-warn-messages.py b/bin/find-most-common-warn-messages.py
new file mode 100755
index 000000000..dc2ecf8ab
--- /dev/null
+++ b/bin/find-most-common-warn-messages.py
@@ -0,0 +1,39 @@
+#!/usr/bin/python3
+
+# A script to search our test logs and sort the messages by how common they are so we can start to
+# reduce the noise a little.
+
+import sys
+import re
+import io
+import subprocess
+
+# find . -name '*.log' | xargs grep -h 'warn:' | sort | uniq -c | sort -n --field-separator=: --key=5,6
+
+process = subprocess.Popen("find workdir -name '*.log' | xargs grep -h 'warn:' | sort",
+ shell=True, stdout=subprocess.PIPE, universal_newlines=True)
+
+messages = dict() # dict of sourceAndLine->count
+sampleOfMessage = dict() # dict of sourceAndLine->string
+for line in process.stdout:
+ line = line.strip()
+ # a sample line is:
+ # warn:sw:18790:1:sw/source/core/doc/DocumentRedlineManager.cxx:98: redline table corrupted: overlapping redlines
+ tokens = line.split(":")
+ sourceAndLine = tokens[4] + ":" + tokens[5]
+ if (sourceAndLine in messages):
+ messages[sourceAndLine] = messages[sourceAndLine] + 1
+ else:
+ messages[sourceAndLine] = 1
+ sampleOfMessage[sourceAndLine] = line[line.find(tokens[6]):]
+
+tmplist = list() # set of tuple (count, sourceAndLine)
+for key, value in messages.items():
+ tmplist.append([value,key])
+
+print( "The top 20 warnings" )
+print("")
+for i in sorted(tmplist, key=lambda v: v[0])[-20:]:
+ print( "%6d %s %s" % (i[0], i[1], sampleOfMessage[i[1]]) )
+
+
diff --git a/bin/find-most-repeated-functions.py b/bin/find-most-repeated-functions.py
new file mode 100755
index 000000000..767f80240
--- /dev/null
+++ b/bin/find-most-repeated-functions.py
@@ -0,0 +1,42 @@
+#!/usr/bin/python
+#
+# Find the top 100 functions that are repeated in multiple .o files, so we can out-of-line those
+#
+#
+
+import subprocess
+from collections import defaultdict
+
+# the odd bash construction here is because some of the .o files returned by find are not object files
+# and I don't want xargs to stop when it hits an error
+a = subprocess.Popen("find instdir/program/ -name *.so | xargs echo nm --radix=d --size-sort --demangle | bash", stdout=subprocess.PIPE, shell=True)
+
+#xargs sh -c "somecommand || true"
+
+nameDict = defaultdict(int)
+with a.stdout as txt:
+ for line in txt:
+ line = line.strip()
+ idx1 = line.find(" ")
+ idx2 = line.find(" ", idx1 + 1)
+ name = line[idx2:]
+ nameDict[name] += 1
+
+sizeDict = defaultdict(set)
+for k, v in nameDict.iteritems():
+ sizeDict[v].add(k)
+
+cnt = 0
+for k in sorted(list(sizeDict), reverse=True):
+ print k
+ for v in sizeDict[k]:
+ print v
+ cnt += 1
+ if cnt > 100 : break
+
+#first = sorted(list(sizeDict))[-1]
+#print first
+
+
+#include/vcl/ITiledRenderable.hxx
+# why is gaLOKPointerMap declared inside this header?
diff --git a/bin/find-undocumented-classes b/bin/find-undocumented-classes
new file mode 100755
index 000000000..3476596c0
--- /dev/null
+++ b/bin/find-undocumented-classes
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+
+# finds undocumented classes in the current directory (recursive)
+
+type -p doxygen >/dev/null || exit
+
+filter=
+quiet=n
+if [ "$1" = "-q" ]; then
+ filter=">/dev/null"
+ quiet=y
+ shift
+fi
+
+doxygen=$(mktemp -d)
+eval doxygen -g $doxygen/doxygen.cfg $filter
+sed -i "/HTML_OUTPUT/s|html|$doxygen/html|" $doxygen/doxygen.cfg
+sed -i '/GENERATE_LATEX/s/= YES/= NO/' $doxygen/doxygen.cfg
+sed -i '/RECURSIVE/s/= NO/= YES/' $doxygen/doxygen.cfg
+# do we have any arguments?
+if [ -n "$*" ]; then
+ sed -i "/^INPUT[^_]/s|=.*|= $*|" $doxygen/doxygen.cfg
+fi
+eval doxygen $doxygen/doxygen.cfg $filter 2> $doxygen/errors.txt
+if [ "$quiet" == "n" ]; then
+ echo
+ echo "The following classes are undocumented:"
+ echo
+fi
+cat $doxygen/errors.txt|grep -i 'Warning: Compound.*is not documented'
+rm -rf $doxygen
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/find-unneeded-includes b/bin/find-unneeded-includes
new file mode 100755
index 000000000..cc694fcb4
--- /dev/null
+++ b/bin/find-unneeded-includes
@@ -0,0 +1,373 @@
+#!/usr/bin/env python3
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This parses the output of 'include-what-you-use', focusing on just removing
+# not needed includes and providing a relatively conservative output by
+# filtering out a number of LibreOffice-specific false positives.
+#
+# It assumes you have a 'compile_commands.json' around (similar to clang-tidy),
+# you can generate one with 'make vim-ide-integration'.
+#
+# Design goals:
+# - excludelist mechanism, so a warning is either fixed or excluded
+# - works in a plugins-enabled clang build
+# - no custom configure options required
+# - no need to generate a dummy library to build a header
+
+import glob
+import json
+import multiprocessing
+import os
+import queue
+import re
+import subprocess
+import sys
+import threading
+import yaml
+import argparse
+import pathlib
+
+
+def ignoreRemoval(include, toAdd, absFileName, moduleRules, noexclude):
+ # global rules
+
+ # Avoid replacing .hpp with .hdl in the com::sun::star and ooo::vba namespaces.
+ if ( include.startswith("com/sun/star") or include.startswith("ooo/vba") ) and include.endswith(".hpp"):
+ hdl = include.replace(".hpp", ".hdl")
+ if hdl in toAdd:
+ return True
+
+ # Avoid debug STL.
+ debugStl = {
+ "array": ("debug/array", ),
+ "bitset": ("debug/bitset", ),
+ "deque": ("debug/deque", ),
+ "forward_list": ("debug/forward_list", ),
+ "list": ("debug/list", ),
+ "map": ("debug/map.h", "debug/multimap.h"),
+ "set": ("debug/set.h", "debug/multiset.h"),
+ "unordered_map": ("debug/unordered_map", ),
+ "unordered_set": ("debug/unordered_set", ),
+ "vector": ("debug/vector", ),
+ }
+ for k, values in debugStl.items():
+ if include == k:
+ for value in values:
+ if value in toAdd:
+ return True
+
+ # Avoid proposing to use libstdc++ internal headers.
+ bits = {
+ "exception": "bits/exception.h",
+ "memory": "bits/shared_ptr.h",
+ "functional": "bits/std_function.h",
+ "cmath": "bits/std_abs.h",
+ "ctime": "bits/types/clock_t.h",
+ "cstdint": "bits/stdint-uintn.h",
+ }
+ for k, v in bits.items():
+ if include == k and v in toAdd:
+ return True
+
+ # Avoid proposing o3tl fw declaration
+ o3tl = {
+ "o3tl/typed_flags_set.hxx" : "namespace o3tl { template <typename T> struct typed_flags; }",
+ "o3tl/deleter.hxx" : "namespace o3tl { template <typename T> struct default_delete; }",
+ "o3tl/span.hxx" : "namespace o3tl { template <typename T> class span; }",
+ }
+ for k, v, in o3tl.items():
+ if include == k and v in toAdd:
+ return True
+
+ # Follow boost documentation.
+ if include == "boost/optional.hpp" and "boost/optional/optional.hpp" in toAdd:
+ return True
+ if include == "boost/intrusive_ptr.hpp" and "boost/smart_ptr/intrusive_ptr.hpp" in toAdd:
+ return True
+ if include == "boost/shared_ptr.hpp" and "boost/smart_ptr/shared_ptr.hpp" in toAdd:
+ return True
+ if include == "boost/variant.hpp" and "boost/variant/variant.hpp" in toAdd:
+ return True
+ if include == "boost/unordered_map.hpp" and "boost/unordered/unordered_map.hpp" in toAdd:
+ return True
+ if include == "boost/functional/hash.hpp" and "boost/container_hash/extensions.hpp" in toAdd:
+ return True
+
+ # Avoid .hxx to .h proposals in basic css/uno/* API
+ unoapi = {
+ "com/sun/star/uno/Any.hxx": "com/sun/star/uno/Any.h",
+ "com/sun/star/uno/Reference.hxx": "com/sun/star/uno/Reference.h",
+ "com/sun/star/uno/Sequence.hxx": "com/sun/star/uno/Sequence.h",
+ "com/sun/star/uno/Type.hxx": "com/sun/star/uno/Type.h"
+ }
+ for k, v in unoapi.items():
+ if include == k and v in toAdd:
+ return True
+
+ # 3rd-party, non-self-contained headers.
+ if include == "libepubgen/libepubgen.h" and "libepubgen/libepubgen-decls.h" in toAdd:
+ return True
+ if include == "librevenge/librevenge.h" and "librevenge/RVNGPropertyList.h" in toAdd:
+ return True
+ if include == "libetonyek/libetonyek.h" and "libetonyek/EtonyekDocument.h" in toAdd:
+ return True
+
+ noRemove = (
+ # <https://www.openoffice.org/tools/CodingGuidelines.sxw> insists on not
+ # removing this.
+ "sal/config.h",
+ # Works around a build breakage specific to the broken Android
+ # toolchain.
+ "android/compatibility.hxx",
+ # Removing this would change the meaning of '#if defined OSL_BIGENDIAN'.
+ "osl/endian.h",
+ )
+ if include in noRemove:
+ return True
+
+ # Ignore when <foo> is to be replaced with "foo".
+ if include in toAdd:
+ return True
+
+ fileName = os.path.relpath(absFileName, os.getcwd())
+
+ # Skip headers used only for compile test
+ if fileName == "cppu/qa/cppumaker/test_cppumaker.cxx":
+ if include.endswith(".hpp"):
+ return True
+
+ # yaml rules, except when --noexclude is given
+
+ if "excludelist" in moduleRules.keys() and not noexclude:
+ excludelistRules = moduleRules["excludelist"]
+ if fileName in excludelistRules.keys():
+ if include in excludelistRules[fileName]:
+ return True
+
+ return False
+
+
+def unwrapInclude(include):
+ # Drop <> or "" around the include.
+ return include[1:-1]
+
+
+def processIWYUOutput(iwyuOutput, moduleRules, fileName, noexclude):
+ inAdd = False
+ toAdd = []
+ inRemove = False
+ toRemove = []
+ currentFileName = None
+
+ for line in iwyuOutput:
+ line = line.strip()
+
+ # Bail out if IWYU gave an error due to non self-containedness
+ if re.match ("(.*): error: (.*)", line):
+ return -1
+
+ if len(line) == 0:
+ if inRemove:
+ inRemove = False
+ continue
+ if inAdd:
+ inAdd = False
+ continue
+
+ shouldAdd = fileName + " should add these lines:"
+ match = re.match(shouldAdd, line)
+ if match:
+ currentFileName = match.group(0).split(' ')[0]
+ inAdd = True
+ continue
+
+ shouldRemove = fileName + " should remove these lines:"
+ match = re.match(shouldRemove, line)
+ if match:
+ currentFileName = match.group(0).split(' ')[0]
+ inRemove = True
+ continue
+
+ if inAdd:
+ match = re.match('#include ([^ ]+)', line)
+ if match:
+ include = unwrapInclude(match.group(1))
+ toAdd.append(include)
+ else:
+ # Forward declaration.
+ toAdd.append(line)
+
+ if inRemove:
+ match = re.match("- #include (.*) // lines (.*)-.*", line)
+ if match:
+ # Only suggest removals for now. Removing fwd decls is more complex: they may be
+ # indeed unused or they may removed to be replaced with an include. And we want to
+ # avoid the later.
+ include = unwrapInclude(match.group(1))
+ lineno = match.group(2)
+ if not ignoreRemoval(include, toAdd, currentFileName, moduleRules, noexclude):
+ toRemove.append("%s:%s: %s" % (currentFileName, lineno, include))
+
+ for remove in sorted(toRemove):
+ print("ERROR: %s: remove not needed include" % remove)
+ return len(toRemove)
+
+
+def run_tool(task_queue, failed_files, dontstop, noexclude):
+ while True:
+ invocation, moduleRules = task_queue.get()
+ if not len(failed_files):
+ print("[IWYU] " + invocation.split(' ')[-1])
+ p = subprocess.Popen(invocation, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
+ retcode = processIWYUOutput(p.communicate()[0].decode('utf-8').splitlines(), moduleRules, invocation.split(' ')[-1], noexclude)
+ if retcode == -1:
+ print("ERROR: A file is probably not self contained, check this commands output:\n" + invocation)
+ elif retcode > 0:
+ print("ERROR: The following command found unused includes:\n" + invocation)
+ if not dontstop:
+ failed_files.append(invocation)
+ task_queue.task_done()
+
+
+def isInUnoIncludeFile(path):
+ return path.startswith("include/com/") \
+ or path.startswith("include/cppu/") \
+ or path.startswith("include/cppuhelper/") \
+ or path.startswith("include/osl/") \
+ or path.startswith("include/rtl/") \
+ or path.startswith("include/sal/") \
+ or path.startswith("include/salhelper/") \
+ or path.startswith("include/systools/") \
+ or path.startswith("include/typelib/") \
+ or path.startswith("include/uno/")
+
+
+def tidy(compileCommands, paths, dontstop, noexclude):
+ return_code = 0
+
+ try:
+ max_task = multiprocessing.cpu_count()
+ task_queue = queue.Queue(max_task)
+ failed_files = []
+ for _ in range(max_task):
+ t = threading.Thread(target=run_tool, args=(task_queue, failed_files, dontstop, noexclude))
+ t.daemon = True
+ t.start()
+
+ for path in sorted(paths):
+ if isInUnoIncludeFile(path):
+ continue
+
+ moduleName = path.split("/")[0]
+
+ rulePath = os.path.join(moduleName, "IwyuFilter_" + moduleName + ".yaml")
+ moduleRules = {}
+ if os.path.exists(rulePath):
+ moduleRules = yaml.full_load(open(rulePath))
+ assume = None
+ pathAbs = os.path.abspath(path)
+ compileFile = pathAbs
+ matches = [i for i in compileCommands if i["file"] == compileFile]
+ if not len(matches):
+ # Only use assume-filename for headers, so we don't try to analyze e.g. Windows-only
+ # code on Linux.
+ if "assumeFilename" in moduleRules.keys() and not path.endswith("cxx"):
+ assume = moduleRules["assumeFilename"]
+ if assume:
+ assumeAbs = os.path.abspath(assume)
+ compileFile = assumeAbs
+ matches = [i for i in compileCommands if i["file"] == compileFile]
+ if not len(matches):
+ print("WARNING: no compile commands for '" + path + "' (assumed filename: '" + assume + "'")
+ continue
+ else:
+ print("WARNING: no compile commands for '" + path + "'")
+ continue
+
+ _, _, args = matches[0]["command"].partition(" ")
+ if assume:
+ args = args.replace(assumeAbs, "-x c++ " + pathAbs)
+
+ invocation = "include-what-you-use -Xiwyu --no_fwd_decls -Xiwyu --max_line_length=200 " + args
+ task_queue.put((invocation, moduleRules))
+
+ task_queue.join()
+ if len(failed_files):
+ return_code = 1
+
+ except KeyboardInterrupt:
+ print('\nCtrl-C detected, goodbye.')
+ os.kill(0, 9)
+
+ sys.exit(return_code)
+
+
+def main(argv):
+ parser = argparse.ArgumentParser(description='Check source files for unneeded includes.')
+ parser.add_argument('--continue', action='store_true',
+ help='Don\'t stop on errors. Useful for periodic re-check of large amount of files')
+ parser.add_argument('Files' , nargs='*',
+ help='The files to be checked')
+ parser.add_argument('--recursive', metavar='DIR', nargs=1, type=str,
+ help='Recursively search a directory for source files to check')
+ parser.add_argument('--headers', action='store_true',
+ help='Check header files. If omitted, check source files. Use with --recursive.')
+ parser.add_argument('--noexclude', action='store_true',
+ help='Ignore excludelist. Useful to check whether its exclusions are still all valid.')
+
+ args = parser.parse_args()
+
+ if not len(argv):
+ parser.print_help()
+ return
+
+ list_of_files = []
+ if args.recursive:
+ for root, dirs, files in os.walk(args.recursive[0]):
+ for file in files:
+ if args.headers:
+ if (file.endswith(".hxx") or file.endswith(".hrc") or file.endswith(".h")):
+ list_of_files.append(os.path.join(root,file))
+ else:
+ if (file.endswith(".cxx") or file.endswith(".c")):
+ list_of_files.append(os.path.join(root,file))
+ else:
+ list_of_files = args.Files
+
+ try:
+ with open("compile_commands.json", 'r') as compileCommandsSock:
+ compileCommands = json.load(compileCommandsSock)
+ except FileNotFoundError:
+ print ("File 'compile_commands.json' does not exist, please run:\nmake vim-ide-integration")
+ sys.exit(-1)
+
+ # quickly sanity check whether files with exceptions in yaml still exists
+ # only check for the module of the very first filename passed
+
+ # Verify there are files selected for checking, with --recursive it
+ # may happen that there are in fact no C/C++ files in a module directory
+ if not list_of_files:
+ print("No files found to check!")
+ sys.exit(-2)
+
+ moduleName = sorted(list_of_files)[0].split("/")[0]
+ rulePath = os.path.join(moduleName, "IwyuFilter_" + moduleName + ".yaml")
+ moduleRules = {}
+ if os.path.exists(rulePath):
+ moduleRules = yaml.full_load(open(rulePath))
+ if "excludelist" in moduleRules.keys():
+ excludelistRules = moduleRules["excludelist"]
+ for pathname in excludelistRules.keys():
+ file = pathlib.Path(pathname)
+ if not file.exists():
+ print("WARNING: File listed in " + rulePath + " no longer exists: " + pathname)
+
+ tidy(compileCommands, paths=list_of_files, dontstop=vars(args)["continue"], noexclude=args.noexclude)
+
+if __name__ == '__main__':
+ main(sys.argv[1:])
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/find-unused-defines.py b/bin/find-unused-defines.py
new file mode 100755
index 000000000..53db9d1d5
--- /dev/null
+++ b/bin/find-unused-defines.py
@@ -0,0 +1,178 @@
+#!/usr/bin/python3
+
+# Search for unused constants in header files.
+#
+# Note that sometimes these constants are calculated, so some careful checking of the output is necessary.
+#
+# Takes about 4 hours to run this on a fast machine with an SSD
+#
+
+import subprocess
+import sys
+import re
+
+exclusionSet = set([
+ # List of RID constants where we compute a value using a base before calling one of the RESSTR methods
+ # Found with: git grep -P 'RID_\w+\s*\+' -- :/ ':!*.hrc' ':!*.src' ':!*.java' ':!*.py' ':!*.xba'
+ "RID_SVXSTR_KEY_",
+ "RID_UPDATE_BUBBLE_TEXT_",
+ "RID_UPDATE_BUBBLE_T_TEXT_",
+ "RID_SVXSTR_TBLAFMT_",
+ "RID_BMP_CONTENT_",
+ "RID_DROPMODE_",
+ "RID_BMP_LEVEL",
+ "RID_SVXSTR_BULLET_DESCRIPTION",
+ "RID_SVXSTR_SINGLENUM_DESCRIPTION",
+ "RID_SVXSTR_OUTLINENUM_DESCRIPTION",
+ "RID_SVXSTR_RULER_",
+ "RID_GALLERYSTR_THEME_",
+ "RID_SVXSTR_BULLET_DESCRIPTION",
+ "RID_SVXSTR_SINGLENUM_DESCRIPTION",
+ "RID_SVXSTR_OUTLINENUM_DESCRIPTION",
+ # doing some weird stuff in svx/source/unodraw/unoprov.cxx involving mapping of UNO api names to translated names and back again
+ "RID_SVXSTR_GRDT",
+ "RID_SVXSTR_HATCH",
+ "RID_SVXSTR_BMP",
+ "RID_SVXSTR_DASH",
+ "RID_SVXSTR_LEND",
+ "RID_SVXSTR_TRASNGR",
+ # other places doing calculations
+ "RID_SVXSTR_DEPTH",
+ "RID_SUBSETSTR_",
+ "ANALYSIS_",
+ "FLD_DOCINFO_CHANGE",
+ "FLD_EU_",
+ "FLD_INPUT_",
+ "FLD_PAGEREF_",
+ "FLD_STAT_",
+ "FMT_AUTHOR_",
+ "FMT_CHAPTER_",
+ "FMT_DBFLD_",
+ "FMT_FF_",
+ "FMT_GETVAR_",
+ "FMT_MARK_",
+ "FMT_REF_",
+ "FMT_SETVAR_",
+ "STR_AUTH_FIELD_ADDRESS_",
+ "STR_AUTH_TYPE_",
+ "STR_AUTOFMTREDL_",
+ "STR_CONTENT_TYPE_",
+ "STR_UPDATE_ALL",
+ "STR_UPDATE_INDEX",
+ "STR_UPDATE_LINK",
+ "BMP_PLACEHOLDER_",
+ "STR_RPT_HELP_",
+ "STR_TEMPLATE_NAME",
+ "UID_BRWEVT_",
+ "HID_EVT_",
+ "HID_PROP_",
+ "STR_VOBJ_MODE_",
+ "STR_COND_",
+ "SCSTR_CONTENT_",
+ "DATE_FUNCDESC_",
+ "DATE_FUNCNAME_",
+ "DATE_DEFFUNCNAME_",
+ "PRICING_DEFFUNCNAME_",
+ "PRICING_FUNCDESC_",
+ "PRICING_FUNCNAME_",
+ "STR_ItemValCAPTION",
+ "STR_ItemValCIRC",
+ "STR_ItemValEDGE",
+ "STR_ItemValFITTOSIZE",
+ "STR_ItemValMEASURE_",
+ "STR_ItemValMEASURETEXT_",
+ "STR_ItemValTEXTANI_",
+ "STR_ItemValTEXTHADJ",
+ "STR_ItemValTEXTVADJ",
+ "RID_SVXITEMS_VERJUST",
+ "RID_SVXITEMS_ORI",
+ "RID_SVXITEMS_JUSTMETHOD",
+ "RID_SVXITEMS_HORJUST",
+ "MM_PART",
+ ])
+
+
+def in_exclusion_set( a ):
+ for f in exclusionSet:
+ if a.startswith(f):
+ return True;
+ return False;
+
+
+# Hack to turn off unicode decoding errors, which sometimes happens in the output and I really don't
+# care
+import codecs
+def strict_handler(exception):
+ return u"", exception.end
+codecs.register_error("strict", strict_handler)
+
+# find defines, excluding the externals folder
+a = subprocess.Popen("git grep -hP '^#define\\s+\\w\\w\\w\\w+\\s*' -- \"[!e][!x][!t]*\" | sort -u", stdout=subprocess.PIPE, shell=True, encoding='UTF-8')
+
+name_re = re.compile(r"#define\s+(\w+)")
+with a.stdout as txt:
+ for line in txt:
+ idName = name_re.match(str(line)).group(1)
+ if idName.startswith("INCLUDED_"): continue
+ # the various _START and _END constants are normally unused outside of the .hrc and .src files, and that's fine
+ if idName.endswith("_START"): continue
+ if idName.endswith("_BEGIN"): continue
+ if idName.endswith("_END"): continue
+ if idName == "RID_SVX_FIRSTFREE": continue
+ if idName == "": continue
+ if idName.startswith("__com"): continue # these are the include/header macros for the UNO stuff
+ if in_exclusion_set(idName): continue
+ # search for the constant
+ b = subprocess.Popen(["git", "grep", "-w", idName], stdout=subprocess.PIPE, encoding='UTF-8')
+ found_reason_to_exclude = False
+ with b.stdout as txt2:
+ cnt = 0
+ for line2 in txt2:
+ line2 = line2.strip() # otherwise the comparisons below will not work
+ # ignore if/undef magic, does not indicate an actual use (most of the time)
+ if "ifdef" in line2: continue
+ if "undef" in line2: continue
+ # ignore commented out code
+ if line2.startswith("//"): continue
+ if line2.startswith("/*"): continue
+ # check if we found one in actual code
+ if idName.startswith("SID_"):
+ if not ".hrc:" in line2 and not ".src:" in line2 and not ".sdi:" in line2: found_reason_to_exclude = True
+ else:
+ if not ".hrc:" in line2 and not ".src:" in line2: found_reason_to_exclude = True
+ if idName.startswith("RID_"):
+ # is the constant being used as an identifier by entries in .src files?
+ if ".src:" in line2 and "Identifier = " in line2: found_reason_to_exclude = True
+ # is the constant being used by the property controller extension or reportdesigner inspection,
+ # which use macros to declare constants, hiding them from a search
+ if "extensions/source/propctrlr" in line2: found_reason_to_exclude = True
+ if "reportdesign/source/ui/inspection/inspection.src" in line2: found_reason_to_exclude = True
+ if idName.startswith("HID_"):
+ # is the constant being used as an identifier by entries in .src files
+ if ".src:" in line2 and "HelpId = " in line2: found_reason_to_exclude = True
+ # is it being used as a constant in an ItemList in .src files?
+ if ".src:" in line2 and (";> ;" in line2 or "; >;" in line2): found_reason_to_exclude = True
+ # these are used in calculations in other .hrc files
+ if "sw/inc/rcid.hrc:" in line2: found_reason_to_exclude = True
+ # calculations
+ if "sw/source/uibase/inc/ribbar.hrc:" in line2 and "ST_" in idName: found_reason_to_exclude = True
+ if "sw/source/uibase/inc/ribbar.hrc:" in line2 and "STR_IMGBTN_" in idName: found_reason_to_exclude = True
+ if "sw/source/core/undo/undo.hrc:" in line2: found_reason_to_exclude = True
+ if "sw/inc/poolfmt.hrc:" in line2: found_reason_to_exclude = True
+ # used via a macro that hides them from search
+ if "dbaccess/" in line2 and idName.startswith("PROPERTY_ID_"): found_reason_to_exclude = True
+ if "reportdesign/" in line2 and idName.startswith("HID_RPT_PROP_"): found_reason_to_exclude = True
+ if "reportdesign/" in line2 and idName.startswith("RID_STR_"): found_reason_to_exclude = True
+ if "forms/" in line2 and idName.startswith("PROPERTY_"): found_reason_to_exclude = True
+ if "svx/source/tbxctrls/extrusioncontrols.hrc:" in line2 and idName.startswith("DIRECTION_"): found_reason_to_exclude = True
+ if "svx/source/tbxctrls/extrusioncontrols.hrc:" in line2 and idName.startswith("FROM_"): found_reason_to_exclude = True
+ # if we see more than a few lines then it's probably one of the BASE/START/BEGIN things
+ cnt = cnt + 1
+ if cnt > 2: found_reason_to_exclude = True
+ if not found_reason_to_exclude:
+ print(idName)
+ # otherwise the previous line of output will be incorrectly mixed into the below git output, because of buffering
+ sys.stdout.flush()
+ # search again, so we log the location and filename of stuff we want to remove
+ subprocess.call(["git", "grep", "-wn", idName])
+
diff --git a/bin/find-unused-sid-commands.py b/bin/find-unused-sid-commands.py
new file mode 100755
index 000000000..7cdf0cd3b
--- /dev/null
+++ b/bin/find-unused-sid-commands.py
@@ -0,0 +1,53 @@
+#!/usr/bin/python
+#
+# Find potentially unused UNO command entries in SDI files.
+#
+# Note that this is not foolproof, some extra checking is required because some command names might be
+# constructed at runtime.
+#
+
+import subprocess
+
+# search for entries in .sdi files that declare UNO/SID commands
+a = subprocess.Popen(r"git grep -P '^\s*\w+Item\s+\w+\s+SID_\w+$' -- *.sdi", stdout=subprocess.PIPE, shell=True)
+
+# parse out the UNO command names
+commandSet = list()
+with a.stdout as txt:
+ for line in txt:
+ line = line.strip()
+ idx1 = line.find(" ")
+ idx2 = line.find(" ", idx1 + 1)
+ commandName = line[idx1+1 : idx2].strip()
+ sidName = line[idx2+1:].strip()
+ commandSet.append((commandName,sidName))
+
+# now check to see if that UNO command is called anywhere in the codebase.
+for pair in commandSet:
+ commandName = pair[0]
+ sidName = pair[1]
+
+ # check to see if that UNO command is called anywhere in the codebase.
+ a = subprocess.Popen("git grep -wFn '.uno:" + commandName + "'", stdout=subprocess.PIPE, shell=True)
+ cnt = 0
+ with a.stdout as txt2:
+ for line2 in txt2:
+ cnt = cnt + 1
+ if cnt > 0: continue
+
+ # check to see if the SID is used programmatically
+ foundLines = ""
+ a = subprocess.Popen("git grep -wn " + sidName, stdout=subprocess.PIPE, shell=True)
+ with a.stdout as txt2:
+ for line2 in txt2:
+ foundLines = foundLines + line2
+ if foundLines.find("ExecuteList") != -1: continue
+ if foundLines.find("GetDispatcher()->Execute") != -1: continue
+ if foundLines.find("ExecuteScenarioSlot") != -1: continue
+ # TODO not sure about this, but let's tackle the easy ones first
+ if foundLines.find("Invalidate(") != -1: continue
+
+ # dump any lines that contain the SID, so we can eyeball the results
+ print("remove: " + commandName)
+ print(foundLines)
+ print("----------------------------------------------------------------------------")
diff --git a/bin/find-unused-typedefs.py b/bin/find-unused-typedefs.py
new file mode 100755
index 000000000..0fd96749c
--- /dev/null
+++ b/bin/find-unused-typedefs.py
@@ -0,0 +1,36 @@
+#!/usr/bin/python3
+
+import subprocess
+
+# find typedefs, excluding the externals folder
+a = subprocess.Popen("git grep -P 'typedef\\s+.+\\s+\\w+;' -- \"[!e][!x][!t]*\"", stdout=subprocess.PIPE, shell=True)
+
+# parse out the typedef names
+typedefSet = set()
+with a.stdout as txt:
+ for line in txt:
+ idx2 = line.rfind(b";")
+ idx1 = line.rfind(b" ", 0, idx2)
+ typedefName = line[idx1+1 : idx2]
+ if typedefName.startswith(b"*"):
+ typedefName = typedefName[1:]
+ # ignore anything less than 5 characters, it's probably a parsing error
+ if len(typedefName) < 5: continue
+ typedefSet.add(typedefName)
+
+for typedefName in sorted(typedefSet):
+ print(b"checking: " + typedefName)
+ a = subprocess.Popen(["git", "grep", "-wn", typedefName], stdout=subprocess.PIPE)
+ foundLine2 = b""
+ cnt = 0
+ with a.stdout as txt2:
+ for line2 in txt2:
+ cnt = cnt + 1
+ foundLine2 += line2
+ if cnt > 2: break
+ a.kill()
+ if cnt == 1:
+ print(b"remove: " + foundLine2)
+ elif cnt == 2:
+ print(b"inline: " + foundLine2)
+
diff --git a/bin/find-unusedheaders.py b/bin/find-unusedheaders.py
new file mode 100755
index 000000000..7ca9bea4b
--- /dev/null
+++ b/bin/find-unusedheaders.py
@@ -0,0 +1,48 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+"""
+Find dirs in:
+workdir/Dep/CObject
+workdir/Dep/CxxObject
+
+Concat these files and compare them with the output of
+`git ls-tree HEAD -r --name-only` and report files in the git ls-tree that aren't in the first.
+"""
+
+import os
+import subprocess
+
+
+def get_files_dict_recursively(directory):
+ data = {}
+ for root, _, files in os.walk(directory, topdown=False):
+ for f in files:
+ basename = os.path.splitext(f)[0]
+ data[basename] = os.path.join(root, f)
+ return data
+
+
+def main():
+ data = {}
+ for d in ('workdir/Dep/CObject', 'workdir/Dep/CxxObject'):
+ tmp = get_files_dict_recursively(d)
+ data.update(tmp)
+
+ gitfiles = subprocess.check_output(['git', 'ls-tree', 'HEAD', '-r', '--name-only']).decode('utf-8').split('\n')
+
+ for f in gitfiles:
+ ext = os.path.splitext(f)[1]
+ if ext[1:] in ('c', 'cxx', 'h', 'hxx'):
+ tmp = os.path.basename(f)
+ tmp = os.path.splitext(tmp)[0]
+ if tmp not in data:
+ print(f)
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/fixincludeguards.sh b/bin/fixincludeguards.sh
new file mode 100755
index 000000000..5e05e9442
--- /dev/null
+++ b/bin/fixincludeguards.sh
@@ -0,0 +1,85 @@
+#!/usr/bin/env bash
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# corrects include guards for hxx/h files automatically by its path.
+
+# Usage:
+# a) fixincludeguards.sh header.hxx
+# b) find . -name *.hxx -or -name *.h | xargs bash ./bin/fixincludeguards.sh
+
+# TODO: This doesn't fix wrong #endif comments, like:
+# #ifndef FOO_BAR_HXX
+# #define FOO_BAR_HXX
+# ...
+# #endif // OTHER_BAR_HXX
+
+# TODO: Make this portable. As it is now, it likely only works on Linux, or
+# other platforms with a purely GNU toolset.
+
+guard_prefix="INCLUDED_"
+
+for fn in "$@"; do
+ # remove leading ./, if invoked with find
+ fn=`echo "$fn" | sed 's/^.\///g'`
+
+ # global header in include/ top level dir:
+ # drop the project dir
+ fnfixed=`echo $fn | sed 's,include/,,g'`
+ # add examples prefix to headers in odk/examples
+ fnfixed=`echo $fnfixed | sed 's,odk/examples/\(cpp\|DevelopersGuide\|OLE\)/,examples_,g'`
+
+ # convert file path to header guard
+ guard=`echo "$fnfixed" | sed 's/[\/\.-]/_/g' | tr 'a-z' 'A-Z'`
+
+ if [ aa"`git grep -h "^\s*#ifndef ${guard_prefix}$guard" "$fn" | wc -l`" != "aa1" ] ||
+ [ aa"`git grep -h "^\s*#define ${guard_prefix}$guard" "$fn" | wc -l`" != "aa1" ]; then
+
+ # pattern which identifies guards, common one look like
+ # _MODULE_FILE_HXX, FILE_H, FILE_INC
+ pattern=".*\(_HXX\|_H\|_INC\|_hxx\|_h\|_inc\)"
+
+ ### extract guard definition
+ # head to take only the first match
+ old_guard=`git grep -h "#ifndef $pattern" "$fn" | head -n1 | sed "s/.*\s\($pattern.*\)/\1/"`
+
+ if [ aa"$old_guard" == aa"" ]; then
+ echo -e "$fn: \e[00;31mwarning:\e[00m guard not detectable"
+ continue
+ fi
+
+
+ if [ aa"`git grep -w "$old_guard" | cut -d ':' -f1 | sort -u | wc -l `" != aa"1" ]; then
+ echo -e "$fn: \e[00;31mwarning:\e[00m $old_guard guard definition used in other files"
+ continue
+ fi
+
+ ### skip some special files...
+
+ # skip this comphelper stuff:
+ # INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_14
+ if [ aa"INCLUDED_COMPHELPER_IMPLBASE_" == aa"`echo $old_guard | sed "s/VAR_HXX_[0-9]\+//g"`" ]; then
+ continue
+ fi
+
+ # skip files like xmloff/source/forms/elementimport_impl.hxx
+ if [ aa"`git grep -h "#error.*directly" "$fn" | wc -l`" != "aa0" ]; then
+ continue
+ fi
+
+
+ ### replace old guard with new scheme guard
+ echo "$fn: $old_guard"
+
+ # includes leading whitespace removal
+ sed -i "s/\s*${old_guard}/ ${guard_prefix}${guard}/g" "$fn"
+
+
+ ### clean up endif
+ sed -i "s/#endif\s*\(\/\/\|\/\*\)\s*\#\?\(ifndef\)\?\s*!\?\s*\(${guard_prefix}${guard}\).*/#endif \/\/ \3/g" "$fn"
+
+ fi
+done
diff --git a/bin/flat-odf-cleanup.py b/bin/flat-odf-cleanup.py
new file mode 100644
index 000000000..8d4c176af
--- /dev/null
+++ b/bin/flat-odf-cleanup.py
@@ -0,0 +1,311 @@
+#!/usr/bin/python3
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import sys
+# sadly need lxml because the python one doesn't preserve namespace prefixes
+# and type-detection looks for the string "office:document"
+from lxml import etree as ET
+#import xml.etree.ElementTree as ET
+
+def get_used_p_styles(root):
+ elementnames = [
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}p",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}h",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}alphabetical-index-entry-template",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}bibliography-entry-template",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}illustration-index-entry-template",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-source-style",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}object-index-entry-template",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}table-index-entry-template",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}table-of-content-entry-template",
+ ".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}user-index-entry-template",
+ ]
+
+ # document content
+ ps = sum([root.findall(e) for e in elementnames], [])
+ usedpstyles = set()
+ usedcondstyles = set()
+ for p in ps:
+ usedpstyles.add(p.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name"))
+ if p.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}cond-style-name"):
+ usedcondstyles.add(p.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}cond-style-name"))
+ if p.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}class-names"):
+ for style in p.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}class-names").split(" "):
+ usedpstyles.add(style)
+ for shape in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:draw:1.0}text-style-name]"):
+ usedpstyles.add(shape.get("{urn:oasis:names:tc:opendocument:xmlns:draw:1.0}text-style-name"))
+ for tabletemplate in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:table:1.0}paragraph-style-name]"):
+ usedpstyles.add(tabletemplate.get("{urn:oasis:names:tc:opendocument:xmlns:table:1.0}paragraph-style-name"))
+ for page in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}register-truth-ref-style-name]"):
+ usedpstyles.add(page.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}register-truth-ref-style-name"))
+ for form in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:form:1.0}text-style-name]"):
+ usedpstyles.add(form.get("{urn:oasis:names:tc:opendocument:xmlns:form:1.0}text-style-name"))
+ # conditional styles
+ for condstyle in usedcondstyles:
+ for map_ in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}family='paragraph'][@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name='" + condstyle + "']/{urn:oasis:names:tc:opendocument:xmlns:style:1.0}map"):
+ usedpstyles.add(map_.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}apply-style-name"))
+ # other styles
+ for notesconfig in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}default-style-name]"):
+ usedpstyles.add(notesconfig.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}default-style-name"))
+ return usedpstyles
+
+def add_parent_styles(usedstyles, styles):
+ size = -1
+ while size != len(usedstyles):
+ size = len(usedstyles)
+ for style in styles:
+ if style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedstyles:
+ if style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}parent-style-name"):
+ usedstyles.add(style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}parent-style-name"))
+ # only for paragraph styles and master-pages
+ if style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}next-style-name"):
+ usedstyles.add(style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}next-style-name"))
+
+def remove_unused_styles(root, usedstyles, styles, name):
+ for style in styles:
+ print(style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ if not(style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedstyles):
+ print("removing unused " + name + " " + style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ # it is really dumb that there is no parent pointer in dom
+ try:
+ root.find(".//{urn:oasis:names:tc:opendocument:xmlns:office:1.0}automatic-styles").remove(style)
+ except ValueError:
+ root.find(".//{urn:oasis:names:tc:opendocument:xmlns:office:1.0}styles").remove(style)
+
+def collect_all_attribute(usedstyles, attribute):
+ for element in root.findall(".//*[@" + attribute + "]"):
+ usedstyles.add(element.get(attribute))
+
+def remove_unused(root):
+ # 1) find all elements that may reference page styles - this gets rid of some paragaraphs
+ usedpstyles = get_used_p_styles(root)
+ print(usedpstyles)
+ usedtstyles = set()
+ tables = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:table:1.0}table")
+ print(tables)
+ for table in tables:
+ usedtstyles.add(table.get("{urn:oasis:names:tc:opendocument:xmlns:table:1.0}style-name"))
+ pstyles = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}family='paragraph']")
+ tstyles = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}family='table']")
+ usedmasterpages = {"Standard"} # assume this is the default on page 1
+ # only automatic styles may have page breaks in LO, so no need to chase parents or nexts
+ for pstyle in pstyles:
+ print(pstyle.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ if pstyle.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedpstyles:
+ usedmasterpages.add(pstyle.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}master-page-name"))
+ for tstyle in tstyles:
+ if tstyle.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedtstyles:
+ usedmasterpages.add(tstyle.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}master-page-name"))
+ for node in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}master-page-name]"):
+ usedmasterpages.add(node.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}master-page-name"))
+ for node in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:draw:1.0}master-page-name]"):
+ usedmasterpages.add(node.get("{urn:oasis:names:tc:opendocument:xmlns:draw:1.0}master-page-name"))
+ print(usedmasterpages)
+ # iterate parent/next until no more masterpage is added
+ size = -1
+ while size != len(usedmasterpages):
+ size = len(usedmasterpages)
+ for mp in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}master-page"):
+ if mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedmasterpages:
+ if mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}parent-style-name"):
+ usedmasterpages.add(mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}parent-style-name"))
+ if mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}next-style-name"):
+ usedmasterpages.add(mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}next-style-name"))
+ # remove unused masterpages
+ for mp in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}master-page"):
+ if not(mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedmasterpages):
+ print("removing unused master page " + mp.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ # there is no way to get the parent element???
+ root.find(".//{urn:oasis:names:tc:opendocument:xmlns:office:1.0}master-styles").remove(mp)
+
+ # 2) remove unused paragraph styles
+ usedpstyles = get_used_p_styles(root)
+
+ add_parent_styles(usedpstyles, pstyles)
+ remove_unused_styles(root, usedpstyles, pstyles, "paragraph style")
+
+ # 3) unused list styles - keep referenced from still used paragraph styles
+ usedliststyles = set()
+ for style in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}list-style-name]"):
+ usedliststyles.add(style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}list-style-name)"))
+ for list_ in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}list[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name]"):
+ usedliststyles.add(list_.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name"))
+ for listitem in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}list-item[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-override]"):
+ usedliststyles.add(listitem.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-override"))
+ for numpara in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}numbered-paragraph[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name]"):
+ usedliststyles.add(list_.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name"))
+ # ignore ones that are children of style:graphic-properties, those must be handled as the containing style
+ # there is no inheritance for these
+ liststyles = root.findall("./*/{urn:oasis:names:tc:opendocument:xmlns:text:1.0}list-style")
+ remove_unused_styles(root, usedliststyles, liststyles, "list style")
+
+ # 4) unused text styles
+ usedtextstyles = set()
+ usedsectionstyles = set()
+ usedrubystyles = set()
+
+ sections = {
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}alphabetical-index",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}bibliography",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}illustration-index",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-title",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}object-index",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}section",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}table-of-content",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}table-index",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}user-index",
+ }
+ texts = {
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}a",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-bibliography",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-chapter",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-link-end",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-link-start",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-page-number",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-span",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-tab-stop",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-entry-text",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}index-title-template",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}linenumbering-configuration",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}list-level-style-number",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}list-level-style-bullet",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}outline-level-style",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}ruby-text",
+ "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}span",
+ }
+ for element in root.findall(".//*[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name]"):
+ style = element.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}style-name")
+ if element.tag == "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}ruby":
+ usedrubystyles.add(style)
+ elif element.tag in sections:
+ usedsectionstyles.add(style)
+ elif element.tag in texts:
+ usedtextstyles.add(style)
+
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style-name")
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:style:1.0}leader-text-style")
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:style:1.0}text-line-through-text-style")
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}visited-style-name")
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}main-entry-style-name")
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}citation-style-name")
+ collect_all_attribute(usedtextstyles, "{urn:oasis:names:tc:opendocument:xmlns:text:1.0}citation-body-style-name")
+ for span in root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:text:1.0}span[@{urn:oasis:names:tc:opendocument:xmlns:text:1.0}class-names]"):
+ for style in span.get("{urn:oasis:names:tc:opendocument:xmlns:text:1.0}class-names").split(" "):
+ usedtextstyles.add(style)
+ textstyles = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}family='text']")
+ add_parent_styles(usedtextstyles, textstyles)
+ remove_unused_styles(root, usedtextstyles, textstyles, "text style")
+
+ # 5) unused ruby styles - can't have parents?
+ rubystyles = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}family='ruby']")
+ remove_unused_styles(root, usedrubystyles, rubystyles, "ruby style")
+
+ # 6) unused section styles - can't have parents?
+ sectionstyles = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style[@{urn:oasis:names:tc:opendocument:xmlns:style:1.0}family='section']")
+ remove_unused_styles(root, usedsectionstyles, sectionstyles, "section style")
+
+ # TODO 6 other styles
+
+ # 13) unused font-face-decls
+ usedfonts = set()
+ collect_all_attribute(usedfonts, "{urn:oasis:names:tc:opendocument:xmlns:style:1.0}font-name")
+ collect_all_attribute(usedfonts, "{urn:oasis:names:tc:opendocument:xmlns:style:1.0}font-name-asian")
+ collect_all_attribute(usedfonts, "{urn:oasis:names:tc:opendocument:xmlns:style:1.0}font-name-complex")
+ fonts = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}font-face")
+ for font in fonts:
+ if not(font.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name") in usedfonts):
+ print("removing unused font-face " + font.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ root.find(".//{urn:oasis:names:tc:opendocument:xmlns:office:1.0}font-face-decls").remove(font)
+
+ # 14) remove rsid attributes
+ styles = root.findall(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}style")
+ for style in styles:
+ tp = style.find(".//{urn:oasis:names:tc:opendocument:xmlns:style:1.0}text-properties")
+ if tp is not None:
+ if "{http://openoffice.org/2009/office}rsid" in tp.attrib:
+ print("removing rsid from " + style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ del tp.attrib["{http://openoffice.org/2009/office}rsid"]
+ if "{http://openoffice.org/2009/office}paragraph-rsid" in tp.attrib:
+ print("removing paragraph-rsid from " + style.get("{urn:oasis:names:tc:opendocument:xmlns:style:1.0}name"))
+ del tp.attrib["{http://openoffice.org/2009/office}paragraph-rsid"]
+
+ # remove office:settings
+ settings = root.find(".//{urn:oasis:names:tc:opendocument:xmlns:office:1.0}settings")
+ if settings is not None:
+ root.remove(settings)
+
+ # scripts are almost never needed
+ scripts = root.find(".//{urn:oasis:names:tc:opendocument:xmlns:office:1.0}scripts")
+ if scripts is not None:
+ root.remove(scripts)
+
+ # TODO: replace embedded image with some tiny one
+ # TODO: perhaps replace text with xxx (optionally)?
+
+if __name__ == "__main__":
+ infile = sys.argv[1]
+ outfile = sys.argv[2]
+
+ dom = ET.parse(infile)
+ root = dom.getroot()
+
+ remove_unused(root)
+
+ # write output
+ dom.write(outfile, encoding='utf-8', xml_declaration=True)
+
+ """
+ TODO
+ chart:style-name
+ -> chart
+ db:style-name
+ -> table-column, table
+ db:default-row-style-name
+ -> table-row
+ db:default-cell-style-name
+ -> cell
+ draw:style-name
+ -> graphic
+ -> drawing-page (only draw:page, presentation:notes, style:handout-master, style:master-page)
+ presentation:style-name
+ -> presentation
+ style:data-style-name
+ -> data style
+ presentation:presentation-page-layout-name
+ -> presentation-page-layout
+ style:page-layout-name
+ -> "page layout style" ?
+ style:percentage-data-style-name
+ -> data style
+ table:default-cell-style-name
+ -> cell
+
+ draw:class-names
+ -> graphic
+ presentation:class-names
+ -> presentation
+ draw:stroke-dash-names
+ -> draw:stroke-dash
+
+ draw:fill-gradient-name
+ -> gradient
+ draw:fill-hatch-name
+ -> hatch
+ draw:fill-image-name
+ -> bitmap
+ draw:opacity-name
+ -> gradient
+ draw:stroke-dash
+ -> draw:stroke-dash
+ draw:marker-start
+ draw:marker-end
+ """
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/fuzzfiles b/bin/fuzzfiles
new file mode 100755
index 000000000..ed0432d23
--- /dev/null
+++ b/bin/fuzzfiles
@@ -0,0 +1,41 @@
+#! /bin/bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+#check that zzuf is installed
+hash zzuf &> /dev/null
+if [ $? -eq 1 ];then
+ echo >&2 "zzuf not found. Please install and/or fix the PATH environment variable. Aborting"
+ exit -1
+fi
+
+#check that file(s) to fuzz are mentioned
+if [[ $# -eq 0 ]]; then
+ echo "Usage: fuzzfiles.sh <list of seed files to fuzz>"
+ echo "The generated fuzzed files will be output to the current working directory"
+ echo "The fuzzed files will be named XYZ-ratio-NNNN where:"
+ echo -e "\tXYZ: the original file name"
+ echo -e "\tratio: the fuzz ratio (what % of bytes were fuzzed)"
+ echo -e "\tNNNN: the mutation # for that file and ratio combo"
+ exit -1
+fi
+
+for file in $@; do
+ if [ -d $file ]; then
+ echo "$file is a directory. Only files are allowed"
+ elif [ -e $file ]; then
+ basename=${file##*/}
+ #Sequence from 0.001 to 0.5
+ for ratio in `seq -w 1 2 500 | sed -e 's/^/0./'`; do
+ echo "Fuzzing $file with ratio $ratio"
+ for i in {1..1000}; do
+ zzuf -r $ratio < $file > "$basename-$ratio-$i"
+ done #end of for i in {1..
+ done #end of for ratio in ...
+ fi #end if of file validity check
+done #end for file in $@
diff --git a/bin/gbuild-to-ide b/bin/gbuild-to-ide
new file mode 100755
index 000000000..b56cff858
--- /dev/null
+++ b/bin/gbuild-to-ide
@@ -0,0 +1,1919 @@
+#! /usr/bin/env python3
+# -*- Mode: python; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import argparse
+import ntpath
+import os
+import os.path
+import shutil
+import re
+import sys
+import uuid
+import json
+import xml.etree.ElementTree as ET
+import xml.dom.minidom as minidom
+import traceback
+import subprocess
+from sys import platform
+import collections
+import urllib.parse
+
+class GbuildLinkTarget:
+ def __init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs):
+ (self.name, self.location, self.include, self.include_sys, self.defs, self.cxxobjects, self.cxxflags, self.cobjects, self.cflags, self.linked_libs) = (
+ name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs)
+
+ def short_name(self):
+ return self.name
+
+ def is_empty(self):
+ return not self.include and not self.defs and not self.cxxobjects and not self.cobjects and not self.linked_libs
+
+ def __str__(self):
+ return '%s at %s with include path: %s, isystem includes: %s, defines: %s, objects: %s, cxxflags: %s, cobjects: %s, cflags: %s and linked libs: %s' % (
+ self.short_name(), self.location, self.include, self.include_sys, self.defs, self.cxxobjects,
+ self.cxxflags, self.cobjects, self.cflags, self.linked_libs)
+
+
+class GbuildLib(GbuildLinkTarget):
+ def __init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs):
+ GbuildLinkTarget.__init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs)
+
+ def short_name(self):
+ """Return the short name of target based on the Library_* makefile name"""
+ return 'Library %s' % self.name
+
+ def target_name(self):
+ return 'Library_%s' % self.name
+
+ def library_name(self):
+ return self.name
+
+class GbuildTest(GbuildLinkTarget):
+ def __init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs):
+ GbuildLinkTarget.__init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs)
+
+ def short_name(self):
+ """Return the short name of target based n the CppunitTest_* makefile names"""
+ return 'CppunitTest %s' % self.name
+
+ def target_name(self):
+ return 'CppunitTest_%s' % self.name
+
+class GbuildExe(GbuildLinkTarget):
+ def __init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs):
+ GbuildLinkTarget.__init__(self, name, location, include, include_sys, defs, cxxobjects, cxxflags, cobjects, cflags, linked_libs)
+
+ def short_name(self):
+ """Return the short name of target based on the Executable_* makefile name"""
+ return 'Executable %s' % self.name
+
+ def target_name(self):
+ return 'Executable_%s' % self.name
+
+
+class GbuildParser:
+ """Main data model object.
+
+ Attributes:
+ target_by_path : dict[path:string, set(target)]
+ where target is one of the GbuildLinkTarget subclasses
+ target_by_location : dict[path:string, set(target)]
+ where target is one of the GbuildLinkTarget subclasses
+ """
+ def __init__(self, makecmd):
+ self.makecmd = makecmd
+ self.binpath = os.path.dirname(os.environ['GPERF']) # woha, this is quite a hack
+ (self.srcdir, self.builddir, self.instdir, self.workdir) = (os.environ['SRCDIR'], os.environ['BUILDDIR'], os.environ['INSTDIR'], os.environ['WORKDIR'])
+ (self.libs, self.exes, self.tests, self.modulenamelist) = ([], [], [], [])
+ (self.target_by_path, self.target_by_location) = ({}, {})
+
+ includepattern = re.compile(r'-I(\S+)')
+ isystempattern = re.compile(r'-isystem\s*(\S+)')
+ warningpattern = re.compile(r'-W\S+')
+ libpattern = re.compile(r'Library_(.*)\.mk')
+ exepattern = re.compile(r'Executable_(.*)\.mk')
+ testpattern = re.compile(r'CppunitTest_(.*)\.mk')
+
+ @staticmethod
+ def __split_includes(includes):
+ foundisystem = GbuildParser.isystempattern.findall(includes)
+ foundincludes = [includeswitch.strip() for includeswitch in GbuildParser.includepattern.findall(includes) if
+ len(includeswitch) > 2]
+ return (foundincludes, foundisystem)
+
+ @staticmethod
+ def __split_objs(objsline):
+ return [obj for obj in objsline.strip().split(' ') if len(obj) > 0 and obj != 'CXXOBJECTS' and obj != 'COBJECTS' and obj != '+=']
+
+ @staticmethod
+ def __split_defs(defsline):
+ defs = {}
+ alldefs = [defswitch.strip() for defswitch in defsline.strip().lstrip('-D').split(' -D') if len(defswitch) > 2]
+ for d in alldefs:
+ dparts = d.split(' -U')
+ """after dparts.pop(0), dparts will contain only undefs"""
+ defparts = dparts.pop(0).strip().split('=')
+ if len(defparts) == 1:
+ defparts.append(None)
+ defs[defparts[0]] = defparts[1]
+ """Drop undefed items (if any) from previous defs"""
+ for u in dparts:
+ defs.pop(u.strip(), '')
+ defs["LIBO_INTERNAL_ONLY"] = None
+ return defs
+
+ @staticmethod
+ def __split_flags(flagsline, flagslineappend):
+ return [cxxflag.strip() for cxxflag in GbuildParser.warningpattern.sub('', '%s %s' % (flagsline, flagslineappend)).split(' ') if len(cxxflag) > 1]
+
+ @staticmethod
+ def __lib_from_json(json):
+ (foundincludes, foundisystem) = GbuildParser.__split_includes(json['INCLUDE'])
+ return GbuildLib(
+ GbuildParser.libpattern.match(os.path.basename(json['MAKEFILE'])).group(1),
+ os.path.dirname(json['MAKEFILE']),
+ foundincludes,
+ foundisystem,
+ GbuildParser.__split_defs(json['DEFS']),
+ GbuildParser.__split_objs(json['CXXOBJECTS']),
+ GbuildParser.__split_flags(json['CXXFLAGS'], json['CXXFLAGSAPPEND']),
+ GbuildParser.__split_objs(json['COBJECTS']),
+ GbuildParser.__split_flags(json['CFLAGS'], json['CFLAGSAPPEND']),
+ json['LINKED_LIBS'].strip().split(' '))
+
+ @staticmethod
+ def __test_from_json(json):
+ (foundincludes, foundisystem) = GbuildParser.__split_includes(json['INCLUDE'])
+ testname_match = GbuildParser.testpattern.match(os.path.basename(json['MAKEFILE']))
+
+ # Workaround strange writer test makefile setup
+ if testname_match is None:
+ testname = "StrangeWriterMakefiles"
+ else:
+ testname = testname_match.group(1)
+
+ return GbuildTest(
+ testname,
+ os.path.dirname(json['MAKEFILE']),
+ foundincludes,
+ foundisystem,
+ GbuildParser.__split_defs(json['DEFS']),
+ GbuildParser.__split_objs(json['CXXOBJECTS']),
+ GbuildParser.__split_flags(json['CXXFLAGS'], json['CXXFLAGSAPPEND']),
+ GbuildParser.__split_objs(json['COBJECTS']),
+ GbuildParser.__split_flags(json['CFLAGS'], json['CFLAGSAPPEND']),
+ json['LINKED_LIBS'].strip().split(' '))
+
+ @staticmethod
+ def __exe_from_json(json):
+ (foundincludes, foundisystem) = GbuildParser.__split_includes(json['INCLUDE'])
+ return GbuildExe(
+ GbuildParser.exepattern.match(os.path.basename(json['MAKEFILE'])).group(1),
+ os.path.dirname(json['MAKEFILE']),
+ foundincludes,
+ foundisystem,
+ GbuildParser.__split_defs(json['DEFS']),
+ GbuildParser.__split_objs(json['CXXOBJECTS']),
+ GbuildParser.__split_flags(json['CXXFLAGS'], json['CXXFLAGSAPPEND']),
+ GbuildParser.__split_objs(json['COBJECTS']),
+ GbuildParser.__split_flags(json['CFLAGS'], json['CFLAGSAPPEND']),
+ json['LINKED_LIBS'].strip().split(' '))
+
+ def parse(self):
+ for jsonfilename in os.listdir(os.path.join(self.workdir, 'GbuildToJson', 'Library')):
+ with open(os.path.join(self.workdir, 'GbuildToJson', 'Library', jsonfilename), 'r') as f:
+ lib = self.__lib_from_json(json.load(f))
+ self.libs.append(lib)
+ for jsonfilename in os.listdir(os.path.join(self.workdir, 'GbuildToJson', 'Executable')):
+ with open(os.path.join(self.workdir, 'GbuildToJson', 'Executable', jsonfilename), 'r') as f:
+ exe = self.__exe_from_json(json.load(f))
+ self.exes.append(exe)
+ for jsonfilename in os.listdir(os.path.join(self.workdir, 'GbuildToJson', 'CppunitTest')):
+ with open(os.path.join(self.workdir, 'GbuildToJson', 'CppunitTest', jsonfilename), 'r') as f:
+ test = self.__test_from_json(json.load(f))
+ self.tests.append(test)
+ for target in set(self.libs) | set(self.exes) | set(self.tests):
+ if target.location not in self.target_by_location:
+ self.target_by_location[target.location] = set()
+ self.target_by_location[target.location] |= set([target])
+ for cxx in target.cxxobjects:
+ path = '/'.join(cxx.split('/')[:-1])
+ if path not in self.target_by_path:
+ self.target_by_path[path] = set()
+ self.target_by_path[path] |= set([target])
+ for c in target.cobjects:
+ path = '/'.join(c.split('/')[:-1])
+ if path not in self.target_by_path:
+ self.target_by_path[path] = set()
+ self.target_by_path[path] |= set([target])
+ for location in self.target_by_location:
+ self.modulenamelist.append(os.path.split(location)[1])
+ return self
+
+
+class IdeIntegrationGenerator:
+
+ def __init__(self, gbuildparser, ide):
+ self.gbuildparser = gbuildparser
+ self.ide = ide
+
+ def emit(self):
+ pass
+
+class EclipseCDTIntegrationGenerator(IdeIntegrationGenerator):
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+
+ def create_include_paths(self):
+ for module in self.gbuildparser.modulenamelist:
+ modulepath = os.path.join(self.gbuildparser.builddir, module)
+ includedirfile = open(os.path.join(modulepath, '.eclipsesettingfile'), 'w')
+ modulelibs = []
+ for lib in self.gbuildparser.target_by_path.keys():
+ if lib.startswith(module+'/'):
+ modulelibs.append(lib)
+ include = set()
+ for lib in modulelibs:
+ for target in self.gbuildparser.target_by_path[lib]:
+ include |= set(target.include)
+ includedirfile.write('\n'.join(include))
+ includedirfile.close()
+
+
+ def create_macros(self):
+ for module in self.gbuildparser.modulenamelist:
+ modulepath = os.path.join(self.gbuildparser.builddir, module)
+ macrofile = open(os.path.join(modulepath, '.macros'), 'w')
+ modulelibs = []
+ for lib in self.gbuildparser.target_by_path.keys():
+ if lib.startswith(module+'/'):
+ modulelibs.append(lib)
+ define = []
+ defineset = set()
+ for lib in modulelibs:
+ for target in self.gbuildparser.target_by_path[lib]:
+ for i in target.defs.keys():
+ tmp = str(i) +','+str(target.defs[i])
+ if tmp not in defineset:
+ defineset.add(tmp)
+ macrofile.write('\n'.join(defineset))
+ macrofile.close()
+
+
+ def create_settings_file(self):
+
+ settingsfiletemplate = """\
+<?xml version="1.0" encoding="UTF-8"?>
+<cdtprojectproperties>
+<section name="org.eclipse.cdt.internal.ui.wizards.settingswizards.IncludePaths">
+<language name="C++ Source File">
+
+
+</language>
+<language name="C Source File">
+
+</language>
+<language name="Object File">
+
+</language>
+<language name="Assembly Source File">
+
+</language>
+</section>
+<section name="org.eclipse.cdt.internal.ui.wizards.settingswizards.Macros">
+<language name="C++ Source File">
+
+</language>
+<language name="C Source File">
+
+</language>
+<language name="Object File">
+
+</language>
+<language name="Assembly Source File">
+
+</language>
+</section>
+</cdtprojectproperties>
+"""
+
+ for module in self.gbuildparser.modulenamelist:
+ tempxml = []
+ modulepath = os.path.join(self.gbuildparser.builddir, module)
+
+ settingsfile = open(os.path.join(modulepath, 'eclipsesettingfile.xml'), 'w')
+ settingsfile.write(settingsfiletemplate)
+ settingsfile.close()
+
+ settingsfile = open(os.path.join(modulepath, 'eclipsesettingfile.xml'), 'r')
+ tempxml = settingsfile.readlines()
+ tempinclude = open(os.path.join(modulepath, '.eclipsesettingfile'), 'r')
+ tempmacro = open(os.path.join(modulepath, '.macros'), 'r')
+ for includepath in tempinclude:
+ if includepath[-1:] == "\n":
+ includepath = includepath[:-1]
+ templine = "<includepath>%s</includepath>\n" % includepath
+ tempxml.insert(5, templine)
+
+ for line in tempmacro:
+ macroskeyvalue = line.split(',')
+ macrokey = macroskeyvalue[0]
+ macrovalue = macroskeyvalue[1]
+ if macrovalue[-1:] == "\n":
+ macrovalue = macrovalue[:-1]
+ templine = "<macro><name>%s</name><value>%s</value></macro>\n" %(macrokey, macrovalue)
+ tempxml.insert(-13, templine)
+ tempxml="".join(tempxml)
+ settingsfile.close
+
+ settingsfile = open(os.path.join(modulepath, 'eclipsesettingfile.xml'), 'w')
+ settingsfile.write(tempxml)
+ settingsfile.close()
+ os.remove(os.path.join(modulepath, '.eclipsesettingfile'))
+ os.remove(os.path.join(modulepath, '.macros'))
+
+ def emit(self):
+ self.create_include_paths()
+ self.create_macros()
+ self.create_settings_file()
+
+class CodeliteIntegrationGenerator(IdeIntegrationGenerator):
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+
+ def emit(self):
+ self.create_workspace_file()
+ for module in self.gbuildparser.modulenamelist:
+ self.create_project_file(module)
+ #self.create_project_file('vcl')
+
+ def create_workspace_file(self):
+ root_node = ET.Element('CodeLite_Workspace', Name='libo2', Database='./libo2.tags', Version='10.0.0')
+ for module in self.gbuildparser.modulenamelist:
+ ET.SubElement(root_node, 'Project', Name=module, Path='%s/%s.project' % (module, module), Active='No')
+ build_matrix_node = ET.SubElement(root_node, 'BuildMatrix')
+ workspace_config_node = ET.SubElement(build_matrix_node, 'WorkspaceConfiguration', Name='Debug', Selected='yes')
+ ET.SubElement(workspace_config_node, 'Environment')
+ for module in self.gbuildparser.modulenamelist:
+ ET.SubElement(workspace_config_node, 'Project', Name=module, ConfigName='Debug')
+ workspace_config_node = ET.SubElement(build_matrix_node, 'WorkspaceConfiguration', Name='Release', Selected='yes')
+ ET.SubElement(workspace_config_node, 'Environment')
+ for module in self.gbuildparser.modulenamelist:
+ ET.SubElement(workspace_config_node, 'Project', Name=module, ConfigName='Release')
+
+ self.write_pretty_xml(root_node, os.path.join(self.gbuildparser.builddir, 'libo2.workspace'))
+
+ def create_project_file(self, module_name):
+ root_node = ET.Element('CodeLite_Project', Name=module_name, InternalType='')
+ ET.SubElement(root_node, 'Plugins')
+
+ # add CXX files
+ virtual_dirs = collections.defaultdict(set)
+ for target_path in self.gbuildparser.target_by_path.keys():
+ if target_path.startswith(module_name+'/'):
+ for target in self.gbuildparser.target_by_path[target_path]:
+ for file in target.cxxobjects:
+ relative_file = '/'.join(file.split('/')[1:])
+ path = '/'.join(file.split('/')[1:-1])
+ virtual_dirs[path].add(relative_file + '.cxx')
+ # add HXX files
+ all_libs = set(self.gbuildparser.libs) | set(self.gbuildparser.exes)
+ for lib in all_libs:
+ if lib.name == module_name:
+ for hdir in lib.include:
+ # only want the module-internal ones
+ if hdir.startswith(module_name+'/'):
+ for hf in os.listdir(hdir):
+ if hf.endswith(('.h', '.hxx', '.hpp', '.hrc')):
+ path = '/'.join(hf.split('/')[1:-1])
+ virtual_dirs[path].add(hf)
+ # add HXX files from the root/include/** folders
+ module_include = os.path.join(self.gbuildparser.builddir, 'include', module_name)
+ if os.path.exists(module_include):
+ for hf in os.listdir(module_include):
+ if hf.endswith(('.h', '.hxx', '.hpp', '.hrc')):
+ path = '../include/' + ('/'.join(hf.split('/')[1:-1]))
+ virtual_dirs['include/' + module_name].add('../include/' + module_name + '/' + hf)
+
+ for vd_name in sorted(virtual_dirs.keys()):
+ vd_files = sorted(virtual_dirs[vd_name])
+ parent_node = root_node
+ for subname in vd_name.split('/'):
+ parent_node = ET.SubElement(parent_node, 'VirtualDirectory', Name=subname)
+ for file in vd_files:
+ ET.SubElement(parent_node, 'File', Name=file)
+
+ ET.SubElement(root_node, 'Description')
+ ET.SubElement(root_node, 'Dependencies')
+ ET.SubElement(root_node, 'Dependencies', Name='Debug')
+ ET.SubElement(root_node, 'Dependencies', Name='Release')
+
+ settingstemplate = """\
+ <Settings Type="Dynamic Library">
+ <GlobalSettings>
+ <Compiler Options="" C_Options="" Assembler="">
+ <IncludePath Value="."/>
+ </Compiler>
+ <Linker Options="">
+ <LibraryPath Value="."/>
+ </Linker>
+ <ResourceCompiler Options=""/>
+ </GlobalSettings>
+ <Configuration Name="Debug" CompilerType="clang( based on LLVM 3.5.0 )" DebuggerType="GNU gdb debugger" Type="Dynamic Library" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
+ <Compiler Options="-g" C_Options="-g" Assembler="" Required="yes" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
+ <IncludePath Value="."/>
+ </Compiler>
+ <Linker Options="" Required="yes"/>
+ <ResourceCompiler Options="" Required="no"/>
+ <General OutputFile="" IntermediateDirectory="./Debug" Command="" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="$(IntermediateDirectory)" PauseExecWhenProcTerminates="yes" IsGUIProgram="no" IsEnabled="yes"/>
+ <BuildSystem Name="Default"/>
+ <Environment EnvVarSetName="&lt;Use Defaults&gt;" DbgSetName="&lt;Use Defaults&gt;">
+ <![CDATA[]]>
+ </Environment>
+ <Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
+ <DebuggerSearchPaths/>
+ <PostConnectCommands/>
+ <StartupCommands/>
+ </Debugger>
+ <PreBuild/>
+ <PostBuild/>
+ <CustomBuild Enabled="yes">
+ <RebuildCommand/>
+ <CleanCommand>make %s.clean</CleanCommand>
+ <BuildCommand>make %s.build</BuildCommand>
+ <PreprocessFileCommand/>
+ <SingleFileCommand/>
+ <MakefileGenerationCommand/>
+ <ThirdPartyToolName>None</ThirdPartyToolName>
+ <WorkingDirectory>$(WorkspacePath)</WorkingDirectory>
+ </CustomBuild>
+ <AdditionalRules>
+ <CustomPostBuild/>
+ <CustomPreBuild/>
+ </AdditionalRules>
+ <Completion EnableCpp11="no" EnableCpp14="no">
+ <ClangCmpFlagsC/>
+ <ClangCmpFlags/>
+ <ClangPP/>
+ <SearchPaths/>
+ </Completion>
+ </Configuration>
+ <Configuration Name="Release" CompilerType="clang( based on LLVM 3.5.0 )" DebuggerType="GNU gdb debugger" Type="Dynamic Library" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
+ <Compiler Options="" C_Options="" Assembler="" Required="yes" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
+ <IncludePath Value="."/>
+ </Compiler>
+ <Linker Options="-O2" Required="yes"/>
+ <ResourceCompiler Options="" Required="no"/>
+ <General OutputFile="" IntermediateDirectory="./Release" Command="" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="$(IntermediateDirectory)" PauseExecWhenProcTerminates="yes" IsGUIProgram="no" IsEnabled="yes"/>
+ <BuildSystem Name="Default"/>
+ <Environment EnvVarSetName="&lt;Use Defaults&gt;" DbgSetName="&lt;Use Defaults&gt;">
+ <![CDATA[]]>
+ </Environment>
+ <Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
+ <DebuggerSearchPaths/>
+ <PostConnectCommands/>
+ <StartupCommands/>
+ </Debugger>
+ <PreBuild/>
+ <PostBuild/>
+ <CustomBuild Enabled="yes">
+ <RebuildCommand/>
+ <CleanCommand>make %s.clean</CleanCommand>
+ <BuildCommand>make %s.build</BuildCommand>
+ <PreprocessFileCommand/>
+ <SingleFileCommand/>
+ <MakefileGenerationCommand/>
+ <ThirdPartyToolName>None</ThirdPartyToolName>
+ <WorkingDirectory>$(WorkspacePath)</WorkingDirectory>
+ </CustomBuild>
+ <AdditionalRules>
+ <CustomPostBuild/>
+ <CustomPreBuild/>
+ </AdditionalRules>
+ <Completion EnableCpp11="no" EnableCpp14="no">
+ <ClangCmpFlagsC/>
+ <ClangCmpFlags/>
+ <ClangPP/>
+ <SearchPaths/>
+ </Completion>
+ </Configuration>
+ </Settings>
+"""
+ root_node.append(ET.fromstring(settingstemplate % (module_name, module_name, module_name, module_name)))
+
+ self.write_pretty_xml(root_node, os.path.join(self.gbuildparser.builddir, module_name, '%s.project' % module_name))
+
+ def write_pretty_xml(self, node, file_path):
+ xml_str = ET.tostring(node, encoding='unicode')
+ pretty_str = minidom.parseString(xml_str).toprettyxml(encoding='utf-8')
+ with open(file_path, 'w') as f:
+ f.write(pretty_str.decode())
+
+class DebugIntegrationGenerator(IdeIntegrationGenerator):
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+
+ def emit(self):
+ print(self.gbuildparser.srcdir)
+ print(self.gbuildparser.builddir)
+ for lib in self.gbuildparser.libs:
+ print(lib)
+ for exe in self.gbuildparser.exes:
+ print(exe)
+ for test in self.gbuildparser.tests:
+ print(test)
+
+
+class VimIntegrationGenerator(IdeIntegrationGenerator):
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+
+ def emit(self):
+ global_list = []
+ for lib in set(self.gbuildparser.libs) | set(self.gbuildparser.tests) | set(self.gbuildparser.exes):
+ entries = []
+ for file in lib.cxxobjects:
+ filePath = os.path.join(self.gbuildparser.srcdir, file) + ".cxx"
+ entry = {'directory': lib.location, 'file': filePath, 'command': self.generateCommand(lib, filePath)}
+ entries.append(entry)
+ global_list.extend(entries)
+ with open(os.path.join(self.gbuildparser.builddir, 'compile_commands.json'), 'w') as export_file:
+ json.dump(global_list, export_file)
+
+ def generateCommand(self, lib, file):
+ command = 'clang++ -Wall'
+ for key, value in lib.defs.items():
+ command += ' -D'
+ command += key
+ if value is not None:
+ command += '='
+ command += value
+
+ for include in lib.include:
+ command += ' -I'
+ command += include
+ for isystem in lib.include_sys:
+ command += ' -isystem '
+ command += isystem
+ for cxxflag in lib.cxxflags:
+ command += ' '
+ command += cxxflag
+ command += ' -c '
+ command += file
+ return command
+
+
+class KdevelopIntegrationGenerator(IdeIntegrationGenerator):
+
+ def encode_int(self, i):
+ temp = '%08x' % i
+ return '\\x%s\\x%s\\x%s\\x%s' % (temp[0:2], temp[2:4], temp[4:6], temp[6:8])
+
+ def encode_string(self, string):
+ result = self.encode_int(len(string) * 2)
+ for c in string.encode('utf-16-be'):
+ if c in range(32, 126):
+ result += chr(c)
+ else:
+ result += '\\x%02x' % c
+ return result
+
+ def generate_buildsystemconfigtool(self, configid, tool, args, exe, typenr):
+ return KdevelopIntegrationGenerator.buildsystemconfigtooltemplate % {'configid': configid, 'tool': tool,
+ 'args': args, 'exe': exe, 'typenr': typenr}
+
+ buildsystemconfigtooltemplate = """
+[CustomBuildSystem][BuildConfig%(configid)d][Tool%(tool)s]
+Arguments=%(args)s
+Enabled=true
+Environment=
+Executable=%(exe)s
+Type=%(typenr)d
+
+"""
+
+ def generate_buildsystemconfig(self, configid, moduledir, builddir, title, buildparms=''):
+ result = KdevelopIntegrationGenerator.buildsystemconfigtemplate % {'configid': configid, 'builddir': builddir,
+ 'title': title}
+ result += self.generate_buildsystemconfigtool(configid, 'Clean', 'clean %s' % buildparms,
+ self.gbuildparser.makecmd, 3)
+ result += self.generate_buildsystemconfigtool(configid, 'Build', 'all %s' % buildparms,
+ self.gbuildparser.makecmd, 0)
+ return result
+
+ buildsystemconfigtemplate = """
+[CustomBuildSystem][BuildConfig%(configid)d]
+BuildDir=file://%(builddir)s
+Title=%(title)s
+
+"""
+
+ def generate_buildsystem(self, moduledir):
+ result = KdevelopIntegrationGenerator.buildsystemtemplate % {'defaultconfigid': 0}
+ result += self.generate_buildsystemconfig(0, moduledir, moduledir, 'Module Build -- Release')
+ result += self.generate_buildsystemconfig(1, moduledir, self.gbuildparser.builddir, 'Full Build -- Release')
+ result += self.generate_buildsystemconfig(2, moduledir, moduledir, 'Module Build -- Debug', 'debug=T')
+ result += self.generate_buildsystemconfig(3, moduledir, self.gbuildparser.builddir, 'Full Build -- Debug',
+ 'debug=T')
+ return result
+
+ buildsystemtemplate = """
+[CustomBuildSystem]
+CurrentConfiguration=BuildConfig%(defaultconfigid)d
+
+"""
+
+ def generate_launch(self, launchid, launchname, executablepath, args, workdir):
+ return KdevelopIntegrationGenerator.launchtemplate % {'launchid': launchid, 'launchname': launchname,
+ 'executablepath': executablepath, 'args': args,
+ 'workdir': workdir}
+
+ launchtemplate = """
+[Launch][Launch Configuration %(launchid)d]
+Configured Launch Modes=execute
+Configured Launchers=nativeAppLauncher
+Name=%(launchname)s
+Type=Native Application
+
+[Launch][Launch Configuration %(launchid)d][Data]
+Arguments=%(args)s
+Dependencies=@Variant(\\x00\\x00\\x00\\t\\x00\\x00\\x00\\x00\\x00)
+Dependency Action=Nothing
+EnvironmentGroup=default
+Executable=file://%(executablepath)s
+External Terminal=konsole --noclose --workdir %%workdir -e %%exe
+Project Target=
+Use External Terminal=false
+Working Directory=file://%(workdir)s
+isExecutable=true
+
+"""
+
+ def generate_launches(self, moduledir):
+ launches = ','.join(['Launch Configuration %d' % i for i in range(7)])
+ result = KdevelopIntegrationGenerator.launchestemplate % {'launches': launches}
+ result += self.generate_launch(0, 'Local tests -- quick tests (unitcheck)', self.gbuildparser.makecmd,
+ 'unitcheck', moduledir)
+ result += self.generate_launch(1, 'Local tests -- slow tests (unitcheck, slowcheck, screenshot)', self.gbuildparser.makecmd,
+ 'unitcheck slowcheck screenshot', moduledir)
+ result += self.generate_launch(2, 'Local tests -- integration tests (unitcheck, slowcheck, screenshot, subsequentcheck)',
+ self.gbuildparser.makecmd, 'unitcheck slowcheck screenshot subsequentcheck', moduledir)
+ result += self.generate_launch(3, 'Global tests -- quick tests (unitcheck)', self.gbuildparser.makecmd,
+ 'unitcheck', self.gbuildparser.builddir)
+ result += self.generate_launch(4, 'Global tests -- slow tests (unitcheck, slowcheck, screenshot)',
+ self.gbuildparser.makecmd, 'unitcheck slowcheck screenshot', self.gbuildparser.builddir)
+ result += self.generate_launch(5, 'Global tests -- integration tests (unitcheck, slowcheck, screenshot, subsequentcheck)',
+ self.gbuildparser.makecmd, 'unitcheck slowcheck screenshot subsequentcheck',
+ self.gbuildparser.builddir)
+ result += self.generate_launch(6, 'Run LibreOffice',
+ os.path.join(self.gbuildparser.instdir, 'program/soffice.bin'), '',
+ self.gbuildparser.instdir)
+ return result
+
+ launchestemplate = """
+[Launch]
+Launch Configurations=%(launches)s
+
+"""
+
+ def write_modulebeef(self, moduledir, modulename):
+ beefdir = os.path.join(moduledir, '.kdev4')
+ os.mkdir(beefdir)
+ beeffile = open(os.path.join(beefdir, 'Module_%s.kdev4' % modulename), 'w')
+ beeffile.write(self.generate_buildsystem(moduledir))
+ beeffile.write(self.generate_launches(moduledir))
+ beeffile.close()
+
+ def write_modulestub(self, moduledir, modulename):
+ stubfile = open(os.path.join(moduledir, 'Module_%s.kdev4' % modulename), 'w')
+ stubfile.write(KdevelopIntegrationGenerator.modulestubtemplate % {'modulename': modulename,
+ 'builditem': self.encode_string(
+ 'Module_%s' % modulename)})
+ stubfile.close()
+
+ modulestubtemplate = """
+[Buildset]
+BuildItems=@Variant(\\x00\\x00\\x00\\t\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x0b\\x00\\x00\\x00\\x00\\x01%(builditem)s)
+
+[Project]
+Name=Module_%(modulename)s
+Manager=KDevCustomBuildSystem
+VersionControl=kdevgit
+"""
+
+ def write_includepaths(self, path):
+ includedirfile = open(os.path.join(path, '.kdev_include_paths'), 'w')
+ include = set()
+ for target in self.gbuildparser.target_by_path[path]:
+ include |= set(target.include)
+ includedirfile.write('\n'.join(include))
+ includedirfile.close()
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+
+ def emit(self):
+ for path in self.gbuildparser.target_by_path:
+ self.write_includepaths(path)
+ for location in self.gbuildparser.target_by_location:
+ for f in os.listdir(location):
+ if f.endswith('.kdev4'):
+ try:
+ os.remove(os.path.join(location, f))
+ except OSError:
+ shutil.rmtree(os.path.join(location, f))
+ for location in self.gbuildparser.target_by_location:
+ modulename = os.path.split(location)[1]
+ self.write_modulestub(location, modulename)
+ self.write_modulebeef(location, modulename)
+
+
+class XcodeIntegrationGenerator(IdeIntegrationGenerator):
+
+ def indent(self, file, level):
+ if level == 0:
+ return
+ for i in range(0, level):
+ file.write(' ')
+
+ def write_object(self, object, file, indent):
+ if isinstance(object, int):
+ file.write('%d' % object)
+ elif isinstance(object, str) and not re.search('[^A-Za-z0-9_]', object):
+ file.write('%s' % object)
+ elif isinstance(object, str):
+ file.write('"%s"' % object)
+ elif isinstance(object, dict):
+ self.write_dict(object, file, indent)
+
+ # Write a dictionary out as an "old-style (NeXT) ASCII plist"
+ def write_dict(self, dict, file, indent):
+ file.write('{')
+ file.write('\n')
+ for key in sorted(dict.keys()):
+ self.indent(file, indent + 1)
+ file.write('%s = ' % key)
+ self.write_object(dict[key], file, indent + 1)
+ file.write(';\n')
+ self.indent(file, indent)
+ file.write('}')
+
+ def write_dict_to_plist(self, dict, file):
+ file.write('// !$*UTF8*$!\n')
+ self.write_dict(dict, file, 0)
+
+ def get_product_type(self, modulename):
+ if modulename in self.gbuildparser.libs:
+ return 'com.apple.product-type.library.dynamic'
+ elif modulename in self.gbuildparser.exes:
+ return 'com.apple.product-type.something'
+
+ counter = 0
+
+ def generate_id(self):
+ XcodeIntegrationGenerator.counter = XcodeIntegrationGenerator.counter + 1
+ return str('X%07x' % XcodeIntegrationGenerator.counter)
+
+ def generate_build_phases(self, modulename):
+ result = [self.sourcesBuildPhaseId]
+ return result
+
+ def generate_root_object(self, modulename):
+ result = {'isa': 'PBXProject',
+ 'attributes': {'LastUpgradeCheck': '0500',
+ 'ORGANIZATIONNAME': 'LibreOffice'},
+ 'buildConfigurationList': self.generate_id(),
+ 'compatibilityVersion': 'Xcode 3.2',
+ 'hasScannedForEncodings': 0,
+ 'knownRegions': ['en'],
+ 'mainGroup': self.mainGroupId,
+ 'productRefGroup': self.productRefGroupId,
+ 'projectDirPath': '',
+ 'projectRoot': '',
+ 'targets': self.targetId}
+ return result
+
+ def generate_target(self, modulename):
+ result = {'isa': 'PBXNativeTarget',
+ 'buildConfigurationList': self.generate_id(),
+ 'buildPhases': self.generate_build_phases(modulename),
+ 'buildRules': [],
+ 'dependencies': [],
+ 'name': modulename,
+ 'productName': modulename,
+ 'productReference': self.productReferenceId,
+ 'productType': self.get_product_type(modulename)}
+ return result
+
+ def generate_main_group(self, modulename):
+ result = {'isa': 'PBXGroup',
+ 'children': [self.subMainGroupId, self.productGroupId],
+ 'sourceTree': '<group>'}
+ return result
+
+ def generate_sub_main_children(self, modulename):
+ return {}
+
+ def generate_sub_main_group(self, modulename):
+ result = {'isa': 'PBXGroup',
+ 'children': self.generate_sub_main_children(modulename),
+ 'path': modulename,
+ 'sourceTree': '<group>'}
+ return result
+
+ def generate_product_group(self, modulename):
+ result = {'isa': 'PBXGroup',
+ 'children': [self.productReferenceId],
+ 'name': 'Products',
+ 'sourceTree': '<group>'}
+ return result
+
+ def build_source_list(self, module):
+ self.sourceRefList = {}
+ self.sourceList = {}
+
+ for i in module.cxxobjects:
+ ref = self.generate_id()
+ self.sourceList[self.generate_id()] = ref
+ self.sourceRefList[ref] = {'lastKnownFileType': 'sourcecode.cpp.cpp',
+ 'path': i + '.cxx',
+ 'sourceTree': '<group>'}
+
+ def generate_sources_build_phase(self, modulename):
+ result = {'isa': 'PBXSourcesBuildPhase',
+ 'buildActionMask': 2147483647,
+ 'files': self.sourceList.keys(),
+ 'runOnlyForDeploymentPostprocessing': 0}
+ return result
+
+ def generate_project(self, target):
+ self.rootObjectId = self.generate_id()
+ self.mainGroupId = self.generate_id()
+ self.subMainGroupId = self.generate_id()
+ self.productReferenceId = self.generate_id()
+ self.productRefGroupId = self.generate_id()
+ self.productGroupId = self.generate_id()
+ self.targetId = self.generate_id()
+ self.build_source_list(target)
+ self.sourcesBuildPhaseId = self.generate_id()
+ objects = {self.rootObjectId: self.generate_root_object(target),
+ self.targetId: self.generate_target(target),
+ self.mainGroupId: self.generate_main_group(target),
+ self.subMainGroupId: self.generate_sub_main_group(target),
+ self.productGroupId: self.generate_product_group(target),
+ self.sourcesBuildPhaseId: self.generate_sources_build_phase(target)
+ }
+ for i in self.sourceList.keys():
+ ref = self.sourceList[i]
+ objects[i] = {'isa': 'PBXBuildFile',
+ 'fileRef': ref}
+ objects[ref] = {'isa': 'PBXFileReference',
+ 'lastKnownFileType': self.sourceRefList[ref]['lastKnownFileType'],
+ 'path': self.sourceRefList[ref]['path']}
+ project = {'archiveVersion': 1,
+ 'classes': {},
+ 'objectVersion': 46,
+ 'objects': objects,
+ 'rootObject': self.rootObjectId}
+ return project
+
+ # For some reverse-engineered documentation on the project.pbxproj format,
+ # see http://www.monobjc.net/xcode-project-file-format.html .
+ def write_xcodeproj(self, moduledir, target):
+ xcodeprojdir = os.path.join(moduledir, '%s.xcodeproj' % target.target_name())
+ try:
+ os.mkdir(xcodeprojdir)
+ except:
+ pass
+ self.write_dict_to_plist(self.generate_project(target),
+ open(os.path.join(xcodeprojdir, 'project.pbxproj'), 'w'))
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+
+ def emit(self):
+ self.rootlocation = './'
+ for location in self.gbuildparser.target_by_location:
+ # module = location.split('/')[-1]
+ # module_directory = os.path.join(self.rootlocation, module)
+ for target in self.gbuildparser.target_by_location[location]:
+ # project_path = os.path.join(module_directory, '%s.pbxroj' % target.target_name())
+ self.write_xcodeproj(location, target)
+
+
+class VisualStudioIntegrationGenerator(IdeIntegrationGenerator):
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+ self.toolset = os.environ['VCTOOLSET']
+ self.solution_directory = self.gbuildparser.builddir
+ self.configurations = {
+ 'Build': {
+ 'build': self.module_make_command('%(target)s'),
+ 'clean': self.module_make_command('%(target)s.clean'),
+ 'rebuild': self.module_make_command('%(target)s.clean %(target)s')
+ },
+ 'Unit Tests': {
+ 'build': self.module_make_command('unitcheck'),
+ 'clean': self.module_make_command('clean'),
+ 'rebuild': self.module_make_command('clean unitcheck'),
+ },
+ 'Integration tests': {
+ 'build': self.module_make_command('unitcheck slowcheck screenshot subsequentcheck'),
+ 'clean': self.module_make_command('clean'),
+ 'rebuild': self.module_make_command('clean unitcheck slowcheck screenshot subsequentcheck')
+ }
+ }
+
+ def module_make_command(self, targets):
+ return '%(sh)s -c "PATH=\\"/bin:$PATH\\";BUILDDIR=\\"%(builddir)s\\" %(makecmd)s -rsC %(location)s ' + targets + '"'
+
+ class Project:
+
+ def __init__(self, guid, target, project_path):
+ self.guid = guid
+ self.target = target
+ self.path = project_path
+
+ def emit(self):
+ all_projects = []
+ for location in self.gbuildparser.target_by_location:
+ projects = []
+ module = location.split('/')[-1]
+ module_directory = os.path.join(self.solution_directory, module)
+ for target in self.gbuildparser.target_by_location[location]:
+ project_path = os.path.join(module_directory, '%s.vcxproj' % target.target_name())
+ project_guid = self.write_project(project_path, target)
+ p = VisualStudioIntegrationGenerator.Project(project_guid, target, project_path)
+ projects.append(p)
+ self.write_solution(os.path.join(module_directory, '%s.sln' % module), projects)
+ all_projects += projects
+
+ self.write_solution(os.path.join(self.solution_directory, 'LibreOffice.sln'), all_projects)
+
+ @staticmethod
+ def gen_guid(category, name):
+ return str(uuid.uuid5(uuid.NAMESPACE_URL, 'vnd.libreoffice.vs-ide-integration:' + category + '/' + urllib.parse.quote(name))).upper()
+
+ nmake_project_guid = '8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942'
+ nmake_folder_guid = '2150E333-8FDC-42A3-9474-1A3956D46DE8'
+
+ def get_dependency_libs(self, linked_libs, library_projects):
+ dependency_libs = {}
+ for linked_lib in linked_libs:
+ for library_project in library_projects:
+ if library_project.target.library_name() == linked_lib:
+ dependency_libs[library_project.guid] = library_project
+ return dependency_libs
+
+ def write_solution(self, solution_path, projects):
+ print('Solution %s:' % os.path.splitext(os.path.basename(solution_path))[0], end='')
+ library_projects = [project for project in projects if project.target in self.gbuildparser.libs]
+ test_projects = [project for project in projects if project.target in self.gbuildparser.tests]
+ executable_projects = [project for project in projects if project.target in self.gbuildparser.exes]
+ with open(solution_path, 'w') as f:
+ f.write('Microsoft Visual Studio Solution File, Format Version 12.00\n')
+ for project in projects:
+ target = project.target
+ print(' %s' % target.target_name(), end='')
+ proj_path = os.path.relpath(project.path, os.path.abspath(os.path.dirname(solution_path)))
+ f.write('Project("{%s}") = "%s", "%s", "{%s}"\n' %
+ (VisualStudioIntegrationGenerator.nmake_project_guid,
+ target.short_name(), proj_path, project.guid))
+ libs_in_solution = self.get_dependency_libs(target.linked_libs,
+ library_projects)
+ if libs_in_solution:
+ f.write('\tProjectSection(ProjectDependencies) = postProject\n')
+ for lib_guid in libs_in_solution.keys():
+ f.write('\t\t{%(guid)s} = {%(guid)s}\n' % {'guid': lib_guid})
+ f.write('\tEndProjectSection\n')
+ f.write('EndProject\n')
+ f.write('Project("{%s}") = "Utility", "Utility", "{6778240E-8B6B-47A0-AC31-7E7A257B97E6}"\n' %
+ (VisualStudioIntegrationGenerator.nmake_folder_guid))
+ f.write('\tProjectSection(SolutionItems) = preProject\n')
+ # The natvis file gives pretty-printed variable values when debugging
+ natvis_path = os.path.join(gbuildparser.srcdir, 'solenv/vs/LibreOffice.natvis')
+ f.write('\t\t%(natvis)s = %(natvis)s\n' % {'natvis': natvis_path})
+ f.write('\tEndProjectSection\n')
+ f.write('EndProject\n')
+ # Folders to group tests/libraries/executables
+ nmake_tests_guid = 'CF544F7B-9D02-4D83-8370-5887851209B7'
+ nmake_libraries_guid = 'C624F43D-616C-4627-B58F-F5C2047B7BDC'
+ nmake_executables_guid = '1CD80999-9FA9-4BA9-B4D9-6E33035CF648'
+ f.write('Project("{%s}") = "Tests", "Tests", "{%s}"\n' %
+ (VisualStudioIntegrationGenerator.nmake_folder_guid, nmake_tests_guid))
+ f.write('EndProject\n')
+ f.write('Project("{%s}") = "Libraries", "Libraries", "{%s}"\n' %
+ (VisualStudioIntegrationGenerator.nmake_folder_guid, nmake_libraries_guid))
+ f.write('EndProject\n')
+ f.write('Project("{%s}") = "Executables", "Executables", "{%s}"\n' %
+ (VisualStudioIntegrationGenerator.nmake_folder_guid, nmake_executables_guid))
+ f.write('EndProject\n')
+ # end Folders to group tests/libraries/executables
+ f.write('Global\n')
+ platform = 'Win32'
+ f.write('\tGlobalSection(SolutionConfigurationPlatforms) = preSolution\n')
+ for cfg in self.configurations:
+ f.write('\t\t%(cfg)s|%(platform)s = %(cfg)s|%(platform)s\n' % {'cfg': cfg, 'platform': platform})
+ f.write('\tEndGlobalSection\n')
+ # Group projects to folders
+ f.write('\tGlobalSection(NestedProjects) = preSolution\n')
+ for project in test_projects:
+ f.write('\t\t{%s} = {%s}\n' % (project.guid, nmake_tests_guid))
+ for project in library_projects:
+ f.write('\t\t{%s} = {%s}\n' % (project.guid, nmake_libraries_guid))
+ for project in executable_projects:
+ f.write('\t\t{%s} = {%s}\n' % (project.guid, nmake_executables_guid))
+ f.write('\tEndGlobalSection\n')
+ # end Group projects to folders
+ f.write('\tGlobalSection(ProjectConfigurationPlatforms) = postSolution\n')
+ # Specifies project configurations for solution configuration
+ for project in projects:
+ for cfg in self.configurations:
+ params = {'guid': project.guid, 'sol_cfg': cfg, 'proj_cfg': cfg, 'platform': platform}
+ f.write('\t\t{%(guid)s}.%(sol_cfg)s|%(platform)s.ActiveCfg = %(proj_cfg)s|%(platform)s\n' % params)
+ # Build.0 is basically 'Build checkbox' in configuration manager
+ f.write('\t\t{%(guid)s}.%(sol_cfg)s|%(platform)s.Build.0 = %(proj_cfg)s|%(platform)s\n' % params)
+ f.write('\tEndGlobalSection\n')
+ f.write('EndGlobal\n')
+ print('')
+
+ @staticmethod
+ def to_long_names(shortnames):
+ if platform == "cygwin":
+ return (subprocess.check_output(["cygpath", "-wal"] + shortnames).decode("utf-8", "strict").rstrip()).split("\n")
+ else:
+ return shortnames
+
+ # Unescape the values: \"tklo.dll\" => "tklo.dll"
+ escapepattern = re.compile(r'\\(.)')
+
+ @staticmethod
+ def defs_list(defs):
+ defines_list = []
+ # List defines
+ for key, value in defs.items():
+ define = key
+ if value is not None:
+ define += '=' + VisualStudioIntegrationGenerator.escapepattern.sub(r'\1', value)
+ defines_list.append(define)
+ return defines_list
+
+ def write_project(self, project_path, target):
+ # See info at http://blogs.msdn.com/b/visualstudio/archive/2010/05/14/a-guide-to-vcxproj-and-props-file-structure.aspx
+ folder = os.path.dirname(project_path)
+ if not os.path.exists(folder):
+ os.makedirs(folder)
+ project_guid = self.gen_guid('project', target.short_name())
+ cxxflags = ' '.join(target.cxxflags)
+ ns = 'http://schemas.microsoft.com/developer/msbuild/2003'
+ ET.register_namespace('', ns)
+ proj_node = ET.Element('{%s}Project' % ns, DefaultTargets='Build', ToolsVersion='4.0')
+ proj_confs_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns, Label='ProjectConfigurations')
+ platform = 'Win32'
+ for configuration in self.configurations:
+ proj_conf_node = ET.SubElement(proj_confs_node,
+ '{%s}ProjectConfiguration' % ns,
+ Include='%s|%s' % (configuration, platform))
+ conf_node = ET.SubElement(proj_conf_node, '{%s}Configuration' % ns)
+ conf_node.text = configuration
+ platform_node = ET.SubElement(proj_conf_node, '{%s}Platform' % ns)
+ platform_node.text = platform
+
+ globals_node = ET.SubElement(proj_node, '{%s}PropertyGroup' % ns, Label='Globals')
+ proj_guid_node = ET.SubElement(globals_node, '{%s}ProjectGuid' % ns)
+ proj_guid_node.text = '{%s}' % project_guid
+ proj_keyword_node = ET.SubElement(globals_node, '{%s}Keyword' % ns)
+ proj_keyword_node.text = 'MakeFileProj'
+ proj_name_node = ET.SubElement(globals_node, '{%s}ProjectName' % ns)
+ proj_name_node.text = target.short_name()
+
+ ET.SubElement(proj_node, '{%s}Import' % ns, Project='$(VCTargetsPath)\\Microsoft.Cpp.Default.props')
+ for configuration in self.configurations:
+ conf_node = ET.SubElement(proj_node, '{%s}PropertyGroup' % ns, Label="Configuration",
+ Condition="'$(Configuration)|$(Platform)'=='%s|%s'" % (configuration, platform))
+ # Type of project used by the MSBuild to determine build process, see Microsoft.Makefile.targets
+ conf_type_node = ET.SubElement(conf_node, '{%s}ConfigurationType' % ns)
+ conf_type_node.text = 'Makefile'
+ # This defines the version of Visual Studio which can show next to project names in the Solution Explorer
+ platform_toolset_node = ET.SubElement(conf_node, '{%s}PlatformToolset' % ns)
+ platform_toolset_node.text = self.toolset
+
+ ET.SubElement(proj_node, '{%s}Import' % ns, Project='$(VCTargetsPath)\\Microsoft.Cpp.props')
+ ET.SubElement(proj_node, '{%s}ImportGroup' % ns, Label='ExtensionSettings')
+ for configuration in self.configurations:
+ prop_sheets_node = ET.SubElement(proj_node, '{%s}ImportGroup' % ns, Label='Configuration',
+ Condition="'$(Configuration)|$(Platform)'=='%s|%s'" % (configuration, platform))
+ ET.SubElement(prop_sheets_node, '{%s}Import' % ns,
+ Project='$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props',
+ Condition="exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')",
+ Label='LocalAppDataPlatform')
+
+ ET.SubElement(proj_node, '{%s}PropertyGroup' % ns, Label='UserMacros')
+ # VS IDE (at least "Peek definition") is allergic to paths like "C:/PROGRA~2/WI3CF2~1/10/Include/10.0.14393.0/um"; see
+ # https://developercommunity.visualstudio.com/content/problem/139659/vc-peek-definition-fails-to-navigate-to-windows-ki.html
+ # We need to convert to long paths here. Do this once, since it's time-consuming operation.
+ include_path_node_text = ';'.join(self.to_long_names(target.include))
+ for cfg_name, cfg_targets in self.configurations.items():
+ conf_node = ET.SubElement(proj_node, '{%s}PropertyGroup' % ns,
+ Condition="'$(Configuration)|$(Platform)'=='%s|%s'" % (cfg_name, platform))
+ nmake_params = {
+ 'sh': os.path.join(self.gbuildparser.binpath, 'dash.exe'),
+ 'builddir': self.gbuildparser.builddir,
+ 'location': target.location,
+ 'makecmd': self.gbuildparser.makecmd,
+ 'target': target.target_name()}
+ nmake_build_node = ET.SubElement(conf_node, '{%s}NMakeBuildCommandLine' % ns)
+ nmake_build_node.text = cfg_targets['build'] % nmake_params
+ nmake_clean_node = ET.SubElement(conf_node, '{%s}NMakeCleanCommandLine' % ns)
+ nmake_clean_node.text = cfg_targets['clean'] % nmake_params
+ nmake_rebuild_node = ET.SubElement(conf_node, '{%s}NMakeReBuildCommandLine' % ns)
+ nmake_rebuild_node.text = cfg_targets['rebuild'] % nmake_params
+ nmake_output_node = ET.SubElement(conf_node, '{%s}NMakeOutput' % ns)
+ nmake_output_node.text = os.path.join(self.gbuildparser.instdir, 'program', 'soffice.bin')
+ nmake_defs_node = ET.SubElement(conf_node, '{%s}NMakePreprocessorDefinitions' % ns)
+ nmake_defs_node.text = ';'.join(self.defs_list(target.defs) + ['$(NMakePreprocessorDefinitions)'])
+ include_path_node = ET.SubElement(conf_node, '{%s}IncludePath' % ns)
+ include_path_node.text = include_path_node_text
+ additional_options_node = ET.SubElement(conf_node, '{%s}AdditionalOptions' % ns)
+ additional_options_node.text = cxxflags
+
+ ET.SubElement(proj_node, '{%s}ItemDefinitionGroup' % ns)
+
+ cxxobjects_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns)
+ for cxxobject in target.cxxobjects:
+ cxxabspath = os.path.join(self.gbuildparser.srcdir, cxxobject)
+ cxxfile = cxxabspath + '.cxx'
+ if os.path.isfile(cxxfile):
+ ET.SubElement(cxxobjects_node, '{%s}ClCompile' % ns, Include=cxxfile)
+ else:
+ print('Source %s in project %s does not exist' % (cxxfile, target.target_name()))
+
+ cobjects_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns)
+ for cobject in target.cobjects:
+ cabspath = os.path.join(self.gbuildparser.srcdir, cobject)
+ cfile = cabspath + '.c'
+ if os.path.isfile(cfile):
+ ET.SubElement(cobjects_node, '{%s}ClCompile' % ns, Include=cfile)
+ else:
+ print('Source %s in project %s does not exist' % (cfile, target.target_name()))
+
+ includes_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns)
+ for cxxobject in target.cxxobjects:
+ include_abs_path = os.path.join(self.gbuildparser.srcdir, cxxobject)
+ hxxfile = include_abs_path + '.hxx'
+ if os.path.isfile(hxxfile):
+ ET.SubElement(includes_node, '{%s}ClInclude' % ns, Include=hxxfile)
+ # Few files have corresponding .h files
+ hfile = include_abs_path + '.h'
+ if os.path.isfile(hfile):
+ ET.SubElement(includes_node, '{%s}ClInclude' % ns, Include=hfile)
+ for cobject in target.cobjects:
+ include_abs_path = os.path.join(self.gbuildparser.srcdir, cobject)
+ hfile = include_abs_path + '.h'
+ if os.path.isfile(hfile):
+ ET.SubElement(includes_node, '{%s}ClInclude' % ns, Include=hfile)
+ ET.SubElement(proj_node, '{%s}Import' % ns, Project='$(VCTargetsPath)\\Microsoft.Cpp.targets')
+ ET.SubElement(proj_node, '{%s}ImportGroup' % ns, Label='ExtensionTargets')
+ self.write_pretty_xml(proj_node, project_path)
+ self.write_filters(project_path + '.filters',
+ os.path.join(self.gbuildparser.srcdir, os.path.basename(target.location)),
+ [cxx_node.get('Include') for cxx_node in cxxobjects_node.findall('{%s}ClCompile' % ns)],
+ [c_node.get('Include') for c_node in cobjects_node.findall('{%s}ClCompile' % ns)],
+ [include_node.get('Include') for include_node in includes_node.findall('{%s}ClInclude' % ns)])
+ return project_guid
+
+ def get_filter(self, module_dir, proj_file):
+ return '\\'.join(os.path.relpath(proj_file, module_dir).split('/')[:-1])
+
+ def get_subfilters(self, proj_filter):
+ parts = proj_filter.split('\\')
+ subfilters = set([proj_filter]) if proj_filter else set()
+ for i in range(1, len(parts)):
+ subfilters.add('\\'.join(parts[:i]))
+ return subfilters
+
+ def write_pretty_xml(self, node, file_path):
+ xml_str = ET.tostring(node, encoding='unicode')
+ pretty_str = minidom.parseString(xml_str).toprettyxml(encoding='utf-8')
+ with open(file_path, 'w') as f:
+ f.write(pretty_str.decode())
+
+ def add_nodes(self, files_node, module_dir, tag, project_files):
+ ns = 'http://schemas.microsoft.com/developer/msbuild/2003'
+ filters = set()
+ for project_file in project_files:
+ file_node = ET.SubElement(files_node, tag, Include=project_file)
+ if os.path.commonprefix([module_dir, project_file]) == module_dir:
+ project_filter = self.get_filter(module_dir, project_file)
+ filter_node = ET.SubElement(file_node, '{%s}Filter' % ns)
+ filter_node.text = project_filter
+ filters |= self.get_subfilters(project_filter)
+ return filters
+
+ def write_filters(self, filters_path, module_dir, cxx_files, c_files, include_files):
+ ns = 'http://schemas.microsoft.com/developer/msbuild/2003'
+ ET.register_namespace('', ns)
+ proj_node = ET.Element('{%s}Project' % ns, ToolsVersion='4.0')
+ filters = set()
+ compiles_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns)
+ filters |= self.add_nodes(compiles_node, module_dir, '{%s}ClCompile' % ns, cxx_files)
+ filters |= self.add_nodes(compiles_node, module_dir, '{%s}ClCompile' % ns, c_files)
+ include_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns)
+ filters |= self.add_nodes(include_node, module_dir, '{%s}ClInclude' % ns, include_files)
+
+ filters_node = ET.SubElement(proj_node, '{%s}ItemGroup' % ns)
+ for proj_filter in filters:
+ filter_node = ET.SubElement(filters_node, '{%s}Filter' % ns, Include=proj_filter)
+ self.write_pretty_xml(proj_node, filters_path)
+
+
+class QtCreatorIntegrationGenerator(IdeIntegrationGenerator):
+
+ def __init__(self, gbuildparser, ide):
+ IdeIntegrationGenerator.__init__(self, gbuildparser, ide)
+ self.target_by_location = {}
+ for target in set(self.gbuildparser.libs) | set(self.gbuildparser.exes) | set(self.gbuildparser.tests):
+ if target.location not in self.target_by_location:
+ self.target_by_location[target.location] = set()
+ self.target_by_location[target.location] |= set([target])
+
+ self._do_log = False # set to 'True' to activate log of QtCreatorIntegrationGenerator
+ if self._do_log:
+ qtlog_path = os.path.abspath('../qtlog_.txt')
+ self.qtlog = open(qtlog_path, 'w')
+
+ def _log(self, message):
+ if self._do_log:
+ self.qtlog.write(message)
+
+ def log_close(self):
+ if self._do_log:
+ self.qtlog.close()
+
+ def generate_build_configs(self, lib_folder):
+ module_folder = os.path.join(self.base_folder, lib_folder)
+ xml = ""
+ # In QtCreator UI, build configs are listed alphabetically,
+ # so it can be different from the creation order.
+ # So we prefix the names with the index.
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '0',
+ 'base_folder': module_folder,
+ 'arg': "",
+ 'name': "1-Build %s" % lib_folder,
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '1',
+ 'base_folder': module_folder,
+ 'arg': "unitcheck",
+ 'name': "2-Local tests -- quick tests (unitcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '2',
+ 'base_folder': module_folder,
+ 'arg': "unitcheck slowcheck screenshot",
+ 'name': "3-Local tests -- slow tests (unitcheck, slowcheck, screenshot)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '3',
+ 'base_folder': module_folder,
+ 'arg': "unitcheck slowcheck screenshot subsequentcheck",
+ 'name': "4-Local tests -- integration tests (unitcheck, slowcheck, screenshot, subsequentcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '4',
+ 'base_folder': self.base_folder,
+ 'arg': "unitcheck",
+ 'name': "5-Global tests -- quick tests (unitcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '5',
+ 'base_folder': self.base_folder,
+ 'arg': "unitcheck slowcheck screenshot",
+ 'name': "6-Global tests -- slow tests (unitcheck, slowcheck, screenshot)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '6',
+ 'base_folder': self.base_folder,
+ 'arg': "unitcheck slowcheck screenshot subsequentcheck",
+ 'name': "7-Global tests -- integration tests (unitcheck, slowcheck, screenshot, subsequentcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '7',
+ 'base_folder': self.base_folder,
+ 'arg': "",
+ 'name': "8-Global build -- nocheck",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '8',
+ 'base_folder': self.base_folder,
+ 'arg': "",
+ 'name': "9-Global build",
+ }
+
+ xml += QtCreatorIntegrationGenerator.build_configs_count_template % {
+ 'nb': '9',
+ }
+ return xml
+
+ def generate_meta_build_configs(self):
+ xml = ""
+ # In QtCreator UI, build configs are listed alphabetically,
+ # so it can be different from the creation order.
+ # So we prefix the names with the index.
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '0',
+ 'base_folder': self.base_folder,
+ 'arg': "",
+ 'name': "01-Global Build",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '1',
+ 'base_folder': self.base_folder,
+ 'arg': "unitcheck",
+ 'name': "02-Global tests -- quick tests (unitcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '2',
+ 'base_folder': self.base_folder,
+ 'arg': "unitcheck slowcheck screenshot",
+ 'name': "03-Global tests -- slow tests (unitcheck, slowcheck, screenshot)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '3',
+ 'base_folder': self.base_folder,
+ 'arg': "unitcheck slowcheck screenshot subsequentcheck",
+ 'name': "04-Global tests -- integration tests (unitcheck, slowcheck, screenshot, subsequentcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '4',
+ 'base_folder': self.base_folder,
+ 'arg': "perfcheck",
+ 'name': "05-Global tests -- performance tests (perfcheck)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '5',
+ 'base_folder': self.base_folder,
+ 'arg': "check",
+ 'name': "06-Global tests -- tests (check)",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '6',
+ 'base_folder': self.base_folder,
+ 'arg': "",
+ 'name': "07-Global build -- nocheck",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '7',
+ 'base_folder': self.base_folder,
+ 'arg': "build-l10n-only",
+ 'name': "08-Global build -- build-l10n-only",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '8',
+ 'base_folder': self.base_folder,
+ 'arg': "build-non-l10n-only",
+ 'name': "09-Global build -- build-non-l10n-only",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '9',
+ 'base_folder': self.base_folder,
+ 'arg': "clean",
+ 'name': "10-Global build -- clean",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '10',
+ 'base_folder': self.base_folder,
+ 'arg': "clean-build",
+ 'name': "11-Global build -- clean-build",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_template % {
+ 'index': '11',
+ 'base_folder': self.base_folder,
+ 'arg': "clean-host",
+ 'name': "12-Global build -- clean-host",
+ }
+ xml += QtCreatorIntegrationGenerator.build_configs_count_template % {
+ 'nb': '12',
+ }
+ return xml
+
+ # By default, QtCreator creates 2 BuildStepList : "Build" and "Clean"
+ # but the "clean" can be empty.
+ build_configs_template = """
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.%(index)s">
+ <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">%(base_folder)s</value>
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+ <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
+ <valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
+ <value type="QString">-w</value>
+ <value type="QString">-r</value>
+ </valuelist>
+ <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">%(arg)s</value>
+ <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
+ <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+ <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">%(name)s</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
+ <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">%(index)s</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
+ </valuemap>
+ """
+
+ build_configs_count_template = """
+ <!-- nb build configurations -->
+ <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">%(nb)s</value>
+ """
+
+ def generate_deploy_configs(self, lib_folder):
+ xml = QtCreatorIntegrationGenerator.deploy_configs_template % {}
+ return xml
+
+ deploy_configs_template = """
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
+ <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+ <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
+ </valuemap>
+ <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
+ """
+
+ def generate_run_configs(self, lib_folder):
+
+ # If we use 'soffice', it's ok only for "Run", not for "Debug".
+ # So we put "soffice.bin" that is ok for both.
+ loexec = "%s/instdir/program/soffice.bin" % self.base_folder
+ xml = QtCreatorIntegrationGenerator.run_configs_template % {
+ 'loexec': loexec,
+ 'workdir': self.base_folder
+ }
+ return xml
+
+ run_configs_template = """
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
+ <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
+ <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
+ <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
+ <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
+ <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
+ <value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
+ <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
+ <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
+ <value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
+ <value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
+ <value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
+ <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
+ <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
+ <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
+ <value type="int">0</value>
+ <value type="int">1</value>
+ <value type="int">2</value>
+ <value type="int">3</value>
+ <value type="int">4</value>
+ <value type="int">5</value>
+ <value type="int">6</value>
+ <value type="int">7</value>
+ <value type="int">8</value>
+ <value type="int">9</value>
+ <value type="int">10</value>
+ <value type="int">11</value>
+ <value type="int">12</value>
+ <value type="int">13</value>
+ <value type="int">14</value>
+ </valuelist>
+ <value type="int" key="PE.EnvironmentAspect.Base">2</value>
+ <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
+
+ <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
+ <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable">%(loexec)s</value>
+ <value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
+ <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%(workdir)s</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Run libreoffice/instdir/program/soffice</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
+ <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
+ <value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
+ <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
+ <value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
+ <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
+ <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
+
+ </valuemap>
+ <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
+ """
+
+ def generate_pro_shared_content(self, lib_folder):
+
+ build_configs = self.generate_build_configs(lib_folder)
+ deploy_configs = self.generate_deploy_configs(lib_folder)
+ run_configs = self.generate_run_configs(lib_folder)
+
+ xml = QtCreatorIntegrationGenerator.pro_shared_template % {
+ 'build_configs': build_configs,
+ 'deploy_configs': deploy_configs,
+ 'run_configs': run_configs,
+ }
+ return xml
+
+ def generate_meta_pro_shared_content(self):
+
+ build_configs = self.generate_meta_build_configs()
+ deploy_configs = self.generate_deploy_configs("")
+ run_configs = self.generate_run_configs("")
+
+ xml = QtCreatorIntegrationGenerator.pro_shared_template % {
+ 'build_configs': build_configs,
+ 'deploy_configs': deploy_configs,
+ 'run_configs': run_configs,
+ }
+ return xml
+
+ pro_shared_template = """<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QtCreatorProject>
+<!-- Written by QtCreator 3.1.1, 2015-05-14T15:54:34. -->
+<qtcreator>
+ <data>
+ <variable>ProjectExplorer.Project.ActiveTarget</variable>
+ <value type="int">0</value>
+ </data>
+
+ <!-- editor settings -->
+ <data>
+ <variable>ProjectExplorer.Project.EditorSettings</variable>
+ <valuemap type="QVariantMap">
+ <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
+ <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
+ <value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
+ <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
+ <value type="QString" key="language">Cpp</value>
+ <valuemap type="QVariantMap" key="value">
+ <value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
+ </valuemap>
+ </valuemap>
+ <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
+ <value type="QString" key="language">QmlJS</value>
+ <valuemap type="QVariantMap" key="value">
+ <value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
+ </valuemap>
+ </valuemap>
+ <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
+ <value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
+ <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
+ <value type="int" key="EditorConfiguration.IndentSize">4</value>
+ <value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
+ <value type="int" key="EditorConfiguration.MarginColumn">80</value>
+ <value type="bool" key="EditorConfiguration.MouseHiding">true</value>
+ <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
+ <value type="int" key="EditorConfiguration.PaddingMode">1</value>
+ <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
+ <value type="bool" key="EditorConfiguration.ShowMargin">false</value>
+ <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">1</value>
+ <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
+ <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
+ <value type="int" key="EditorConfiguration.TabSize">8</value>
+ <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
+ <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
+ <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
+ <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
+ <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
+ <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
+ </valuemap>
+ </data>
+
+ <data>
+ <variable>ProjectExplorer.Project.PluginSettings</variable>
+ <valuemap type="QVariantMap"/>
+ </data>
+
+ <!-- target -->
+ <data>
+ <variable>ProjectExplorer.Project.Target.0</variable>
+ <valuemap type="QVariantMap">
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{0701de51-c96e-4e4f-85c3-e70b223c5076}</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
+ <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
+
+ <!-- build configurations -->
+ %(build_configs)s
+
+ <!-- deploy configurations -->
+ %(deploy_configs)s
+
+ <!-- plugin settings -->
+ <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
+
+ <!-- run configurations -->
+ %(run_configs)s
+
+ </valuemap>
+ </data>
+ <!-- nb targets : 1 -->
+ <data>
+ <variable>ProjectExplorer.Project.TargetCount</variable>
+ <value type="int">1</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
+ <value type="QByteArray">{5abcafed-86f6-49f6-b1cb-380fadd21211}</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
+ <value type="int">15</value>
+ </data>
+</qtcreator>
+"""
+
+ def get_file_path(self, src_file, ext_choices):
+ path = os.path.join(self.gbuildparser.srcdir, src_file)
+ for ext in ext_choices:
+ full_path = path + ext
+ if os.path.isfile(full_path):
+ return full_path
+ return ""
+
+ def get_source_path(self, src_file):
+ return self.get_file_path(src_file, (".cxx", ".cpp", ".c", ".mm"))
+
+ def get_header_path(self, src_file):
+ return self.get_file_path(src_file, (".hxx", ".hpp", ".h"))
+
+ def build_data_libs(self):
+
+ self.data_libs = {}
+
+ all_libs = set(self.gbuildparser.libs) | set(self.gbuildparser.exes) | set(self.gbuildparser.tests)
+ for lib in all_libs:
+ self._log("\nlibrary : %s, loc=%s" % (lib.short_name(), lib.location))
+ lib_name = os.path.basename(lib.location)
+ lib_folder = os.path.relpath(lib.location, self.base_folder)
+
+ def lopath(path):
+ if platform == "cygwin":
+ # absolute paths from GbuildToJson are Windows paths,
+ # so convert everything to such ones
+ abs_path = path
+ if not ntpath.isabs(abs_path):
+ abs_path = ntpath.join(self.gbuildparser.srcdir, path)
+ return abs_path.replace('\\', '/')
+
+ return os.path.abspath(path)
+
+ defines_list = []
+ sources_list = []
+ includepath_list = []
+ # The explicit headers list is not mandatory :
+ # QtCreator just needs 'include_path_list' to find all headers files.
+ # But files listed in 'header_list' will be shown
+ # in a specific "Headers" folder in QtCreator's Project panel.
+ # We will list here only headers files of current lib.
+ headers_list = []
+ for file_ in lib.cxxobjects:
+ # the file has no extension : search it
+ # self._log("\n file : %s" % file_)
+ path = self.get_source_path(file_)
+ if path:
+ sources_list.append(lopath(path))
+
+ # few cxxobject files have a header beside
+ path = self.get_header_path(file_)
+ if path:
+ headers_list.append(lopath(path))
+
+ cxxflags_list = []
+ for cxxflag in lib.cxxflags:
+ # extract flag for C++ standard version
+ if cxxflag.startswith('-std'):
+ cxxflags_list.append(cxxflag)
+
+ # List all include paths
+ for hdir in (lib.include + lib.include_sys):
+ hf_lopath = lopath(hdir)
+ includepath_list.append(hf_lopath)
+
+ # List headers files from current lib
+ for hdir in lib.include:
+ if hdir.startswith(lib.location):
+ for dirpath, _, files in os.walk(hdir):
+ for hf in files:
+ if hf.endswith(('.h', '.hxx', '.hpp', '.hrc')):
+ hf_lopath = lopath(os.path.join(dirpath, hf))
+ headers_list.append(hf_lopath)
+
+ # List defines
+ for key, value in lib.defs.items():
+ define = key
+ if value is not None:
+ define += '=' + value
+ defines_list.append(define)
+
+ # All data are prepared, store them for the lib.
+ if lib_folder in self.data_libs:
+ self.data_libs[lib_folder]['sources'] |= set(sources_list)
+ self.data_libs[lib_folder]['headers'] |= set(headers_list)
+ self.data_libs[lib_folder]['cxxflags'] |= set(cxxflags_list)
+ self.data_libs[lib_folder]['includepath'] |= set(includepath_list)
+ self.data_libs[lib_folder]['defines'] |= set(defines_list)
+ else:
+ self.data_libs[lib_folder] = {
+ 'sources': set(sources_list),
+ 'headers': set(headers_list),
+ 'cxxflags': set(cxxflags_list),
+ 'includepath': set(includepath_list),
+ 'defines': set(defines_list),
+ 'loc': lib.location,
+ 'name': lib_name
+ }
+
+ def emit(self):
+
+ mode = 'w+'
+ self.base_folder = self.gbuildparser.builddir
+
+ # for .pro files, we must explicitly list all files (.c, .h)
+ # so we can't reuse directly the same method than for kde integration.
+ self.build_data_libs()
+
+ # subdirs for the meta .pro file
+ subdirs_meta_pro = []
+ subdirs_list = self.data_libs.keys()
+ # Now we can create Qt files
+ for lib_folder in subdirs_list:
+ sources_list = sorted(self.data_libs[lib_folder]['sources'])
+ headers_list = sorted(self.data_libs[lib_folder]['headers'])
+ cxxflags_list = sorted(self.data_libs[lib_folder]['cxxflags'])
+ includepath_list = sorted(self.data_libs[lib_folder]['includepath'])
+ defines_list = sorted(self.data_libs[lib_folder]['defines'])
+ lib_loc = self.data_libs[lib_folder]['loc']
+ lib_name = self.data_libs[lib_folder]['name']
+
+ sources = " \\\n".join(sources_list)
+ headers = " \\\n".join(headers_list)
+ cxxflags = " \\\n".join(cxxflags_list)
+ includepath = " \\\n".join(includepath_list)
+ defines = " \\\n".join(defines_list)
+
+ # create .pro file
+ subdirs_meta_pro.append(lib_name)
+ qt_pro_file = os.path.join(self.base_folder, lib_name, lib_name + '.pro')
+ try:
+ content = QtCreatorIntegrationGenerator.pro_template % {'sources': sources, 'headers': headers,
+ 'cxxflags': cxxflags, 'includepath': includepath, 'defines': defines}
+ with open(qt_pro_file, mode) as fpro:
+ fpro.write(content)
+ self._log("created %s\n" % qt_pro_file)
+
+ except Exception as e:
+ print("ERROR : creating pro file=" + qt_pro_file, file=sys.stderr)
+ print(e, file=sys.stderr)
+ temp = traceback.format_exc() # .decode('utf8')
+ print(temp, file=sys.stderr)
+ print("\n\n", file=sys.stderr)
+
+ # create .pro.shared file
+ qt_pro_shared_file = os.path.join(self.base_folder, lib_name, lib_name + '.pro.shared')
+ try:
+ with open(qt_pro_shared_file, mode) as fproshared:
+ fproshared.write(self.generate_pro_shared_content(lib_folder))
+ self._log("created %s\n" % qt_pro_shared_file)
+
+ except Exception as e:
+ print("ERROR : creating pro.shared file=" + qt_pro_shared_file, file=sys.stderr)
+ print(e, file=sys.stderr)
+ temp = traceback.format_exc()
+ print(temp, file=sys.stderr)
+ print("\n\n", file=sys.stderr)
+
+ # create meta .pro file (lists all sub projects)
+ qt_meta_pro_file = os.path.join(self.base_folder, 'lo.pro')
+ try:
+ subdirs = " \\\n".join(sorted(subdirs_meta_pro))
+ content = QtCreatorIntegrationGenerator.pro_meta_template % {'subdirs': subdirs}
+ with open(qt_meta_pro_file, 'w+') as fmpro:
+ fmpro.write(content)
+
+ except Exception as e:
+ print("ERROR : creating lo.pro file=" + qt_meta_pro_file, file=sys.stderr)
+ print(e, file=sys.stderr)
+ temp = traceback.format_exc()
+ print(temp, file=sys.stderr)
+ print("\n\n", file=sys.stderr)
+
+ # create meta .pro.shared file
+ qt_meta_pro_shared_file = os.path.join(self.base_folder, 'lo.pro.shared')
+ try:
+ with open(qt_meta_pro_shared_file, mode) as fmproshared:
+ fmproshared.write(self.generate_meta_pro_shared_content())
+ self._log("created %s\n" % qt_meta_pro_shared_file)
+
+ except Exception as e:
+ print("ERROR : creating lo.pro.shared file=" + qt_meta_pro_shared_file, file=sys.stderr)
+ print(e, file=sys.stderr)
+ temp = traceback.format_exc()
+ print(temp, file=sys.stderr)
+ print("\n\n", file=sys.stderr)
+
+ self.log_close()
+
+ pro_template = """TEMPLATE = lib
+CONFIG += console
+CONFIG -= app_bundle
+CONFIG -= qt
+
+QMAKE_CXXFLAGS += %(cxxflags)s
+
+INCLUDEPATH += %(includepath)s
+
+SOURCES += %(sources)s
+
+HEADERS += %(headers)s
+
+DEFINES += %(defines)s
+
+"""
+ pro_meta_template = """TEMPLATE = subdirs
+
+SUBDIRS = %(subdirs)s
+"""
+
+
+def get_options():
+ parser = argparse.ArgumentParser(
+ description='LibreOffice gbuild IDE project generator')
+ parser.add_argument('--ide', dest='ide', required=True,
+ help='the IDE to generate project files for')
+ parser.add_argument('--make', dest='makecmd', required=True,
+ help='the command to execute make')
+ return parser.parse_args()
+
+
+if __name__ == '__main__':
+ args = get_options()
+ # FIXME: Hack
+ if args.makecmd == 'make':
+ args.makecmd = '/usr/bin/make'
+
+ paths = {}
+ generators = {
+ 'codelite': CodeliteIntegrationGenerator,
+ 'eclipsecdt': EclipseCDTIntegrationGenerator,
+ 'kdevelop': KdevelopIntegrationGenerator,
+ 'xcode': XcodeIntegrationGenerator,
+ 'vs': VisualStudioIntegrationGenerator,
+ 'vim': VimIntegrationGenerator,
+ 'debug': DebugIntegrationGenerator,
+ 'qtcreator': QtCreatorIntegrationGenerator,
+ }
+
+ if args.ide not in generators.keys():
+ print("Invalid ide. valid values are %s" % ','.join(generators.keys()))
+ sys.exit(1)
+
+ gbuildparser = GbuildParser(args.makecmd).parse()
+
+ generators[args.ide](gbuildparser, args.ide).emit()
+ print("Successfully created the project files.")
+
+# Local Variables:
+# indent-tabs-mode: nil
+# End:
+#
+# vim: set et sw=4 ts=4:
diff --git a/bin/gen-boost-headers b/bin/gen-boost-headers
new file mode 100755
index 000000000..2f6a6ecc8
--- /dev/null
+++ b/bin/gen-boost-headers
@@ -0,0 +1,69 @@
+#!/usr/bin/env bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# generate a bunch of dummy headers that wrap the crappy boost headers and
+# suppress a myriad of warnings; requires GCC's #include_next extension
+# To run this do: make cmd cmd="bin/gen-boost-headers"
+
+set -euo pipefail
+IFS=$'\n\t'
+
+GENDIR=${SRCDIR}/external/boost/include
+
+rm -rf ${GENDIR}
+mkdir ${GENDIR}
+
+# note: clucene contains a copy of half of boost, so ignore it too
+# note: firebird contains a copy of half of boost, so ignore it too
+
+cat <(cd ${SRCDIR} && git grep -h '^# *include') \
+ <(find ${WORKDIR}/UnpackedTarball/ -mindepth 1 -maxdepth 1 -type d \
+ | grep -v boost \
+ | grep -v clucene \
+ | grep -v firebird \
+ | xargs grep -hr '^# *include') \
+ | grep -o '\bboost.*\.\(h\|hpp\|ipp\)' \
+ | sort | uniq \
+ | while read -r HEADER; do
+ mkdir -p "$(dirname ${GENDIR}/${HEADER})"
+ cat > "${GENDIR}/${HEADER}" << _EOF
+/* generated by $0, do not edit! */
+#pragma once
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wpragmas" /* first! for GCC */
+#pragma GCC diagnostic ignored "-Wunknown-warning-option" // second! for Clang 5
+#pragma GCC diagnostic ignored "-Wdelete-non-virtual-dtor"
+#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
+#pragma GCC diagnostic ignored "-Wdeprecated-copy"
+#pragma GCC diagnostic ignored "-Wdeprecated-copy-dtor"
+#pragma GCC diagnostic ignored "-Wextra"
+#pragma GCC diagnostic ignored "-Wignored-qualifiers"
+#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
+#pragma GCC diagnostic ignored "-Winvalid-constexpr"
+#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
+#pragma GCC diagnostic ignored "-Wmicrosoft-unqualified-friend"
+#pragma GCC diagnostic ignored "-Wnon-virtual-dtor"
+#pragma GCC diagnostic ignored "-Wnonnull"
+#pragma GCC diagnostic ignored "-Wparentheses"
+#pragma GCC diagnostic ignored "-Wplacement-new"
+#pragma GCC diagnostic ignored "-Wreturn-type"
+#pragma GCC diagnostic ignored "-Wshadow"
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#pragma GCC diagnostic ignored "-Wtautological-constant-out-of-range-compare"
+#pragma GCC diagnostic ignored "-Wtype-limits"
+#pragma GCC diagnostic ignored "-Wundef"
+#pragma GCC diagnostic ignored "-Wunused-local-typedefs"
+#pragma GCC diagnostic ignored "-Wunused-macros"
+#pragma GCC diagnostic ignored "-Wunused-parameter"
+#pragma GCC diagnostic ignored "-Wunused-variable"
+#include_next <${HEADER}>
+#pragma GCC diagnostic pop
+_EOF
+ done
+
diff --git a/bin/gen-iwyu-dummy-lib.awk b/bin/gen-iwyu-dummy-lib.awk
new file mode 100644
index 000000000..464d9515c
--- /dev/null
+++ b/bin/gen-iwyu-dummy-lib.awk
@@ -0,0 +1,34 @@
+BEGIN { domatch = 0; }
+
+{
+ if ($0 ~ /use_external(s)?,/ )
+ {
+ if (index($0, "))"))
+ {
+ gsub(/.*,/, "");
+ gsub(/\)+/, "");
+ if (!($0 in exts))
+ {
+ exts[$0];
+ print $0;
+ }
+ }
+ else
+ {
+ domatch = 1;
+ }
+ }
+ else if ($0 ~ /\)\)/ )
+ {
+ domatch = 0;
+ }
+ else if (domatch == 1)
+ {
+ if (!($1 in exts))
+ {
+ exts[$1];
+ print $1;
+ }
+ }
+}
+
diff --git a/bin/generate-bash-completion.py b/bin/generate-bash-completion.py
new file mode 100755
index 000000000..db6f49e81
--- /dev/null
+++ b/bin/generate-bash-completion.py
@@ -0,0 +1,162 @@
+#!/usr/bin/env python3
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+"""
+Script to generate LibreOffice bash_completion file for the main applications
+"""
+
+import argparse
+import sys
+
+MASTERDOCS = ["sxg", "odm", "sgl"]
+
+BASEDOCS = ["odb"]
+
+CALCDOCS = ["sxc", "stc", "dif", "dbf", "xls", "xlw", "xlt", "rtf", "sdc", "vor",
+ "slk", "txt", "htm", "html", "wk1", "wks", "123", "xml", "ods", "ots",
+ "fods", "csv", "xlsb", "xlsm", "xlsx", "xltm", "xltx"]
+
+DRAWDOCS = ["sxd", "std", "dxf", "emf", "eps", "met", "pct", "sgf", "sgv", "sda",
+ "sdd", "vor", "svm", "wmf", "bmp", "gif", "jpg", "jpeg", "jfif", "fif",
+ "jpe", "pcd", "pcx", "pgm", "png", "ppm", "psd", "ras", "tga", "tif",
+ "tiff", "xbm", "xpm", "odg", "otg", "fodg", "odc", "odi", "sds",
+ "wpg", "svg", "vdx", "vsd", "vsdm", "vsdx", "pdf"]
+
+IMPRESSDOCS = ["sxi", "sti", "ppt", "pps", "pot", "sxd", "sda", "sdd", "sdp",
+ "vor", "cgm", "odp", "otp", "fodp", "ppsm", "ppsx", "pptm", "pptx",
+ "potm", "potx"]
+
+MATHDOCS = ["sxm", "smf", "mml", "odf"]
+
+WEBDOCS = ["htm", "html", "stw", "txt", "vor", "oth"]
+
+WRITERDOCS = ["doc", "dot", "rtf", "sxw", "stw", "sdw", "vor", "txt", "htm?",
+ "xml", "wp", "wpd", "wps", "odt", "ott", "fodt", "docm", "docx",
+ "dotm", "dotx"]
+
+TEMPLATES = ["stw", "dot", "vor", "stc", "xlt", "sti", "pot", "std", "stw",
+ "dotm", "dotx", "potm", "potx", "xltm", "xltx"]
+
+ALLDOCS = MASTERDOCS + BASEDOCS + CALCDOCS + DRAWDOCS + IMPRESSDOCS + MATHDOCS + WEBDOCS + WRITERDOCS + TEMPLATES
+
+EXTENSIONS = ["oxt"]
+
+
+class App(object):
+ def __init__(self, name, compat_name, suffix_list):
+ self.name = name
+ self.compat_name = compat_name
+ self.suffix_list = suffix_list
+
+
+class SetAppCompatName(argparse.Action):
+ def __call__(self, parser, namespace, values, option_string=None):
+ setattr(namespace, self.dest, True)
+ for app in APPS.values():
+ app.name = app.compat_name
+
+
+class SetAppName(argparse.Action):
+ def __call__(self, parser, namespace, values, option_string=None):
+ APPS[self.dest].name = values
+
+
+# default names of lowrappers
+# use "" for name if you want to disable any wrapper
+APPS = {
+ 'office': App("libreoffice", 'openoffice', ALLDOCS), # libreoffice should contain all
+ 'office_short': App("loffice", 'ooffice', ALLDOCS), # libreoffice should contain all
+ 'master': App("", '', MASTERDOCS),
+ 'base': App("lobase", 'oobase', BASEDOCS),
+ 'calc': App("localc", 'oocalc', CALCDOCS),
+ 'draw': App("lodraw", 'oodraw', DRAWDOCS),
+ 'impress': App("loimpress", 'ooimpress', IMPRESSDOCS),
+ 'math': App("lomath", 'oomath', MATHDOCS),
+ 'template': App("lofromtemplate", 'oofromtemplate', TEMPLATES),
+ 'unopkg': App("unopkg", 'unopkg', EXTENSIONS), # unopkg is a standalone tool
+ 'web': App("loweb", 'ooweb', WEBDOCS),
+ 'writer': App("lowriter", 'oowriter', WRITERDOCS + MASTERDOCS)
+}
+
+
+def check_open(filename, mode):
+ try:
+ with open(filename, mode):
+ pass
+ except OSError as e:
+ mode = 'reading' if mode == 'r' else 'writing'
+ sys.exit("Error: can't open %s for %s: %s" % (filename, mode, e))
+
+
+def print_app_suffixes_check(out, app):
+ if not app.suffix_list:
+ sys.exit('Error: No suffix defined for %s' % app.name)
+
+ suffix_str = '|'.join(['%s|%s' % (s, s.upper()) for s in app.suffix_list])
+ out.write(" %s)\t\te=\'!*.+(%s)\' ;;\n" % (app.name, suffix_str))
+
+
+def print_suffixes_check(out):
+ for app in APPS.values():
+ if not app.name: # skip the disabled wrapper
+ continue
+ print_app_suffixes_check(out, app)
+
+
+def main():
+ parser = argparse.ArgumentParser(description='Script to Generate bash completion for LO wrappers',
+ epilog='The other options allows to redefine the wrapper names.\n'
+ 'The value "" can be used to disable any wrapper.',
+ formatter_class=argparse.RawDescriptionHelpFormatter)
+ parser.add_argument('input_file')
+ parser.add_argument('output_file')
+ parser.add_argument('--binsuffix', metavar='suffix',
+ help='defines a suffix that is added after each wrapper')
+ parser.add_argument('--compat-oowrappers', metavar='', nargs=0, action=SetAppCompatName, default=False,
+ help='set wrapper names to the old default oo* wrapper names')
+ for app in APPS:
+ parser.add_argument('--%s' % app, metavar='wrapper_name', action=SetAppName)
+
+ args = parser.parse_args()
+
+ check_open(args.input_file, 'r')
+ check_open(args.output_file, 'w')
+
+ # add binsuffix
+ if args.binsuffix:
+ for app in APPS.values():
+ if app.name:
+ app.name += args.binsuffix
+
+ if args.compat_oowrappers:
+ office_shell_function = '_ooexp_'
+ else:
+ office_shell_function = '_loexp_'
+
+ # the last app will be printed without the final backslash
+ apps_to_print = ' \\\n'.join(['\t\t\t\t\t%s' % app.name for app in APPS.values() if app.name])
+
+ with open(args.input_file, 'r') as in_fh, open(args.output_file, 'w') as out_fh:
+ for line in in_fh:
+ line = line.replace('@OFFICE_SHELL_FUNCTION@', office_shell_function)
+ if '@BASH_COMPLETION_SUFFIXES_CHECKS@' in line:
+ print_suffixes_check(out_fh)
+ elif '@BASH_COMPLETION_OOO_APPS@' in line:
+ if not apps_to_print:
+ sys.exit('Error: No LO wrapper was selected')
+ out_fh.write('%s\n' % apps_to_print)
+ else:
+ out_fh.write(line)
+
+
+if __name__ == '__main__':
+ main()
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/get-bugzilla-attachments-by-mimetype b/bin/get-bugzilla-attachments-by-mimetype
new file mode 100755
index 000000000..609e6683a
--- /dev/null
+++ b/bin/get-bugzilla-attachments-by-mimetype
@@ -0,0 +1,430 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# This digs through a pile of bugzilla's and populates the cwd with a big
+# collection of bug-docs in per-filetype dirs with bug-ids as names with
+# prefixes to indicate which bug-tracker, e.g.
+#
+# fdo-bugid-X.suffix
+# rhbz-bugid-X.suffix
+# moz-bugid-X.suffix
+#
+# where X is the n'th attachment of that type in the bug
+#
+# The results are stored in the current directory, categorized by the
+# extension of the downloaded file. When a file already exists, it is assumed
+# it is already downloaded by a previous run, and up-to-date.
+
+from __future__ import print_function
+import feedparser
+import base64
+import datetime
+import glob
+import re
+import os, os.path
+import stat
+import sys
+import threading
+try:
+ import queue
+except:
+ import Queue as queue
+try:
+ from urllib.request import urlopen
+except:
+ from urllib import urlopen
+try:
+ import xmlrpc.client as xmlrpclib
+except:
+ import xmlrpclib
+from xml.dom import minidom
+from xml.sax.saxutils import escape
+from attachment_mimetypes import mimetypes
+
+def urlopen_retry(url):
+ maxretries = 3
+ for i in range(maxretries + 1):
+ try:
+ return urlopen(url)
+ except IOError as e:
+ print("caught IOError: " + str(e))
+ if maxretries == i:
+ raise
+ print("retrying...")
+
+def get_from_bug_url_via_xml(url, mimetype, prefix, suffix):
+ id = url.rsplit('=', 2)[1]
+ print("id is " + prefix + id + " " + suffix)
+ print("parsing " + id)
+ sock = urlopen_retry(url+"&ctype=xml")
+ dom = minidom.parse(sock)
+ sock.close()
+ attachmentid=0
+ for attachment in dom.getElementsByTagName('attachment'):
+ attachmentid += 1
+ print(" mimetype is", end=' ')
+ for node in attachment.childNodes:
+ if node.nodeName == 'type':
+ # check if attachment is deleted
+ if not node.firstChild:
+ print('deleted attachment, skipping')
+ continue
+
+ print(node.firstChild.nodeValue, end=' ')
+ if node.firstChild.nodeValue.lower() != mimetype.lower():
+ print('skipping')
+ break
+ elif node.nodeName == 'data':
+ # check if attachment is deleted (i.e. https://bugs.kde.org/show_bug.cgi?id=53343&ctype=xml)
+ if not node.firstChild:
+ print('deleted attachment, skipping')
+ continue
+
+ download = suffix + '/' +prefix + id + '-' + str(attachmentid) + '.' + suffix
+ if os.path.isfile(download):
+ print("assuming " + download + " is up to date")
+ continue
+
+ # prevent re-downloading FDO attachments from TDF
+ if prefix == "tdf" and int(id) < 88776:
+ fdodownload = download.replace("tdf", "fdo")
+ if os.path.isfile(fdodownload):
+ print("assuming FDO " + fdodownload + " is up to date")
+ continue
+
+ print('downloading as ' + download)
+ tmpfile = download + ".tmp"
+ f = open(tmpfile, 'wb')
+ f.write(base64.b64decode(node.firstChild.nodeValue))
+ f.close()
+ os.rename(tmpfile, download)
+ break
+
+def get_novell_bug_via_xml(url, mimetype, prefix, suffix):
+ id = url.rsplit('=', 2)[1]
+ print("id is " + prefix + id + " " + suffix)
+ print("parsing " + id)
+ sock = urlopen_retry(url+"&ctype=xml")
+ dom = minidom.parse(sock)
+ sock.close()
+ attachmentid=0
+ for comment in dom.getElementsByTagName('thetext'):
+ commentText = comment.firstChild.nodeValue
+ match = re.search(r".*Created an attachment \(id=([0-9]+)\)", commentText)
+ if not match:
+ continue
+
+ attachmentid += 1
+
+ download = suffix + '/' + prefix + id + '-' + str(attachmentid) + '.' + suffix
+ if os.path.isfile(download):
+ print("assuming " + download + " is up to date")
+ continue
+
+ realAttachmentId = match.group(1)
+ handle = urlopen_retry(novellattach + realAttachmentId)
+ if not handle:
+ print("attachment %s is not accessible" % realAttachmentId)
+ continue
+ print(" mimetype is", end=' ')
+
+ info = handle.info()
+ if info.get_content_type:
+ remoteMime = info.get_content_type()
+ else:
+ remoteMime = info.gettype()
+ print(remoteMime, end=' ')
+ if remoteMime != mimetype:
+ print("skipping")
+ continue
+
+ print('downloading as ' + download)
+ tmpfile = download + ".tmp"
+ f = open(tmpfile, 'wb')
+ f.write(handle.read())
+ f.close()
+ os.rename(tmpfile, download)
+
+def create_query(mimetype):
+ query = dict()
+ query['query_format']='advanced'
+ query['field0-0-0']='attachments.mimetype'
+ query['type0-0-0']='equals'
+ query['value0-0-0']=mimetype
+ return query
+
+def get_downloaded_files(prefix, suffix):
+ return glob.glob(os.path.join(suffix, '%s*.%s' % (prefix, suffix)))
+
+def get_file_bz_ids(files, prefix):
+ return set([os.path.basename(f).split('-')[0].replace(prefix, '', 1) for f in files])
+
+def get_changed_date(files):
+ newest = max([os.stat(f)[stat.ST_MTIME] for f in files])
+ # Subtract a day to avoid timezone differences. The worst thing that
+ # can happen is that we are going to process more bugs than necessary.
+ return datetime.date.fromtimestamp(newest - 24 * 60 * 60)
+
+def get_through_rpc_query(rpcurl, showurl, mimetype, prefix, suffix):
+ try:
+ os.mkdir(suffix)
+ except:
+ pass
+
+ def process(query, full, have=[]):
+ try:
+ proxy = xmlrpclib.ServerProxy(rpcurl)
+ result = proxy.Bug.search(query)
+ bugs = result['bugs']
+ print(str(len(bugs)) + ' bugs to process')
+
+ if full:
+ available = set([str(bug['id']) for bug in bugs])
+ # we already have files from all available bugs
+ if available.difference(set(have)) == set():
+ print("assuming all downloaded files are up to date")
+ return
+
+ for bug in bugs:
+ url = showurl + str(bug['id'])
+ get_from_bug_url_via_xml(url, mimetype, prefix, suffix)
+ except xmlrpclib.Fault as err:
+ print("A fault occurred")
+ print("Fault code: %s" % err.faultCode)
+ print(err.faultString)
+
+ query = create_query(mimetype)
+ query['column_list']='bug_id'
+
+ files = get_downloaded_files(prefix, suffix)
+
+ if files != []:
+ print('looking for updated bugs having %s attachment(s)' % mimetype)
+ query_changed = query.copy()
+ query_changed['field0-1-0'] = 'days_elapsed'
+ query_changed['type0-1-0'] = 'lessthaneq'
+ query_changed['value0-1-0'] = str((datetime.date.today() - get_changed_date(files)).days)
+ process(query_changed, False)
+
+ print('looking for all bugs having %s attachment(s)' % mimetype)
+ process(query, True, get_file_bz_ids(files, prefix))
+
+def get_through_rss_query(queryurl, mimetype, prefix, suffix):
+ try:
+ os.mkdir(suffix)
+ except:
+ pass
+
+ #Getting detailed bug information and downloading an attachment body is not possible without logging in to Novell bugzilla
+ #get_novell_bug_via_xml function is a workaround for that situation
+ get_bug_function = get_novell_bug_via_xml if prefix == "novell" else get_from_bug_url_via_xml
+
+ def process(query, full, have=[]):
+ url = queryurl + '?' + '&'.join(['='.join(kv) for kv in query.items()])
+ print('url is ' + url)
+ d = feedparser.parse(url)
+ print(str(len(d['entries'])) + ' bugs to process')
+
+ entries = []
+ for entry in d['entries']:
+ bugid = entry['id'].split('=')[-1]
+ entries.append(entry)
+
+ if full:
+ available = set([str(entry['id'].split('=')[-1]) for entry in entries])
+ # we already have files from all available bugs
+ if available.difference(set(have)) == set():
+ print("assuming all downloaded files are up to date")
+ return
+
+ for entry in entries:
+ try:
+ get_bug_function(entry['id'], mimetype, prefix, suffix)
+ except KeyboardInterrupt:
+ raise # Ctrl+C should work
+ except:
+ print(entry['id'] + " failed: " + str(sys.exc_info()[0]))
+ pass
+
+ query = create_query(escape(mimetype.replace("+","%2B")))
+ query['ctype'] = 'rss'
+
+ files = get_downloaded_files(prefix, suffix)
+
+ if files != []:
+ print('looking for updated bugs having %s attachment(s)' % mimetype)
+ query_changed = query.copy()
+ query_changed['field0-1-0'] = 'delta_ts'
+ query_changed['type0-1-0'] = 'greaterthaneq'
+ query_changed['value0-1-0'] = get_changed_date(files).isoformat()
+ process(query_changed, False)
+
+ print('looking for all bugs having %s attachment(s)' % mimetype)
+ process(query, True, get_file_bz_ids(files, prefix))
+
+#since searching bugs having attachments with specific mimetypes is not available in launchpad API
+#we're iterating over all bugs of the most interesting source packages
+launchpad_pkgs = (
+ "abiword",
+ "calibre",
+ "calligra",
+ "gnumeric",
+ "inkscape",
+ "koffice",
+ "libabw",
+ "libcdr",
+ "libe-book",
+ "libetonyek",
+ "libfreehand",
+ "libmspub",
+ "libmwaw",
+ "liborcus",
+ "libpagemaker",
+ "libreoffice",
+ "libvisio",
+ "libwpd",
+ "libwpg",
+ "libwps",
+ "openoffice.org",
+ "python-uniconvertor",
+ "scribus",
+ "sk1",
+ "unoconv",
+)
+
+def get_launchpad_bugs(prefix):
+ #launchpadlib python module is required to download launchpad attachments
+ from launchpadlib.launchpad import Launchpad
+
+ launchpad = Launchpad.login_anonymously("attachmentdownload", "production")
+ ubuntu = launchpad.distributions["ubuntu"]
+
+ for pkg in launchpad_pkgs:
+ srcpkg = ubuntu.getSourcePackage(name=pkg)
+ pkgbugs = srcpkg.searchTasks(status=["New", "Fix Committed", "Invalid", "Won't Fix", "Confirmed", "Triaged", "In Progress", "Incomplete", "Incomplete (with response)", "Incomplete (without response)", "Fix Released", "Opinion", "Expired"])
+
+ for bugtask in pkgbugs:
+ bug = bugtask.bug
+ id = str(bug.id)
+ print("parsing " + id + " status: " + bugtask.status + " title: " + bug.title[:50])
+ attachmentid = 0
+ for attachment in bug.attachments:
+ attachmentid += 1
+ handle = attachment.data.open()
+ if not handle.content_type in mimetypes:
+ #print "skipping"
+ continue
+
+ suffix = mimetypes[handle.content_type]
+ if not os.path.isdir(suffix):
+ try:
+ os.mkdir(suffix)
+ except:
+ pass
+
+ download = suffix + '/' + prefix + id + '-' + str(attachmentid) + '.' + suffix
+
+ if os.path.isfile(download):
+ print("assuming " + id + " is up to date")
+ break
+
+ print('mimetype is ' + handle.content_type + ' downloading as ' + download)
+
+ tmpfile = download + ".tmp"
+ f = open(tmpfile, "wb")
+ f.write(handle.read())
+ f.close()
+ os.rename(tmpfile, download)
+
+rss_bugzillas = (
+ ( 'abi', 'http://bugzilla.abisource.com/buglist.cgi' ), #added for abiword
+ ( 'fdo', 'http://bugs.freedesktop.org/buglist.cgi' ),
+ ( 'gentoo', 'http://bugs.gentoo.org/buglist.cgi' ),
+ ( 'gnome', 'http://bugzilla.gnome.org/buglist.cgi' ), # added for gnumeric
+ ( 'kde', 'http://bugs.kde.org/buglist.cgi' ), # added for koffice/calligra
+ ( 'mandriva', 'https://qa.mandriva.com/buglist.cgi' ),
+ ( 'moz', 'https://bugzilla.mozilla.org/buglist.cgi' ),
+ # It seems something has changed and it is no longer possible to
+ # download any files from there.
+ # NOTE: I am leaving it in the list, commented out, just so someone
+ # does not add it back immediately .-)
+ # 'novell': 'https://bugzilla.novell.com/buglist.cgi',
+# note: running this script against bz.apache.org apparently causes one's IP
+# to be banned or something; you won't get new files in any case...
+# ( 'ooo', 'https://bz.apache.org/ooo/buglist.cgi' ),
+ ( 'tdf', 'http://bugs.documentfoundation.org/buglist.cgi' ),
+)
+
+redhatrpc = 'https://bugzilla.redhat.com/xmlrpc.cgi'
+redhatbug = 'https://bugzilla.redhat.com/show_bug.cgi?id='
+
+#Novell Bugzilla requires users to log in, in order to get details of the bugs such as attachment bodies etc.
+#As a dirty workaround, we parse comments containing "Created an attachment (id=xxxxxx)" and download attachments manually
+#python-bugzilla claims that it supports Novell bugzilla login but it's not working right now and novell bugzilla login
+#system is a nightmare
+novellattach = 'https://bugzilla.novell.com/attachment.cgi?id='
+
+class manage_threads(threading.Thread):
+ def run(self):
+ #print(threading.current_thread().get_ident())
+ while 1:
+ # Try to receive a job from queue
+ try:
+ # Get job from queue
+ # Use job parameters to call our query
+ # Then let the queue know we are done with this job
+ (uri, mimetype, prefix, extension) = jobs.get(True,6)
+ try:
+ get_through_rss_query(uri, mimetype, prefix, extension)
+ finally:
+ jobs.task_done()
+ except KeyboardInterrupt:
+ raise # Ctrl+C should work
+ except queue.Empty:
+ break
+
+def generate_multi_threading():
+
+ # Initialize threads
+ for i in range(max_threads):
+ manage_threads().start()
+
+ for (prefix, uri) in rss_bugzillas:
+
+ # Create a job for every mimetype for a bugzilla
+ for (mimetype,extension) in mimetypes.items():
+ # It seems that bugzilla has problems returning that many results
+ # (10000 results is probably a limit set somewhere) so we always
+ # end processing the complete list.
+ if mimetype == 'text/html' and prefix == 'moz':
+ continue
+
+ jobs.put([uri, mimetype, prefix, extension], block=True)
+ print("successfully placed a job in the queue searching for " + mimetype + " in bugtracker " + prefix)
+
+ # Continue when all mimetypes are done for a bugzilla
+ print("STARTED all bugtracker " + prefix)
+
+ jobs.join()
+
+max_threads = 20 # Number of threads to create, (1 = without multi-threading)
+jobs = queue.Queue()
+
+generate_multi_threading()
+
+for (mimetype,extension) in mimetypes.items():
+ get_through_rpc_query(redhatrpc, redhatbug, mimetype, "rhbz", extension)
+
+try:
+ get_launchpad_bugs("lp")
+except ImportError:
+ print("launchpadlib unavailable, skipping Ubuntu tracker")
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/get-forum-attachments.py b/bin/get-forum-attachments.py
new file mode 100755
index 000000000..4e46befef
--- /dev/null
+++ b/bin/get-forum-attachments.py
@@ -0,0 +1,167 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import argparse
+import configparser
+import hashlib
+import magic
+import os
+import requests
+import shutil
+import sys
+import tempfile
+
+from bs4 import BeautifulSoup
+from attachment_mimetypes import mimetypes
+from concurrent.futures import ThreadPoolExecutor, as_completed
+from requests.adapters import HTTPAdapter
+from requests.packages.urllib3.util.retry import Retry
+
+forums = {
+ # https://wiki.documentfoundation.org/Website/Web_Sites_services#Unofficial_and_Related_Pages
+ 'en': "https://forum.openoffice.org/en/forum",
+ 'es': "https://forum.openoffice.org/es/forum",
+ 'fr': "https://forum.openoffice.org/fr/forum",
+ 'hu': "https://forum.openoffice.org/hu/forum",
+ 'it': "https://forum.openoffice.org/it/forum",
+ 'ja': "https://forum.openoffice.org/ja/forum",
+ 'nl': "https://forum.openoffice.org/nl/forum",
+ 'pl': "https://forum.openoffice.org/pl/forum",
+ 'vi': "https://forum.openoffice.org/vi/forum",
+ 'tr': "https://forum.libreoffice.org.tr",
+ 'de': "https://www.openoffice-forum.de",
+ 'de2': "https://www.libreoffice-forum.de",
+ 'de3': "https://de.openoffice.info",
+ # Others
+ 'mso-en': "https://www.msofficeforums.com",
+ 'mso-de': "https://www.ms-office-forum.net/forum",
+}
+
+def do_login(session, url, configFile):
+ config = configparser.ConfigParser()
+
+ config.read(configFile)
+ username = config.get('login', 'username')
+ password = config.get('login', 'password')
+ resp = session.post(url + '/login.php?do=login', {
+ 'vb_login_username': username,
+ 'vb_login_password': '',
+ 'vb_login_md5password': hashlib.md5(password.encode()).hexdigest(),
+ 'vb_login_md5password_utf': hashlib.md5(password.encode()).hexdigest(),
+ 'cookieuser': 1,
+ 'do': 'login',
+ 's': '',
+ 'securitytoken': 'guest'
+ })
+
+ if resp.status_code != 200:
+ return False
+
+ soup = BeautifulSoup(resp.content, 'lxml')
+ for p in soup.find_all("p"):
+ if 'Thank you for logging in' in p.get_text():
+ return True
+ elif 'Danke für Ihre Anmeldung' in p.get_text():
+ return True
+
+ return False
+
+def get_attachments_from_url(lang, url, pathes):
+
+ print("Checking " + url)
+
+ startIndex = 0
+
+ # Keep the index and resume from there
+ indexFile = os.path.join(pathes.outdir, lang + ".index")
+ if os.path.isfile(indexFile):
+ with open(indexFile) as f:
+ startIndex = int(f.readline().rstrip()) + 1
+ else:
+ if lang == 'hu':
+ startIndex = 1300
+
+ session = requests.Session()
+ retry = Retry(connect=3, backoff_factor=0.5)
+ adapter = HTTPAdapter(max_retries=retry)
+ session.mount('http://', adapter)
+ session.mount('https://', adapter)
+
+ if lang.startswith("mso"):
+ if not do_login(session, url, pathes.config):
+ print("Can't log in to " + url)
+ return
+
+ invalidCount = 0
+ for i in range(startIndex, 999999):
+ if lang.startswith("mso"):
+ fileUrl = url + "/attachment.php?attachmentid=" + str(i)
+ else:
+ fileUrl = url + "/download/file.php?id=" + str(i)
+
+ h = session.head(fileUrl)
+ header = h.headers
+ content_type = header.get('content-type')
+ if "html" in content_type:
+ # Let's assume this is an invalid file link
+ invalidCount += 1
+
+ # Let's assume, if we get 100 invalid files, that there are no more files
+ if invalidCount == 100:
+ print("No more attachments found in " + url)
+ break
+ else:
+ invalidCount = 0
+
+ r = session.get(fileUrl, allow_redirects=True)
+ with tempfile.NamedTemporaryFile() as tmp:
+ tmp.write(r.content)
+ mimetype = magic.from_file(tmp.name, mime=True)
+ if mimetype in mimetypes:
+ suffix = mimetypes[mimetype]
+ suffixDir = os.path.join(pathes.outdir, suffix)
+ try:
+ os.mkdir(suffixDir)
+ except:
+ pass
+
+ download = os.path.join(suffixDir,
+ "forum-" + lang + '-' + str(i) + '.' + suffix)
+
+ print("Downloading as " + download)
+ shutil.copy(tmp.name, download)
+
+ # Save the index
+ with open(indexFile, 'w') as f:
+ f.write(str(i))
+
+if __name__ == '__main__':
+ parser = argparse.ArgumentParser()
+
+ parser.add_argument('--outdir', action='store', dest="outdir", required=True)
+ parser.add_argument('--config', action="store", dest="config", required=True)
+
+ pathes = parser.parse_args()
+
+ if not os.path.exists(pathes.outdir) or os.path.isfile(pathes.outdir):
+ print("Outdir folder doesn't exists")
+ sys.exit(1)
+ elif not os.path.exists(pathes.config) or not os.path.isfile(pathes.config):
+ print("Config file doesn't exists")
+ sys.exit(1)
+
+ processes = []
+ # 10 at a time seems to work fine
+ with ThreadPoolExecutor(max_workers=10) as executor:
+ for lang, url in forums.items():
+ processes.append(executor.submit(get_attachments_from_url, lang, url, pathes))
+
+ for task in as_completed(processes):
+ result = task.result()
+ if result:
+ print(result)
diff --git a/bin/get_config_variables b/bin/get_config_variables
new file mode 100644
index 000000000..aa8198a44
--- /dev/null
+++ b/bin/get_config_variables
@@ -0,0 +1,29 @@
+#!/bin/sh
+#set -x
+
+glv_var="$1"
+glv_config="config_host.mk"
+
+if [ "$glv_var" = "--build" ] ; then
+ glv_config="config_build.mk"
+ shift
+elif [ "$glv_var" = "--host" ] ; then
+ shift
+fi
+
+# full path, in case we export a "wrong" PATH
+test -n "$GREP" && glv_grep="$GREP" || glv_grep=$(command -v grep)
+test -n "$SED" && glv_sed="$SED" || glv_sed=$(command -v sed)
+
+while [ -n "$1" ] ; do
+ glv_var="$1"
+ shift
+ glv_value=$("${glv_grep}" "^ *export ${glv_var}=" ${glv_config} | "${glv_sed}" -e 's/[^=]*=//')
+ export ${glv_var}="${glv_value}"
+done
+
+unset glv_var
+unset glv_value
+unset glv_config
+unset glv_sed
+unset glv_grep
diff --git a/bin/git-ps1 b/bin/git-ps1
new file mode 100755
index 000000000..8a0980091
--- /dev/null
+++ b/bin/git-ps1
@@ -0,0 +1,52 @@
+#!/usr/bin/env bash
+r=
+b=
+g="$(git rev-parse --git-dir 2>/dev/null)"
+
+if [ -n "$g" ]; then
+ if [ -d "$g/../.dotest" ]
+ then
+ if test -f "$g/../.dotest/rebasing"
+ then
+ r="|REBASE"
+ elif test -f "$g/../.dotest/applying"
+ then
+ r="|AM"
+ else
+ r="|AM/REBASE"
+ fi
+ b="$(git symbolic-ref HEAD 2>/dev/null)"
+ elif [ -f "$g/.dotest-merge/interactive" ]
+ then
+ r="|REBASE-i"
+ b="$(cat "$g/.dotest-merge/head-name")"
+ elif [ -d "$g/.dotest-merge" ]
+ then
+ r="|REBASE-m"
+ b="$(cat "$g/.dotest-merge/head-name")"
+ elif [ -f "$g/MERGE_HEAD" ]
+ then
+ r="|MERGING"
+ b="$(git symbolic-ref HEAD 2>/dev/null)"
+ else
+ if [ -f "$g/BISECT_LOG" ]
+ then
+ r="|BISECTING"
+ fi
+ if ! b="$(git symbolic-ref HEAD 2>/dev/null)"
+ then
+ if ! b="$(git describe --exact-match HEAD 2>/dev/null)"
+ then
+ b="$(cut -c1-7 "$g/HEAD")..."
+ fi
+ fi
+ fi
+
+ if [ -n "$1" ]; then
+ printf "$1" "${b##refs/heads/}$r"
+ else
+ printf "%s" "${b##refs/heads/}$r"
+ fi
+else
+ printf "not-in-git"
+fi
diff --git a/bin/gla11y b/bin/gla11y
new file mode 100755
index 000000000..c3ae7be67
--- /dev/null
+++ b/bin/gla11y
@@ -0,0 +1,1481 @@
+#!/usr/bin/env python
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This file incorporates work covered by the following license notice:
+#
+# Copyright (c) 2018 Martin Pieuchot
+# Copyright (c) 2018-2020 Samuel Thibault <sthibault@hypra.fr>
+#
+# Permission to use, copy, modify, and distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+# Take LibreOffice (glade) .ui files and check for non accessible widgets
+
+from __future__ import print_function
+
+import os
+import sys
+import getopt
+try:
+ import lxml.etree as ET
+ lxml = True
+except ImportError:
+ if sys.version_info < (2,7):
+ print("gla11y needs lxml or python >= 2.7")
+ exit()
+ import xml.etree.ElementTree as ET
+ lxml = False
+
+howto_url = "https://wiki.documentfoundation.org/Development/Accessibility"
+
+# Toplevel widgets
+widgets_toplevel = [
+ 'GtkWindow',
+ 'GtkOffscreenWindow',
+ 'GtkApplicationWindow',
+ 'GtkDialog',
+ 'GtkFileChooserDialog',
+ 'GtkColorChooserDialog',
+ 'GtkFontChooserDialog',
+ 'GtkMessageDialog',
+ 'GtkRecentChooserDialog',
+ 'GtkAssistant',
+ 'GtkAppChooserDialog',
+ 'GtkPrintUnixDialog',
+ 'GtkShortcutsWindow',
+]
+
+widgets_ignored = widgets_toplevel + [
+ # Containers
+ 'GtkBox',
+ 'GtkGrid',
+ 'GtkNotebook',
+ 'GtkFrame',
+ 'GtkAspectFrame',
+ 'GtkListBox',
+ 'GtkFlowBox',
+ 'GtkOverlay',
+ 'GtkMenuBar',
+ 'GtkToolbar',
+ 'GtkToolpalette',
+ 'GtkPaned',
+ 'GtkHPaned',
+ 'GtkVPaned',
+ 'GtkButtonBox',
+ 'GtkHButtonBox',
+ 'GtkVButtonBox',
+ 'GtkLayout',
+ 'GtkFixed',
+ 'GtkEventBox',
+ 'GtkExpander',
+ 'GtkViewport',
+ 'GtkScrolledWindow',
+ 'GtkRevealer',
+ 'GtkSearchBar',
+ 'GtkHeaderBar',
+ 'GtkStack',
+ 'GtkPopover',
+ 'GtkPopoverMenu',
+ 'GtkActionBar',
+ 'GtkHandleBox',
+ 'GtkShortcutsSection',
+ 'GtkShortcutsGroup',
+ 'GtkTable',
+
+ 'GtkVBox',
+ 'GtkHBox',
+ 'GtkToolItem',
+ 'GtkMenu',
+
+ # Invisible actions
+ 'GtkSeparator',
+ 'GtkHSeparator',
+ 'GtkVSeparator',
+ 'GtkAction',
+ 'GtkToggleAction',
+ 'GtkActionGroup',
+ 'GtkCellRendererGraph',
+ 'GtkCellRendererPixbuf',
+ 'GtkCellRendererProgress',
+ 'GtkCellRendererSpin',
+ 'GtkCellRendererText',
+ 'GtkCellRendererToggle',
+ 'GtkSeparatorMenuItem',
+ 'GtkSeparatorToolItem',
+
+ # Storage objects
+ 'GtkListStore',
+ 'GtkTreeStore',
+ 'GtkTreeModelFilter',
+ 'GtkTreeModelSort',
+
+ 'GtkEntryBuffer',
+ 'GtkTextBuffer',
+ 'GtkTextTag',
+ 'GtkTextTagTable',
+
+ 'GtkSizeGroup',
+ 'GtkWindowGroup',
+ 'GtkAccelGroup',
+ 'GtkAdjustment',
+ 'GtkEntryCompletion',
+ 'GtkIconFactory',
+ 'GtkStatusIcon',
+ 'GtkFileFilter',
+ 'GtkRecentFilter',
+ 'GtkRecentManager',
+ 'GThemedIcon',
+
+ 'GtkTreeSelection',
+
+ 'GtkListBoxRow',
+ 'GtkTreeViewColumn',
+
+ # Useless to label
+ 'GtkScrollbar',
+ 'GtkHScrollbar',
+ 'GtkStatusbar',
+ 'GtkInfoBar',
+
+ # These are actually labels
+ 'GtkLinkButton',
+
+ # This precisely give a11y information :)
+ 'AtkObject',
+]
+
+widgets_suffixignored = [
+]
+
+# These widgets always need a label
+widgets_needlabel = [
+ 'GtkEntry',
+ 'GtkSearchEntry',
+ 'GtkScale',
+ 'GtkHScale',
+ 'GtkVScale',
+ 'GtkSpinButton',
+ 'GtkSwitch',
+]
+
+# These widgets normally have their own label
+widgets_buttons = [
+ 'GtkButton',
+ 'GtkToolButton',
+ 'GtkToggleButton',
+ 'GtkToggleToolButton',
+ 'GtkRadioButton',
+ 'GtkRadioToolButton',
+ 'GtkCheckButton',
+ 'GtkModelButton',
+ 'GtkLockButton',
+ 'GtkColorButton',
+ 'GtkMenuButton',
+
+ 'GtkMenuItem',
+ 'GtkImageMenuItem',
+ 'GtkMenuToolButton',
+ 'GtkRadioMenuItem',
+ 'GtkCheckMenuItem',
+]
+
+# These widgets are labels that can label other widgets
+widgets_labels = [
+ 'GtkLabel',
+ 'GtkAccelLabel',
+]
+
+# The rest should probably be labelled if there are orphan labels
+
+# GtkSpinner
+# GtkProgressBar
+# GtkLevelBar
+
+# GtkComboBox
+# GtkComboBoxText
+# GtkFileChooserButton
+# GtkAppChooserButton
+# GtkFontButton
+# GtkCalendar
+# GtkColorChooserWidget
+
+# GtkCellView
+# GtkTreeView
+# GtkTextView
+# GtkIconView
+
+# GtkImage
+# GtkArrow
+# GtkDrawingArea
+
+# GtkScaleButton
+# GtkVolumeButton
+
+
+# TODO:
+# GtkColorPlane ?
+# GtkColorScale ?
+# GtkColorSwatch ?
+# GtkFileChooserWidget ?
+# GtkFishbowl ?
+# GtkFontChooserWidget ?
+# GtkIcon ?
+# GtkInspector* ?
+# GtkMagnifier ?
+# GtkPathBar ?
+# GtkPlacesSidebar ?
+# GtkPlacesView ?
+# GtkPrinterOptionWidget ?
+# GtkStackCombo ?
+# GtkStackSidebar ?
+# GtkStackSwitcher ?
+
+progname = os.path.basename(sys.argv[0])
+
+# This dictionary contains the set of suppression lines as read from the
+# suppression file(s). It is merely indexed by the text of the suppression line
+# and contains whether the suppressions was unused.
+suppressions = {}
+
+# This dictionary is indexed like suppressions and returns a "file:line" string
+# to report where in the suppression file the suppression was read
+suppressions_to_line = {}
+
+# This dictionary is similar to the suppressions dictionary, but for false
+# positives rather than suppressions
+false_positives = {}
+
+# This dictionary is indexed by the xml id and returns the element object.
+ids = {}
+# This dictionary is indexed by the xml id and returns whether several objects
+# have the same id.
+ids_dup = {}
+
+# This dictionary is indexed by the xml id of an element A and returns the list
+# of objects which are labelled-by A.
+labelled_by_elm = {}
+
+# This dictionary is indexed by the xml id of an element A and returns the list
+# of objects which are label-for A.
+label_for_elm = {}
+
+# This dictionary is indexed by the xml id of an element A and returns the list
+# of objects which have a mnemonic-for A.
+mnemonic_for_elm = {}
+
+# Possibly a file name to put generated suppression lines in
+gen_suppr = None
+# The corresponding opened file
+gen_supprfile = None
+# A prefix to remove from file names in the generated suppression lines
+suppr_prefix = ""
+
+# Possibly an opened file in which our output should also be written to.
+outfile = None
+
+# Whether -p option was set, i.e. print XML class path instead of line number in
+# the output
+pflag = False
+
+# Whether we should warn about labels which are orphan
+warn_orphan_labels = True
+
+# Number of errors
+errors = 0
+# Number of suppressed errors
+errexists = 0
+# Number of warnings
+warnings = 0
+# Number of suppressed warnings
+warnexists = 0
+# Number of fatal errors
+fatals = 0
+# Number of suppressed fatal errors
+fatalexists = 0
+
+# List of warnings and errors which are fatal
+#
+# Format of each element: (enabled, type, class)
+# See the is_enabled function: the list is traversed completely, each element
+# can specify whether it enables or disables the warning, possibly the type of
+# warning to be enabled/disabled, possibly the class of XML element for which it
+# should be enabled.
+#
+# This mechanism matches the semantic of the parameters on the command line,
+# each of which refining the semantic set by the previous parameters
+dofatals = [ ]
+
+# List of warnings and errors which are enabled
+# Same format as dofatals
+enables = [ ]
+
+# buffers all printed output, so it isn't split in parallel builds
+output_buffer = ""
+
+#
+# XML browsing and printing functions
+#
+
+def elm_parent(root, elm):
+ """
+ Return the parent of the element.
+ """
+ if lxml:
+ return elm.getparent()
+ else:
+ def find_parent(cur, elm):
+ for o in cur:
+ if o == elm:
+ return cur
+ parent = find_parent(o, elm)
+ if parent is not None:
+ return parent
+ return None
+ return find_parent(root, elm)
+
+def step_elm(elm):
+ """
+ Return the XML class path step corresponding to elm.
+ This can be empty if the elm does not have any class or id.
+ """
+ step = elm.attrib.get('class')
+ if step is None:
+ step = ""
+ oid = elm.attrib.get('id')
+ if oid is not None:
+ oid = oid.encode('ascii','ignore').decode('ascii')
+ step += "[@id='%s']" % oid
+ if len(step) > 0:
+ step += '/'
+ return step
+
+def find_elm(root, elm):
+ """
+ Return the XML class path of the element from the given root.
+ This is the slow version used when getparent is not available.
+ """
+ if root == elm:
+ return ""
+ for o in root:
+ path = find_elm(o, elm)
+ if path is not None:
+ step = step_elm(o)
+ return step + path
+ return None
+
+def errpath(filename, tree, elm):
+ """
+ Return the XML class path of the element
+ """
+ if elm is None:
+ return ""
+ path = ""
+ if 'class' in elm.attrib:
+ path += elm.attrib['class']
+ oid = elm.attrib.get('id')
+ if oid is not None:
+ oid = oid.encode('ascii','ignore').decode('ascii')
+ path = "//" + path + "[@id='%s']" % oid
+ else:
+ if lxml:
+ elm = elm.getparent()
+ while elm is not None:
+ step = step_elm(elm)
+ path = step + path
+ elm = elm.getparent()
+ else:
+ path = find_elm(tree.getroot(), elm)[:-1]
+ path = filename + ':' + path
+ return path
+
+#
+# Warning/Error printing functions
+#
+
+def elm_prefix(filename, elm):
+ """
+ Return the display prefix of the element
+ """
+ if elm == None or not lxml:
+ return "%s:" % filename
+ else:
+ return "%s:%u" % (filename, elm.sourceline)
+
+def elm_name(elm):
+ """
+ Return a display name of the element
+ """
+ if elm is not None:
+ name = ""
+ if 'class' in elm.attrib:
+ name = "'%s' " % elm.attrib['class']
+ if 'id' in elm.attrib:
+ id = elm.attrib['id'].encode('ascii','ignore').decode('ascii')
+ name += "'%s' " % id
+ if not name:
+ name = "'" + elm.tag + "'"
+ if lxml:
+ name += " line " + str(elm.sourceline)
+ return name
+ return ""
+
+def elm_name_line(elm):
+ """
+ Return a display name of the element with line number
+ """
+ if elm is not None:
+ name = elm_name(elm)
+ if lxml and " line " not in name:
+ name += "line " + str(elm.sourceline) + " "
+ return name
+ return ""
+
+def elm_line(elm):
+ """
+ Return the line for the given element.
+ """
+ if lxml:
+ return " line " + str(elm.sourceline)
+ else:
+ return ""
+
+def elms_lines(elms):
+ """
+ Return the list of lines for the given elements.
+ """
+ if lxml:
+ return " lines " + ', '.join([str(l.sourceline) for l in elms])
+ else:
+ return ""
+
+def elms_names_lines(elms):
+ """
+ Return the list of names and lines for the given elements.
+ """
+ return ', '.join([elm_name_line(elm) for elm in elms])
+
+def elm_suppr(filename, tree, elm, msgtype, dogen):
+ """
+ Return the prefix to be displayed to the user and the suppression line for
+ the warning type "msgtype" for element "elm"
+ """
+ global gen_suppr, gen_supprfile, suppr_prefix, pflag
+
+ if suppressions or false_positives or gen_suppr is not None or pflag:
+ prefix = errpath(filename, tree, elm)
+ if prefix[0:len(suppr_prefix)] == suppr_prefix:
+ prefix = prefix[len(suppr_prefix):]
+
+ if suppressions or false_positives or gen_suppr is not None:
+ suppr = '%s %s' % (prefix, msgtype)
+
+ if gen_suppr is not None and msgtype is not None and dogen:
+ if gen_supprfile is None:
+ gen_supprfile = open(gen_suppr, 'w')
+ print(suppr, file=gen_supprfile)
+ else:
+ suppr = None
+
+ if not pflag:
+ # Use user-friendly line numbers
+ prefix = elm_prefix(filename, elm)
+ if prefix[0:len(suppr_prefix)] == suppr_prefix:
+ prefix = prefix[len(suppr_prefix):]
+
+ return (prefix, suppr)
+
+def is_enabled(elm, msgtype, l, default):
+ """
+ Test whether warning type msgtype is enabled for elm in l
+ """
+ enabled = default
+ for (enable, thetype, klass) in l:
+ # Match warning type
+ if thetype is not None:
+ if thetype != msgtype:
+ continue
+ # Match elm class
+ if klass is not None and elm is not None:
+ if klass != elm.attrib.get('class'):
+ continue
+ enabled = enable
+ return enabled
+
+def err(filename, tree, elm, msgtype, msg, error = True):
+ """
+ Emit a warning or error for an element
+ """
+ global errors, errexists, warnings, warnexists, fatals, fatalexists, output_buffer
+
+ # Let user tune whether a warning or error
+ fatal = is_enabled(elm, msgtype, dofatals, error)
+
+ # By default warnings and errors are enabled, but let user tune it
+ if not is_enabled(elm, msgtype, enables, True):
+ return
+
+ (prefix, suppr) = elm_suppr(filename, tree, elm, msgtype, True)
+ if suppr in false_positives:
+ # That was actually expected
+ return
+ if suppr in suppressions:
+ # Suppressed
+ suppressions[suppr] = False
+ if fatal:
+ fatalexists += 1
+ if error:
+ errexists += 1
+ else:
+ warnexists += 1
+ return
+
+ if error:
+ errors += 1
+ else:
+ warnings += 1
+ if fatal:
+ fatals += 1
+
+ msg = "%s %s%s: %s%s" % (prefix,
+ "FATAL " if fatal else "",
+ "ERROR" if error else "WARNING",
+ elm_name(elm), msg)
+ output_buffer += msg + "\n"
+ if outfile is not None:
+ print(msg, file=outfile)
+
+def warn(filename, tree, elm, msgtype, msg):
+ """
+ Emit a warning for an element
+ """
+ err(filename, tree, elm, msgtype, msg, False)
+
+#
+# Labelling testing functions
+#
+
+def find_button_parent(root, elm):
+ """
+ Find a parent which is a button
+ """
+ if lxml:
+ parent = elm.getparent()
+ if parent is not None:
+ if parent.attrib.get('class') in widgets_buttons:
+ return parent
+ return find_button_parent(root, parent)
+ else:
+ def find_parent(cur, elm):
+ for o in cur:
+ if o == elm:
+ if cur.attrib.get('class') in widgets_buttons:
+ # we are the button, immediately above the target
+ return cur
+ else:
+ # we aren't the button, but target is over there
+ return True
+ parent = find_parent(o, elm)
+ if parent == True:
+ # It is over there, but didn't find a button yet
+ if cur.attrib.get('class') in widgets_buttons:
+ # we are the button
+ return cur
+ else:
+ return True
+ if parent is not None:
+ # we have the button parent over there
+ return parent
+ return None
+ parent = find_parent(root, elm)
+ if parent == True:
+ parent = None
+ return parent
+
+
+def is_labelled_parent(elm):
+ """
+ Return whether this element is a labelled parent
+ """
+ klass = elm.attrib.get('class')
+ if klass in widgets_toplevel:
+ return True
+ if klass == 'GtkShortcutsGroup':
+ children = elm.findall("property[@name='title']")
+ if len(children) >= 1:
+ return True
+ if klass == 'GtkFrame' or klass == 'GtkNotebook':
+ children = elm.findall("child[@type='tab']") + elm.findall("child[@type='label']")
+ if len(children) >= 1:
+ return True
+ return False
+
+def elm_labelled_parent(root, elm):
+ """
+ Return the first labelled parent of the element, which can thus be used as
+ the root of widgets with common labelled context
+ """
+
+ if lxml:
+ def find_labelled_parent(elm):
+ if is_labelled_parent(elm):
+ return elm
+ parent = elm.getparent()
+ if parent is None:
+ return None
+ return find_labelled_parent(parent)
+ parent = elm.getparent()
+ if parent is None:
+ return None
+ return find_labelled_parent(elm.getparent())
+ else:
+ def find_labelled_parent(cur, elm):
+ if cur == elm:
+ # the target element is over there
+ return True
+ for o in cur:
+ parent = find_labelled_parent(o, elm)
+ if parent == True:
+ # target element is over there, check ourself
+ if is_labelled_parent(cur):
+ # yes, and we are the first ancestor of the target element
+ return cur
+ else:
+ # no, but target element is over there.
+ return True
+ if parent != None:
+ # the first ancestor of the target element was over there
+ return parent
+ return None
+ parent = find_labelled_parent(root, elm)
+ if parent == True:
+ parent = None
+ return parent
+
+def is_orphan_label(filename, tree, root, obj, orphan_root, doprint = False):
+ """
+ Check whether this label has no accessibility relation, or doubtful relation
+ because another label labels the same target
+ """
+ global label_for_elm, labelled_by_elm, mnemonic_for_elm, warnexists
+
+ # label-for
+ label_for = obj.findall("accessibility/relation[@type='label-for']")
+ for rel in label_for:
+ target = rel.attrib['target']
+ l = label_for_elm[target]
+ if len(l) > 1:
+ return True
+
+ # mnemonic_widget
+ mnemonic_for = obj.findall("property[@name='mnemonic_widget']") + \
+ obj.findall("property[@name='mnemonic-widget']")
+ for rel in mnemonic_for:
+ target = rel.text
+ l = mnemonic_for_elm[target]
+ if len(l) > 1:
+ return True
+
+ if len(label_for) > 0:
+ # At least one label-for, we are not orphan.
+ return False
+
+ if len(mnemonic_for) > 0:
+ # At least one mnemonic_widget, we are not orphan.
+ return False
+
+ labelled_by = obj.findall("accessibility/relation[@type='labelled-by']")
+ if len(labelled_by) > 0:
+ # Oh, a labelled label, probably not to be labelling anything
+ return False
+
+ # explicit role?
+ roles = [x.text for x in obj.findall("child[@internal-child='accessible']/object[@class='AtkObject']/property[@name='AtkObject::accessible-role']")]
+ roles += [x.attrib.get("type") for x in obj.findall("accessibility/role")]
+ if len(roles) > 1 and doprint:
+ err(filename, tree, obj, "multiple-role", "has multiple <child internal-child='accessible'><object class='AtkObject'><property name='AtkBoject::accessible-role'>"
+ "%s" % elms_lines(children))
+ for role in roles:
+ if role == 'static' or role == 'ATK_ROLE_STATIC':
+ # This is static text, not meant to label anything
+ return False
+
+ parent = elm_parent(root, obj)
+ if parent is not None:
+ childtype = parent.attrib.get('type')
+ if childtype is None:
+ childtype = parent.attrib.get('internal-child')
+ if parent.tag == 'child' and childtype == 'label' \
+ or childtype == 'tab':
+ # This is a frame or a notebook label, not orphan.
+ return False
+
+ if find_button_parent(root, obj) is not None:
+ # This label is part of a button
+ return False
+
+ oid = obj.attrib.get('id')
+ if oid is not None:
+ if oid in labelled_by_elm:
+ # Some widget is labelled by us, we are not orphan.
+ # We should have had a label-for, will warn about it later.
+ return False
+
+ # No label-for, no mnemonic-for, no labelled-by, we are orphan.
+ (_, suppr) = elm_suppr(filename, tree, obj, "orphan-label", False)
+ if suppr in false_positives:
+ # That was actually expected
+ return False
+ if suppr in suppressions:
+ # Warning suppressed for this label
+ if suppressions[suppr]:
+ warnexists += 1
+ suppressions[suppr] = False
+ return False
+
+ if doprint:
+ context = elm_name(orphan_root)
+ if context:
+ context = " within " + context
+ warn(filename, tree, obj, "orphan-label", "does not specify what it labels" + context)
+ return True
+
+def is_orphan_widget(filename, tree, root, obj, orphan, orphan_root, doprint = False):
+ """
+ Check whether this widget has no accessibility relation.
+ """
+ global warnexists
+ if obj.tag != 'object':
+ return False
+
+ oid = obj.attrib.get('id')
+ klass = obj.attrib.get('class')
+
+ # "Don't care" special case
+ if klass in widgets_ignored:
+ return False
+ for suffix in widgets_suffixignored:
+ if klass[-len(suffix):] == suffix:
+ return False
+
+ # Widgets usual do not strictly require a label, i.e. a labelled parent
+ # is enough for context, but some do always need one.
+ requires_label = klass in widgets_needlabel
+
+ labelled_by = obj.findall("accessibility/relation[@type='labelled-by']")
+
+ # Labels special case
+ if klass in widgets_labels:
+ return False
+
+ # Case 1: has an explicit <child internal-child="accessible"> sub-element
+ children = obj.findall("child[@internal-child='accessible']")
+ if len(children) > 1 and doprint:
+ err(filename, tree, obj, "multiple-accessible", "has multiple <child internal-child='accessible'>"
+ "%s" % elms_lines(children))
+ if len(children) >= 1:
+ return False
+
+ # Case 2: has an <accessibility> sub-element with a "labelled-by"
+ # <relation> pointing to an existing element.
+ if len(labelled_by) > 0:
+ return False
+
+ # Case 3: has a label-for
+ if oid in label_for_elm:
+ return False
+
+ # Case 4: has a mnemonic
+ if oid in mnemonic_for_elm:
+ return False
+
+ # Case 5: Has a <property name="tooltip_text">
+ tooltips = obj.findall("property[@name='tooltip_text']") + \
+ obj.findall("property[@name='tooltip-text']")
+ if len(tooltips) > 1 and doprint:
+ err(filename, tree, obj, "multiple-tooltip", "has multiple tooltip_text properties")
+ if len(tooltips) >= 1 and klass != 'GtkCheckButton':
+ return False
+
+ # Case 6: Has a <property name="placeholder_text">
+ placeholders = obj.findall("property[@name='placeholder_text']") + \
+ obj.findall("property[@name='placeholder-text']")
+ if len(placeholders) > 1 and doprint:
+ err(filename, tree, obj, "multiple-placeholder", "has multiple placeholder_text properties")
+ if len(placeholders) >= 1:
+ return False
+
+ # Buttons usually don't need an external label, their own is enough, (but they do need one)
+ if klass in widgets_buttons:
+
+ labels = obj.findall("property[@name='label']")
+ if len(labels) > 1 and doprint:
+ err(filename, tree, obj, "multiple-label", "has multiple label properties")
+ if len(labels) >= 1:
+ # Has a <property name="label">
+ return False
+
+ actions = obj.findall("property[@name='action_name']")
+ if len(actions) > 1 and doprint:
+ err(filename, tree, obj, "multiple-action_name", "has multiple action_name properties")
+ if len(actions) >= 1:
+ # Has a <property name="action_name">
+ return False
+
+ # Uses id as an action_name
+ if 'id' in obj.attrib:
+ if obj.attrib['id'].startswith(".uno:"):
+ return False
+
+ gtklabels = obj.findall(".//object[@class='GtkLabel']") + obj.findall(".//object[@class='GtkAccelLabel']")
+ if len(gtklabels) >= 1:
+ # Has a custom label
+ return False
+
+ # no label for a button, warn
+ if doprint:
+ warn(filename, tree, obj, "button-no-label", "does not have its own label")
+ if not is_enabled(obj, "button-no-label", enables, True):
+ # Warnings disabled
+ return False
+ (_, suppr) = elm_suppr(filename, tree, obj, "button-no-label", False)
+ if suppr in false_positives:
+ # That was actually expected
+ return False
+ if suppr in suppressions:
+ # Warning suppressed for this widget
+ if suppressions[suppr]:
+ warnexists += 1
+ suppressions[suppr] = False
+ return False
+ return True
+
+ # GtkImages special case
+ if klass == "GtkImage":
+ uses = [u for u in tree.iterfind(".//object/property[@name='image']") if u.text == oid]
+ if len(uses) > 0:
+ # This image is just used by another element, don't warn
+ # about the image itself, we probably want the warning on
+ # the element instead.
+ return False
+
+ if find_button_parent(root, obj) is not None:
+ # This image is part of a button, we want the warning on the button
+ # instead, if any.
+ return False
+
+ # GtkEntry special case
+ if klass == 'GtkEntry' or klass == 'GtkSearchEntry':
+ parent = elm_parent(root, obj)
+ if parent is not None:
+ if parent.tag == 'child' and \
+ parent.attrib.get('internal-child') == "entry":
+ # This is an internal entry of another widget. Relations
+ # will be handled by that widget.
+ return False
+
+ # GtkShortcutsShortcut special case
+ if klass == 'GtkShortcutsShortcut':
+ children = obj.findall("property[@name='title']")
+ if len(children) >= 1:
+ return False
+
+ # Really no label, perhaps emit a warning
+ if not is_enabled(obj, "no-labelled-by", enables, True):
+ # Warnings disabled for this class of widgets
+ return False
+ (_, suppr) = elm_suppr(filename, tree, obj, "no-labelled-by", False)
+ if suppr in false_positives:
+ # That was actually expected
+ return False
+ if suppr in suppressions:
+ # Warning suppressed for this widget
+ if suppressions[suppr]:
+ warnexists += 1
+ suppressions[suppr] = False
+ return False
+
+ if not orphan:
+ # No orphan label, so probably the labelled parent provides enough
+ # context.
+ if requires_label:
+ # But these always need a label.
+ if doprint:
+ warn(filename, tree, obj, "no-labelled-by", "has no accessibility label")
+ return True
+ return False
+
+ if doprint:
+ context = elm_name(orphan_root)
+ if context:
+ context = " within " + context
+ warn(filename, tree, obj, "no-labelled-by", "has no accessibility label while there are orphan labels" + context)
+ return True
+
+def orphan_items(filename, tree, root, elm):
+ """
+ Check whether from some element there exists orphan labels and orphan widgets
+ """
+ orphan_labels = False
+ orphan_widgets = False
+ if elm.attrib.get('class') in widgets_labels:
+ orphan_labels = is_orphan_label(filename, tree, root, elm, None)
+ else:
+ orphan_widgets = is_orphan_widget(filename, tree, root, elm, True, None)
+ for obj in elm:
+ # We are not interested in orphan labels under another labelled
+ # parent. This also allows to keep linear complexity.
+ if not is_labelled_parent(obj):
+ label, widget = orphan_items(filename, tree, root, obj)
+ if label:
+ orphan_labels = True
+ if widget:
+ orphan_widgets = True
+ if orphan_labels and orphan_widgets:
+ # No need to look up more
+ break
+ return orphan_labels, orphan_widgets
+
+#
+# UI accessibility checks
+#
+
+def check_props(filename, tree, root, elm, forward):
+ """
+ Check the given list of relation properties
+ """
+ props = elm.findall("property[@name='" + forward + "']")
+ for prop in props:
+ if prop.text not in ids:
+ err(filename, tree, elm, "undeclared-target", forward + " uses undeclared target '%s'" % prop.text)
+ return props
+
+def is_visible(obj):
+ visible = False
+ visible_prop = obj.findall("property[@name='visible']")
+ visible_len = len(visible_prop)
+ if visible_len:
+ visible_txt = visible_prop[visible_len - 1].text
+ if visible_txt.lower() == "true":
+ visible = True
+ elif visible_txt.lower() == "false":
+ visible = False
+ return visible
+
+def check_rels(filename, tree, root, elm, forward, backward = None):
+ """
+ Check the relations given by forward
+ """
+ oid = elm.attrib.get('id')
+ rels = elm.findall("accessibility/relation[@type='" + forward + "']")
+ for rel in rels:
+ target = rel.attrib['target']
+ if target not in ids:
+ err(filename, tree, elm, "undeclared-target", forward + " uses undeclared target '%s'" % target)
+ elif backward is not None:
+ widget = ids[target]
+ backrels = widget.findall("accessibility/relation[@type='" + backward + "']")
+ if len([x for x in backrels if x.attrib['target'] == oid]) == 0:
+ err(filename, tree, elm, "missing-" + backward, "has " + forward + \
+ ", but is not " + backward + " by " + elm_name_line(widget))
+ return rels
+
+def check_a11y_relation(filename, tree):
+ """
+ Emit an error message if any of the 'object' elements of the XML
+ document represented by `root' doesn't comply with Accessibility
+ rules.
+ """
+ global widgets_ignored, ids, label_for_elm, labelled_by_elm, mnemonic_for_elm
+
+ def check_elm(orphan_root, obj, orphan_labels, orphan_widgets):
+ """
+ Check one element, knowing that orphan_labels/widgets tell whether
+ there are orphan labels and widgets within orphan_root
+ """
+
+ oid = obj.attrib.get('id')
+ klass = obj.attrib.get('class')
+
+ # "Don't care" special case
+ if klass in widgets_ignored:
+ return
+ for suffix in widgets_suffixignored:
+ if klass[-len(suffix):] == suffix:
+ return
+
+ # Widgets usual do not strictly require a label, i.e. a labelled parent
+ # is enough for context, but some do always need one.
+ requires_label = klass in widgets_needlabel
+
+ if oid is not None:
+ # Check that ids are unique
+ if oid in ids_dup:
+ if ids[oid] == obj:
+ # We are the first, warn
+ duplicates = tree.findall(".//object[@id='" + oid + "']")
+ err(filename, tree, obj, "duplicate-id", "has the same id as other elements " + elms_names_lines(duplicates))
+
+ # Check label-for and their dual labelled-by
+ label_for = check_rels(filename, tree, root, obj, "label-for", "labelled-by")
+
+ # Check labelled-by and its dual label-for
+ labelled_by = check_rels(filename, tree, root, obj, "labelled-by", "label-for")
+
+ visible = is_visible(obj)
+
+ # warning message type "syntax" used:
+ #
+ # multiple-* => 2+ XML tags of the inspected element itself
+ # duplicate-* => 2+ XML tags of other elements referencing this element
+
+ # Should have only one label
+ if len(labelled_by) >= 1:
+ if oid in mnemonic_for_elm:
+ warn(filename, tree, obj, "labelled-by-and-mnemonic",
+ "has both a mnemonic " + elm_name_line(mnemonic_for_elm[oid][0]) + "and labelled-by relation")
+ if len(labelled_by) > 1:
+ warn(filename, tree, obj, "multiple-labelled-by", "has multiple labelled-by relations")
+
+ if oid in labelled_by_elm:
+ if len(labelled_by_elm[oid]) == 1:
+ paired = labelled_by_elm[oid][0]
+ if paired != None and visible != is_visible(paired):
+ warn(filename, tree, obj, "visibility-conflict", "visibility conflicts with paired " + elm_name_line(paired))
+
+ if oid in label_for_elm:
+ if len(label_for_elm[oid]) > 1:
+ warn(filename, tree, obj, "duplicate-label-for", "is referenced by multiple label-for " + elms_names_lines(label_for_elm[oid]))
+ elif len(label_for_elm[oid]) == 1:
+ paired = label_for_elm[oid][0]
+ if visible != is_visible(paired):
+ warn(filename, tree, obj, "visibility-conflict", "visibility conflicts with paired " + elm_name_line(paired))
+
+ if oid in mnemonic_for_elm:
+ if len(mnemonic_for_elm[oid]) > 1:
+ warn(filename, tree, obj, "duplicate-mnemonic", "is referenced by multiple mnemonic_widget " + elms_names_lines(mnemonic_for_elm[oid]))
+
+ # Check controlled-by/controller-for
+ controlled_by = check_rels(filename, tree, root, obj, "controlled-by", "controller-for")
+ controller_for = check_rels(filename, tree, root, obj, "controlled-for", "controlled-by")
+
+ # Labels special case
+ if klass in widgets_labels:
+ properties = check_props(filename, tree, root, obj, "mnemonic_widget") + \
+ check_props(filename, tree, root, obj, "mnemonic-widget")
+ if len(properties) > 1:
+ err(filename, tree, obj, "multiple-mnemonic", "has multiple mnemonic_widgets properties"
+ "%s" % elms_lines(properties))
+
+ # Emit orphaning warnings
+ if warn_orphan_labels or orphan_widgets:
+ is_orphan_label(filename, tree, root, obj, orphan_root, True)
+
+ # We are done with the label
+ return
+
+ # Not a label, will perhaps need one
+
+ # Emit orphaning warnings
+ is_orphan_widget(filename, tree, root, obj, orphan_labels, orphan_root, True)
+
+ root = tree.getroot()
+
+ # Flush ids and relations from previous files
+ ids = {}
+ ids_dup = {}
+ labelled_by_elm = {}
+ label_for_elm = {}
+ mnemonic_for_elm = {}
+
+ # First pass to get links into hash tables, no warning, just record duplicates
+ for obj in root.iter('object'):
+ oid = obj.attrib.get('id')
+ if oid is not None:
+ if oid not in ids:
+ ids[oid] = obj
+ else:
+ ids_dup[oid] = True
+
+ labelled_by = obj.findall("accessibility/relation[@type='labelled-by']")
+ for rel in labelled_by:
+ target = rel.attrib.get('target')
+ if target is not None:
+ if target not in labelled_by_elm:
+ labelled_by_elm[target] = [ obj ]
+ else:
+ labelled_by_elm[target].append(obj)
+
+ label_for = obj.findall("accessibility/relation[@type='label-for']")
+ for rel in label_for:
+ target = rel.attrib.get('target')
+ if target is not None:
+ if target not in label_for_elm:
+ label_for_elm[target] = [ obj ]
+ else:
+ label_for_elm[target].append(obj)
+
+ mnemonic_for = obj.findall("property[@name='mnemonic_widget']") + \
+ obj.findall("property[@name='mnemonic-widget']")
+ for rel in mnemonic_for:
+ target = rel.text
+ if target is not None:
+ if target not in mnemonic_for_elm:
+ mnemonic_for_elm[target] = [ obj ]
+ else:
+ mnemonic_for_elm[target].append(obj)
+
+ # Second pass, recursive depth-first, to be able to efficiently know whether
+ # there are orphan labels within a part of the tree.
+ def recurse(orphan_root, obj, orphan_labels, orphan_widgets):
+ if obj == root or is_labelled_parent(obj):
+ orphan_root = obj
+ orphan_labels, orphan_widgets = orphan_items(filename, tree, root, obj)
+
+ if obj.tag == 'object':
+ check_elm(orphan_root, obj, orphan_labels, orphan_widgets)
+
+ for o in obj:
+ recurse(orphan_root, o, orphan_labels, orphan_widgets)
+
+ recurse(root, root, False, False)
+
+#
+# Main
+#
+
+def usage(fatal = True):
+ print("`%s' checks accessibility of glade .ui files" % progname)
+ print("")
+ print("Usage: %s [-p] [-g SUPPR_FILE] [-s SUPPR_FILE] [-f SUPPR_FILE] [-P PREFIX] [-o LOG_FILE] [file ...]" % progname)
+ print("")
+ print(" -p Print XML class path instead of line number")
+ print(" -g Generate suppression file SUPPR_FILE")
+ print(" -s Suppress warnings given by file SUPPR_FILE, but count them")
+ print(" -f Suppress warnings given by file SUPPR_FILE completely")
+ print(" -P Remove PREFIX from file names in warnings")
+ print(" -o Also prints errors and warnings to given file")
+ print("")
+ print(" --widgets-FOO [+][CLASS1[,CLASS2[,...]]]")
+ print(" Give or extend one of the lists of widget classes, where FOO can be:")
+ print(" - toplevel : widgets to be considered toplevel windows")
+ print(" - ignored : widgets which do not need labelling (e.g. GtkBox)")
+ print(" - suffixignored : suffixes of widget classes which do not need labelling")
+ print(" - needlabel : widgets which always need labelling (e.g. GtkEntry)")
+ print(" - buttons : widgets which need their own label but not more")
+ print(" (e.g. GtkButton)")
+ print(" - labels : widgets which provide labels (e.g. GtkLabel)")
+ print(" --widgets-print print default widgets lists")
+ print("")
+ print(" --enable-all enable all warnings/dofatals (default)")
+ print(" --disable-all disable all warnings/dofatals")
+ print(" --fatal-all make all warnings dofatals")
+ print(" --not-fatal-all do not make all warnings dofatals (default)")
+ print("")
+ print(" --enable-type=TYPE enable warning/fatal type TYPE")
+ print(" --disable-type=TYPE disable warning/fatal type TYPE")
+ print(" --fatal-type=TYPE make warning type TYPE a fatal")
+ print(" --not-fatal-type=TYPE make warning type TYPE not a fatal")
+ print("")
+ print(" --enable-widgets=CLASS enable warning/fatal type CLASS")
+ print(" --disable-widgets=CLASS disable warning/fatal type CLASS")
+ print(" --fatal-widgets=CLASS make warning type CLASS a fatal")
+ print(" --not-fatal-widgets=CLASS make warning type CLASS not a fatal")
+ print("")
+ print(" --enable-specific=TYPE.CLASS enable warning/fatal type TYPE for widget")
+ print(" class CLASS")
+ print(" --disable-specific=TYPE.CLASS disable warning/fatal type TYPE for widget")
+ print(" class CLASS")
+ print(" --fatal-specific=TYPE.CLASS make warning type TYPE a fatal for widget")
+ print(" class CLASS")
+ print(" --not-fatal-specific=TYPE.CLASS make warning type TYPE not a fatal for widget")
+ print(" class CLASS")
+ print("")
+ print(" --disable-orphan-labels only warn about orphan labels when there are")
+ print(" orphan widgets in the same context")
+ print("")
+ print("Report bugs to <bugs@hypra.fr>")
+ sys.exit(2 if fatal else 0)
+
+def widgets_opt(widgets_list, arg):
+ """
+ Replace or extend `widgets_list' with the list of classes contained in `arg'
+ """
+ append = arg and arg[0] == '+'
+ if append:
+ arg = arg[1:]
+
+ if arg:
+ widgets = arg.split(',')
+ else:
+ widgets = []
+
+ if not append:
+ del widgets_list[:]
+
+ widgets_list.extend(widgets)
+
+
+def main():
+ global pflag, gen_suppr, gen_supprfile, suppressions, suppr_prefix, false_positives, dofatals, enables, dofatals, warn_orphan_labels
+ global widgets_toplevel, widgets_ignored, widgets_suffixignored, widgets_needlabel, widgets_buttons, widgets_labels
+ global outfile, output_buffer
+
+ try:
+ opts, args = getopt.getopt(sys.argv[1:], "hpiIg:s:f:P:o:L:", [
+ "help",
+ "version",
+
+ "widgets-toplevel=",
+ "widgets-ignored=",
+ "widgets-suffixignored=",
+ "widgets-needlabel=",
+ "widgets-buttons=",
+ "widgets-labels=",
+ "widgets-print",
+
+ "enable-all",
+ "disable-all",
+ "fatal-all",
+ "not-fatal-all",
+
+ "enable-type=",
+ "disable-type=",
+ "fatal-type=",
+ "not-fatal-type=",
+
+ "enable-widgets=",
+ "disable-widgets=",
+ "fatal-widgets=",
+ "not-fatal-widgets=",
+
+ "enable-specific=",
+ "disable-specific=",
+ "fatal-specific=",
+ "not-fatal-specific=",
+
+ "disable-orphan-labels",
+ ] )
+ except getopt.GetoptError:
+ usage()
+
+ suppr = None
+ false = None
+ out = None
+ filelist = None
+
+ for o, a in opts:
+ if o == "--help" or o == "-h":
+ usage(False)
+ if o == "--version":
+ print("0.1")
+ sys.exit(0)
+ elif o == "-p":
+ pflag = True
+ elif o == "-g":
+ gen_suppr = a
+ elif o == "-s":
+ suppr = a
+ elif o == "-f":
+ false = a
+ elif o == "-P":
+ suppr_prefix = a
+ elif o == "-o":
+ out = a
+ elif o == "-L":
+ filelist = a
+
+ elif o == "--widgets-toplevel":
+ widgets_opt(widgets_toplevel, a)
+ elif o == "--widgets-ignored":
+ widgets_opt(widgets_ignored, a)
+ elif o == "--widgets-suffixignored":
+ widgets_opt(widgets_suffixignored, a)
+ elif o == "--widgets-needlabel":
+ widgets_opt(widgets_needlabel, a)
+ elif o == "--widgets-buttons":
+ widgets_opt(widgets_buttons, a)
+ elif o == "--widgets-labels":
+ widgets_opt(widgets_labels, a)
+ elif o == "--widgets-print":
+ print("--widgets-toplevel '" + ','.join(widgets_toplevel) + "'")
+ print("--widgets-ignored '" + ','.join(widgets_ignored) + "'")
+ print("--widgets-suffixignored '" + ','.join(widgets_suffixignored) + "'")
+ print("--widgets-needlabel '" + ','.join(widgets_needlabel) + "'")
+ print("--widgets-buttons '" + ','.join(widgets_buttons) + "'")
+ print("--widgets-labels '" + ','.join(widgets_labels) + "'")
+ sys.exit(0)
+
+ elif o == '--enable-all':
+ enables.append( (True, None, None) )
+ elif o == '--disable-all':
+ enables.append( (False, None, None) )
+ elif o == '--fatal-all':
+ dofatals.append( (True, None, None) )
+ elif o == '--not-fatal-all':
+ dofatals.append( (False, None, None) )
+
+ elif o == '--enable-type':
+ enables.append( (True, a, None) )
+ elif o == '--disable-type':
+ enables.append( (False, a, None) )
+ elif o == '--fatal-type':
+ dofatals.append( (True, a, None) )
+ elif o == '--not-fatal-type':
+ dofatals.append( (False, a, None) )
+
+ elif o == '--enable-widgets':
+ enables.append( (True, None, a) )
+ elif o == '--disable-widgets':
+ enables.append( (False, None, a) )
+ elif o == '--fatal-widgets':
+ dofatals.append( (True, None, a) )
+ elif o == '--not-fatal-widgets':
+ dofatals.append( (False, None, a) )
+
+ elif o == '--enable-specific':
+ (thetype, klass) = a.split('.', 1)
+ enables.append( (True, thetype, klass) )
+ elif o == '--disable-specific':
+ (thetype, klass) = a.split('.', 1)
+ enables.append( (False, thetype, klass) )
+ elif o == '--fatal-specific':
+ (thetype, klass) = a.split('.', 1)
+ dofatals.append( (True, thetype, klass) )
+ elif o == '--not-fatal-specific':
+ (thetype, klass) = a.split('.', 1)
+ dofatals.append( (False, thetype, klass) )
+
+ elif o == '--disable-orphan-labels':
+ warn_orphan_labels = False
+
+ output_header = ""
+
+ # Read suppression file before overwriting it
+ if suppr is not None:
+ try:
+ output_header += "Suppression file: " + suppr + "\n"
+ supprfile = open(suppr, 'r')
+ line_no = 0
+ for line in supprfile.readlines():
+ line_no = line_no + 1
+ if line.startswith('#'):
+ continue
+ prefix = line.rstrip()
+ suppressions[prefix] = True
+ suppressions_to_line[prefix] = "%s:%u" % (suppr, line_no)
+ supprfile.close()
+ except IOError:
+ pass
+
+ # Read false positives file
+ if false is not None:
+ try:
+ output_header += "False positive file: " + false + "\n"
+ falsefile = open(false, 'r')
+ for line in falsefile.readlines():
+ if line.startswith('#'):
+ continue
+ prefix = line.rstrip()
+ false_positives[prefix] = True
+ falsefile.close()
+ except IOError:
+ pass
+
+ if out is not None:
+ outfile = open(out, 'w')
+
+ if filelist is not None:
+ try:
+ filelistfile = open(filelist, 'r')
+ for line in filelistfile.readlines():
+ line = line.strip()
+ if line:
+ args += line.split(' ')
+ filelistfile.close()
+ except IOError:
+ err(filelist, None, None, "unable to read file list file")
+
+ for filename in args:
+ try:
+ tree = ET.parse(filename)
+ except ET.ParseError:
+ err(filename, None, None, "parse", "malformatted xml file")
+ continue
+ except IOError:
+ err(filename, None, None, None, "unable to read file")
+ continue
+
+ try:
+ check_a11y_relation(filename, tree)
+ except Exception as error:
+ import traceback
+ output_buffer += traceback.format_exc()
+ err(filename, None, None, "parse", "error parsing file")
+
+ if errors > 0 or errexists > 0:
+ output_buffer += "%s new error%s" % (errors, 's' if errors != 1 else '')
+ if errexists > 0:
+ output_buffer += " (%s suppressed by %s, please fix %s)" % (errexists, suppr, 'them' if errexists > 1 else 'it')
+ output_buffer += "\n"
+
+ if warnings > 0 or warnexists > 0:
+ output_buffer += "%s new warning%s" % (warnings, 's' if warnings != 1 else '')
+ if warnexists > 0:
+ output_buffer += " (%s suppressed by %s, please fix %s)" % (warnexists, suppr, 'them' if warnexists > 1 else 'it')
+ output_buffer += "\n"
+
+ if fatals > 0 or fatalexists > 0:
+ output_buffer += "%s new fatal%s" % (fatals, 's' if fatals != 1 else '')
+ if fatalexists > 0:
+ output_buffer += " (%s suppressed by %s, please fix %s)" % (fatalexists, suppr, 'them' if fatalexists > 1 else 'it')
+ output_buffer += "\n"
+
+ n = 0
+ for (suppr,unused) in suppressions.items():
+ if unused:
+ n += 1
+
+ if n > 0:
+ output_buffer += "%s suppression%s unused:\n" % (n, 's' if n != 1 else '')
+ for (suppr,unused) in suppressions.items():
+ if unused:
+ output_buffer += " %s:%s\n" % (suppressions_to_line[suppr], suppr)
+
+ if gen_supprfile is not None:
+ gen_supprfile.close()
+ if outfile is not None:
+ outfile.close()
+
+ if gen_suppr is None:
+ if output_buffer != "":
+ output_buffer += "Explanations are available on " + howto_url + "\n"
+
+ if fatals > 0:
+ print(output_header.rstrip() + "\n" + output_buffer)
+ sys.exit(1)
+
+ if len(output_buffer) > 0:
+ print(output_header.rstrip() + "\n" + output_buffer)
+
+if __name__ == "__main__":
+ try:
+ main()
+ except KeyboardInterrupt:
+ pass
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/includebloat.awk b/bin/includebloat.awk
new file mode 100755
index 000000000..3792ef950
--- /dev/null
+++ b/bin/includebloat.awk
@@ -0,0 +1,51 @@
+#!/usr/bin/gawk -f
+# -*- tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# Generate a list of files included by the C++ compiler during the build
+# sorted by the total bytes an included file contributed to preprocessor input.
+# usage: first do a full build with "make check", then run this from $BUILDDIR
+
+# NOTE: by default gbuild does not generate dependencies for system headers
+# (in particular the C++ standard library), so those will NOT be counted
+
+BEGIN {
+ cmd = "find workdir/Dep/CxxObject/ -name *.d | xargs cat"
+ while ((cmd | getline) > 0) {
+ if ($0 ~ /^ .*\\$/) {
+ gsub(/^ /, "");
+ gsub(/ *\\$/, "");
+ includes[$1]++
+ if ($2) {
+ # GCC emits 2 per line if short enough!
+ includes[$2]++
+ }
+ }
+ }
+ exit
+}
+
+END {
+ for (inc in includes) {
+ cmd = "wc -c " inc
+ if ((cmd | getline) < 0)
+ print "ERROR on: " cmd
+ sizes[inc] = $1 # $0 is wc -c output, $1 is size
+ totals[inc] = $1 * includes[inc]
+ totalsize += totals[inc]
+ close(cmd)
+ }
+ PROCINFO["sorted_in"] = "@val_num_desc"
+ print "sum total bytes included (excluding system headers): " totalsize
+ for (inc in totals) {
+ print totals[inc], sizes[inc], includes[inc], inc
+ }
+}
+
+# vim: set noet sw=4 ts=4:
diff --git a/bin/ios-mapfile-statistics b/bin/ios-mapfile-statistics
new file mode 100755
index 000000000..07f3f0aa6
--- /dev/null
+++ b/bin/ios-mapfile-statistics
@@ -0,0 +1,78 @@
+#!/usr/bin/perl -w
+
+use strict;
+
+use Getopt::Std;
+$Getopt::Std::STANDARD_HELP_VERSION++;
+
+my %args;
+
+getopts('f:s', \%args);
+
+sub VERSION_MESSAGE {
+ # Nothing
+}
+
+sub HELP_MESSAGE {
+ print <<EOS
+This program parses a linker map file, especially one produced when linking an iOS executable.
+
+Input is read from a map file provided as command-line argument
+
+By default a list of libraries used and the size of code and data
+linked in from each library is printed, in reverse order of size.
+
+The following options are available:
+-s Print a list of symbols instead.
+-f 'filter' Filter which libraries are handled. The filter can be
+ a regular expression, typically several library names
+ combined with the '|' operator. Makes sense only when
+ -s is used too.
+EOS
+}
+
+die "The -f switch makes sense only if -s is also used\n" if defined($args{'f'}) && !defined($args{'s'});
+
+die "Please provide one map file name\n" if !defined($ARGV[0]);
+
+die "Just one argument please\n" if defined($ARGV[1]);
+
+my $state = 0;
+my %libofnumber;
+my %sizeoflib;
+my %sizeofsym;
+
+open(INPUT, '<', $ARGV[0]) || die "Could not open $ARGV[0]: $!\n";
+
+while (<INPUT>) {
+ if ($state == 0 && m!^# Object files:!) {
+ $state = 1;
+ } elsif ($state == 1 && m!^\[ *([0-9]+)\] .*/([-_a-z0-9]+\.a)\(.*!i) {
+ $libofnumber{$1} = $2;
+ } elsif ($state == 1 && m!^# Sections:!) {
+ $state = 2;
+ } elsif ($state == 2 && m!^# Address\s+Size\s+File\s+Name!) {
+ $state = 3;
+ } elsif ($state == 3 && m!^0x[0-9A-F]+\s+(0x[0-9A-F]+)\s+\[ *([0-9]+)\] (.*)!) {
+ my ($size,$libnum,$symbol) = ($1, $2, $3);
+ if (defined($libofnumber{$libnum})) {
+ $sizeoflib{$libofnumber{$libnum}} += hex($size);
+ if (!defined($args{'f'}) || $libofnumber{$libnum} =~ /$args{'f'}/) {
+ $sizeofsym{$symbol} = hex($size);
+ }
+ }
+ }
+}
+
+if ($args{'s'}) {
+ # Print symbols in reverse size order
+ foreach (sort { $sizeofsym{$b} <=> $sizeofsym{$a} } keys(%sizeofsym)) {
+ print $_, ": ", $sizeofsym{$_}, "\n";
+ }
+} else {
+ # Print libraries in reverse size order
+ foreach (sort { $sizeoflib{$b} <=> $sizeoflib{$a} } keys(%sizeoflib)) {
+ print $_, ": ", $sizeoflib{$_}, "\n";
+ }
+}
+
diff --git a/bin/java-set-classpath.in b/bin/java-set-classpath.in
new file mode 100644
index 000000000..507264a3d
--- /dev/null
+++ b/bin/java-set-classpath.in
@@ -0,0 +1,53 @@
+#!/bin/sh
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# java-set-classpath - Utility to update the default
+# CLASSPATH for LibreOffice
+
+if test "z$1" = "z" ; then
+ echo "Update the default CLASSPATH for LibreOffice"
+ echo ""
+ echo "Usage: $0 [dir|jar]..."
+ echo ""
+ echo "The utility updates the LibreOffice system setting. It adds or removes"
+ echo "the given directories and jar-files to or from the default CLASSPATH"
+ echo "depending on if they are available on the system or not."
+ echo ""
+ echo "Parameters:"
+ echo " dir - absolute path to a directory"
+ echo " jar - absolute path to a jar-file"
+ exit 0;
+fi
+
+JVM_CONFIG_FILE=@INSTALLDIR@/program/fundamentalrc
+
+for path in $@ ; do
+ if test "z${path%%/*}" != "z" ; then
+ echo "Warning: the path "$path" is not absolute and will be ignored"
+ continue
+ fi
+ if test -e $path ; then
+ # the file exist
+ grep "URE_MORE_JAVA_CLASSPATH_URLS.*file:/*$path\([[:space:]].*\)\?$" $JVM_CONFIG_FILE >/dev/null && continue
+ # it is not registered
+ TMP_FILE=`mktemp /tmp/ooset-java-class.XXXXXXXXXX` || exit 1
+ sed -e "s|^\(.*URE_MORE_JAVA_CLASSPATH_URLS.*\)$|\1 file://$path|" $JVM_CONFIG_FILE >$TMP_FILE
+ mv -f $TMP_FILE $JVM_CONFIG_FILE
+ chmod 644 $JVM_CONFIG_FILE
+ else
+ # the file does not exist, remove it from the configuration
+ TMP_FILE=`mktemp /tmp/ooset-java-class.XXXXXXXXXX` || exit 1;
+ sed -e "s|^\(.*URE_MORE_JAVA_CLASSPATH_URLS.*\)file:/*$path\([[:space:]].*\)\?$|\1\2|" \
+ -e "s/\(URE_MORE_JAVA_CLASSPATH_URLS=\)[[:space:]]\+/\1/" \
+ -e "/^.*URE_MORE_JAVA_CLASSPATH_URLS/s/[[:space:]]\+/ /g" \
+ -e "/^.*URE_MORE_JAVA_CLASSPATH_URLS/s/[[:space:]]*$//" $JVM_CONFIG_FILE >$TMP_FILE
+ mv -f $TMP_FILE $JVM_CONFIG_FILE
+ chmod 644 $JVM_CONFIG_FILE
+ fi
+done
diff --git a/bin/lint-ui.py b/bin/lint-ui.py
new file mode 100755
index 000000000..c04eba63b
--- /dev/null
+++ b/bin/lint-ui.py
@@ -0,0 +1,229 @@
+#!/usr/bin/env python3
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Takes a LibreOffice .ui file and provides linting tips for maintaining
+# a consistent look for dialogs
+
+import sys
+# Force python XML parser not faster C accelerators
+# because we can't hook the C implementation
+sys.modules['_elementtree'] = None
+import xml.etree.ElementTree as ET
+import re
+
+DEFAULT_WARNING_STR = 'Lint assertion failed'
+
+POSSIBLE_TOP_LEVEL_WIDGETS = ['GtkDialog', 'GtkMessageDialog', 'GtkBox', 'GtkFrame', 'GtkGrid',
+ 'GtkAssistant', 'GtkToolbar', 'GtkNotebook', 'GtkPopover', 'GtkWindow', 'GtkPaned', 'GtkScrolledWindow']
+IGNORED_TOP_LEVEL_WIDGETS = ['GtkAdjustment', 'GtkImage', 'GtkListStore', 'GtkSizeGroup', 'GtkMenu', 'GtkTextBuffer', 'GtkTreeStore']
+BORDER_WIDTH = '6'
+BUTTON_BOX_SPACING = '12'
+ALIGNMENT_TOP_PADDING = '6'
+#https://developer.gnome.org/hig-book/3.0/windows-alert.html.en#alert-spacing
+MESSAGE_BOX_SPACING = '24'
+MESSAGE_BORDER_WIDTH = '12'
+
+IGNORED_WORDS = ['the', 'of', 'to', 'for', 'a', 'and', 'as', 'from', 'on', 'into', 'by', 'at', 'or', 'do', 'in', 'when', 'no']
+
+# Hook the XML parser and add line number attributes
+class LineNumberingParser(ET.XMLParser):
+ def _start(self, *args, **kwargs):
+ # Here we assume the default XML parser which is expat
+ # and copy its element position attributes into output Elements
+ element = super(self.__class__, self)._start(*args, **kwargs)
+ element._start_line_number = self.parser.CurrentLineNumber
+ element._start_column_number = self.parser.CurrentColumnNumber
+ element._start_byte_index = self.parser.CurrentByteIndex
+ return element
+
+ def _end(self, *args, **kwargs):
+ element = super(self.__class__, self)._end(*args, **kwargs)
+ element._end_line_number = self.parser.CurrentLineNumber
+ element._end_column_number = self.parser.CurrentColumnNumber
+ element._end_byte_index = self.parser.CurrentByteIndex
+ return element
+
+
+def lint_assert(predicate, warning=DEFAULT_WARNING_STR, node=None):
+ if not predicate:
+ if not(node is None):
+ print(sys.argv[1] + ":" + str(node._start_line_number) + ": " + warning)
+ else:
+ print(sys.argv[1] + ": " + warning)
+
+def check_top_level_widget(element):
+ # check widget type
+ widget_type = element.attrib['class']
+ if not(widget_type in POSSIBLE_TOP_LEVEL_WIDGETS):
+ return
+
+ # check border_width property
+ border_width_properties = element.findall("property[@name='border_width']")
+ # TODO reenable when we are ready to fix
+ #if len(border_width_properties) < 1:
+ # lint_assert(False, "No border_width set on top level widget. Should probably be " + BORDER_WIDTH)
+ #if len(border_width_properties) == 1:
+ # border_width = border_width_properties[0]
+ # if widget_type == "GtkMessageDialog":
+ # lint_assert(border_width.text == MESSAGE_BORDER_WIDTH,
+ # "Top level 'border_width' property should be " + MESSAGE_BORDER_WIDTH, border_width)
+ # else:
+ # lint_assert(border_width.text == BORDER_WIDTH,
+ # "Top level 'border_width' property should be " + BORDER_WIDTH, border_width)
+
+ # check that any widget which has 'has-default' also has 'can-default'
+ for widget in element.findall('.//object'):
+ if not widget.attrib['class']:
+ continue
+ widget_type = widget.attrib['class']
+ has_defaults = widget.findall("./property[@name='has_default']")
+ if len(has_defaults) > 0 and has_defaults[0].text == "True":
+ can_defaults = widget.findall("./property[@name='can_default']")
+ lint_assert(len(can_defaults)>0 and can_defaults[0].text == "True",
+ "has_default without can_default in " + widget_type + " with id = '" + widget.attrib['id'] + "'", widget)
+
+def check_button_box_spacing(element):
+ spacing = element.findall("property[@name='spacing']")
+ lint_assert(len(spacing) > 0 and spacing[0].text == BUTTON_BOX_SPACING,
+ "Button box 'spacing' should be " + BUTTON_BOX_SPACING,
+ element)
+
+def check_message_box_spacing(element):
+ spacing = element.findall("property[@name='spacing']")
+ lint_assert(len(spacing) > 0 and spacing[0].text == MESSAGE_BOX_SPACING,
+ "Message box 'spacing' should be " + MESSAGE_BOX_SPACING,
+ element)
+
+def check_radio_buttons(root):
+ radios = [element for element in root.findall('.//object') if element.attrib['class'] == 'GtkRadioButton']
+ for radio in radios:
+ radio_underlines = radio.findall("./property[@name='use_underline']")
+ assert len(radio_underlines) <= 1
+ if len(radio_underlines) < 1:
+ lint_assert(False, "No use_underline in GtkRadioButton with id = '" + radio.attrib['id'] + "'", radio)
+
+def check_adjustments(root):
+ adjustments = [element for element in root.findall('.//object') if element.attrib['class'] == 'GtkAdjustment']
+ for adjustment in adjustments:
+ uppers = adjustment.findall("./property[@name='upper']")
+ assert len(uppers) <= 1
+ if len(uppers) < 1:
+ lint_assert(False, "No upper in GtkAdjustment with id = '" + adjustment.attrib['id'] + "'", adjustment)
+
+def check_menu_buttons(root):
+ buttons = [element for element in root.findall('.//object') if element.attrib['class'] == "GtkMenuButton"]
+ for button in buttons:
+ labels = button.findall("./property[@name='label']")
+ images = button.findall("./property[@name='image']")
+ assert(len(labels) <= 1)
+ if len(labels) < 1 and len(images) < 1:
+ if sys.argv[1] == "vcl/uiconfig/ui/combobox.ui" and button.attrib['id'] == "overlaybutton":
+ pass
+ else:
+ lint_assert(False, "No label in GtkMenuButton with id = '" + button.attrib['id'] + "'", button)
+
+def check_check_buttons(root):
+ radios = [element for element in root.findall('.//object') if element.attrib['class'] == 'GtkCheckButton']
+ for radio in radios:
+ radio_underlines = radio.findall("./property[@name='use_underline']")
+ assert len(radio_underlines) <= 1
+ if len(radio_underlines) < 1:
+ lint_assert(False, "No use_underline in GtkCheckButton with id = '" + radio.attrib['id'] + "'", radio)
+
+def check_frames(root):
+ frames = [element for element in root.findall('.//object') if element.attrib['class'] == 'GtkFrame']
+ for frame in frames:
+ frame_alignments = frame.findall("./child/object[@class='GtkAlignment']")
+ if len(frame_alignments) > 0:
+ lint_assert(False, "Deprecated GtkAlignment in GtkFrame with id = '" + frame.attrib['id'] + "'", frame)
+
+def check_title_labels(root):
+ labels = root.findall(".//child[@type='label']")
+ for label in labels:
+ title = label.find(".//property[@name='label']")
+ if title is None:
+ continue
+ words = re.split(r'[^a-zA-Z0-9:_-]', title.text)
+ first = True
+ for word in words:
+ if len(word) and word[0].islower() and (word not in IGNORED_WORDS) and not first:
+ context = title.attrib['context']
+ # exclude a couple of whole sentences
+ if sys.argv[1] == "cui/uiconfig/ui/optpathspage.ui" and context == "optpathspage|label1":
+ pass
+ elif sys.argv[1] == "dbaccess/uiconfig/ui/password.ui" and context == "password|label1":
+ pass
+ elif sys.argv[1] == "sc/uiconfig/scalc/ui/datastreams.ui" and context == "datastreams|label4":
+ pass
+ elif sys.argv[1] == "sc/uiconfig/scalc/ui/scgeneralpage.ui" and context == "scgeneralpage|label6":
+ pass
+ elif sys.argv[1] == "sfx2/uiconfig/ui/documentfontspage.ui" and context == "documentfontspage|fontScriptFrameLabel":
+ pass
+ elif sys.argv[1] == "sw/uiconfig/swriter/ui/testmailsettings.ui" and context == "testmailsettings|label8":
+ pass
+ elif sys.argv[1] == "sw/uiconfig/swriter/ui/optcomparison.ui" and context == "optcomparison|setting":
+ pass
+ elif sys.argv[1] == "sw/uiconfig/swriter/ui/optcompatpage.ui" and context == "optcompatpage|label11":
+ pass
+ elif sys.argv[1] == "sw/uiconfig/swriter/ui/optcaptionpage.ui" and context == "optcaptionpage|label1":
+ pass
+ elif sys.argv[1] == "sw/uiconfig/swriter/ui/mmresultemaildialog.ui" and context == "mmresultemaildialog|attachft":
+ pass
+ elif sys.argv[1] == "sw/uiconfig/swriter/ui/mailmerge.ui" and context == "mailmerge|singledocument":
+ pass
+ elif sys.argv[1] == "cui/uiconfig/ui/acorexceptpage.ui" and context == "acorexceptpage|label2":
+ pass
+ elif sys.argv[1] == "dbaccess/uiconfig/ui/dbwizmysqlintropage.ui" and context == "dbwizmysqlintropage|label1":
+ pass
+ else:
+ lint_assert(False, "The word '" + word + "' should be capitalized", label)
+ first = False
+
+def main():
+ tree = ET.parse(sys.argv[1], parser=LineNumberingParser())
+ root = tree.getroot()
+
+ if sys.argv[1] != "libreofficekit/qa/gtktiledviewer/gtv.ui":
+ lint_assert('domain' in root.attrib, "interface needs to specify translation domain")
+
+ top_level_widgets = [element for element in root.findall('object') if element.attrib['class'] not in IGNORED_TOP_LEVEL_WIDGETS]
+ # eg. one file contains only a Menu, which we don't check
+ if len(top_level_widgets) == 0:
+ return
+
+ for top_level_widget in top_level_widgets:
+ check_top_level_widget(top_level_widget)
+
+ # TODO - only do this if we have a GtkDialog?
+ # check button box spacing
+ button_box = top_level_widget.findall("./child/object[@id='dialog-vbox1']")
+ if len(button_box) > 0:
+ element = button_box[0]
+ # TODO reenable when we are ready to fix
+ #check_button_box_spacing(element)
+
+ message_box = top_level_widget.findall("./child/object[@id='messagedialog-vbox']")
+ if len(message_box) > 0:
+ element = message_box[0]
+ # TODO reenable when we are ready to fix
+ #check_message_box_spacing(element)
+
+ check_frames(root)
+
+ # TODO reenable when we are ready to fix
+ #check_radio_buttons(root)
+
+ check_menu_buttons(root)
+
+ # TODO reenable when we are ready to fix
+ #check_check_buttons(root)
+
+ check_title_labels(root)
+
+if __name__ == "__main__":
+ main()
diff --git a/bin/list-dispatch-commands.py b/bin/list-dispatch-commands.py
new file mode 100755
index 000000000..dad2f01ff
--- /dev/null
+++ b/bin/list-dispatch-commands.py
@@ -0,0 +1,421 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+"""
+Script to generate https://wiki.documentfoundation.org/Development/DispatchCommands
+3 types of source files are scanned to identify and describe a list of relevant UNO commands:
+- .hxx files: containing the symbolic and numeric id's, and the respective modes and groups
+- .xcu files; containing several english labels as they appear in menus or tooltips
+- .sdi files: containing a list of potential arguments for the commands, and their types
+"""
+
+import os
+
+REPO = 'https://opengrok.libreoffice.org/xref/core/'
+
+BLACKLIST = ('_SwitchViewShell0', '_SwitchViewShell1', '_SwitchViewShell2', '_SwitchViewShell3', '_SwitchViewShell4')
+
+XCU_DIR = 'officecfg/registry/data/org/openoffice/Office/UI/'
+XCU_FILES = ( XCU_DIR + 'BasicIDECommands.xcu',
+ XCU_DIR + 'CalcCommands.xcu',
+ XCU_DIR + 'ChartCommands.xcu',
+ XCU_DIR + 'DbuCommands.xcu',
+ XCU_DIR + 'DrawImpressCommands.xcu',
+ XCU_DIR + 'GenericCommands.xcu',
+ XCU_DIR + 'MathCommands.xcu',
+ XCU_DIR + 'ReportCommands.xcu',
+ XCU_DIR + 'WriterCommands.xcu')
+
+HXX_DIR = './workdir/SdiTarget/'
+HXX_FILES = ( HXX_DIR + 'basctl/sdi/basslots.hxx',
+ HXX_DIR + 'sc/sdi/scslots.hxx',
+ HXX_DIR + 'sd/sdi/sdgslots.hxx',
+ HXX_DIR + 'sd/sdi/sdslots.hxx',
+ HXX_DIR + 'sfx2/sdi/sfxslots.hxx',
+ HXX_DIR + 'starmath/sdi/smslots.hxx',
+ HXX_DIR + 'svx/sdi/svxslots.hxx',
+ HXX_DIR + 'sw/sdi/swslots.hxx')
+
+SDI_FILES = ( 'sc/sdi/scalc.sdi',
+ 'sd/sdi/sdraw.sdi',
+ 'sfx2/sdi/sfx.sdi',
+ 'starmath/sdi/smath.sdi',
+ 'svx/sdi/svx.sdi',
+ 'sw/sdi/swriter.sdi')
+
+# Category is defined by the 1st file where the command has been found. Precedence: 1. xcu, 2. hxx, 3. sdi.
+MODULES = {'BasicIDE': 'Basic IDE, Forms, Dialogs',
+ 'Calc': 'Calc',
+ 'Chart': 'Charts',
+ 'Dbu': 'Base',
+ 'DrawImpress': 'Draw / Impress',
+ 'Generic': 'Global',
+ 'Math': 'Math',
+ 'Report': 'Reports',
+ 'Writer': 'Writer',
+ 'basslots': 'Basic IDE, Forms, Dialogs',
+ 'scslots': 'Calc',
+ 'sdgslots': 'Draw / Impress',
+ 'sdslots': 'Draw / Impress',
+ 'sfxslots': 'Global',
+ 'smslots': 'Math',
+ 'svxslots': 'Global',
+ 'swslots': 'Writer',
+ 'scalc': 'Calc',
+ 'sdraw': 'Draw / Impress',
+ 'sfx': 'Global',
+ 'smath': 'Math',
+ 'svx': 'Global',
+ 'swriter': 'Writer'}
+
+def newcommand(unocommand):
+ cmd = {'unocommand': unocommand,
+ 'module': '',
+ 'xcufile': -1,
+ 'xculinenumber': 0,
+ 'xcuoccurs': 0,
+ 'label': '',
+ 'contextlabel': '',
+ 'tooltiplabel': '',
+ 'hxxfile': -1,
+ 'hxxoccurs': 0,
+ 'hxxlinenumber': 0,
+ 'resourceid': '',
+ 'numericid': '',
+ 'group': '',
+ 'sdifile': -1,
+ 'sdioccurs': 0,
+ 'sdilinenumber': 0,
+ 'mode': '',
+ 'arguments': ''}
+ return cmd
+
+
+def analyze_xcu(all_commands):
+ for filename in XCU_FILES:
+ ln = 0
+ with open(filename) as fh:
+ popups = False
+ for line in fh:
+ ln += 1
+ if '<node oor:name="Popups">' in line:
+ popups = True
+ continue
+ elif popups is True and line == ' </node>':
+ popups = False
+ continue
+ if '<node oor:name=".uno:' not in line:
+ continue
+
+ cmdln = ln
+ tmp = line.split('"')
+ command_name = tmp[1]
+ command_ok = True
+
+ while '</node>' not in line:
+ try:
+ line = next(fh)
+ ln += 1
+ except StopIteration:
+ print("Warning: couldn't find '</node>' line in %s" % filename,
+ file=sys.stderr)
+ break
+ if '<prop oor:name="Label"' in line:
+ label = 'label'
+ elif '<prop oor:name="ContextLabel"' in line:
+ label = 'contextlabel'
+ elif '<prop oor:name="TooltipLabel"' in line:
+ label = 'tooltiplabel'
+ elif '<value xml:lang="en-US">' in line:
+ labeltext = line.replace('<value xml:lang="en-US">', '').replace('</value>', '').strip()
+ elif '<prop oor:name="TargetURL"' in line:
+ command_ok = False
+
+ if command_ok is True and popups is False:
+ if command_name not in all_commands:
+ all_commands[command_name] = newcommand(command_name)
+ #
+ all_commands[command_name]['xcufile'] = XCU_FILES.index(filename)
+ all_commands[command_name]['xculinenumber'] = cmdln
+ all_commands[command_name][label] = labeltext.replace('~', '')
+ all_commands[command_name]['xcuoccurs'] += 1
+
+
+def analyze_hxx(all_commands):
+ for filename in HXX_FILES:
+ with open(filename) as fh:
+ ln = 0
+ mode = ''
+ for line in fh:
+ ln += 1
+ if not line.startswith('// Slot Nr. '):
+ continue
+
+ # Parse sth like
+ # // Slot Nr. 0 : 5502
+ # SFX_NEW_SLOT_ARG( basctl_Shell,SID_SAVEASDOC,SfxGroupId::Document,
+ cmdln = ln
+ tmp = line.split(':')
+ command_id = tmp[1].strip()
+
+ line = next(fh)
+ ln += 1
+ tmp = line.split(',')
+ command_rid = tmp[1]
+ command_group = tmp[2].split('::')[1]
+
+ next(fh)
+ ln += 1
+ next(fh)
+ ln += 1
+ line = next(fh)
+ ln += 1
+ mode += 'U' if 'AUTOUPDATE' in line else ''
+ mode += 'M' if 'MENUCONFIG' in line else ''
+ mode += 'T' if 'TOOLBOXCONFIG' in line else ''
+ mode += 'A' if 'ACCELCONFIG' in line else ''
+
+ next(fh)
+ ln += 1
+ next(fh)
+ ln += 1
+ line = next(fh)
+ ln += 1
+ if '"' not in line:
+ line = next(fh)
+ tmp = line.split('"')
+ try:
+ command_name = '.uno:' + tmp[1]
+ except IndexError:
+ print("Warning: expected \" in line '%s' from file %s" % (line.strip(), filename),
+ file=sys.stderr)
+ command_name = '.uno:'
+
+ if command_name not in all_commands:
+ all_commands[command_name] = newcommand(command_name)
+ #
+ all_commands[command_name]['hxxfile'] = HXX_FILES.index(filename)
+ all_commands[command_name]['hxxlinenumber'] = cmdln
+ all_commands[command_name]['numericid'] = command_id
+ all_commands[command_name]['resourceid'] = command_rid
+ all_commands[command_name]['group'] = command_group
+ all_commands[command_name]['mode'] = mode
+ all_commands[command_name]['hxxoccurs'] += 1
+ mode = ''
+
+
+def analyze_sdi(all_commands):
+ def SplitArguments(params):
+ # Split a string like : SfxStringItem Name SID_CHART_NAME,SfxStringItem Range SID_CHART_SOURCE,SfxBoolItem ColHeaders FN_PARAM_1,SfxBoolItem RowHeaders FN_PARAM_2
+ # in : Name (string)\nRange (string)\nRowHeaders (bool)
+ CR = '<br>'
+ split = ''
+ params = params.strip(' ,').replace(', ', ',') # At least 1 case of ', ' in svx/sdi/svx.sdi line 3592
+ if len(params) > 0:
+ for p in params.split(','):
+ if len(split) > 0:
+ split += CR
+ elems = p.split()
+ if len(elems) >= 2:
+ split += elems[1]
+ if 'String' in elems[0]:
+ split += ' (string)'
+ elif 'Bool' in elems[0]:
+ split += ' (bool)'
+ elif 'Int16' in elems[0]:
+ split += ' (integer)'
+ elif 'Int32' in elems[0]:
+ split += ' (long)'
+ else:
+ split += ' (' + elems[0].replace('Sfx', '').replace('Svx', '').replace('Item', '').lower() + ')'
+ return split
+
+ for filename in SDI_FILES:
+ ln = 0
+ comment, square, command, param = False, False, False, False
+ with open(filename) as fh:
+ for line in fh:
+ ln += 1
+ line = line.replace(' ', ' ').strip() # Anomaly met in svx/sdi/svx.sdi
+ if line.startswith('//'):
+ pass
+ elif comment is False and line.startswith('/*') and not line.endswith('*/'):
+ comment = True
+ elif comment is True and line.endswith('*/'):
+ comment = False
+ elif comment is False and line.startswith('/*') and line.endswith('*/'):
+ pass
+ elif comment is True:
+ pass
+ elif square is False and line.startswith('['):
+ square = True
+ mode = ''
+ command = False
+ elif square is True and line.endswith(']'):
+ all_commands[command_name]['mode'] = mode
+ square = False
+ elif square is True:
+ squaremode = line.strip(',;').split()
+ if len(squaremode) == 3:
+ mode += 'U' if squaremode[0] == 'AutoUpdate' and squaremode[2] == 'TRUE' else ''
+ mode += 'M' if squaremode[0] == 'MenuConfig' and squaremode[2] == 'TRUE' else ''
+ mode += 'T' if squaremode[0] == 'ToolBoxConfig' and squaremode[2] == 'TRUE' else ''
+ mode += 'A' if squaremode[0] == 'AccelConfig' and squaremode[2] == 'TRUE' else ''
+ elif comment is False and square is False and command is False and len(line) == 0:
+ pass
+ elif command is False:
+ command_name = '.uno:' + line.split(' ')[1]
+ if command_name not in all_commands:
+ all_commands[command_name] = newcommand(command_name)
+ all_commands[command_name]['sdifile'] = SDI_FILES.index(filename)
+ all_commands[command_name]['sdilinenumber'] = ln
+ all_commands[command_name]['sdioccurs'] += 1
+ if len(all_commands[command_name]['resourceid']) == 0:
+ all_commands[command_name]['resourceid'] = line.split(' ')[2]
+ command = True
+ elif command is True and (line == '' or line == '()'):
+ command = False
+ elif command is True and (param is True or line.startswith('(')) and line.endswith(')'):
+ if param:
+ params += line.strip(' (),').replace(', ', ',') # At least 1 case of ", " in svx/sdi/svx.sdi line 8767
+ # At least 1 case of "( " in sw/sdi/swriter.sdi line 5477
+ else:
+ params = line.strip(' (),').replace(', ', ',') # At least 1 case in sw/sdi/swriter.sdi line 7083
+ all_commands[command_name]['arguments'] = SplitArguments(params)
+ command = False
+ param = False
+ elif command is True and line.startswith('('): # Arguments always on 1 line, except in some cases (cfr.BasicIDEAppear)
+ params = line.strip(' ()').replace(', ', ',')
+ param = True
+ elif param is True:
+ params += line
+
+
+def categorize(all_commands):
+ # Clean black listed commands
+ for command in BLACKLIST:
+ cmd = '.uno:' + command
+ if cmd in all_commands:
+ del all_commands[cmd]
+ # Set category based on the file name where the command was found first
+ for cmd in all_commands:
+ command = all_commands[cmd]
+ cxcu, chxx, csdi = '', '', ''
+ fxcu = command['xcufile']
+ if fxcu > -1:
+ cxcu = os.path.basename(XCU_FILES[fxcu]).split('.')[0].replace('Commands', '')
+ fhxx = command['hxxfile']
+ if fhxx > -1:
+ chxx = os.path.basename(HXX_FILES[fhxx]).split('.')[0]
+ fsdi = command['sdifile']
+ if fsdi > -1:
+ csdi = os.path.basename(SDI_FILES[fsdi]).split('.')[0]
+ # General rule:
+ if len(cxcu) > 0:
+ cat = cxcu
+ elif len(chxx) > 0:
+ cat = chxx
+ else:
+ cat = csdi
+ # Exceptions on general rule
+ if cat == 'Generic' and chxx == 'basslots':
+ cat = chxx
+ command['module'] = MODULES[cat]
+
+
+def print_output(all_commands):
+ def longest(*args):
+ # Return the longest string among the arguments
+ return max(args, key = len)
+ #
+ def sources(cmd):
+ # Build string identifying the sources
+ xcufile, xculinenumber, hxxfile, hxxlinenumber, sdifile, sdilinenumber = 2, 3, 8, 10, 14, 16
+ src = ''
+ if cmd[xcufile] >= 0:
+ src += '[' + REPO + XCU_FILES[cmd[xcufile]] + '#' + str(cmd[xculinenumber]) + ' XCU]'
+ if cmd[sdifile] >= 0:
+ src += ' [' + REPO + SDI_FILES[cmd[sdifile]] + '#' + str(cmd[sdilinenumber]) + ' SDI]'
+ if cmd[hxxfile] >= 0:
+ file = str(cmd[hxxfile] + 1 + len(XCU_FILES) + len(SDI_FILES))
+ src += ' <span title="File (' + file + ') line ' + str(cmd[hxxlinenumber]) + '">[[#hxx' + file + '|HXX]]</span>'
+ return src.strip()
+ #
+ # Sort by category and command name
+ commands_list = []
+ for cmd in all_commands:
+ cmdlist = tuple(all_commands[cmd].values())
+ commands_list.append(cmdlist)
+ sorted_by_command = sorted(commands_list, key = lambda cmd: cmd[0])
+ sorted_by_module = sorted(sorted_by_command, key = lambda cmd: cmd[1])
+ #
+ # Produce tabular output
+ unocommand, module, label, contextlabel, tooltiplabel, arguments, resourceid, numericid, group, mode = 0, 1, 5, 6, 7, 18, 11, 12, 13, 17
+ lastmodule = ''
+ for cmd in sorted_by_module:
+ # Format bottom and header
+ if lastmodule != cmd[module]:
+ if len(lastmodule) > 0:
+ print('\n|-\n|}\n')
+ print('</small>')
+ lastmodule = cmd[module]
+ print('=== %s ===\n' % lastmodule)
+ print('<small>')
+ print('{| class="wikitable sortable" width="100%"')
+ print('|-')
+ print('! scope="col" | Dispatch command')
+ print('! scope="col" | Description')
+ print('! scope="col" | Group')
+ print('! scope="col" | Arguments')
+ print('! scope="col" | Internal<br>name (value)')
+ print('! scope="col" | Mode')
+ print('! scope="col" | Source<br>files')
+ print('|-\n')
+ print('| ' + cmd[unocommand].replace('&amp;', '\n&'))
+ print('| ' + longest(cmd[label], cmd[contextlabel], cmd[tooltiplabel]))
+ print('| ' + cmd[group])
+ print('| ' + cmd[arguments].replace('\\n', '\n'))
+ if len(cmd[numericid]) == 0:
+ print('| ' + cmd[resourceid])
+ else:
+ print('| ' + cmd[resourceid] + ' (' + cmd[numericid] + ')')
+ print('| ' + cmd[mode])
+ print('| ' + sources(cmd))
+ print('|-\n|}\n')
+ # List the source files
+ print('== Source files ==\n')
+ fn = 0
+ for i in range(len(XCU_FILES)):
+ fn += 1
+ print(f'({fn}) {REPO}{XCU_FILES[i]}\n')
+ print('\n')
+ for i in range(len(SDI_FILES)):
+ fn += 1
+ print(f'({fn}) {REPO}{SDI_FILES[i]}\n')
+ print('\n')
+ for i in range(len(HXX_FILES)):
+ fn += 1
+ print(f'<span id="hxx{fn}">({fn}) {HXX_FILES[i][2:]}</span>\n')
+ print('</small>')
+
+
+def main():
+ all_commands = {}
+
+ analyze_xcu(all_commands)
+
+ analyze_hxx(all_commands)
+
+ analyze_sdi(all_commands)
+
+ categorize(all_commands)
+
+ print_output(all_commands)
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/list-uitest.py b/bin/list-uitest.py
new file mode 100755
index 000000000..5678fb346
--- /dev/null
+++ b/bin/list-uitest.py
@@ -0,0 +1,80 @@
+#!/usr/bin/env python3
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import os
+import datetime
+import re
+
+def analyze_file(filename):
+ class_name = ""
+ method_list = []
+ with open(filename, encoding='utf-8') as fh:
+ for line in fh:
+ if line.lstrip().startswith('class '):
+ class_name = line.lstrip().split(" ")[1].split("(")[0]
+ elif line.lstrip().startswith('def test_'):
+ method_list.append(
+ line.lstrip().split("test_")[1].split("(")[0])
+ else:
+ continue
+ return class_name, method_list
+
+def get_files_list(directory, extension):
+ array_items = []
+
+ dh = os.scandir(directory)
+ for entry in dh:
+ if entry.is_dir():
+ array_items += get_files_list(entry.path, extension)
+ elif entry.is_file():
+ if entry.name.endswith(extension):
+ array_items.append(entry.path)
+
+ return array_items
+
+def linkFormat(name):
+ bugId = re.search(r'\d{5,6}', name)
+ if bugId:
+ return "[https://bugs.documentfoundation.org/show_bug.cgi?id={} {}]"\
+ .format(bugId.group(), name)
+ else:
+ return name
+
+
+def main():
+ uitest_ext = '.py'
+ uitest_dirs = {
+ 'Writer' : ['../writerperfect/qa/uitest/', '../sw/qa/uitest/'],
+ 'Calc' : ['../sc/qa/uitest/'],
+ 'Impress' : ['../uitest/impress_tests/', '../sd/qa/uitest/'],
+ 'Math': ['../uitest/math_tests/'],
+ 'Demo': ['../uitest/demo_ui/'],
+ 'Draw': ['']}
+
+ print('{{TopMenu}}')
+ print('{{Menu}}')
+ print('{{Menu.Development}}')
+ print()
+ print('Generated on ' + str(datetime.datetime.now()))
+ for k,v in uitest_dirs.items():
+ print('\n=== ' + k + ' ===')
+ for uitest_dir in v:
+ if uitest_dir:
+ uitest_files = get_files_list(uitest_dir, uitest_ext)
+ for uitest_file in uitest_files:
+ class_name, method_names = analyze_file(uitest_file)
+ if class_name:
+ print("# {} ({})".format(
+ linkFormat(class_name),uitest_file[3:]))
+ for m in method_names:
+ print('##' + linkFormat(m))
+ print()
+ print('[[Category:QA]][[Category:Development]]')
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/lo-all-static-libs b/bin/lo-all-static-libs
new file mode 100755
index 000000000..af4ff25f3
--- /dev/null
+++ b/bin/lo-all-static-libs
@@ -0,0 +1,133 @@
+#!/bin/sh
+
+# Output a list of all our (static) libraries, to be used when
+# building the single executable or single dynamic object that is used
+# in an LO-based iOS or Android app. (All our libraries and bundled
+# 3rd-party ones are built as static archives for these platforms.)
+
+# This script is to be run once a full "make" for iOS or Android has
+# otherwise completed, when just building the actual apps is left.
+
+if test -z "$INSTDIR" ; then
+ echo This script should be invoked only in a build.
+ exit 1
+fi
+
+if test "$OS" != ANDROID -a "$OS" != iOS; then
+ echo This script makes sense only in Android or iOS builds.
+fi
+
+foolibs=
+for var in EBOOK_LIBS FREEHAND_LIBS HARFBUZZ_LIBS HUNSPELL_LIBS HYPHEN_LIB MYTHES_LIBS; do
+ dirs=
+ libs=
+ for i in `eval echo '$'$var`; do
+ case "$i" in
+ -L*) dirs="$dirs ${i#-L}";;
+ -l*) libs="$libs ${i#-l}";;
+ esac
+ done
+ for l in $libs; do
+ for d in $dirs; do
+ test -f $d/lib$l.a && foolibs="$foolibs $d/lib$l.a"
+ done
+ done
+done
+
+case $OS in
+ANDROID)
+ oslibs="$WORKDIR/UnpackedTarball/curl/lib/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/fontconfig/src/.libs/libfontconfig.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/freetype/objs/.libs/libfreetype.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/pixman/pixman/.libs/libpixman-1.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/cairo/src/.libs/libcairo.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/xmlsec/src/.libs/libxmlsec1.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/xmlsec/src/nss/.libs/libxmlsec1-nss.a"
+ # Only liblo-bootstrap.a ends up here:
+ oslibs="$oslibs $WORKDIR/LinkTarget/Library/lib*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/openssl/*.a"
+
+ # coinmp not used for iOS
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/Cbc/src/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/Cgl/src/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/Clp/src/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/Clp/src/OsiClp/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/CoinMP/src/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/CoinUtils/src/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/coinmp/Osi/src/Osi/.libs/*.a"
+ ;;
+iOS)
+ oslibs="$WORKDIR/UnpackedTarball/icu/source/stubdata/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/cppunit/src/cppunit/.libs/*.a"
+
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nspr/out/lib/ds/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nspr/out/lib/libc/src/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nspr/out/pr/src/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/base/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/certdb/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/certhigh/out/*.a"
+
+ # Yes, individual object files here, these are not in any .a
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/builtins/out/*.o"
+
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/cryptohi/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/dev/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/freebl/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/freebl/out/Darwin_SINGLE_SHLIB/*.o"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/freebl/out/Darwin_SINGLE_SHLIB/deprecated/*.o"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/certsel/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/checker/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/crlsel/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/params/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/results/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/store/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/top/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix/util/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix_pl_nss/module/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix_pl_nss/pki/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/libpkix/pkix_pl_nss/system/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/nss/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/pk11wrap/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/pkcs12/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/pkcs7/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/pki/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/smime/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/softoken/out/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/nss/nss/lib/util/out/*.a"
+
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/curl/lib/.libs/*.a"
+
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/xmlsec/src/nss/.libs/*.a"
+ oslibs="$oslibs $WORKDIR/UnpackedTarball/xmlsec/src/.libs/*.a"
+ ;;
+*)
+ oslibs=
+ ;;
+esac
+
+echo $INSTDIR/$LIBO_LIB_FOLDER/lib*.a \
+ $foolibs \
+ $WORKDIR/LinkTarget/StaticLibrary/lib*.a \
+ $oslibs \
+ $WORKDIR/UnpackedTarball/icu/source/lib/*.a \
+ $WORKDIR/UnpackedTarball/liblangtag/liblangtag/.libs/*.a \
+ $WORKDIR/UnpackedTarball/lcms2/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libabw/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libcdr/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libepubgen/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libexttextcat/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libmspub/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libmwaw/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libodfgen/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/liborcus/src/*/.libs/*.a \
+ $WORKDIR/UnpackedTarball/librevenge/src/*/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libvisio/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libtiff/libtiff/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libwebp/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libwp?/src/lib/.libs/*.a \
+ $WORKDIR/UnpackedTarball/raptor/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/rasqal/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/redland/src/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libxml2/.libs/*.a \
+ $WORKDIR/UnpackedTarball/libxslt/libxslt/.libs/*.a
diff --git a/bin/lo-commit-stat b/bin/lo-commit-stat
new file mode 100755
index 000000000..08e8a1785
--- /dev/null
+++ b/bin/lo-commit-stat
@@ -0,0 +1,584 @@
+#!/usr/bin/perl
+ eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
+ if $running_under_some_shell;
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+use LWP::UserAgent;
+use utf8;
+use File::Temp;
+use Encode;
+use open ':encoding(utf8)';
+use open ':std' => ':encoding(utf8)';
+
+my %module_dirname = (
+ "core" => "",
+ "dictionaries" => "dictionaries",
+ "help" => "helpcontent2",
+ "translations" => "translations"
+);
+
+
+my %bugzillas = (
+ fdo => "https://bugs.documentfoundation.org/show_bug.cgi?id=",
+ tdf => "https://bugs.documentfoundation.org/show_bug.cgi?id=",
+ bnc => "https://bugzilla.novell.com/show_bug.cgi?id=",
+ rhbz => "https://bugzilla.redhat.com/show_bug.cgi?id=",
+ i => "https://bz.apache.org/ooo/show_bug.cgi?id=",
+ fate => "https://features.opensuse.org/",
+);
+
+sub search_bugs($$$$)
+{
+ my ($pdata, $module, $commit_id, $line) = @_;
+
+ my $bug = "";
+ my $bug_orig;
+ while (defined $bug) {
+
+ # match fdo#123, rhz#123, i#123, #123
+ # but match only bug number with >= 4 digits
+ if ( $line =~ m/(\w+\#+\d{4,})/ ) {
+ $bug_orig = $1;
+ $bug = $1;
+ # default to issuezilla for the #123 variant
+ # but match only bug number with >= 4 digits
+ } elsif ( $line =~ m/(\#)(\d{4,})/ ) {
+ $bug_orig = $1 . $2;
+ $bug = "i#$2";
+ # match #i123#
+ } elsif ( $line =~ m/(\#i)(\d+)(\#)/ ) {
+ $bug_orig = $1 . $2 . $3;
+ $bug = "i#$2";
+ } else {
+ $bug = undef;
+ next;
+ }
+
+# print " found $bug\n";
+ # remove bug number from the comment; it will be added later a standardized way
+ $bug_orig =~ s/\#/\\#/;
+ $line =~ s/(,\s)*[Rr](elated|esolve[ds]):?\s*$bug_orig\s?:?\s*//;
+ $line =~ s/\s*-\s*$bug_orig\s*//;
+ $line =~ s/\(?$bug_orig\)?\s*[:,-]?\s*//;
+
+ # bnc# is preferred over n# for novell bugs
+ $bug =~ s/^n\#/bnc#/;
+ # deb# is preferred over debian# for debian bugs
+ $bug =~ s/^debian\#/deb#/;
+ # easyhack# is sometimes used for fdo# - based easy hacks
+ $bug =~ s/^easyhack\#/fdo#/;
+ # someone mistyped fdo as fd0
+ $bug =~ s/^fd0\#/fdo#/;
+ # save the bug number
+ $pdata->{$module}{$commit_id}{'bugs'}{$bug} = 1;
+ }
+
+ return $line;
+}
+
+sub standardize_summary($)
+{
+ my $line = shift;
+
+ $line =~ s/^\s*//;
+ $line =~ s/\s*$//;
+
+ # lower first letter if the word contains only lowercase letter
+ if ( $line =~ m/(^.[a-z]+\b)/ ) {
+ $line =~ m/(^.)/;
+ my $first_char = lc($1);
+ $line =~ s/^./$first_char/;
+ }
+
+ # FIXME: remove do at the end of line
+ # remove bug numbers
+ return $line;
+}
+
+sub generate_git_cherry_ids_log($$$$$)
+{
+ my ($pdata, $repo_dir, $module, $branch_name, $git_args) = @_;
+
+ my $commit_ids_log;
+ my $commit_ids_log_fh;
+ $commit_ids_log_fh = File::Temp->new(TEMPLATE => 'lo-commit-stat-ids-XXXXXX',
+ DIR => '/tmp',
+ UNLINK => 0);
+ $commit_ids_log = $commit_ids_log_fh->filename;
+
+ print STDERR "Filtering cherry-picked commits in the git repo: $module...\n";
+
+ my $cmd = "cd $repo_dir; git cherry $git_args";
+ open (GIT, "$cmd 2>&1|") || die "Can't run $cmd: $!";
+
+ while (my $line = <GIT>) {
+
+ # skip cherry-picked commits
+ next if ( $line =~ m/^\-/ );
+
+ if ( $line =~ m/^\+ / ) {
+ $line =~ s/^\+ //;
+ print $commit_ids_log_fh $line;
+ }
+ }
+
+ close GIT;
+ close $commit_ids_log_fh;
+
+ return $commit_ids_log;
+}
+
+sub load_git_log($$$$$$$)
+{
+ my ($pdata, $repo_dir, $module, $branch_name, $git_command, $git_cherry, $git_args) = @_;
+
+ my $cmd = "cd $repo_dir;";
+ my $commit_ids_log;
+
+ if ($git_cherry) {
+ $commit_ids_log = generate_git_cherry_ids_log($pdata, $repo_dir, $module, $branch_name, $git_args);
+ $cmd .= " cat $commit_ids_log | xargs -n 1 $git_command -1";
+ } else {
+ $cmd .= " $git_command $git_args";
+ }
+
+ my $commit_id;
+ my $summary;
+
+ print STDERR "Analyzing log from the git repo: $module...\n";
+
+# FIXME: ./g pull move submodules in unnamed branches
+# my $repo_branch_name = get_branch_name($repo_dir);
+# if ( $branch_name ne $repo_branch_name ) {
+# die "Error: mismatch of branches:\n" .
+# " main repo is on the branch: $branch_name\n" .
+# " $module repo is on the branch: $repo_branch_name\n";
+# }
+
+ open (GIT, "$cmd 2>&1|") || die "Can't run $cmd: $!";
+
+ while (my $line = <GIT>) {
+ chomp $line;
+
+ if ( $line =~ m/^commit ([0-9a-z]{20})/ ) {
+ $commit_id = $1;
+ $summary=undef;
+ next;
+ }
+
+ if ( $line =~ /^Author:\s*([^\<]*)\<([^\>]*)>/ ) {
+ # get rid of extra empty spaces;
+ my $name = $1;
+ my $email = $2;
+ $name =~ s/\s+$//;
+ die "Error: Author already defined for the commit {$commit_id}\n" if defined ($pdata->{$module}{$commit_id}{'author'});
+ $pdata->{$module}{$commit_id}{'author'}{'name'} = $name;
+ $pdata->{$module}{$commit_id}{'author'}{'email'} = $email;
+ next;
+ }
+
+ if ( $line =~ /^Date:\s+/ ) {
+ # ignore date line
+ next;
+ }
+
+ if ( $line =~ /^\s*$/ ) {
+ # ignore empty line
+ next;
+ }
+
+ unless (defined $pdata->{$module}{$commit_id}{'summary'}) {
+ $line = search_bugs($pdata, $module, $commit_id, $line);
+ # FIXME: need to be implemented
+ # search_keywords($pdata, $line);
+
+ $summary = standardize_summary($line);
+ $pdata->{$module}{$commit_id}{'summary'} = $summary;
+ }
+ }
+
+ close GIT;
+ unlink $commit_ids_log if ($git_cherry);
+}
+
+sub get_repo_name($)
+{
+ my $repo_dir = shift;
+
+ open (GIT_CONFIG, "$repo_dir/.git/config") ||
+ die "can't open \"$$repo_dir/.git/config\" for reading: $!\n";
+
+ while (my $line = <GIT_CONFIG>) {
+ chomp $line;
+
+ if ( $line =~ /^\s*url\s*=\s*(\S+)$/ ) {
+ my $repo_name = "$1";
+ $repo_name = s/.*\///g;
+ return "$repo_name";
+ }
+ }
+ die "Error: can't find repo name in \"$$repo_dir/.git/config\"\n";
+}
+
+sub load_data($$$$$$$)
+{
+ my ($pdata, $top_dir, $p_module_dirname, $branch_name, $git_command, $git_cherry, $git_args) = @_;
+
+ foreach my $module (sort { $a cmp $b } keys %{$p_module_dirname}) {
+ load_git_log($pdata, "$top_dir/$p_module_dirname->{$module}", $module, $branch_name, $git_command, $git_cherry, $git_args);
+ }
+}
+
+sub get_branch_name($)
+{
+ my ($top_dir) = @_;
+
+ my $branch;
+ my $cmd = "cd $top_dir && git branch";
+
+ open (GIT, "$cmd 2>&1|") || die "Can't run $cmd: $!";
+
+ while (my $line = <GIT>) {
+ chomp $line;
+
+ if ( $line =~ m/^\*\s*(\S+)/ ) {
+ $branch = "$1";
+ }
+ }
+
+ close GIT;
+
+ die "Error: did not detect git branch name in $top_dir\n" unless defined ($branch);
+
+ return $branch;
+}
+
+sub get_bug_list($$$)
+{
+ my ($pdata, $pbugs, $check_bugzilla) = @_;
+
+ # associate bugs with their summaries and fixers
+ foreach my $module ( keys %{$pdata}) {
+ foreach my $id ( keys %{$pdata->{$module}}) {
+ foreach my $bug (keys %{$pdata->{$module}{$id}{'bugs'}}) {
+ my $author = $pdata->{$module}{$id}{'author'}{'name'};
+ my $summary = $pdata->{$module}{$id}{'summary'};
+ $pbugs->{$bug}{'summary'} = $summary;
+ $pbugs->{$bug}{'author'}{$author} = 1;
+ }
+ }
+ }
+
+ # try to replace summaries with bug names from bugzilla
+ if ($check_bugzilla) {
+ print "Getting bug titles:\n";
+ foreach my $bug ( sort { $a cmp $b } keys %{$pbugs}) {
+ $pbugs->{$bug}{'summary'} = get_bug_name($bug, $pbugs->{$bug}{'summary'});
+ }
+ }
+}
+
+sub open_log_file($$$$$$)
+{
+ my ($log_dir, $log_prefix, $log_suffix, $top_dir, $branch_name, $wiki) = @_;
+
+ my $logfilename = "$log_prefix-$branch_name-$log_suffix";
+ $logfilename = "$log_dir/$logfilename" if (defined $log_dir);
+ if ($wiki) {
+ $logfilename .= ".wiki";
+ } else {
+ $logfilename .= ".log";
+ }
+
+ if (-f $logfilename) {
+ print "WARNING: The log file already exists: $logfilename\n";
+ print "Do you want to overwrite it? (Y/n)?\n";
+ my $answer = <STDIN>;
+ chomp $answer;
+ $answer = "y" unless ($answer);
+ die "Please, rename the file or choose another log suffix\n" if ( lc($answer) ne "y" );
+ }
+
+ my $log;
+ open($log, '>', $logfilename) || die "Can't open \"$logfilename\" for writing: $!\n";
+
+ return $log;
+}
+
+sub print_commit_summary($$$$$$)
+{
+ my ($summary, $pmodule_title, $pbugs, $pauthors, $prefix, $log) = @_;
+
+ return if ( $summary eq "" );
+
+ # print module title if not done yet
+ if ( defined ${$pmodule_title} ) {
+ print $log "${$pmodule_title}\n";
+ ${$pmodule_title} = undef;
+ }
+
+ # finally print the summary line
+ my $bugs = "";
+ if ( %{$pbugs} ) {
+ $bugs = " (" . join (", ", keys %{$pbugs}) . ")";
+ }
+
+ my $authors = "";
+ if ( %{$pauthors} ) {
+ $authors = " [" . join (", ", keys %{$pauthors}) . "]";
+ }
+
+ print $log $prefix, $summary, $bugs, $authors, "\n";
+}
+
+sub print_commits($$$)
+{
+ my ($pdata, $log, $wiki) = @_;
+
+ foreach my $module ( sort { $a cmp $b } keys %{$pdata}) {
+ # check if this module has any entries at all
+ my $module_title = "+ $module";
+ if ( %{$pdata->{$module}} ) {
+ my $old_summary="";
+ my %authors = ();
+ my %bugs = ();
+ foreach my $id ( sort { lc $pdata->{$module}{$a}{'summary'} cmp lc $pdata->{$module}{$b}{'summary'} } keys %{$pdata->{$module}}) {
+ my $summary = $pdata->{$module}{$id}{'summary'};
+ if ($summary ne $old_summary) {
+ print_commit_summary($old_summary, \$module_title, \%bugs, \%authors, " + ", $log);
+ $old_summary = $summary;
+ %authors = ();
+ %bugs = ();
+ }
+ # collect bug numbers
+ if (defined $pdata->{$module}{$id}{'bugs'}) {
+ foreach my $bug (keys %{$pdata->{$module}{$id}{'bugs'}}) {
+ $bugs{$bug} = 1;
+ }
+ }
+ # collect author names
+ my $author = $pdata->{$module}{$id}{'author'}{'name'};
+ $authors{$author} = 1;
+ }
+ print_commit_summary($old_summary, \$module_title, \%bugs, \%authors, " + ", $log);
+ }
+ }
+}
+
+sub get_bug_name($$)
+{
+ my ($bug, $summary) = @_;
+ print "$bug: ";
+
+ $bug =~ m/(?:(\w*)\#+(\d+))/; # fdo#12345
+ my $bugzilla = $1; # fdo
+ my $bug_number = $2; # 12345
+
+ if ( $bugzillas{$bugzilla} ) {
+ my $url = $bugzillas{$bugzilla} . $bug_number;
+ my $ua = LWP::UserAgent->new;
+ $ua->timeout(10);
+ $ua->env_proxy;
+ my $response = $ua->get($url);
+ if ($response->is_success) {
+ my $title = decode('utf8', $response->title);
+ if ( $title =~ s/^(?:Bug $bug_number \S+|$bug_number –) // ) {
+ print "$title\n";
+ return $title;
+ } else {
+ print "warning: not found; using commit message (only got $title)";
+ }
+ }
+ }
+ print "\n";
+
+ return $summary;
+}
+
+sub print_bugs($$$$)
+{
+ my ($pbugs, $log, $wiki) = @_;
+
+ # sort alphabetically by bugzilla-type, but within that numerically
+ foreach my $bug ( sort { ($a =~ /(\D+)/)[0] cmp ($b =~ /(\D+)/)[0] ||
+ ($a =~ /(\d+)/)[0] <=> ($b =~ /(\d+)/)[0] } keys %{$pbugs}) {
+ my $summary = $pbugs->{$bug}{'summary'};
+
+ my $authors = "";
+ if ( %{$pbugs->{$bug}{'author'}} ) {
+ $authors = " [" . join (", ", keys %{$pbugs->{$bug}{'author'}}) . "]";
+ }
+
+ $bug =~ s/(.*)\#(.*)/# {{$1|$2}}/ if ($wiki);
+ print $log $bug, " ", $summary, $authors, "\n";
+ }
+}
+
+sub print_bugs_changelog($$$$)
+{
+ my ($pbugs, $log, $wiki) = @_;
+
+ foreach my $bug ( sort { $a cmp $b } keys %{$pbugs}) {
+ my $summary = $pbugs->{$bug}{'summary'};
+
+ my $authors = "";
+ if ( %{$pbugs->{$bug}{'author'}} ) {
+ $authors = " [" . join (", ", keys %{$pbugs->{$bug}{'author'}}) . "]";
+ }
+
+ print $log " + $summary ($bug)$authors\n";
+ }
+}
+
+sub print_bugnumbers($$$$)
+{
+ my ($pbugs, $log, $wiki) = @_;
+
+ print $log join ("\n", sort { $a cmp $b } keys %{$pbugs}), "\n";
+}
+
+sub generate_log($$$$$$$$)
+{
+ my ($pused_data, $print_func, $log_dir, $log_prefix, $log_suffix, $top_dir, $branch_name, $wiki) = @_;
+
+ my $log = open_log_file($log_dir, $log_prefix, $log_suffix, $top_dir, $branch_name, $wiki);
+ & {$print_func} ($pused_data, $log, $wiki);
+ close $log;
+}
+
+########################################################################
+# help
+
+sub usage()
+{
+ print "This script generates LO git commit summary\n\n" .
+
+ "Usage: lo-commit-stat [--help] [--no-submodules] [--module=<module>] --log-dir=<dir> --log-suffix=<string> topdir [git_arg...]\n\n" .
+
+ "Options:\n" .
+ " --help print this help\n" .
+ " --no-submodule read changes just from the main repository, ignore submodules\n" .
+ " --module=<module> summarize just changes from the given module, use \"core\"\n" .
+ " for the main module\n" .
+ " --log-dir=<dir> directory where to put the generated log\n" .
+ " --log-suffix=<string> suffix of the log file name; the result will be\n" .
+ " commit-log-<branch>-<log-name-suffix>.log; the branch name\n" .
+ " is detected automatically\n" .
+ " --commits generate log with all commits (default)\n" .
+ " --bugs generate log with bugzilla entries\n" .
+ " --bugs-changelog generate log with bugzilla entries, use changelog style\n" .
+ " --bugs-wiki generate log with bugzilla entries, use wiki markup\n" .
+ " --bugs-numbers generate log with bugzilla numbers\n" .
+ " --rev-list use \"git rev-list\" instead of \"git log\"; useful to check\n" .
+ " differences between branches\n" .
+ " --cherry use \"git cherry\" instead of \"git log\"; detects cherry-picked\n" .
+ " commits between branches\n" .
+ " topdir directory with the libreoffice/core clone\n" .
+ " git_arg extra parameters passed to the git command to define\n" .
+ " the area of interest; The default command is \"git log\" and\n" .
+ " parameters might be, for example, --after=\"2010-09-27\" or\n" .
+ " TAG..HEAD; with the option --rev-list, useful might be, for\n" .
+ " example origin/master ^origin/libreoffice-3-3; with the option\n" .
+ " --rev-list, useful might be, for example libreoffice-3.6.3.2\n" .
+ " libreoffice-3.6.4.1\n";
+}
+
+
+#######################################################################
+#######################################################################
+# MAIN
+#######################################################################
+#######################################################################
+
+
+my $module;
+my %generate_log = ();
+my $top_dir;
+my $log_dir;
+my $log_suffix;
+my $log;
+my $list_bugs = 0;
+my $check_bugzilla = 0;
+my $branch_name;
+my $git_command = "git log";
+my $git_cherry;
+my $git_args = "";
+my %data;
+my %bugs = ();
+
+
+foreach my $arg (@ARGV) {
+ if ($arg eq '--help') {
+ usage();
+ exit;
+ } elsif ($arg eq '--no-submodule') {
+ $module = "core";
+ } elsif ($arg =~ m/--module=(.*)/) {
+ $module = $1;
+ } elsif ($arg =~ m/--log-suffix=(.*)/) {
+ $log_suffix = "$1";
+ } elsif ($arg =~ m/--log-dir=(.*)/) {
+ $log_dir = "$1";
+ } elsif ($arg eq '--commits') {
+ $generate_log{"commits"} = 1;
+ } elsif ($arg eq '--bugs') {
+ $generate_log{"bugs"} = 1;
+ $check_bugzilla = 1;
+ $list_bugs = 1;
+ } elsif ($arg eq '--bugs-changelog') {
+ $generate_log{"bugs-changelog"} = 1;
+ $check_bugzilla = 1;
+ $list_bugs = 1;
+ } elsif ($arg eq '--bugs-wiki' || $arg eq '--wikibugs') {
+ $generate_log{"bugs-wiki"} = 1;
+ $check_bugzilla = 1;
+ $list_bugs = 1;
+ } elsif ($arg eq '--bugs-numbers' || $arg eq '--bug-numbers') {
+ $generate_log{"bugs-numbers"} = 1;
+ $list_bugs = 1;
+ } elsif ($arg eq '--rev-list') {
+ $git_command = "git rev-list --pretty=medium"
+ } elsif ($arg eq '--cherry') {
+ $git_command = "git log";
+ $git_cherry = 1;
+ } else {
+ if (! defined $top_dir) {
+ $top_dir=$arg;
+ } else {
+ $git_args .= " $arg";
+ }
+ }
+}
+
+# default log
+unless (%generate_log) {
+ $generate_log{"commits"} = 1;
+}
+
+# we want only one module
+if ($module) {
+ my $name = $module_dirname{$module};
+ %module_dirname = ();
+ $module_dirname{$module} = $name;
+}
+
+(defined $top_dir) || die "Error: top directory is not defined\n";
+(-d "$top_dir") || die "Error: not a directory: $top_dir\n";
+(-f "$top_dir/.git/config") || die "Error: can't find $top_dir/.git/config\n";
+
+(!defined $log_dir) || (-d $log_dir) || die "Error: directory does no exist: $log_dir\n";
+
+(defined $log_suffix) || die "Error: define log suffix using --log-suffix=<string>\n";
+
+$branch_name = get_branch_name($top_dir);
+
+load_data(\%data, $top_dir, \%module_dirname, $branch_name, $git_command, $git_cherry, $git_args);
+get_bug_list(\%data, \%bugs, $check_bugzilla) if ($list_bugs);
+
+generate_log(\%data, \&print_commits, $log_dir, "commits", $log_suffix, $top_dir, $branch_name, 0) if (defined $generate_log{"commits"});
+generate_log(\%bugs, \&print_bugs, $log_dir, "bugs", $log_suffix, $top_dir, $branch_name, 0) if (defined $generate_log{"bugs"});
+generate_log(\%bugs, \&print_bugs, $log_dir, "bugs", $log_suffix, $top_dir, $branch_name, 1) if (defined $generate_log{"bugs-wiki"});
+generate_log(\%bugs, \&print_bugs_changelog, $log_dir, "bugs-changelog", $log_suffix, $top_dir, $branch_name, 0) if (defined $generate_log{"bugs-changelog"});
+generate_log(\%bugs, \&print_bugnumbers, $log_dir, "bug-numbers", $log_suffix, $top_dir, $branch_name, 0) if (defined $generate_log{"bugs-numbers"});
diff --git a/bin/lo-pack-sources b/bin/lo-pack-sources
new file mode 100755
index 000000000..8c795dc17
--- /dev/null
+++ b/bin/lo-pack-sources
@@ -0,0 +1,485 @@
+#!/usr/bin/perl
+ eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
+ if $running_under_some_shell;
+#!/usr/bin/perl
+
+use strict;
+use File::Copy;
+use File::Temp qw/ tempfile tempdir /;
+
+my %module_dirname = (
+ "core" => "",
+ "dictionaries" => "dictionaries",
+ "help" => "helpcontent2",
+ "translations" => "translations"
+);
+my $lo_topdir_name;
+
+# get libreoffice-build version from the given libreoffice-build sources
+sub get_config_version($)
+{
+ my ($lo_core_dir) = @_;
+ my $version;
+
+ open (CONFIGURE, "$lo_core_dir/configure.ac") ||
+ die "can't open \"$lo_core_dir/configure.ac\" for reading: $!\n";
+
+ while (my $line = <CONFIGURE>) {
+ chomp $line;
+
+ if ($line =~ /AC_INIT\s*\(\s*libreoffice-build\s*,\s*([\w\.]*)\)/) {
+ $version="$1";
+ }
+ }
+ close (CONFIGURE);
+ return $version;
+}
+
+# increment the version for a test build:
+# + add 'a' if the version ended with a number
+# + bump the letter otherwise
+sub inc_test_version($)
+{
+ my ($version) = @_;
+
+ my $lastchar = chop $version;
+ my $new_version;
+
+ if ($lastchar =~ /\d/) {
+ return "$version" . "$lastchar" . "a";
+ } elsif ($lastchar =~ /\w/) {
+ # select next letter alphabetically: a->b, b->c, ...
+ $lastchar =~ tr/0a-zA-Z/a-zA-Z0/;
+ return "$version" . "$lastchar";
+ } else {
+ die "Can't generate test version from \"$version$lastchar\n";
+ }
+}
+
+sub get_release_version($$$$)
+{
+ my ($config_version, $state_config_version, $state_release_version, $inc_version) = @_;
+ my $release_version;
+
+ if (defined $state_config_version &&
+ defined $state_release_version &&
+ "$state_config_version" eq "$config_version") {
+ $release_version = "$state_release_version";
+ } else {
+ $release_version = "$config_version";
+ }
+
+ if ( defined $inc_version ) {
+ $release_version = inc_test_version($release_version);
+ }
+
+ return $release_version;
+}
+
+# copy files to temp dir; showing a progress; using a black list
+sub copy_dir_filter_and_show_progress($$)
+{
+ my ($source_dir, $target_dir) = @_;
+
+ print "Copying \"$source_dir\" -> \"$target_dir\"...";
+ # copy sources from git and show progress
+ system ("cd $source_dir && " .
+ "git archive --format=tar HEAD | " .
+ " tar -xf - -C $target_dir ") &&
+ die "Error: copying failed: $!\n";
+ print "\n";
+}
+
+# copy files to temp dir; showing a progress; using a black list
+sub remove_empty_submodules($)
+{
+ my ($target_topdir) = @_;
+
+ foreach my $submodule (sort values %module_dirname) {
+ next unless ($submodule);
+ print "Removing empty submodule: $submodule...\n";
+ rmdir "$target_topdir/$submodule" || die "Error: Can't remove submodule directory: $target_topdir/$submodule";
+ }
+}
+
+# copy the source directory into a tmp directory
+# omit the .git subdirectories
+sub copy_lo_module_to_tempdir($$$)
+{
+ my ($source_dir, $module, $lo_topdir_name) = @_;
+ my $tempdir = tempdir( 'libreoffice-XXXXXX', DIR => File::Spec->tmpdir );
+
+ mkdir "$tempdir/$lo_topdir_name" || die "Can't create directory \"$tempdir/$lo_topdir_name\": $!\n";
+ mkdir "$tempdir/$lo_topdir_name/$module_dirname{$module}" || die "Can't create directory \"$tempdir/$lo_topdir_name/$module_dirname{$module}\": $!\n" if ($module_dirname{$module});
+
+ copy_dir_filter_and_show_progress("$source_dir/$module_dirname{$module}", "$tempdir/$lo_topdir_name/$module_dirname{$module}");
+ remove_empty_submodules("$tempdir/$lo_topdir_name/") if ($module eq "core");
+
+ return $tempdir;
+}
+
+sub generate_lo_module_changelog($$$)
+{
+ my ($source_dir, $lo_module_release_topdir, $module) = @_;
+
+ my $log_name = "ChangeLog";
+ $log_name .= "-$module_dirname{$module}" if ($module_dirname{$module});
+ print "Generating changelog for $module...\n";
+ system ("cd $source_dir/$module_dirname{$module} && " .
+ "git log --date=short --pretty='format:%cd %an <%ae> [%H]%n%n%w(0,8,8)%s%n%e%+b' " .
+ ">$lo_module_release_topdir/$log_name" ) &&
+ die "Error: generating failed: $!\n";
+}
+
+sub run_autogen($$)
+{
+ my ($dir, $module) = @_;
+
+ print "Running autogen for $module...\n";
+ system ("cd $dir && " .
+ "NOCONFIGURE=1 ./autogen.sh && " .
+ "rm -rf autom4te.cache && " .
+ "cd - >/dev/null 2>&1") && die "Error: autogen failed: $!\n";
+}
+
+sub generate_sources_version_file($$)
+{
+ my ($dir, $release_version) = @_;
+
+ open (VERFILE, ">$dir/sources.ver") || die "Can't open $dir/sources.ver: $!\n";
+
+ print VERFILE "lo_sources_ver=$release_version\n";
+
+ close VERFILE;
+}
+
+sub generate_tarball($$$)
+{
+ my ($dir, $tarball, $tar_compress_option) = @_;
+
+ print "Creating $tarball...";
+ # generate the tarball in the current directory; avoid "./" prefix in the stored paths; show progress
+ system ("tar -c $tar_compress_option -f $tarball -C $dir $lo_topdir_name") &&
+ die "Error: releasing failed: $!\n";
+ print "\n";
+}
+
+sub generate_md5($)
+{
+ my ($filename) = @_;
+
+ print "Generating MD5...\n";
+ system ("md5sum $filename >$filename.md5") &&
+ die "Error: releasing failed: $!\n";
+}
+
+sub default_releases_state_file($)
+{
+ my ($lo_core_dir) = @_;
+
+ my $rootdir = $lo_core_dir;
+ $rootdir =~ s/^(.*?)\/?[^\/]+\/?$/$1/;
+
+ my $releases_state_file;
+ if ($rootdir) {
+ $releases_state_file = "$rootdir/.releases";
+ } else {
+ $releases_state_file = ".releases";
+ }
+
+ return "$releases_state_file";
+}
+
+sub load_releases_state($)
+{
+ my ($releases_state_file) = @_;
+
+ my $state_config_version;
+ my $state_release_version;
+
+ if (open (STATE, "$releases_state_file")) {
+
+ while (my $line = <STATE>) {
+ chomp $line;
+
+ if ($line =~ /^\s*configure_version\s*=\s*(.*)$/) {
+ $state_config_version = "$1";
+ } elsif ($line =~ /^\s*released_version\s*=\s*(.*)$/) {
+ $state_release_version = "$1";
+ }
+ }
+ close (STATE);
+ }
+
+ return $state_config_version, $state_release_version;
+}
+
+sub save_releases_state($$$)
+{
+ my ($releases_state_file, $config_version, $release_version) = @_;
+
+ open (STATE, '>', "$releases_state_file") ||
+ die "Can't open \"$releases_state_file\" for writing: $!\n";
+
+ print STATE "configure_version = $config_version\n";
+ print STATE "released_version = $release_version\n";
+
+ close (STATE);
+}
+
+sub remove_tempdir($)
+{
+ my ($tempdir) = @_;
+
+# print "Cleaning $tempdir...\n";
+ system ("rm -rf $tempdir") && die "Error: rm failed: $!\n";
+}
+
+sub check_if_file_exists($$)
+{
+ my ($file, $force) = @_;
+
+ if (-e $file) {
+ if (defined $force) {
+ print "Warning: $file already exists and will be replaced!\n";
+ } else {
+ die "Error: $file already exists.\n".
+ " Use --force if you want to replace it.\n";
+ }
+ }
+}
+
+sub check_if_already_released($$$$$$)
+{
+ my ($p_module_tarball_name, $force, $bzip2, $xz, $pack_lo_core, $pack_lo_modules) = @_;
+
+ foreach my $tarball_name ( sort values %{$p_module_tarball_name} ) {
+ check_if_file_exists("$tarball_name.tar.bz2", $force) if (defined $bzip2);
+ check_if_file_exists("$tarball_name.tar.xz", $force) if (defined $xz);
+ }
+}
+
+sub prepare_module_sources($$$$)
+{
+ my ($source_dir, $release_version, $module, $lo_topdir_name) = @_;
+
+ # prepare sources
+ my $temp_dir = copy_lo_module_to_tempdir($source_dir, $module, $lo_topdir_name);
+ generate_lo_module_changelog($source_dir, "$temp_dir/$lo_topdir_name", $module);
+ run_autogen("$temp_dir/$lo_topdir_name", $module) if ($module eq 'core');
+ generate_sources_version_file("$temp_dir/$lo_topdir_name", $release_version) if ($module eq 'core');
+
+ return $temp_dir;
+}
+
+sub pack_module_sources($$$$)
+{
+ my ($temp_dir, $md5, $tarball, $tar_compress_option) = @_;
+
+ generate_tarball($temp_dir, $tarball, $tar_compress_option);
+ generate_md5($tarball) if (defined $md5);
+}
+
+sub generate_module_tarball($$$$$$$$)
+{
+ my ($source_dir, $release_version, $module, $md5, $bzip2, $xz, $lo_topdir_name, $module_tarball_name) = @_;
+
+ my $temp_dir = prepare_module_sources($source_dir, $release_version, $module, $lo_topdir_name);
+ pack_module_sources($temp_dir, $md5, "$module_tarball_name.tar.bz2", "--bzip2") if (defined $bzip2);
+ pack_module_sources($temp_dir, $md5, "$module_tarball_name.tar.xz", "--xz") if (defined $xz);
+ remove_tempdir($temp_dir);
+}
+
+
+sub generate_tarballs($$$$$$$$$)
+{
+ my ($source_dir, $release_version, $md5, $bzip2, $xz, $lo_topdir_name, $p_module_tarball_name, $pack_lo_core, $pack_lo_modules) = @_;
+
+ foreach my $module (sort keys %{$p_module_tarball_name} ) {
+ print "\n--- Generating $module ---\n";
+ generate_module_tarball($source_dir, $release_version, $module, $md5, $bzip2, $xz, $lo_topdir_name, $p_module_tarball_name->{$module});
+ }
+}
+
+
+sub usage()
+{
+ print "This tool helps to pack the libreoffice-build and module sources\n\n" .
+
+ "Usage:\n".
+ "\tlo-pack-sources [--help]\n" .
+ "\t [--force] [--md5] [--bzip2] [--xz]\n" .
+ "\t [--version][--set-version=<ver>] [--inc-version]\n" .
+ "\t [--no-submodule] [--module=<module>]\n" .
+ "\t [dir]\n\n" .
+
+ "Options:\n\n" .
+ "\t--help: print this help\n" .
+ "\t--force: replace an already existing release of the same version\n" .
+ "\t--md5: generate md5 sum for the final tarball\n" .
+ "\t--bzip2: generate tarballs compressed by bzip2\n" .
+ "\t--xz: generate tarballs compressed by xz (default)\n" .
+ "\t--version: just print version of the released package but do not\n" .
+ "\t\trelease it; the version is affected by the other options, e.g.\n" .
+ "\t\t--inc-version\n" .
+ "\t--set-version: force another version\n" .
+ "\t--inc-version: increment the latest version; there is a difference\n" .
+ "\t\tbetween test release (default) and final (not yet supported)\n" .
+ "\t--no-submodule: do not pack sources from git submodules\n" .
+ "\t--module=<module>: pack just a single module, use \"core\"\n" .
+ "\t\tfor the main git repo,\n" .
+ "\tdir: path of the source directory, either libreoffice-build or module\n";
+}
+
+
+my $module;
+my $ptf;
+my $md5;
+my $bzip2;
+my $xz;
+my $inc_version;
+my $config_version;
+my $set_version;
+my $get_config_version;
+my $release_version;
+my $pack_lo_core=1;
+my $pack_lo_modules=1;
+my $source_dir;
+my $releases_state_file;
+my $state_config_version;
+my $state_release_version;
+my $lo_core_tempdir;
+my $force;
+my $verbose=1;
+my %module_tarball_name;
+
+###################
+# Arguments parsing
+###################
+
+for my $arg (@ARGV) {
+ if ($arg eq '--help' || $arg eq '-h') {
+ usage;
+ exit 0;
+ } elsif ($arg eq '--force') {
+ $force=1;
+ } elsif ($arg eq '--md5') {
+ $md5=1;
+ } elsif ($arg eq '--bzip2') {
+ $bzip2=1;
+ } elsif ($arg eq '--xz') {
+ $xz=1;
+ } elsif ($arg eq '--version') {
+ $get_config_version=1;
+ $verbose = undef;
+ } elsif ($arg eq '--inc-version') {
+ $inc_version=1
+ } elsif ($arg =~ m/--set-version=(.*)/) {
+ $set_version="$1";
+ } elsif ($arg eq '--no-submodule') {
+ $module = "core";
+ } elsif ($arg =~ m/--module=(.*)/) {
+ # process just one module and do not pack libreoffice-build
+ die("Error: unknown module: $1") unless (defined $module_dirname{$1});
+ $module = $1;
+ } elsif ($arg =~ /^-/ ) {
+ die "Error: unknown option: $arg\n";
+ } else {
+ if (! defined $source_dir) {
+ $source_dir = $arg;
+ } else {
+ die "Error: Too many arguments $arg\n";
+ }
+ }
+}
+
+# ugly hack; we want only one module
+if ($module) {
+ my $name = $module_dirname{$module};
+ %module_dirname = ();
+ $module_dirname{$module} = $name;
+}
+
+###################
+# Initial checks
+###################
+
+unless ( defined $source_dir ) {
+ die "Error: undefined source directory, try --help\n";
+}
+
+unless ( -d "$source_dir" ) {
+ die "Error: is not a directory: $source_dir\n";
+}
+
+# check if it is a valid libreoffice-core directory
+unless (-f "$source_dir/autogen.sh" && -f "$source_dir/config_host.mk.in") {
+ die "Error: \"$source_dir\" is not a valid libreoffice-core directory\n";
+}
+
+if (defined $set_version && defined $inc_version) {
+ die "Error: --set-version and --inc-version options can't be used together\n";
+}
+
+# default compression
+$xz = 1 unless (defined $xz || defined $bzip2);
+
+
+###################
+# Main logic
+###################
+
+
+print "Source: $source_dir\n" if ($verbose);
+
+# detect some paths
+$releases_state_file = default_releases_state_file($source_dir) unless (defined $releases_state_file);
+
+# detect versions
+$config_version = get_config_version($source_dir);
+($state_config_version, $state_release_version) = load_releases_state($releases_state_file);
+if (defined $set_version) {
+ $release_version = "$set_version";
+} else {
+ $release_version = get_release_version($config_version, $state_config_version, $state_release_version, $inc_version);
+}
+
+# define tarball names
+print "Detected module:\n";
+foreach my $module (sort keys %module_dirname) {
+ if (-e "$source_dir/$module_dirname{$module}/.git") {
+ print " $module\n";
+ if ($module eq "core") {
+ $module_tarball_name{$module} = "libreoffice-$release_version";
+ } else {
+ $module_tarball_name{$module} = "libreoffice-$module-$release_version";
+ }
+ } else {
+ print "did not found: $source_dir/$module_dirname{$module}/.git\n";
+ print "Warning: $module sources are not available -> skipping\n";
+ }
+}
+
+# top directory inside the source tarballs
+$lo_topdir_name = "libreoffice-$release_version";
+
+print "Default version : $config_version\n" if ($verbose && defined $config_version);
+print "Last used version : $state_release_version\n" if ($verbose && defined $state_release_version);
+print "New version : $release_version\n" if ($verbose);
+
+# do the real job
+if ( defined $get_config_version ) {
+ print "$release_version\n";
+} else {
+ check_if_already_released(\%module_tarball_name, $force, $bzip2, $xz, $pack_lo_core, $pack_lo_modules);
+
+ # give a chance to stop the process
+ print ("\nWaiting 3 seconds...\n");
+ sleep 3;
+
+ generate_tarballs($source_dir, $release_version, $md5, $bzip2, $xz, $lo_topdir_name, \%module_tarball_name, $pack_lo_core, $pack_lo_modules);
+
+ if ( defined $releases_state_file ) {
+ save_releases_state($releases_state_file, $config_version, $release_version);
+ }
+}
diff --git a/bin/lo-xlate-lang b/bin/lo-xlate-lang
new file mode 100755
index 000000000..065306217
--- /dev/null
+++ b/bin/lo-xlate-lang
@@ -0,0 +1,213 @@
+#!/usr/bin/env perl
+
+use strict;
+
+my $progname=$0; $progname = $& if $progname =~ m,[^/]+$,;
+
+my %PREFIX; # used to search for prefix numbers
+my %ISOCODE; # used to search for iso codes
+my %LANGUAGE; # used to search for language names
+
+#=======================================================================
+# initialisation code - stuff the DATA into the CODES hash
+#=======================================================================
+sub init {
+
+ my $prefix;
+ my $code;
+ my $name;
+
+
+ while (<DATA>)
+ {
+ next unless /\S/;
+ chop;
+ ($prefix, $code, $name ) = split(/:/, $_, 3);
+ $PREFIX{$prefix} = $prefix;
+ $PREFIX{$code} = $prefix;
+ $PREFIX{$name} = $prefix;
+
+ $ISOCODE{$prefix} = $code;
+ $ISOCODE{$code} = $code;
+ $ISOCODE{$name} = $code;
+
+ $LANGUAGE{$prefix} = $name;
+ $LANGUAGE{$code} = $name;
+ $LANGUAGE{$name} = $name;
+ }
+}
+
+
+#=======================================================================
+# usage - error message
+#=======================================================================
+sub usage {
+ my $errmsg = shift;
+ my $errcode = shift;
+ print STDERR "$progname: $errmsg\n" if $errmsg;
+ print STDERR "$progname: Converts between prefix codes, iso codes and langnames\n";
+ print STDERR " Usage: $progname (-i|-l|-p|-h) <code>|all\n";
+ print STDERR " -i <code>: convert prefix to iso code (ex: 03 -> pt)\n";
+ print STDERR " -l <code>: convert iso code to language name (ex: pt -> portuguese)\n";
+ print STDERR " -p <code>: convert iso code to prefix (ex: pt -> 03)\n";
+ print STDERR " the code can either be an iso code, a prefix or even a language name\n";
+ print STDERR " The special code \"all\" asks for all possible values.\n\n";
+ print STDERR " -h : print this help\n";
+ exit $errcode;
+}
+
+#=======================================================================
+# main -
+#=======================================================================
+init();
+
+my ($LanguageCode, $LanguageMap);
+
+while ($ARGV[0] =~ /^-/) {
+ $_ = shift;
+ if (m/^-i/) {
+ $LanguageMap = \%ISOCODE;
+ }
+ elsif (m/^-l/) {
+ $LanguageMap = \%LANGUAGE;
+ }
+ elsif (m/^-p/) {
+ $LanguageMap = \%PREFIX;
+ }
+ elsif (m/^-h/) {
+ usage("",0);
+ }
+ else {
+ usage ("unknown option $_",1);
+ }
+}
+
+usage ("no operation specified on command line",1)
+ if (!$LanguageMap);
+
+usage ("no language code specified on command line",1)
+ if (!($LanguageCode = shift));
+
+if ($LanguageCode =~ (m/^all$/)) {
+ # Asked for all codes
+ my $old="";
+ foreach my $key (sort values %$LanguageMap) {
+ if ($key ne $old) {
+ print "$key ";
+ $old=$key;
+ }
+ }
+ print "\n";
+ exit 0;
+}
+
+usage ("no mapping found for $LanguageCode\n",1)
+ if (!($LanguageMap->{$LanguageCode}));
+
+print $LanguageMap->{$LanguageCode}, "\n";
+
+1;
+
+# keep third column names here with openoffice-dir/share/*/<long lang name>/
+
+__DATA__
+:be:belarusian
+:bg:bulgarian
+:bn:bengali
+:bs:bosnian
+:en-GB:english_british
+:gu:gujarati
+:hr:croatian
+:km:khmer
+:kmr-Latn:Kurmanji
+:pa-IN:punjabi
+:rw:kinarwanda
+:xh:xhosa
+:lt:lithuanian
+:ne:nepali
+:vi:vietnamese
+:nso:northern_sotho
+:ss:swazi
+:sr:serbian
+:ve:venda
+:ts:tsonga
+:st:southern_sotho
+:tn:tswana
+:br:breton
+:ga:gaelic
+:gd:scottish_gaelic
+:th:thai
+:hi:hindi
+:bs-BA:bosnian
+:en-ZA:english_southafrican
+:mk:macedonian
+:as:assamese
+:ml:malayalam
+:mr:marathi
+:or:odia
+:ur:urdu
+:fa:farsi
+:lv:latvian
+:nr:ndebele
+:ne:nepalese
+:sh:serbian
+:te:telugu
+:ta:tamil
+:tg:tajik
+:ka:georgian
+:eo:esperanto
+:uk:ukrainian
+:kk:kazakh
+:dz:dzongkha
+:kn:kannada
+:gl:galician
+:uz:uzbek
+:oc:occitan
+:ro:romanian
+:eu:basque
+:mn:mongolian
+:om:oromo
+:bo:tibetan
+:ast:asturian
+:is:icelandic
+:ug:uighur
+:si:sinhala
+:id:indonesian
+:my:burmese
+:am:amharic
+:gug:guarani
+:szl:upper_silesian
+01:en-US:english_american
+03:pt:portuguese
+07:ru:russian
+26:ns:northernsotho
+27:af:afrikaans
+28:zu:zulu
+30:el:greek
+31:nl:dutch
+33:fr:french
+34:es:spanish
+35:fi:finnish
+36:hu:hungarian
+37:ca:catalan
+39:it:italian
+42:cs:czech
+43:sk:slovak
+45:da:danish
+46:sv:swedish
+47:nb:norwegian_bokmal
+48:pl:polish
+49:de:german
+50:sl:slovenian
+53:cy:welsh
+55:pt-BR:portuguese_brazilian
+77:et:estonian
+79:nn:norwegian_nynorsk
+81:ja:japanese
+82:ko:korean
+86:zh-CN:chinese_simplified
+88:zh-TW:chinese_traditional
+90:tr:turkish
+91:hi:hindi
+96:ar:arabic
+97:he:hebrew
diff --git a/bin/lolcat b/bin/lolcat
new file mode 100755
index 000000000..27bb32624
--- /dev/null
+++ b/bin/lolcat
@@ -0,0 +1,21 @@
+#!/usr/bin/perl -w
+
+use strict;
+use IO::Handle;
+
+die "Usage: $0 identifier\n" .
+ "(identifier is for example org.libreoffice)" unless $#ARGV == 0;
+
+my $id = $ARGV[0];
+
+open (LOGCAT, "adb logcat |") || die "Could not open pipe from adb logcat";
+my $pid = '';
+
+while (<LOGCAT>) {
+ if (m!^I/ActivityManager\( *\d+\): Start proc $id for activity .*: pid=(\d+)!) {
+ $pid = $1;
+ } elsif (m!^[EIWD]/[^(]+\( *$pid\)!) {
+ print $_;
+ STDOUT->flush();
+ }
+}
diff --git a/bin/merge-app-bundles b/bin/merge-app-bundles
new file mode 100755
index 000000000..2a2200f1c
--- /dev/null
+++ b/bin/merge-app-bundles
@@ -0,0 +1,143 @@
+#!/usr/bin/env bash
+
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Exit on errors
+set -e
+
+# Use of unset variable is an error
+set -u
+
+# If any part of a pipeline of commands fails, the whole pipeline fails
+set -o pipefail
+
+if [ `uname` != Darwin ]; then
+ echo This is for macOS only >&2
+ exit 1
+fi
+
+if [ $# != 3 ]; then
+ echo Usage: $0 app-bundle-1 app-bundle-2 output-app-bundle
+ exit 1
+fi
+
+if [ -d "$3" ]; then
+ echo The directory $3 exists already
+ exit 1
+fi
+
+if [ -f "$3" ]; then
+ echo $3 exists and is a file
+ exit 1
+fi
+
+if [ ! -d "$1" ]; then
+ echo No such directory: $1
+ exit 1
+fi
+
+if [ ! -d "$2" ]; then
+ echo No such directory: $2
+ exit 1
+fi
+
+ONE=$(cd "$1" && /bin/pwd)
+TWO=$(cd "$2" && /bin/pwd)
+mkdir "$3"
+OUT=$(cd "$3" && /bin/pwd)
+
+# Create all directories
+(
+ cd "$ONE"
+ find . -type d -print
+) |
+(
+ cd "$OUT"
+ while read dirname; do
+ mkdir -p "$dirname"
+ done
+)
+
+# Check which files in 1 exist in 2, and if they are executable, merge them into a fat copy. For
+# other files, just use one copy, assuming they are equivalent in most cases.
+(
+ cd "$ONE"
+ find . -type l -or -type f
+) |
+(
+ cd "$TWO"
+ while read fname; do
+ if test -L "$fname"; then
+ ln -s $(readlink "$fname") "$OUT/$fname"
+ elif test -f "$fname"; then
+ case "$fname" in
+ *.so | \
+ *.dylib | \
+ *.dylib.* | \
+ */Frameworks/LibreOfficePython.framework/Versions/*/LibreOfficePython | \
+ */Frameworks/LibreOfficePython.framework/Versions/*/Resources/Python.app/Contents/MacOS/LibreOfficePython | \
+ */Library/Spotlight/OOoSpotlightImporter.mdimporter/Contents/MacOS/OOoSpotlightImporter)
+ lipo -create -output "$OUT/$fname" "$fname" "$ONE/$fname"
+ ;;
+ # Ignore differences in these files. Let's hope it's just the timestamps.
+ *.ot[tp] | \
+ *.bau | \
+ *.pyc | \
+ */_sysconfigdata_m_darwin_darwin.py | \
+ */Contents/Resources/firebird/security3.fdb | \
+ */Contents/Resources/autocorr/acor_*.dat | \
+ */Contents/Resources/resource/*/LC_MESSAGES/*.mo | \
+ */Contents/Resources/config/images_*.zip)
+ cp "$fname" "$OUT/$fname"
+ ;;
+ *)
+ case $(file --brief "$fname") in
+ Mach-O\ 64-bit\ executable\ *)
+ lipo -create -output "$OUT/$fname" "$fname" "$ONE/$fname"
+ ;;
+ *)
+ cmp -s "$fname" "$ONE/$fname" ||
+ echo "$fname differs and is not an executable!?" >&2
+ cp "$fname" "$OUT/$fname"
+ esac
+ esac
+ else
+ # We ignore some files that can't be built for macOS on arm64 for now
+ case "$fname" in
+ ./Contents/Frameworks/LibreOfficePython.framework/Versions/3.7/lib/python*/lib-dynload/_ctypes.cpython-*m.so)
+ ;;
+ *)
+ echo "$fname does not exist in $TWO" >&2
+ ;;
+ esac
+ cp "$ONE/$fname" "$OUT/$fname"
+ fi
+ done
+)
+
+# Look for files in 2 that don't exist in 1
+(
+ cd "$TWO"
+ find . -type f -print
+) |
+(
+ cd "$ONE"
+ while read fname; do
+ if test -f "$fname"; then
+ :
+ else
+ echo "$fname does not exist in $ONE" >&2
+ cp "$TWO/$fname" "$OUT/$fname"
+ fi
+ done
+)
+
+# Local Variables:
+# tab-width: 4
+# indent-tabs-mode: nil
+# fill-column: 100
+# End:
diff --git a/bin/module-deps.pl b/bin/module-deps.pl
new file mode 100755
index 000000000..b3efc72f4
--- /dev/null
+++ b/bin/module-deps.pl
@@ -0,0 +1,584 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+use Getopt::Long qw(GetOptions VersionMessage);
+use Pod::Usage;
+
+my $gnumake;
+my $src_root;
+my $makefile_build;
+my $verbose = 0;
+my $no_leaf;
+my $from_file;
+my $to_file;
+my $output_file;
+my $preserve_libs = 0;
+my $toposort = 0;
+my %merged_libs;
+
+sub logit($)
+{
+ print STDERR shift if ($verbose);
+}
+
+sub read_deps()
+{
+ my $p;
+ my $to;
+ my $invalid_tolerance = 100;
+ my $line_count = 0;
+ my %deps;
+ my $child_pid = 0;
+ if (defined $to_file)
+ {
+ open($to, ">$to_file") or die "can not open file for writing $to_file";
+ }
+ if (defined $from_file) {
+ open ($p, $from_file) || die "can't read deps from cache file: $!";
+ } else {
+ $child_pid = open ($p, "-|", "ENABLE_PRINT_DEPS=1 $gnumake -qrf $makefile_build") // die "couldn't launch make: $!";
+ exit if (!$child_pid);
+ }
+ $|=1;
+ print STDERR "reading deps ";
+ while (<$p>) {
+ my $line = $_;
+ $line_count++;
+ print STDERR '.' if (!$verbose && $line_count % 10 == 0);
+ logit($line);
+ print $to $line if defined $to_file;
+ chomp ($line);
+ if ($line =~ m/^MergeLibContents:\s+(\S+.*)\s*$/) {
+ for my $dep (split / /, $1) {
+ $merged_libs{$dep} = 1 if $dep ne '';
+ }
+ } elsif ($line =~ m/^LibraryDep:\s+(\S+) links against (.*)$/) {
+# if ($line =~ m/^LibraryDep:\s+(\S+)\s+links against/) {
+ $deps{$1} = ' ' if (!defined $deps{$1});
+ $deps{$1} = $deps{$1} . ' ' . $2;
+ } elsif ($line =~ m/^LibraryDep:\s+links against/) {
+# these need fixing, we call gb_LinkTarget__use_$...
+# and get less than normal data back to gb_LinkTarget_use_libraries
+# print STDERR "ignoring unhelpful external dep\n";
+ } elsif ($invalid_tolerance < 0) {
+# print "read all dependencies to: '$line'\n";
+ last;
+ } else {
+# print "no match '$line'\n";
+ $invalid_tolerance--;
+ }
+ }
+ close ($p);
+ if ($child_pid) {
+ my $err = $? >> 8;
+ # make query mode returns 0 or 1, depending on the build status
+ if ($err != 0 && $err != 1) {
+ print STDERR " error\n" if (!$verbose);
+ die("Errorcode $err from make - aborting!");
+ }
+ }
+ print STDERR " done\n";
+
+ return \%deps;
+}
+
+# graphviz etc. don't like some names
+sub clean_name($)
+{
+ my $name = shift;
+ $name =~ s/[\-\/\.]/_/g;
+ return $name;
+}
+
+# first create nodes for each entry
+sub clean_tree($)
+{
+ my $deps = shift;
+ my %tree;
+ for my $name (sort keys %{$deps}) {
+ my $need_str = $deps->{$name};
+ $need_str =~ s/^\s+//g;
+ $need_str =~ s/\s+$//g;
+ my @needs = split /\s+/, $need_str;
+ $name =~ m/^([^_]+)_(\S+)$/ || die "invalid target name: '$name'";
+ my $type = $1;
+ my $target = clean_name ($2);
+ $type eq 'Executable' || $type eq 'Library' ||
+ $type eq 'CppunitTest' || die "Unknown type '$type'";
+
+ my %result;
+ $result{type} = $type;
+ $result{target} = $target;
+ $result{merged} = 0;
+ my @clean_needs;
+ for my $need (@needs) {
+ push @clean_needs, clean_name($need);
+ }
+ $result{deps} = \@clean_needs;
+ if (defined $tree{$target}) {
+ logit("warning -duplicate target: '$target'\n");
+ delete($tree{$target});
+ }
+ $tree{$target} = \%result;
+
+ logit("$target ($type): " . join (',', @clean_needs) . "\n");
+ }
+ return \%tree;
+}
+
+sub has_child_dep($$$)
+{
+ my ($tree,$search,$name) = @_;
+ my $node = $tree->{$name};
+ return defined $node->{flat_deps}->{$search};
+}
+
+# flatten deps recursively into a single hash per module
+sub build_flat_dep_hash($$);
+sub build_flat_dep_hash($$)
+{
+ my ($tree, $name) = @_;
+ my %flat_deps;
+
+ my $node = $tree->{$name};
+ return if (defined $node->{flat_deps});
+
+ # build flat deps for children
+ for my $child (@{$node->{deps}}) {
+ build_flat_dep_hash($tree, $child)
+ }
+
+ for my $child (@{$node->{deps}}) {
+ $flat_deps{$child} = 1;
+ for my $dep (@{$tree->{$child}->{deps}}) {
+ $flat_deps{$dep} = 1;
+ }
+ }
+ $node->{flat_deps} = \%flat_deps;
+
+ # useful debugging ...
+ if (defined $ENV{DEP_CACHE_FILE}) {
+ logit("node '$name' has flat-deps: '" . join(',', keys %flat_deps) . "' " .
+ "vs. '" . join(',', @{$node->{deps}}) . "'\n");
+ }
+}
+
+# many modules depend on vcl + sal, but vcl depends on sal
+# so we want to strip sal out - and the same for many
+# similar instances
+sub prune_redundant_deps($)
+{
+ my $tree = shift;
+ for my $name (sort keys %{$tree}) {
+ build_flat_dep_hash($tree, $name);
+ }
+}
+
+# glob on libo directory
+sub create_lib_module_map()
+{
+ my %l2m;
+ # hardcode the libs that don't have a directory
+ $l2m{'merged'} = 'merged';
+
+ for (glob($src_root."/*/Library_*.mk"))
+ {
+ /.*\/(.*)\/Library_(.*)\.mk/;
+ # add module -> module
+ $l2m{$1} = $1;
+ # add lib -> module
+ $l2m{$2} = $1;
+ }
+ return \%l2m;
+}
+
+# call prune redundant_deps
+# rewrite the deps array
+sub optimize_tree($)
+{
+ my $tree = shift;
+ prune_redundant_deps($tree);
+ my @errors;
+ for my $name (sort keys %{$tree}) {
+ my $result = $tree->{$name};
+ if (!defined($result->{target})) {
+ push @errors, "missing target for dependency '$name'!";
+ next;
+ }
+ logit("minimising deps for $result->{target}\n");
+ my @newdeps;
+ for my $dep (@{$result->{deps}}) {
+ # is this implied by any other child ?
+ logit("checking if '$dep' is redundant\n");
+ my $preserve = 1;
+ for my $other_dep (@{$result->{deps}}) {
+ next if ($other_dep eq $dep);
+ if (has_child_dep($tree,$dep,$other_dep)) {
+ logit("$dep is implied by $other_dep - ignoring\n");
+ $preserve = 0;
+ last;
+ }
+ }
+ push @newdeps, $dep if ($preserve);
+ }
+ # re-write the shrunk set to accelerate things
+ $result->{deps} = \@newdeps;
+ }
+ if (scalar @errors > 0) {
+ print STDERR join("\n", @errors) . "\n";
+ die("Missing targets for dependencies - aborting!");
+ }
+ return $tree;
+}
+
+# walking through the library based graph and creating a module based graph.
+sub collapse_lib_to_module($)
+{
+ my $tree = shift;
+ my %digraph;
+ my $l2m = create_lib_module_map();
+ my %unknown_libs;
+ for my $lib_name (sort keys %{$tree}) {
+ my $result = $tree->{$lib_name};
+ $unknown_libs{$lib_name} = 1 && next if (!grep {/$lib_name/} keys %$l2m);
+
+ # new collapsed name.
+ my $name = $l2m->{$lib_name};
+
+ # sal has no dependencies, take care of it
+ # otherwise it doesn't have target key
+ if (!@{$result->{deps}}) {
+ if (!exists($digraph{$name})) {
+ my @empty;
+ $digraph{$name}{deps} = \@empty;
+ $digraph{$name}{target} = $result->{target};
+ $digraph{$name}{merged} = $result->{merged};
+ }
+ }
+ for my $dep (@{$result->{deps}}) {
+ my $newdep;
+ $newdep = $l2m->{$dep};
+
+ die "Mis-named */Library_*.mk file - should match rules: '$dep'" if (!defined $newdep);
+ $dep = $newdep;
+
+ # ignore: two libraries from the same module depend on each other
+ next if ($name eq $dep);
+ if (exists($digraph{$name}))
+ {
+ my @deps = @{$digraph{$name}{deps}};
+ # only add if we haven't seen already that edge?
+ if (!grep {/$dep/} @deps)
+ {
+ push @deps, $dep;
+ $digraph{$name}{deps} = \@deps;
+ }
+ }
+ else
+ {
+ my @deps;
+ push @deps, $dep;
+ $digraph{$name}{deps} = \@deps;
+ $digraph{$name}{target} = $result->{target};
+ $digraph{$name}{merged} = $result->{merged};
+ }
+ }
+ }
+ logit("warn: no module for libs were found and dropped: [" .
+ join(",", (sort (keys(%unknown_libs)))) . "]\n");
+ return optimize_tree(\%digraph);
+}
+
+sub prune_leaves($)
+{
+ my $tree = shift;
+ my %newtree;
+ my %name_has_deps;
+
+ # we like a few leaves around:
+ for my $nonleaf ('desktop', 'sw', 'sc', 'sd', 'starmath') {
+ $name_has_deps{$nonleaf} = 1;
+ }
+
+ # find which modules are depended on by others
+ for my $name (keys %{$tree}) {
+ for my $dep (@{$tree->{$name}->{deps}}) {
+ $name_has_deps{$dep} = 1;
+ }
+ }
+
+ # prune modules with no deps
+ for my $name (keys %{$tree}) {
+ delete $tree->{$name} if (!defined $name_has_deps{$name});
+ }
+
+ return optimize_tree($tree);
+}
+
+sub annotate_mergelibs($)
+{
+ my $tree = shift;
+ print STDERR "annotating mergelibs\n";
+ for my $name (keys %{$tree}) {
+ if (defined $merged_libs{$name}) {
+ $tree->{$name}->{merged} = 1;
+# print STDERR "mark $name as merged\n";
+ }
+ }
+}
+
+sub dump_graphviz($)
+{
+ my $tree = shift;
+ my $to = \*STDOUT;
+ open($to, ">$output_file") if defined($output_file);
+ print $to <<END;
+digraph LibreOffice {
+edge [color="#31CEF0", len=0.4]
+edge [fontname=Arial, fontsize=10, fontcolor="#31CEF0"]
+END
+;
+
+ my @merged_names;
+ my @normal_names;
+ for my $name (sort keys %{$tree}) {
+ if ($tree->{$name}->{merged}) {
+ push @merged_names, $name;
+ } else {
+ push @normal_names, $name;
+ }
+ }
+ print $to "node [fontname=Verdana, fontsize=10, height=0.02, width=0.02,".
+ 'shape=Mrecord,color="#BBBBBB"' .
+ "];" . join(';', @normal_names) . "\n";
+ print $to "node [fontname=Verdana, fontsize=10, height=0.02, width=0.02,".
+ 'shape=box,style=filled,color="#CCCCCC"' .
+ "];" . join(';', @merged_names) . "\n";
+
+ my @errors;
+ for my $name (sort keys %{$tree}) {
+ my $result = $tree->{$name};
+ if (!defined($result->{target})) {
+ push @errors, "Missing target for dependency '$name'!";
+ next;
+ }
+ logit("minimising deps for $result->{target}\n");
+ for my $dep (@{$result->{deps}}) {
+ print $to "$name -> $dep;\n" ;
+ }
+ }
+ if (scalar @errors > 0) {
+ print STDERR join("\n", @errors) . "\n";
+ die("Missing targets for dependencies - aborting!");
+ }
+ print $to "}\n";
+}
+
+sub toposort_visit($$$$);
+sub toposort_visit($$$$)
+{
+ my $tree = shift;
+ my $list = shift;
+ my $tags = shift;
+ my $name = shift;
+ die "dependencies don't form a DAG"
+ if (defined($tags->{$name}) && $tags->{$name} == 1);
+ if (!$tags->{$name}) {
+ $tags->{$name} = 1;
+ my $result = $tree->{$name};
+ for my $dep (@{$result->{deps}}) {
+ toposort_visit($tree, $list, $tags, $dep);
+ }
+ $tags->{$name} = 2;
+ push @{$list}, $name;
+ }
+}
+
+sub dump_toposort($)
+{
+ my $tree = shift;
+ my @list;
+ my %tags;
+ for my $name (sort keys %{$tree}) {
+ toposort_visit($tree, \@list, \%tags, $name);
+ }
+ my $to = \*STDOUT;
+ open($to, ">$output_file") if defined($output_file);
+ for (my $i = 0; $i <= $#list; ++$i) {
+ print $to "$list[$i]\n";
+ }
+}
+
+sub filter_targets($)
+{
+ my $tree = shift;
+ for my $name (sort keys %{$tree})
+ {
+ my $result = $tree->{$name};
+ if ($result->{type} eq 'CppunitTest' ||
+ ($result->{type} eq 'Executable' &&
+ $result->{target} ne 'soffice_bin'))
+ {
+ delete($tree->{$name});
+ }
+ }
+}
+
+sub parse_options()
+{
+ my %h = (
+ 'verbose|v' => \$verbose,
+ 'help|h' => \my $help,
+ 'man|m' => \my $man,
+ 'version|r' => sub {
+ VersionMessage(-msg => "You are using: 1.0 of ");
+ },
+ 'preserve-libs|p' => \$preserve_libs,
+ 'toposort|t' => \$toposort,
+ 'write-dep-file|w=s' => \$to_file,
+ 'read-dep-file|f=s' => \$from_file,
+ 'no-leaf|l' => \$no_leaf,
+ 'output-file|o=s' => \$output_file);
+ GetOptions(%h) or pod2usage(2);
+ pod2usage(1) if $help;
+ pod2usage(-exitstatus => 0, -verbose => 2) if $man;
+ ($gnumake, $makefile_build) = @ARGV if $#ARGV == 1;
+ $gnumake = 'make' if (!defined $gnumake);
+ $makefile_build = 'Makefile.gbuild' if (!defined $makefile_build);
+ $src_root = defined $ENV{SRC_ROOT} ? $ENV{SRC_ROOT} : ".";
+}
+
+sub main()
+{
+ parse_options();
+ my $deps = read_deps();
+ my $tree = clean_tree($deps);
+ filter_targets($tree);
+ optimize_tree($tree);
+ annotate_mergelibs($tree);
+ if (!$preserve_libs && !defined($ENV{PRESERVE_LIBS})) {
+ $tree = collapse_lib_to_module($tree);
+ }
+ if ($no_leaf) {
+ $tree = prune_leaves($tree);
+ }
+ if ($toposort) {
+ dump_toposort($tree);
+ } else {
+ dump_graphviz($tree);
+ }
+}
+
+main()
+
+ __END__
+
+=head1 NAME
+
+module-deps - Generate module dependencies for LibreOffice build system
+
+=head1 SYNOPSIS
+
+module_deps [options] [gnumake] [makefile]
+
+=head1 OPTIONS
+
+=over 8
+
+=item B<--help>
+
+=item B<-h>
+
+Print a brief help message and exits.
+
+=item B<--man>
+
+=item B<-m>
+
+Prints the manual page and exits.
+
+=item B<--version>
+
+=item B<-v>
+
+Prints the version and exits.
+
+=item B<--preserve-libs>
+
+=item B<-p>
+
+Don't collapse libs to modules
+
+=item B<--toposort>
+
+=item B<-t>
+
+Output a topological sorting instead of a graph
+
+=item B<--read-dep-file file>
+
+=item B<-f>
+
+Read dependency from file.
+
+=item B<--write-dep-file file>
+
+=item B<-w>
+
+Write dependency to file.
+
+=item B<--output-file file>
+
+=item B<-o>
+
+Write graph or sort output to file
+
+=back
+
+=head1 DESCRIPTION
+
+B<This program> parses the output of LibreOffice make process
+(or cached input file) and generates the digraph build dependency,
+that must be piped to B<graphviz> program (typically B<dot>).
+
+B<Hacking on it>:
+
+The typical (optimized) B<workflow> includes 3 steps:
+
+=over 3
+
+=item 1
+Create cache dependency file: module_deps --write-dep-file lo.dep
+
+=item 2
+Use cache dependency file: module_deps --read-dep-file lo.dep -o lo.graphviz
+
+=item 3
+Pipe the output to graphviz: cat lo.graphviz | dot -Tpng -o lo.png
+
+=back
+
+=head1 TODO
+
+=over 2
+
+=item 1
+Add soft (include only) dependency
+
+=item 2
+Add dependency on external modules
+
+=back
+
+=head1 AUTHOR
+
+=over 2
+
+=item Michael Meeks
+
+=item David Ostrovsky
+
+=back
+
+=cut
diff --git a/bin/moveglobalheaders.sh b/bin/moveglobalheaders.sh
new file mode 100755
index 000000000..0de4cf5fc
--- /dev/null
+++ b/bin/moveglobalheaders.sh
@@ -0,0 +1,43 @@
+#!/usr/bin/env bash
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+topdirs=`find . -mindepth 1 -maxdepth 1 -type d -not -name sal`
+mkdir -p include/
+for dir in $topdirs
+do
+ dir=`echo "$dir"| sed -e 's/^..//'`
+ if test -d $dir/inc/$dir
+ then
+ if test -f $dir/Package_inc.mk
+ then
+ if test -f $dir/Module_$dir.mk
+ then
+ git mv $dir/inc/$dir include/$dir
+ git rm $dir/Package_inc.mk
+ grep -v Package_inc $dir/Module_$dir.mk > $dir/Module_dir.mk.new
+ mv -f $dir/Module_dir.mk.new $dir/Module_$dir.mk
+ git add $dir/Module_$dir.mk
+ else
+ echo "WARN: no $dir/Module_$dir.mk"
+ fi
+ else
+ echo "WARN: no file $dir/Package_inc.mk"
+ fi
+ fi
+done
+#grep -v Package_inc.mk sal/CustomTarget_sal_allheaders.mk > sal/CustomTarget_sal_allheaders.mk.new
+#mv sal/CustomTarget_sal_allheaders.mk.new sal/CustomTarget_sal_allheaders.mk
+#git add sal/CustomTarget_sal_allheaders.mk
+
+# we like to be special ...
+sed -ie 's/\/svtools\/inc\/svtools/\/include\/svtools\//' svtools/Library_svt.mk
+sed -ie 's/\/sfx2\/inc\/sfx2/\/include\/sfx2\//' sfx2/Library_sfx.mk
+git add svtools/Library_svt.mk sfx2/Library_sfx.mk
+
+# urgh
+sed -ie 's/\.\.\/svx\//svx\//' svx/source/svdraw/svdoashp.cxx
+git add svx/source/svdraw/svdoashp.cxx
diff --git a/bin/odfvalidator.sh.in b/bin/odfvalidator.sh.in
new file mode 100644
index 000000000..605e74731
--- /dev/null
+++ b/bin/odfvalidator.sh.in
@@ -0,0 +1,2 @@
+#!/usr/bin/env bash
+java -Djavax.xml.validation.SchemaFactory:http://relaxng.org/ns/structure/1.0=org.iso_relax.verifier.jaxp.validation.RELAXNGSchemaFactoryImpl -Dorg.iso_relax.verifier.VerifierFactoryLoader=com.sun.msv.verifier.jarv.FactoryLoaderImpl -jar @TARFILE_LOCATION@/@ODFVALIDATOR_JAR@ "$@"
diff --git a/bin/officeotron.sh.in b/bin/officeotron.sh.in
new file mode 100644
index 000000000..7281f1bcd
--- /dev/null
+++ b/bin/officeotron.sh.in
@@ -0,0 +1,2 @@
+#!/usr/bin/env bash
+java -jar @TARFILE_LOCATION@/@OFFICEOTRON_JAR@ "$@"
diff --git a/bin/oss-fuzz-build.sh b/bin/oss-fuzz-build.sh
new file mode 100755
index 000000000..d0a206e33
--- /dev/null
+++ b/bin/oss-fuzz-build.sh
@@ -0,0 +1,81 @@
+#!/usr/bin/env bash
+
+set -e
+
+if [ -z "${OUT}" ] || [ -z "${SRC}" ] || [ -z "${WORK}" ]; then
+ echo "OUT, SRC or WORK not set - script expects to be called inside oss-fuzz build env"
+ exit 1
+fi
+
+print_stamp()
+{
+ local do_df="$1"; shift
+ echo "[[" `date -u` "]]" "build -" "$@"
+ if [ "$do_df" != "0" ]; then
+ df -h $OUT $WORK
+ fi
+}
+
+print_stamp 1 start
+echo git: `git -C $SRC/libreoffice log -1 --pretty=reference`
+
+#shuffle CXXFLAGS -stdlib=libc++ arg into CXX as well because we use
+#the CXX as the linker and need to pass -stdlib=libc++ to build
+export CXX="$CXX -stdlib=libc++ -fsanitize-blacklist=$SRC/libreoffice/bin/sanitize-excludelist.txt"
+export CXX_FOR_BUILD="$CXX"
+export CC="$CC -fsanitize-blacklist=$SRC/libreoffice/bin/sanitize-excludelist.txt"
+export CC_FOR_BUILD="$CC"
+#similarly force the -fsanitize etc args in as well as pthread to get
+#things to link successfully during the build
+export LDFLAGS="$CFLAGS -Wl,--compress-debug-sections,zlib -lpthread"
+#build-time concat-deps tool leaks a titch
+export ASAN_OPTIONS="detect_leaks=0"
+
+cd $WORK
+if [ -f Makefile ]; then
+ print_stamp 0 clean
+ make clean
+fi
+
+print_stamp 0 autogen.sh
+$SRC/libreoffice/autogen.sh --with-distro=LibreOfficeOssFuzz --with-external-tar=$SRC/external-tar
+
+print_stamp 1 make
+make
+
+print_stamp 1 prepare '$OUT'
+
+pushd instdir/program
+head -c -14 services.rdb > templateservices.rdb
+tail -c +85 ./services/services.rdb >> templateservices.rdb
+for a in *fuzzer; do
+ #some minimal fonts required
+ mv $a $OUT
+ mkdir -p $OUT/$a.fonts
+ tar -x -C $OUT/$a.fonts --strip-components=1 --wildcards --no-anchored '*.ttf' -f $SRC/external-tar/liberation-fonts-ttf*
+ cp $SRC/external-tar/*opens___.ttf $OUT/$a.fonts
+ #minimal runtime requirements
+ cp templateservices.rdb $OUT/$a.services.rdb
+ cp types.rdb $OUT/$a.types.rdb
+ cp types/offapi.rdb $OUT/$a.moretypes.rdb
+ cat > $OUT/$a.unorc << EOF
+[Bootstrap]
+URE_INTERNAL_LIB_DIR=\${ORIGIN}
+UNO_TYPES=\${ORIGIN}/$a.types.rdb \${ORIGIN}/$a.moretypes.rdb
+UNO_SERVICES=\${ORIGIN}/$a.services.rdb
+EOF
+done
+popd
+
+#starting corpuses
+for zip_file in $SRC/*_seed_corpus.zip; do
+ cp $zip_file $OUT
+done
+
+#fuzzing dictionaries
+cp $SRC/*.dict $OUT
+
+#options files
+cp $SRC/libreoffice/vcl/workben/*.options $OUT
+
+print_stamp 1 end
diff --git a/bin/oss-fuzz-setup.sh b/bin/oss-fuzz-setup.sh
new file mode 100755
index 000000000..cb27c6069
--- /dev/null
+++ b/bin/oss-fuzz-setup.sh
@@ -0,0 +1,145 @@
+#!/usr/bin/env bash
+
+set -e
+
+echo start downloading dependencies at `date -u`
+
+# convert FOO := BAR$(MICRO) to export FOO=BAR$MICRO
+source <(sed -e's#\([^ ]\{1,\}\) := #export \1=#g' download.lst | sed -e 's#[)(]##g')
+
+mkdir $SRC/external-tar
+cd $SRC/external-tar
+
+#cache build dependencies
+curl --no-progress-meter -S \
+ -C - -O https://dev-www.libreoffice.org/src/$FONT_LIBERATION_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/extern/$OPENSYMBOL_TTF \
+ -C - -O https://dev-www.libreoffice.org/src/$RASQAL_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$CLUCENE_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$HYPHEN_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$RAPTOR_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$MYTHES_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$REDLAND_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$BOOST_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$BOX2D_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$DTOA_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$EXPAT_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBJPEG_TURBO_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LCMS2_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBEXTTEXTCAT_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$CPPUNIT_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$CAIRO_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$CURL_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$XMLSEC_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBLANGTAG_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ABW_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$CDR_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBCMIS_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$EBOOK_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ETONYEK_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$FREEHAND_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$MSPUB_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$MWAW_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ODFGEN_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ORCUS_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$PAGEMAKER_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBPNG_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$REVENGE_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$STAROFFICE_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$VISIO_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$WPD_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$WPG_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$WPS_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ZMF_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$PIXMAN_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ZLIB_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$MDDS_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$OPENSSL_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LANGTAGREG_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$GRAPHITE_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$HARFBUZZ_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$GLM_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ICU_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$ICU_DATA_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBXML_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBXSLT_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$HUNSPELL_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$FREETYPE_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$FONTCONFIG_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$EPOXY_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$EPUBGEN_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$LIBNUMBERTEXT_TARBALL \
+ -C - -O https://dev-www.libreoffice.org/src/$QXP_TARBALL
+
+cd $SRC
+
+#fuzzing dictionaries
+curl --no-progress-meter -S \
+ -C - -O https://raw.githubusercontent.com/rc0r/afl-fuzz/master/dictionaries/gif.dict \
+ -C - -O https://raw.githubusercontent.com/rc0r/afl-fuzz/master/dictionaries/jpeg.dict \
+ -C - -O https://raw.githubusercontent.com/rc0r/afl-fuzz/master/dictionaries/png.dict \
+ -C - -O https://raw.githubusercontent.com/rc0r/afl-fuzz/master/dictionaries/tiff.dict \
+ -C - -O https://raw.githubusercontent.com/rc0r/afl-fuzz/master/dictionaries/xml.dict \
+ -C - -O https://raw.githubusercontent.com/rc0r/afl-fuzz/master/dictionaries/html_tags.dict
+#fuzzing corpuses
+#afl jpeg, gif, bmp, png, webp
+curl --no-progress-meter -S -C - -O https://lcamtuf.coredump.cx/afl/demo/afl_testcases.tgz
+mkdir -p afl-testcases && cd afl-testcases/ && tar xf $SRC/afl_testcases.tgz && cd .. && \
+ zip -q $SRC/jpgfuzzer_seed_corpus.zip afl-testcases/jpeg*/full/images/* && \
+ zip -q $SRC/giffuzzer_seed_corpus.zip afl-testcases/gif*/full/images/* && \
+ zip -q $SRC/bmpfuzzer_seed_corpus.zip afl-testcases/bmp*/full/images/* && \
+ zip -q $SRC/pngfuzzer_seed_corpus.zip afl-testcases/png*/full/images/* && \
+ zip -q $SRC/webpfuzzer_seed_corpus.zip afl-testcases/webp*/full/images/*
+# using github's svn view to use svn export as a hack to just export part of the git repo
+svn export --force -q https://github.com/khaledhosny/ots/trunk/tests/fonts $SRC/sample-sft-fonts/ots
+svn export --force -q https://github.com/unicode-org/text-rendering-tests/trunk/fonts/ $SRC/sample-sft-fonts/unicode-org
+svn export --force -q https://github.com/harfbuzz/harfbuzz/trunk/test/shape/data/in-house/fonts $SRC/sample-sft-fonts/harfbuzz
+mkdir -p $SRC/sample-sft-fonts/adobe
+curl --no-progress-meter -S \
+ -C - -o $SRC/sample-sft-fonts/adobe/AdobeVFPrototype.otf https://github.com/adobe-fonts/adobe-variable-font-prototype/releases/download/1.001/AdobeVFPrototype.otf
+zip -qr $SRC/sftfuzzer_seed_corpus.zip $SRC/sample-sft-fonts
+curl --no-progress-meter -S \
+ -C - -O https://dev-www.libreoffice.org/corpus/wmffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/xbmfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/xpmfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/svmfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/pcdfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/dxffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/metfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/ppmfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/psdfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/epsfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/pctfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/pcxfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/rasfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/tgafuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/tiffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/hwpfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/602fuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/lwpfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/pptfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/rtffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/olefuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/cgmfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/ww2fuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/ww6fuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/ww8fuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/qpwfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/slkfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/fodtfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/fodsfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/fodgfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/fodpfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/xlsfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/scrtffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/wksfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/dbffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/diffuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/docxfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/xlsxfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/pptxfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/mmlfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/mtpfuzzer_seed_corpus.zip \
+ -C - -O https://dev-www.libreoffice.org/corpus/htmlfuzzer_seed_corpus.zip
+
+echo end downloading dependencies at `date -u`
diff --git a/bin/parse-perfcheck.py b/bin/parse-perfcheck.py
new file mode 100755
index 000000000..158ef62fe
--- /dev/null
+++ b/bin/parse-perfcheck.py
@@ -0,0 +1,258 @@
+#!/usr/bin/python
+
+# This file is part of the LibreOffice project.
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import sys
+import os
+import getopt
+import csv
+
+
+colsResult = {}
+allTests = []
+
+def parseFile(dirname, filename, lastCommit):
+
+ curTestComment, total = None, None
+
+ path = os.path.join(dirname, filename)
+
+ trigger = "desc: Trigger: Client Request: "
+ trigger_len = len(trigger)
+ totals = "totals: "
+ totals_len = len(totals)
+
+ with open(path,'r') as callgrindFile:
+ lines = callgrindFile.readlines()
+
+ for line in lines:
+ if line.startswith(trigger):
+ curTestComment = line[trigger_len:].replace("\n","")
+ elif line.startswith(totals):
+ total = line[totals_len:].replace("\n","")
+
+ if curTestComment is None or total is None:
+ return None
+
+ testName = os.path.basename(dirname).replace(".test.core","")
+
+ lastCommitId, lastCommitDate = lastCommit
+ if lastCommitId not in colsResult:
+ colsResult[lastCommitId] = {}
+ colsResult[lastCommitId]['date'] = lastCommitDate
+ colsResult[lastCommitId]['values'] = {}
+
+ colsResult[lastCommitId]['values'][curTestComment] = total
+
+ return [lastCommitId, lastCommitDate, testName, curTestComment, total, filename]
+
+def processDirectory(rootDir, needsCsvHeader, lastCommit):
+
+ results = []
+
+ if needsCsvHeader:
+ results.append(["lastCommit", "lastCommitDate", "test filename", "dump comment", "count", "filename"])
+
+ for dirName, subdirList, fileList in os.walk(rootDir):
+ files = [f for f in fileList if f.startswith("callgrind.out.")]
+ for fname in files:
+ found = parseFile(dirName, fname, lastCommit)
+ if found is not None:
+ results.append(found)
+ return results
+
+def getLastCommitInfo():
+
+ stream = os.popen("git log --date=iso")
+ line = stream.readline()
+ commitId = line.replace("commit ","").replace("\n","")
+ line = stream.readline()
+ line = stream.readline()
+ commitDate = line.replace("Date: ","").replace("\n","").strip()
+
+ return commitId, commitDate
+
+def displayUsage():
+
+ usage = """
+
+Parses the callgrind results of make perfcheck
+
+Arguments :
+
+ --csv-file\t\t the target CSV file - new or containing previous tests - default : perfcheckResult.csv
+ --source-directory\t directory containing make perfcheck output - default : ./workdir/CppunitTest
+ --alert-type\t\t mode for calculating alerts - valid values : previous first
+ --alert-value\t\t alert threshold in % - default = 10
+
+ --help\t\t this message
+
+Columned output is dumped into csv-file + ".col"
+
+Alerts, if any, are displayed in standard output
+
+"""
+ print(usage)
+
+class WrongArguments(Exception):
+ pass
+
+def analyzeArgs(args):
+
+ try:
+ opts, args = getopt.getopt(args, 'x', [
+ 'csv-file=', 'source-directory=', 'alert-type=', 'alert-value=', 'help'])
+ except getopt.GetoptError:
+ raise WrongArguments
+
+ targetFileName = "perfcheckResult.csv"
+ sourceDirectory = "./workdir/CppunitTest"
+ alertType = ""
+ alertValue = 10
+
+ for o, a in opts:
+ if o == '--help':
+ displayUsage()
+ sys.exit()
+ elif o == "--csv-file":
+ targetFileName = a
+ elif o == "--source-directory":
+ sourceDirectory = a
+ elif o == "--alert-type":
+ alertType = a
+ elif o == "--alert-value":
+ alertValue = float(a)
+ else:
+ raise WrongArguments
+
+ return targetFileName, sourceDirectory, alertType, alertValue
+
+def readCsvFile(targetFilename):
+
+ with open(targetFilename, 'r') as csvfile:
+ reader = csv.reader(csvfile, delimiter="\t")
+ # skip header
+ next(reader)
+ for line in reader:
+
+ # do not process empty lines
+ if not line:
+ continue
+
+ curId, curDate, curTestName, curTestComment, curValue, currCallgrindFile = line
+
+ if curTestComment not in allTests:
+ allTests.append(curTestComment)
+
+ if curId not in colsResult:
+ colsResult[curId] = {}
+ colsResult[curId]['date'] = curDate
+ colsResult[curId]['values'] = {}
+
+ colsResult[curId]['values'][curTestComment] = curValue
+
+if __name__ == '__main__':
+
+ #check args
+ try:
+ targetFileName, sourceDirectory, alertType, alertValue = analyzeArgs(sys.argv[1:])
+ except WrongArguments:
+ displayUsage()
+ sys.exit(1)
+
+ # check if sourceDirectory exists
+ if not os.path.isdir(sourceDirectory):
+ print("sourceDirectory %s not found - Aborting" % (sourceDirectory))
+ sys.exit(1)
+
+ # read the complete CSV file
+ if os.path.isfile(targetFileName):
+ readCsvFile(targetFileName)
+ needsCsvHeader = False
+ else:
+ needsCsvHeader = True
+
+ # last commit Id
+ lastCommitId, lastCommitDate = getLastCommitInfo()
+
+ # walker through directory
+ if lastCommitId not in colsResult:
+
+ lastCommit = (lastCommitId, lastCommitDate)
+ results = processDirectory(sourceDirectory, needsCsvHeader, lastCommit)
+ ppResults = "\n".join(["\t".join(row) for row in results])
+
+ print('\nNew results\n' + ppResults)
+
+ # append raw result
+ with open(targetFileName,'a') as csvfile:
+ writer = csv.writer(csvfile, delimiter='\t')
+ writer.writerows(results)
+ print("\nCSV file written at " + targetFileName + '\n')
+
+ else:
+ print("\nCSV file up to date " + targetFileName + '\n')
+
+
+ # build columned output
+
+ # header
+ mLine = '\t'.join(["commit", "date"] + allTests) + '\n'
+
+ alertTest = {}
+
+ with open(targetFileName + '.col','w') as fileResult:
+ for k in colsResult:
+ mLine += k + "\t" + colsResult[k]['date'] + "\t"
+ for t in allTests:
+ if t in colsResult[k]['values']:
+ mValue= colsResult[k]['values'][t]
+ if t not in alertTest:
+ alertTest[t] = {}
+ alertTest[t][colsResult[k]['date']] = mValue
+ else:
+ mValue = ""
+ mLine += mValue + "\t"
+ mLine += "\n"
+
+ # write columned result
+ fileResult.write(mLine)
+
+ print("Columned file written at " + targetFileName + '.col\n')
+
+ # check for Alerts
+
+ if alertType == "":
+ sys.exit(1)
+
+ alertResult = ""
+
+ for t in alertTest:
+
+ testDict = alertTest[t]
+
+ # sort
+ keylist = sorted(testDict.keys())
+ maxVal = float(testDict[keylist[-1]])
+ minVal = 0
+
+ if alertType == "previous":
+ if len(keylist) > 1:
+ minVal = float(testDict[keylist[-2]])
+ else:
+ minVal = float(testDict[keylist[0]])
+
+ if minVal != 0:
+ delta = 100 * ((maxVal-minVal)/minVal)
+ else:
+ delta = 0
+
+ if delta > float(alertValue):
+ alertResult += t + "\t" + "{:.2f}".format(delta) + " %\n"
+
+ if alertResult != "":
+ print("!!!!!!!! ALERT !!!!!!!\n")
+ print(alertResult)
diff --git a/bin/refcount_leak.py b/bin/refcount_leak.py
new file mode 100755
index 000000000..2a24cb51e
--- /dev/null
+++ b/bin/refcount_leak.py
@@ -0,0 +1,179 @@
+#!/usr/bin/python3
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+### script to help debug leaks of reference counted objects
+
+## I. to use it, first override acquire() and release()
+
+# Foo * g_pTrackedFoo = 0;
+
+# Foo::Foo()
+# static int nFoos = 0;
+# if (++nFoos == 42) // track instance #42
+# g_pTrackedFoo = this;
+
+# void Foo::acquire()
+# if (this == g_pTrackedFoo)
+# ; // set gdb breakpoint here
+# Foo_Base::acquire()
+
+# void Foo::release()
+# if (this == g_pTrackedFoo)
+# ; // set gdb breakpoint here
+# Foo_Base::release()
+
+## II. run test/soffice in gdb and set breakpoints in acquire/release
+## with a command to print the backtrace
+
+# set logging on
+# break foo.cxx:123
+# break foo.cxx:234
+
+# command 1 2
+# bt
+# c
+# end
+# run
+
+## III. now feed logfile gdb.txt into this script
+
+# bin/refcount_leak.py < gdb.txt
+
+###
+
+from operator import itemgetter
+import re
+import sys
+
+threshold = 2
+
+class Trace:
+ clock = 0 # global counter
+ # frames: list of stack frames, beginning with outermost
+ def __init__(self, lines):
+ lines.reverse()
+ self.frames = lines
+ Trace.clock += 1
+ self.clock = Trace.clock
+
+def addTrace(traces, lines):
+ if not(traces is None) and len(lines) > 0:
+ traces.append(Trace(lines))
+
+def readGdbLog(infile):
+ traces_acquire = []
+ traces_release = []
+ current = None
+ lines = []
+ apattern = re.compile("^Breakpoint.*::acquire")
+ rpattern = re.compile("^Breakpoint.*::release")
+ for line in infile:
+ if apattern.match(line):
+ addTrace(current, lines)
+ lines = []
+ current = traces_acquire
+ if rpattern.match(line):
+ addTrace(current, lines)
+ lines = []
+ current = traces_release
+ if line.startswith("#"):
+ # strip #123 stack frame number, and newline
+ lines.append(line[line.index("0x"):-1])
+ addTrace(current, lines)
+ print("# parsed traces acquire: ", len(traces_acquire))
+ print("# parsed traces release: ", len(traces_release))
+ return (traces_acquire, traces_release)
+
+def getFunction(frame):
+ start = frame.index(" in ") + len(" in ")
+ try:
+ end = frame.index(" at ", start)
+ except ValueError as e:
+ # argh... stack frames may be split across multiple lines if
+ # a parameter has a fancy pretty printer
+ return frame[start:]
+ return frame[start:end]
+
+
+def matchStack(trace_acquire, trace_release):
+ if trace_release.clock < trace_acquire.clock:
+ return None # acquire must precede release
+ common = 0
+ refpattern = re.compile(r"::Reference<.*>::Reference\(")
+ for (frame1, frame2) in zip(trace_release.frames, trace_acquire.frames):
+ if frame1 == frame2:
+ common += 1
+ else:
+ if getFunction(frame1) == getFunction(frame2):
+ common += 1
+ acquireframes = len(trace_acquire.frames)
+ # there is sometimes a dozen frames of UNO type related junk
+ # on the stack where the acquire() happens, which breaks the
+ # matching; try to avoid that
+ for i in range(common, acquireframes):
+ if refpattern.search(trace_acquire.frames[i]):
+ acquireframes = i+1 # cut off junk above Reference ctor
+ break
+ score = max(len(trace_release.frames), acquireframes) - common
+ # smaller score is better
+ return (score, trace_release.clock - trace_acquire.clock)
+
+# brute force greedy n^2 matching
+def matchStacks(traces_acquire, traces_release):
+ matches = []
+ for release in traces_release:
+ for acquire in traces_acquire:
+ score = matchStack(acquire, release)
+ if score is not None:
+ matches.append((score, acquire, release))
+ matches.sort(key=itemgetter(0))
+ return matches
+
+def bestMatches(traces_acquire, traces_release, matches):
+ traces_aunmatched = traces_acquire
+ traces_runmatched = traces_release
+ bestmatches = []
+ for (score,acquire,release) in matches:
+ if not(acquire in traces_aunmatched and release in traces_runmatched):
+ continue
+ traces_aunmatched.remove(acquire)
+ traces_runmatched.remove(release)
+ bestmatches.append((score,acquire,release))
+ print("# unmatched acquire: ", len(traces_aunmatched))
+ print("# unmatched release: ", len(traces_runmatched))
+ return (bestmatches,traces_aunmatched,traces_runmatched)
+
+def printTrace(trace):
+ for frame in reversed(trace.frames):
+ print(" ", frame)
+
+def printMatched(bestmatches):
+ for (score,acquire,release) in reversed(bestmatches):
+ print("\n*** Matched trace with score: ", score)
+ print(" acquire: ")
+ printTrace(acquire)
+ print(" release: ")
+ printTrace(release)
+
+def printUnmatched(traces, prefix):
+ for trace in traces:
+ print("\n*** Unmatched trace (", prefix, "):")
+ printTrace(trace)
+
+if __name__ == "__main__":
+ (traces_acquire, traces_release) = readGdbLog(sys.stdin)
+ matches = matchStacks(traces_acquire, traces_release)
+ (bestmatches,traces_au,traces_ru) = bestMatches(traces_acquire, traces_release, matches)
+ # print output, sorted with the most suspicious stuff first:
+ printUnmatched(traces_au, "acquire")
+ printUnmatched(traces_ru, "release")
+ printMatched(bestmatches)
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/removetooltip_markups.sh b/bin/removetooltip_markups.sh
new file mode 100755
index 000000000..5699fce99
--- /dev/null
+++ b/bin/removetooltip_markups.sh
@@ -0,0 +1,55 @@
+#!/usr/bin/env bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# Run the script in the core directory to remove all tooltip_markup
+# properties from the .ui files
+
+SED_BIN=`which sed`
+CUT_BIN=`which cut`
+LOG_FILE="modified-$(date +%s).log"
+
+removeTooltipMarkup()
+{
+ LINE=$(grep -n "<property name=\"tooltip_markup\"" $1 | $CUT_BIN -f 1 -d ':')
+ TEXT=$(grep "<property name=\"tooltip_markup\"" $1)
+ grep -v "<property name=\"tooltip_markup\"" $1 > temp && mv temp $1
+ echo "removed $TEXT from $1 at line $LINE" >> $LOG_FILE
+}
+
+changeTooltipMarkup()
+{
+ LINE=$(grep -n "<property name=\"tooltip_markup\"" $1 | $CUT_BIN -f 1 -d ':')
+ $SED_BIN "s/tooltip_markup/tooltip_text/g" $i > temp && mv temp $1
+ echo "renamed tooltip_markup from $1 at line $LINE" >> $LOG_FILE
+}
+
+checkTooltipMarkup()
+{
+ TEXT=`grep "<property name=\"tooltip_text\"" $1`
+ MARKUP=`grep "<property name=\"tooltip_markup\"" $1`
+
+ if [[ $MARKUP ]] && [[ $TEXT ]]
+ then
+ removeTooltipMarkup "$1"
+ fi
+ if [[ $MARKUP ]] && [[ ! $TEXT ]]
+ then
+ changeTooltipMarkup "$1"
+ fi
+}
+
+shopt -s globstar
+echo " " > $LOG_FILE
+for i in **/*.ui; do
+ echo -n "."
+ checkTooltipMarkup "$i"
+done
+
+echo
+echo "Done!"
diff --git a/bin/rename-sw-abbreviations.sh b/bin/rename-sw-abbreviations.sh
new file mode 100755
index 000000000..219b4f269
--- /dev/null
+++ b/bin/rename-sw-abbreviations.sh
@@ -0,0 +1,43 @@
+#! /bin/bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# This script renames the most annoying abbreviations in Writer (and partially
+# in the shared code too). Just run it in the source directory.
+
+# sw only:
+
+for I in "FrmFmt/FrameFormat" "Fmt/Format" "Cntnt/Content" "Txt/Text" "Tbl/Table" "GotoFld/GotoFormatField" "Fld/Field" "Ftn/Footnote" "Updt/Update" "Fml/Formula" "Hnt/Hint" "CurCrsr/CurrentCursor" "VisCrsr/VisibleCursor" "Crsr/Cursor" "CntFrm/ContentFrame" "Frm/Frame" "Stk/Stack"
+do
+ S="${I%/*}"
+ # change all except the filenames (in the .mk and in #include)
+ # also avoid numFmt (OOXML token) and other stuff that must stay verbatim
+ git grep -l "$S" sw/ | grep -v -e '\.mk' -e '/data/' -e '/testdocuments/' | xargs sed -i '/\(#include\|numFmt\|ForeignTxt\)/ !{ s/'"$I"'/g }'
+done
+
+# global:
+
+for I in "SvxSwAutoFmtFlags/SvxSwAutoFormatFlags" "GetCharFmtName/GetCharFormatName" \
+ "SvxFmtBreakItem/SvxFormatBreakItem" "SvxFmtKeepItem/SvxFormatKeepItem" \
+ "SvxFmtSplitItem/SvxFormatSplitItem" "etTxtLeft/etTextLeft" \
+ "etTxtFirstLineOfst/etTextFirstLineOfst" "CntntProtected/ContentProtected" \
+ "etTxtColor/etTextColor" "ClearFldColor/ClearFieldColor" \
+ "etCntntProtect/etContentProtect" "etPropTxtFirstLineOfst/etPropTextFirstLineOfst" \
+ "etCharFmtName/etCharFormatName" "HasMergeFmtTbl/HasMergeFormatTable" \
+ "etMergeFmtIndex/etMergeFormatIndex" "bAFmtByInput/bAFormatByInput" \
+ "bAFmt/bAFormat" "IsTxtFmt/IsTextFormat" "BuildWhichTbl/BuildWhichTable" \
+ "etFld/etField" "IsAutoFmtByInput/IsAutoFormatByInput" \
+ "etAutoFmtByInput/etAutoFormatByInput" "etMacroTbl/etMacroTable" \
+ "SvxClipboardFmtItem/SvxClipboardFormatItem" "SwFlyFrmFmt/SwFlyFrameFormat" \
+ "etTxtSize/etTextSize"
+do
+ S="${I%/*}"
+ git grep -l "$S" | grep -v -e '\.mk' -e 'rename-sw-abbreviations.sh' | xargs sed -i "s/$I/g"
+done
+
+# vim: set et sw=4 ts=4 textwidth=0:
diff --git a/bin/run b/bin/run
new file mode 100755
index 000000000..523da3c0e
--- /dev/null
+++ b/bin/run
@@ -0,0 +1,76 @@
+#!/bin/sh
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# simple wrapper script to run non-installed executables from workdir
+
+setdefaults()
+{
+ dir=$(realpath "$(pwd)")
+
+ while test ! -d "${dir}/instdir/program" ; do
+ if test "${dir}" = "/"; then
+ echo "error: cannot find \"program\" dir from \"$(pwd)\""
+ exit 1
+ fi
+ dir=$(realpath "${dir}/..")
+ done
+
+ exedir="${dir}"/workdir/LinkTarget/Executable
+ export URE_BOOTSTRAP=file://"${dir}"/instdir/program/fundamentalrc
+}
+
+if uname | grep -i CYGWIN >/dev/null; then
+
+ setdefaults
+
+ exedir=$(cygpath -m "${dir}"/workdir/LinkTarget/Executable)
+ export URE_BOOTSTRAP=file:///$(cygpath -m "${dir}")/instdir/program/fundamental.ini
+ export PATH=${PATH:+$PATH:}"${dir}"/instdir/program
+ SEARCH_PATH="${PATH}"
+
+elif [ $(uname) = Darwin ]; then
+
+ dir=$(pwd)
+
+ # Get PRODUCTNAME from config_host.mk, LibreOffice or LibreOfficeDev
+ eval `grep 'export PRODUCTNAME=' config_host.mk`
+
+ if [ ! -d "${dir}/instdir/$PRODUCTNAME.app" ]; then
+ echo "error: cannot find \"instdir/$PRODUCTNAME.app\" dir in \"$(pwd)\""
+ exit 1
+ fi
+
+ exedir="$dir"/workdir/LinkTarget/Executable
+ export URE_BOOTSTRAP=file://"${dir}"/instdir/$PRODUCTNAME.app/Contents/Resources/fundamentalrc
+ export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH:+$DYLD_LIBRARY_PATH:}"${dir}"/instdir/$PRODUCTNAME.app/Contents/Frameworks
+ SEARCH_PATH="${DYLD_LIBRARY_PATH}"
+
+elif [ $(uname) = Haiku ]; then
+
+ setdefaults
+
+ export LIBRARY_PATH=${LIBRARY_PATH:+$LIBRARY_PATH:}"${dir}"/instdir/program
+ SEARCH_PATH="${LIBRARY_PATH}"
+
+else
+
+ setdefaults
+
+ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"${dir}"/instdir/program
+ SEARCH_PATH="${LD_LIBRARY_PATH}"
+
+fi
+
+# echo "setting URE_BOOTSTRAP to: ${URE_BOOTSTRAP}"
+# echo "setting search path to: ${SEARCH_PATH}"
+# echo "execing: ${exedir}/$1"
+
+exec ${LO_TRACE} "${exedir}/$@"
+
+# vi:set shiftwidth=4 expandtab:
diff --git a/bin/sanitize-excludelist.txt b/bin/sanitize-excludelist.txt
new file mode 100644
index 000000000..0ed5b20a1
--- /dev/null
+++ b/bin/sanitize-excludelist.txt
@@ -0,0 +1,18 @@
+[float-divide-by-zero]
+src:*/sc/source/core/tool/interpr1.cxx
+src:*/sc/source/core/tool/interpr2.cxx
+src:*/scaddins/source/analysis/analysis.cxx
+src:*/scaddins/source/analysis/financial.cxx
+[memory]
+fun:generate_hash_secret_salt
+[signed-integer-overflow]
+fun:_cairo_*
+src:cairo*.c
+src:cairo*.h
+src:*/boost/boost/rational.hpp
+src:*/include/tools/gen.hxx
+src:*/tools/source/generic/gen.cxx
+src:*/vcl/source/outdev/map.cxx
+[vptr]
+fun:_ZN4cppu14throwExceptionERKN3com3sun4star3uno3AnyE
+src:*/include/com/sun/star/uno/Reference.hxx
diff --git a/bin/sanitize-image-links b/bin/sanitize-image-links
new file mode 100755
index 000000000..143eeec3c
--- /dev/null
+++ b/bin/sanitize-image-links
@@ -0,0 +1,38 @@
+#!/usr/bin/env bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# This will reorder icon-themes/*/links.txt to the right order
+
+for I in icon-themes/*/links.txt ; do
+ D="${I%/links.txt}"
+ cat "$I" | while read LINK ORIG
+ do
+ if [ -f "$D/$LINK" -a -f "$D/$ORIG" ] ; then
+ if diff "$D/$LINK" "$D/$ORIG" >/dev/null 2>&1 ; then
+ echo "$I: removing $LINK from git: both $LINK and $ORIG are the same files" 1>&2
+ git rm "$D/$LINK" 1>/dev/null
+ echo $LINK $ORIG
+ else
+ echo "$I: link and orig differs, check the images, and remove manually: $LINK $ORIG" 1>&2
+ echo $LINK $ORIG
+ fi
+ elif [ -f "$D/$LINK" ] ; then
+ echo "$I: swapping to right order: $ORIG $LINK" 1>&2
+ echo $ORIG $LINK
+ elif [ -n "$LINK" -a "${LINK:0:1}" != "#" -a ! -f "$D/$LINK" -a ! -f "$D/$ORIG" ] ; then
+ echo "$I: neither exists, removing the line: $LINK $ORIG" 1>&2
+ else
+ echo $LINK $ORIG
+ fi
+ done > "$I-fixed"
+
+ mv "$I-fixed" "$I"
+done
+
+# vim: set expandtab sw=4 ts=4:
diff --git a/bin/striplanguagetags.sh b/bin/striplanguagetags.sh
new file mode 100755
index 000000000..0df4b0be5
--- /dev/null
+++ b/bin/striplanguagetags.sh
@@ -0,0 +1,74 @@
+#!/usr/bin/env bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# take a .zip containing a flat hierarchy of odf files and strip out the
+# language and country tags in each of them and repack it all up
+# should convert templates so that documents based on them use
+# the default-document-language rather than the hardcoded lang-tag
+#
+# All a bit hacky, but it should work
+
+if [ -z "$CALLXSLTPROC" ]; then
+ echo "$0: \$CALLXSLTPROC not defined!"
+ echo "$0: Apparently we are not called from the build process, bailing out."
+ exit 1
+fi
+
+tempfoo=`basename $0`
+
+XSL=`mktemp /tmp/${tempfoo}.XXXXXX`
+if [ $? -ne 0 ]; then
+ echo "$0: Can't create temp file, exiting..."
+ exit 1
+fi
+
+# On Windows, xsltproc is a non-Cygwin program, so we can't pass
+# a Cygwin /tmp path to it
+[ "$COM" == MSC ] && XSL=`cygpath -m -s $XSL`
+
+WRKDIR=`mktemp -d /tmp/${tempfoo}.XXXXXX`
+if [ $? -ne 0 ]; then
+ echo "$0: Can't create temp dir, exiting..."
+ exit 1
+fi
+
+cat > $XSL << EOF
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0">
+
+<xsl:template match="node()|@*">
+ <xsl:copy>
+ <xsl:apply-templates select="@*|node()"/>
+ </xsl:copy>
+</xsl:template>
+
+<xsl:template match="@fo:language"/>
+<xsl:template match="@fo:country"/>
+<xsl:template match="@fo:script"/>
+<xsl:template match="@number:rfc-language-tag"/>
+<xsl:template match="@style:rfc-language-tag"/>
+<xsl:template match="@table:rfc-language-tag"/>
+<xsl:template match="@style:rfc-language-tag-asian"/>
+<xsl:template match="@style:rfc-language-tag-complex"/>
+
+</xsl:stylesheet>
+EOF
+
+unzip -q $1 -d $WRKDIR
+pushd $WRKDIR
+for a in *; do
+ unzip -qc $a styles.xml > styles.tmp
+ eval "$CALLXSLTPROC -o styles.xml $XSL styles.tmp"
+ zip -qr $a styles.xml
+ rm styles.xml styles.tmp
+done
+popd
+zip -qrj $1 $WRKDIR
+rm -rf $WRKDIR
+rm -f $XSL
diff --git a/bin/stubify.pl b/bin/stubify.pl
new file mode 100755
index 000000000..c61bc531e
--- /dev/null
+++ b/bin/stubify.pl
@@ -0,0 +1,262 @@
+#!/usr/bin/env perl
+
+use Fcntl;
+use POSIX;
+use strict;
+
+# simple pkgconfig goodness
+my $destdir;
+my $recursive = 0;
+my $assembler_out = 0;
+my %pkg_configs = ();
+my @pkg_config_paths = split(/:/, $ENV{PKG_CONFIG_PATH});
+push @pkg_config_paths, "/usr";
+
+# Stubify a shared library ...
+sub read_gen_symbols($$)
+{
+ my ($shlib, $fh) = @_;
+ my $obj;
+
+ print $fh "\t.file \"$shlib\"\n";
+ open $obj, "objdump -T $shlib|" || die "Can't objdump $shlib: $!";
+
+ while (my $line = <$obj>) {
+ $line =~ /([0-9a-f]*)\s+([gw ])\s+..\s+(\S*)\s*([0-9a-f]+)..............(.*)/ || next;
+ my ($address, $linkage, $type, $size, $symbol) = ($1, $2, $3, $4, $5);
+
+ next if ($type eq '*UND*' || $type eq '*ABS*');
+
+# print "Symbol '$symbol' type '$type' '$linkage' addr $address, size $size\n";
+
+ $symbol || die "no symbol for line $line";
+
+ next if ($symbol eq '_init' || $symbol eq '_fini');
+
+ $linkage =~ s/g//g;
+
+ my $progbits = '@progbits';
+ $progbits = '@nobits' if ($type eq '.bss');
+ print $fh "\t.section $type.$symbol,\"a".$linkage."G\",$progbits,$symbol,comdat\n";
+ print $fh ".globl $symbol\n";
+ print $fh "\t.type $symbol,";
+ if ($type eq '.text') {
+ print $fh "\@function\n";
+ } else {
+ print $fh "\@object\n";
+ }
+ print $fh "$symbol:\n";
+ if ($type eq '.text') {
+ print $fh "\tret\n";
+ } else {
+ my $isize = hex($size);
+ print $fh "\t.size $symbol, $isize\n";
+ for (my $i = 0; $i < $isize; $i++) {
+ print $fh "\t.byte 0\n";
+ }
+ }
+ print $fh "\n";
+ }
+
+ close $obj;
+}
+
+sub stubify($$)
+{
+ my $shlib = shift;
+ my $output = shift;
+ my ($pipe, $tmpf);
+
+ my $tmpname;
+ do {
+ $tmpname = tmpnam();
+ } until sysopen($tmpf, $tmpname, O_RDWR|O_CREAT|O_EXCL, 0666);
+ close($tmpf);
+
+ if ($assembler_out) {
+ open ($pipe, ">-");
+ } else {
+ open ($pipe, "| as -o $tmpname") || die "can't start assembler: $!";
+ }
+ read_gen_symbols ($shlib, $pipe);
+ close ($pipe) || die "Failed to assemble to: $tmpname: $!";
+
+ system ("gcc -shared -o $output $tmpname") && die "failed to exec gcc: $!";
+ unlink $tmpname;
+}
+
+sub help_exit()
+{
+ print "Usage: stubify <destdir> <pkg-config-names>\n";
+ print "Converts libraries into stubs, and bundles them and their pkg-config files\n";
+ print "into destdir\n";
+ print " -R stubbify and include all dependent pkgconfig files\n";
+ exit 1;
+}
+
+sub parse_pkgconfig($$)
+{
+ my $name = shift;
+ my $file = shift;
+ my $fh;
+ my %hash;
+ my @hashes;
+
+ print "parse $file\n";
+ open ($fh, $file) || die "Can't open $file: $!";
+ while (<$fh>) {
+ my ($key, $value);
+ if (/^\s*([^=]+)\s*=\s*([^=]+)\s*$/) {
+ $key = $1; $value = $2;
+ } elsif (/^\s*([^:]+)\s*:\s*([^:]+)\s*$/) {
+ $key = $1; $value = $2;
+ } elsif (/^\s*$/) {
+ next;
+ } else {
+ die "invalid pkgconfig line: $_\n";
+ }
+ chomp ($key); chomp ($value);
+ $hash{$key} = $value;
+ }
+ close ($fh);
+ for my $key (keys (%hash)) {
+ print "\t'$key'\t=\t'$hash{$key}'\n";
+ }
+
+ $hash{_Name} = $name;
+ $hash{_File} = $file;
+
+ push @hashes, \%hash;
+ if ($recursive &&
+ !defined $pkg_configs{$name} &&
+ defined $hash{Requires}) {
+ my @reqs = ();
+ for my $req (split (/[ ,]/, $hash{Requires})) {
+ print "parse $req of $name\n";
+ push @reqs, get_pc_files($req);
+ }
+ $hash{_Requires} = \@reqs;
+ push @hashes, @reqs;
+ }
+ $pkg_configs{$name} = \%hash;
+ return @hashes;
+}
+
+sub get_pc_files($)
+{
+ my $name = shift;
+ for my $prefix (@pkg_config_paths) {
+ my $path = "$prefix/lib/pkgconfig/$name.pc";
+ return parse_pkgconfig ($name,$path) if (-f $path);
+ }
+ die "Failed to find pkg-config file for $name";
+}
+
+# primitive substitution
+sub get_var($$)
+{
+ my ($pc, $var) = @_;
+ my $val = $pc->{"$var"};
+ while ($val =~ m/^(.*)\$\{\s*(\S+)\s*\}(.*)$/) {
+ $val = $1 . get_var($pc, $2). $3;
+ }
+ return $val;
+}
+
+sub copy_lib($@)
+{
+ my $lib = shift;
+ while (my $path = shift) {
+ my $name = "$path/$lib";
+ next if (! -f $name);
+
+ # need to run ldconfig post install ...
+ while (-l $name) {
+ my $dir = $name;
+ $dir =~ s/\/[^\/]*$//;
+ my $link = readlink($name);
+ if ($link =~ m/^\//) {
+ $name = $link;
+ } else {
+ $name = "$dir/$link";
+ }
+ }
+
+ # ignore /lib - they use monstrous symbol versioning
+ if ($name =~ m/^\/lib/) {
+ print "\tskipping system library: $lib in $name\n";
+ return;
+ }
+
+ stubify ($name, "$destdir/$name");
+ }
+}
+
+sub copy_and_stubify ($)
+{
+ my $pc = shift;
+
+ `mkdir -p $destdir/usr/lib/pkgconfig`;
+ `mkdir -p $destdir/$pc->{libdir}` if (defined $pc->{libdir});
+ `mkdir -p $destdir/$pc->{includedir}` if (defined $pc->{includedir});
+
+ # copy .pc across - FIXME, may need to re-write paths
+ `cp -a $pc->{_File} $destdir/usr/lib/pkgconfig`;
+
+ # copy includes across
+ my @includes = split (/ /, get_var ($pc, "Cflags"));
+ for my $arg (@includes) {
+ if ($arg =~ m/^-I(.*)$/) {
+ my $srcdir = $1;
+ if (! -d $srcdir || $srcdir eq '/usr/include') {
+ print "Warning: bogus include of '$srcdir' for pkg $pc->{_Name}\n";
+ } else {
+ `mkdir -p $destdir/$srcdir`;
+ `cp -a $srcdir/* $destdir/$srcdir`;
+ }
+ }
+ }
+
+ # stubify libraries
+ my @libs = split (/ /, get_var ($pc, "Libs"));
+ my @libpath = ( "/lib", "/usr/lib" );
+ for my $arg (@libs) {
+ if ($arg =~ m/^-l(.*)$/) {
+ my $lib = "lib".$1.".so";
+# print "lib $lib @libpath?\n";
+ copy_lib ($lib, @libpath);
+ } elsif ($arg =~ m/^-L(.*)$/) {
+ my $path = $1;
+ push (@libpath, $path) if (! grep ($path, @libpath));
+ }
+ }
+}
+
+my @pcnames = ();
+my @tostub;
+
+for my $arg (@ARGV) {
+ if ($arg eq '--help' || $arg eq '-h') {
+ help_exit();
+ } elsif ($arg eq '-r' || $arg eq '-R') {
+ $recursive = 1;
+ } elsif (!defined $destdir) {
+ $destdir = $arg;
+ } else {
+ push @pcnames, $arg;
+ }
+}
+
+help_exit() if (!defined $destdir);
+`mkdir -p $destdir`;
+
+for my $name (@pcnames) {
+ push @tostub, get_pc_files($name);
+}
+print "stubify: ";
+select STDERR; $| = 1;
+for my $pc (@tostub) {
+ print " " . $pc->{_Name} . "\n";
+ copy_and_stubify ($pc);
+}
+print "\n";
diff --git a/bin/symbolstore.py b/bin/symbolstore.py
new file mode 100755
index 000000000..2101e3961
--- /dev/null
+++ b/bin/symbolstore.py
@@ -0,0 +1,668 @@
+#!/usr/bin/env python
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is mozilla.org code.
+#
+# The Initial Developer of the Original Code is
+# The Mozilla Foundation
+# Portions created by the Initial Developer are Copyright (C) 2007
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Ted Mielczarek <ted.mielczarek@gmail.com>
+# Ben Turner <mozilla@songbirdnest.com>
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 2 or later (the "GPL"), or
+# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable instead
+# of those above. If you wish to allow use of your version of this file only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the notice
+# and other provisions required by the GPL or the LGPL. If you do not delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+#
+# Usage: symbolstore.py <params> <dump_syms path> <symbol store path>
+# <debug info files or dirs>
+# Runs dump_syms on each debug info file specified on the command line,
+# then places the resulting symbol file in the proper directory
+# structure in the symbol store path. Accepts multiple files
+# on the command line, so can be called as part of a pipe using
+# find <dir> | xargs symbolstore.pl <dump_syms> <storepath>
+# But really, you might just want to pass it <dir>.
+#
+# Parameters accepted:
+# -c : Copy debug info files to the same directory structure
+# as sym files
+# -a "<archs>" : Run dump_syms -a <arch> for each space separated
+# cpu architecture in <archs> (only on macOS)
+# -s <srcdir> : Use <srcdir> as the top source directory to
+# generate relative filenames.
+
+import sys
+import os
+import re
+import shutil
+from optparse import OptionParser
+
+# Utility classes
+
+class VCSFileInfo:
+ """ A base class for version-controlled file information. Ensures that the
+ following attributes are generated only once (successfully):
+
+ self.root
+ self.clean_root
+ self.revision
+ self.filename
+
+ The attributes are generated by a single call to the GetRoot,
+ GetRevision, and GetFilename methods. Those methods are explicitly not
+ implemented here and must be implemented in derived classes. """
+
+ def __init__(self, file):
+ if not file:
+ raise ValueError
+ self.file = file
+
+ def __getattr__(self, name):
+ """ __getattr__ is only called for attributes that are not set on self,
+ so setting self.[attr] will prevent future calls to the GetRoot,
+ GetRevision, and GetFilename methods. We don't set the values on
+ failure on the off chance that a future call might succeed. """
+
+ if name == "root":
+ root = self.GetRoot()
+ if root:
+ self.root = root
+ return root
+
+ elif name == "clean_root":
+ clean_root = self.GetCleanRoot()
+ if clean_root:
+ self.clean_root = clean_root
+ return clean_root
+
+ elif name == "revision":
+ revision = self.GetRevision()
+ if revision:
+ self.revision = revision
+ return revision
+
+ elif name == "filename":
+ filename = self.GetFilename()
+ if filename:
+ self.filename = filename
+ return filename
+
+ raise AttributeError
+
+ def GetRoot(self):
+ """ This method should return the unmodified root for the file or 'None'
+ on failure. """
+ raise NotImplementedError
+
+ def GetCleanRoot(self):
+ """ This method should return the repository root for the file or 'None'
+ on failure. """
+ raise NotImplementedErrors
+
+ def GetRevision(self):
+ """ This method should return the revision number for the file or 'None'
+ on failure. """
+ raise NotImplementedError
+
+ def GetFilename(self):
+ """ This method should return the repository-specific filename for the
+ file or 'None' on failure. """
+ raise NotImplementedError
+
+class CVSFileInfo(VCSFileInfo):
+ """ A class to maintain version information for files in a CVS repository.
+ Derived from VCSFileInfo. """
+
+ def __init__(self, file, srcdir):
+ VCSFileInfo.__init__(self, file)
+ self.srcdir = srcdir
+
+ def GetRoot(self):
+ (path, filename) = os.path.split(self.file)
+ root = os.path.join(path, "CVS", "Root")
+ if not os.path.isfile(root):
+ return None
+ f = open(root, "r")
+ root_name = f.readline().strip()
+ f.close()
+ if root_name:
+ return root_name
+ print >> sys.stderr, "Failed to get CVS Root for %s" % filename
+ return None
+
+ def GetCleanRoot(self):
+ parts = self.root.split('@')
+ if len(parts) > 1:
+ # we don't want the extra colon
+ return parts[1].replace(":","")
+ print >> sys.stderr, "Failed to get CVS Root for %s" % filename
+ return None
+
+ def GetRevision(self):
+ (path, filename) = os.path.split(self.file)
+ entries = os.path.join(path, "CVS", "Entries")
+ if not os.path.isfile(entries):
+ return None
+ f = open(entries, "r")
+ for line in f:
+ parts = line.split("/")
+ if len(parts) > 1 and parts[1] == filename:
+ return parts[2]
+ print >> sys.stderr, "Failed to get CVS Revision for %s" % filename
+ return None
+
+ def GetFilename(self):
+ file = self.file
+ if self.revision and self.clean_root:
+ if self.srcdir:
+ # strip the base path off
+ # but we actually want the last dir in srcdir
+ file = os.path.normpath(file)
+ # the lower() is to handle win32+vc8, where
+ # the source filenames come out all lowercase,
+ # but the srcdir can be mixed case
+ if file.lower().startswith(self.srcdir.lower()):
+ file = file[len(self.srcdir):]
+ (head, tail) = os.path.split(self.srcdir)
+ if tail == "":
+ tail = os.path.basename(head)
+ file = tail + file
+ return "cvs:%s:%s:%s" % (self.clean_root, file, self.revision)
+ return file
+
+class SVNFileInfo(VCSFileInfo):
+ url = None
+ repo = None
+ svndata = {}
+
+ # This regex separates protocol and optional username/password from a url.
+ # For instance, all the following urls will be transformed into
+ # 'foo.com/bar':
+ #
+ # http://foo.com/bar
+ # svn+ssh://user@foo.com/bar
+ # svn+ssh://user:pass@foo.com/bar
+ #
+ rootRegex = re.compile(r'^\S+?:/+(?:[^\s/]*@)?(\S+)$')
+
+ def __init__(self, file):
+ """ We only want to run subversion's info tool once so pull all the data
+ here. """
+
+ VCSFileInfo.__init__(self, file)
+
+ if os.path.isfile(file):
+ command = os.popen("svn info %s" % file, "r")
+ for line in command:
+ # The last line of the output is usually '\n'
+ if line.strip() == '':
+ continue
+ # Split into a key/value pair on the first colon
+ key, value = line.split(':', 1)
+ if key in ["Repository Root", "Revision", "URL"]:
+ self.svndata[key] = value.strip()
+
+ exitStatus = command.close()
+ if exitStatus:
+ print >> sys.stderr, "Failed to get SVN info for %s" % file
+
+ def GetRoot(self):
+ key = "Repository Root"
+ if key in self.svndata:
+ match = self.rootRegex.match(self.svndata[key])
+ if match:
+ return match.group(1)
+ print >> sys.stderr, "Failed to get SVN Root for %s" % self.file
+ return None
+
+ # File bug to get this teased out from the current GetRoot, this is temporary
+ def GetCleanRoot(self):
+ return self.root
+
+ def GetRevision(self):
+ key = "Revision"
+ if key in self.svndata:
+ return self.svndata[key]
+ print >> sys.stderr, "Failed to get SVN Revision for %s" % self.file
+ return None
+
+ def GetFilename(self):
+ if self.root and self.revision:
+ if "URL" in self.svndata and "Repository Root" in self.svndata:
+ url, repo = self.svndata["URL"], self.svndata["Repository Root"]
+ file = url[len(repo) + 1:]
+ return "svn:%s:%s:%s" % (self.root, file, self.revision)
+ print >> sys.stderr, "Failed to get SVN Filename for %s" % self.file
+ return self.file
+
+# Utility functions
+
+# A cache of files for which VCS info has already been determined. Used to
+# prevent extra filesystem activity or process launching.
+vcsFileInfoCache = {}
+
+def GetVCSFilename(file, srcdir):
+ """Given a full path to a file, and the top source directory,
+ look for version control information about this file, and return
+ a tuple containing
+ 1) a specially formatted filename that contains the VCS type,
+ VCS location, relative filename, and revision number, formatted like:
+ vcs:vcs location:filename:revision
+ For example:
+ cvs:cvs.mozilla.org/cvsroot:mozilla/browser/app/nsBrowserApp.cpp:1.36
+ 2) the unmodified root information if it exists"""
+ (path, filename) = os.path.split(file)
+ if path == '' or filename == '':
+ return (file, None)
+
+ fileInfo = None
+ root = ''
+ if file in vcsFileInfoCache:
+ # Already cached this info, use it.
+ fileInfo = vcsFileInfoCache[file]
+ else:
+ if os.path.isdir(os.path.join(path, "CVS")):
+ fileInfo = CVSFileInfo(file, srcdir)
+ if fileInfo:
+ root = fileInfo.root
+ elif os.path.isdir(os.path.join(path, ".svn")) or \
+ os.path.isdir(os.path.join(path, "_svn")):
+ fileInfo = SVNFileInfo(file);
+ vcsFileInfoCache[file] = fileInfo
+
+ if fileInfo:
+ file = fileInfo.filename
+
+ # we want forward slashes on win32 paths
+ return (file.replace("\\", "/"), root)
+
+def GetPlatformSpecificDumper(**kwargs):
+ """This function simply returns a instance of a subclass of Dumper
+ that is appropriate for the current platform."""
+ return {'win32': Dumper_Win32,
+ 'cygwin': Dumper_Win32,
+ 'linux2': Dumper_Linux,
+ 'sunos5': Dumper_Solaris,
+ 'darwin': Dumper_Mac}[sys.platform](**kwargs)
+
+def SourceIndex(fileStream, outputPath, cvs_root):
+ """Takes a list of files, writes info to a data block in a .stream file"""
+ # Creates a .pdb.stream file in the mozilla\objdir to be used for source indexing
+ # Create the srcsrv data block that indexes the pdb file
+ result = True
+ pdbStreamFile = open(outputPath, "w")
+ pdbStreamFile.write('''SRCSRV: ini ------------------------------------------------\r\nVERSION=1\r\nSRCSRV: variables ------------------------------------------\r\nCVS_EXTRACT_CMD=%fnchdir%(%targ%)cvs.exe -d %fnvar%(%var2%) checkout -r %var4% -d %var4% -N %var3%\r\nMYSERVER=''')
+ pdbStreamFile.write(cvs_root)
+ pdbStreamFile.write('''\r\nSRCSRVTRG=%targ%\\%var4%\\%fnbksl%(%var3%)\r\nSRCSRVCMD=%CVS_EXTRACT_CMD%\r\nSRCSRV: source files ---------------------------------------\r\n''')
+ pdbStreamFile.write(fileStream) # can't do string interpolation because the source server also uses this and so there are % in the above
+ pdbStreamFile.write("SRCSRV: end ------------------------------------------------\r\n\n")
+ pdbStreamFile.close()
+ return result
+
+class Dumper:
+ """This class can dump symbols from a file with debug info, and
+ store the output in a directory structure that is valid for use as
+ a Breakpad symbol server. Requires a path to a dump_syms binary--
+ |dump_syms| and a directory to store symbols in--|symbol_path|.
+ Optionally takes a list of processor architectures to process from
+ each debug file--|archs|, the full path to the top source
+ directory--|srcdir|, for generating relative source file names,
+ and an option to copy debug info files alongside the dumped
+ symbol files--|copy_debug|, mostly useful for creating a
+ Microsoft Symbol Server from the resulting output.
+
+ You don't want to use this directly if you intend to call
+ ProcessDir. Instead, call GetPlatformSpecificDumper to
+ get an instance of a subclass."""
+ def __init__(self, dump_syms, symbol_path,
+ archs=None, srcdir=None, copy_debug=False, vcsinfo=False, srcsrv=False):
+ # popen likes absolute paths, at least on windows
+ self.dump_syms = dump_syms
+ self.symbol_path = symbol_path
+ if archs is None:
+ # makes the loop logic simpler
+ self.archs = ['']
+ else:
+ self.archs = ['-a %s' % a for a in archs.split()]
+ if srcdir is not None:
+ self.srcdir = os.path.normpath(srcdir)
+ else:
+ self.srcdir = None
+ self.copy_debug = copy_debug
+ self.vcsinfo = vcsinfo
+ self.srcsrv = srcsrv
+
+ # subclasses override this
+ def ShouldProcess(self, file):
+ return False
+
+ def RunFileCommand(self, file):
+ """Utility function, returns the output of file(1)"""
+ try:
+ # we use -L to read the targets of symlinks,
+ # and -b to print just the content, not the filename
+ return os.popen("file -Lb " + file).read()
+ except:
+ return ""
+
+ # This is a no-op except on Win32
+ def FixFilenameCase(self, file):
+ return file
+
+ # This is a no-op except on Win32
+ def SourceServerIndexing(self, debug_file, guid, sourceFileStream, cvs_root):
+ return ""
+
+ # subclasses override this if they want to support this
+ def CopyDebug(self, file, debug_file, guid):
+ pass
+
+ def Process(self, file_or_dir):
+ "Process a file or all the (valid) files in a directory."
+ if os.path.isdir(file_or_dir):
+ return self.ProcessDir(file_or_dir)
+ elif os.path.isfile(file_or_dir):
+ return self.ProcessFile(file_or_dir)
+ # maybe it doesn't exist?
+ return False
+
+ def ProcessDir(self, dir):
+ """Process all the valid files in this directory. Valid files
+ are determined by calling ShouldProcess."""
+ result = True
+ for root, dirs, files in os.walk(dir):
+ for f in files:
+ fullpath = os.path.join(root, f)
+ if self.ShouldProcess(fullpath):
+ if not self.ProcessFile(fullpath):
+ result = False
+ return result
+
+ def ProcessFile(self, file):
+ """Dump symbols from this file into a symbol file, stored
+ in the proper directory structure in |symbol_path|."""
+ result = False
+ sourceFileStream = ''
+ # tries to get cvsroot from the .mozconfig first - if it's not set
+ # the tinderbox cvs_path will be assigned further down
+ cvs_root = os.environ.get("SRCSRV_ROOT")
+ for arch in self.archs:
+ try:
+ cmd = os.popen("%s %s %s" % (self.dump_syms, arch, file), "r")
+ module_line = cmd.next()
+ if module_line.startswith("MODULE"):
+ # MODULE os cpu guid debug_file
+ (guid, debug_file) = (module_line.split())[3:5]
+ # strip off .pdb extensions, and append .sym
+ sym_file = re.sub(r"\.pdb$", "", debug_file) + ".sym"
+ # we do want forward slashes here
+ rel_path = os.path.join(debug_file,
+ guid,
+ sym_file).replace("\\", "/")
+ full_path = os.path.normpath(os.path.join(self.symbol_path,
+ rel_path))
+ try:
+ os.makedirs(os.path.dirname(full_path))
+ except OSError: # already exists
+ pass
+ f = open(full_path, "w")
+ f.write(module_line)
+ # now process the rest of the output
+ for line in cmd:
+ if line.startswith("FILE"):
+ # FILE index filename
+ (x, index, filename) = line.split(None, 2)
+ if sys.platform == "sunos5":
+ start = filename.find(self.srcdir)
+ if start == -1:
+ start = 0
+ filename = filename[start:]
+ filename = self.FixFilenameCase(filename.rstrip())
+ sourcepath = filename
+ if self.vcsinfo:
+ (filename, rootname) = GetVCSFilename(filename, self.srcdir)
+ # sets cvs_root in case the loop through files were to end on an empty rootname
+ if cvs_root is None:
+ if rootname:
+ cvs_root = rootname
+ # gather up files with cvs for indexing
+ if filename.startswith("cvs"):
+ (ver, checkout, source_file, revision) = filename.split(":", 3)
+ sourceFileStream += sourcepath + "*MYSERVER*" + source_file + '*' + revision + "\r\n"
+ f.write("FILE %s %s\r\n" % (index, filename))
+ else:
+ # pass through all other lines unchanged
+ f.write(line)
+ f.close()
+ command_exit = cmd.close()
+ if command_exit:
+ if command_exit == 11:
+ print >> sys.stderr, "INFO: dump_syms segfault while processing {}, retrying".format(file)
+ return self.ProcessFile(file)
+ raise Exception("ERROR - dump_syms error while processing {} (exit code {})".format(file, command_exit))
+ # we output relative paths so callers can get a list of what
+ # was generated
+ print rel_path
+ if self.copy_debug:
+ self.CopyDebug(file, debug_file, guid)
+ if self.srcsrv:
+ # Call on SourceServerIndexing
+ result = self.SourceServerIndexing(debug_file, guid, sourceFileStream, cvs_root)
+ result = True
+ except StopIteration:
+ print >> sys.stderr, "WARN: dump_syms - no debug info extracted for {}".format(file)
+ pass
+ except:
+ print >> sys.stderr, "Unexpected error: ", sys.exc_info()[0]
+ raise
+ return result
+
+# Platform-specific subclasses. For the most part, these just have
+# logic to determine what files to extract symbols from.
+
+class Dumper_Win32(Dumper):
+ fixedFilenameCaseCache = {}
+
+ def ShouldProcess(self, file):
+ """This function will allow processing of pdb files that have dll
+ or exe files with the same base name next to them."""
+
+ skip_extensions = [
+ ".bat", ".class", ".config", ".css", ".glsl", ".hrc", ".ini", ".jar", ".mo", ".msu",
+ ".ods", ".png", ".py", ".pyc", ".rdb", ".rst", ".sh", ".svg", ".ttf", ".txt", ".xml",
+ ]
+ (path,ext) = os.path.splitext(file)
+ basename = os.path.basename(file)
+ if ext in skip_extensions:
+ return False
+ elif os.path.getsize(file) == 21:
+ # content is the "invalid - merged lib" stub
+ return False
+ elif basename.startswith("LICENSE") or basename.startswith("README"):
+ return False
+ elif basename == "msvcp140.dll" or basename == "vcruntime140.dll":
+ return False
+ elif basename.startswith("wininst-") or basename == "fetch_macholib" or basename == "command_template":
+ # ignore python distutils stubs and scripts
+ return False
+ elif ext == "":
+ print >> sys.stderr, "INFO: Skipping {}, has no extension".format(file)
+ return False
+ return True
+
+ def FixFilenameCase(self, file):
+ """Recent versions of Visual C++ put filenames into
+ PDB files as all lowercase. If the file exists
+ on the local filesystem, fix it."""
+
+ # Use a cached version if we have one.
+ if file in self.fixedFilenameCaseCache:
+ return self.fixedFilenameCaseCache[file]
+
+ result = file
+
+ (path, filename) = os.path.split(file)
+ if os.path.isdir(path):
+ lc_filename = filename.lower()
+ for f in os.listdir(path):
+ if f.lower() == lc_filename:
+ result = os.path.join(path, f)
+ break
+
+ # Cache the corrected version to avoid future filesystem hits.
+ self.fixedFilenameCaseCache[file] = result
+ return result
+
+ def CopyDebug(self, file, debug_file, guid):
+ rel_path = os.path.join(debug_file,
+ guid,
+ debug_file).replace("\\", "/")
+ print rel_path
+ full_path = os.path.normpath(os.path.join(self.symbol_path,
+ rel_path))
+ shutil.copyfile(file, full_path)
+ pass
+
+ def SourceServerIndexing(self, debug_file, guid, sourceFileStream, cvs_root):
+ # Creates a .pdb.stream file in the mozilla\objdir to be used for source indexing
+ cwd = os.getcwd()
+ streamFilename = debug_file + ".stream"
+ stream_output_path = os.path.join(cwd, streamFilename)
+ # Call SourceIndex to create the .stream file
+ result = SourceIndex(sourceFileStream, stream_output_path, cvs_root)
+
+ if self.copy_debug:
+ pdbstr_path = os.environ.get("PDBSTR_PATH")
+ pdbstr = os.path.normpath(pdbstr_path)
+ pdb_rel_path = os.path.join(debug_file, guid, debug_file)
+ pdb_filename = os.path.normpath(os.path.join(self.symbol_path, pdb_rel_path))
+ # move to the dir with the stream files to call pdbstr
+ os.chdir(os.path.dirname(stream_output_path))
+ os.spawnv(os.P_WAIT, pdbstr, [pdbstr, "-w", "-p:" + pdb_filename, "-i:" + streamFilename, "-s:srcsrv"])
+ # clean up all the .stream files when done
+ os.remove(stream_output_path)
+ return result
+
+class Dumper_Linux(Dumper):
+ def ShouldProcess(self, file):
+ """This function will allow processing of files that are
+ executable, or end with the .so extension, and additionally
+ file(1) reports as being ELF files. It expects to find the file
+ command in PATH."""
+ if file.endswith(".so") or file.endswith(".bin") or os.access(file, os.X_OK):
+ return self.RunFileCommand(file).startswith("ELF")
+ return False
+
+ def CopyDebug(self, file, debug_file, guid):
+ # We want to strip out the debug info, and add a
+ # .gnu_debuglink section to the object, so the debugger can
+ # actually load our debug info later.
+ file_dbg = file + ".dbg"
+ os.system("objcopy --only-keep-debug %s %s" % (file, file_dbg))
+ os.system("objcopy --add-gnu-debuglink=%s %s" % (file_dbg, file))
+
+ rel_path = os.path.join(debug_file,
+ guid,
+ debug_file + ".dbg")
+ full_path = os.path.normpath(os.path.join(self.symbol_path,
+ rel_path))
+ shutil.copyfile(file_dbg, full_path)
+ # gzip the shipped debug files
+ os.system("gzip %s" % full_path)
+ print rel_path + ".gz"
+
+class Dumper_Solaris(Dumper):
+ def RunFileCommand(self, file):
+ """Utility function, returns the output of file(1)"""
+ try:
+ output = os.popen("file " + file).read()
+ return output.split('\t')[1];
+ except:
+ return ""
+
+ def ShouldProcess(self, file):
+ """This function will allow processing of files that are
+ executable, or end with the .so extension, and additionally
+ file(1) reports as being ELF files. It expects to find the file
+ command in PATH."""
+ if file.endswith(".so") or os.access(file, os.X_OK):
+ return self.RunFileCommand(file).startswith("ELF")
+ return False
+
+class Dumper_Mac(Dumper):
+ def ShouldProcess(self, file):
+ """This function will allow processing of files that are
+ executable, or end with the .dylib extension, and additionally
+ file(1) reports as being Mach-O files. It expects to find the file
+ command in PATH."""
+ if file.endswith(".dylib") or os.access(file, os.X_OK):
+ return self.RunFileCommand(file).startswith("Mach-O")
+ return False
+
+# Entry point if called as a standalone program
+def main():
+ parser = OptionParser(usage="usage: %prog [options] <dump_syms binary> <symbol store path> <debug info files>")
+ parser.add_option("-c", "--copy",
+ action="store_true", dest="copy_debug", default=False,
+ help="Copy debug info files into the same directory structure as symbol files")
+ parser.add_option("-a", "--archs",
+ action="store", dest="archs",
+ help="Run dump_syms -a <arch> for each space separated cpu architecture in ARCHS (only on macOS)")
+ parser.add_option("-s", "--srcdir",
+ action="store", dest="srcdir",
+ help="Use SRCDIR to determine relative paths to source files")
+ parser.add_option("-v", "--vcs-info",
+ action="store_true", dest="vcsinfo",
+ help="Try to retrieve VCS info for each FILE listed in the output")
+ parser.add_option("-i", "--source-index",
+ action="store_true", dest="srcsrv", default=False,
+ help="Add source index information to debug files, making them suitable for use in a source server.")
+ (options, args) = parser.parse_args()
+
+ #check to see if the pdbstr.exe exists
+ if options.srcsrv:
+ pdbstr = os.environ.get("PDBSTR_PATH")
+ if not os.path.exists(pdbstr):
+ print >> sys.stderr, "Invalid path to pdbstr.exe - please set/check PDBSTR_PATH.\n"
+ sys.exit(1)
+
+ if len(args) < 3:
+ parser.error("not enough arguments")
+ exit(1)
+
+ dumper = GetPlatformSpecificDumper(dump_syms=args[0],
+ symbol_path=args[1],
+ copy_debug=options.copy_debug,
+ archs=options.archs,
+ srcdir=options.srcdir,
+ vcsinfo=options.vcsinfo,
+ srcsrv=options.srcsrv)
+ for arg in args[2:]:
+ dumper.Process(arg)
+
+# run main if run directly
+if __name__ == "__main__":
+ main()
diff --git a/bin/symstore.sh b/bin/symstore.sh
new file mode 100755
index 000000000..2734f1b22
--- /dev/null
+++ b/bin/symstore.sh
@@ -0,0 +1,176 @@
+#!/usr/bin/env bash
+
+# Files listed here would not be store in the symbolestore-server.
+# The format is a string with files e.g.
+# EXCLUDE_LIST="python.exe
+# file.dll
+# next_file.exe"
+#
+# It removes "python.exe", "file.dll", and "next_file.exe" from what's
+# added to the symstore. Separator is the newline
+EXCLUDE_LIST="python.exe"
+
+# List files here where it's ok for this script to find more than one
+# occurrence in the build tree. Files _not_ included here will generate
+# an error, if duplicates are found.
+#
+# Same format as for EXCLUDE_LIST above
+MOREPDBS_OKLIST="libcurl.dll
+libcrypto-1_1.dll
+libssl-1_1.dll
+freebl3.dll
+libeay32.dll
+nspr4.dll
+nss3.dll
+nssckbi.dll
+nssdbm3.dll
+nssutil3.dll
+plc4.dll
+plds4.dll
+smime3.dll
+softokn3.dll
+sqlite3.dll
+ssl3.dll
+ssleay32.dll"
+
+verbose_none()
+{
+ do_none=
+}
+
+add_pdb()
+{
+ extension=$1
+ pdbext=$2
+ list=$3
+ stats_notfound=0
+ stats_found=0
+ stats_morefound=0
+ declare -a pdball
+ echo "Collect $extension"
+ ret=$(find "${INSTDIR}/" -type f -name "*.${extension}" | grep -vF "$EXCLUDE_LIST")
+ while IFS= read -r file
+ do
+ ${VERBOSE} -n "Found: $file"
+ # store dll/exe itself (needed for minidumps)
+ if [ $WITHEXEC == 1 ] ; then
+ cygpath -w "$file" >> "$list"
+ ${VERBOSE} " insert"
+ else
+ ${VERBOSE} " "
+ fi
+
+ # store pdb file
+ filename=$(basename "$file" ".${extension}")
+ pdball+=($(grep -i "/${filename}${pdbext}" <<< ${ALL_PDBS}))
+ if [ -n "${pdball[0]}" ]; then
+ cygpath -w "${pdball[0]}" >> "$list"
+ fi
+ case ${#pdball[@]} in
+ 0) ((++stats_notfound))
+ ${VERBOSE} " PDB not found"
+ ;;
+ 1) ((++stats_found))
+ ${VERBOSE} " ${pdball[0]} insert"
+ ;;
+ *) ((++stats_morefound))
+ if [ -z "$(echo $file | grep -F "$MOREPDBS_OKLIST")" ]; then
+ echo "Error: found duplicate PDBs:"
+ for morepdbs in ${pdball[@]} ; do
+ echo " $morepdbs"
+ done
+ exit 1
+ else
+ ${VERBOSE} " ${pdball[0]} insert (is in more okay list)"
+ fi
+ ;;
+ esac
+ unset pdball
+ done <<EOF
+${ret}
+EOF
+
+ echo " Found PDBs : $stats_found"
+ echo " Missing PDBs : $stats_notfound"
+ echo " Multiple PDBs : $stats_morefound"
+}
+
+# check preconditions
+if [ -z "${INSTDIR}" -o -z "${WORKDIR}" ]; then
+ echo "INSTDIR or WORKDIR not set - script expects calling inside buildenv"
+ exit 1
+fi
+if [ ! -d "${INSTDIR}" -o ! -d "${WORKDIR}" ]; then
+ echo "INSTDIR or WORKDIR not present - script expects calling after full build"
+ exit 1
+fi
+which symstore.exe > /dev/null 2>&1 || {
+ echo "symstore.exe is expected in the PATH"
+ exit 1
+}
+
+# defaults
+MAX_KEEP=5
+SYM_PATH=${WORKDIR}/symstore
+COMMENT=""
+COMCMD=""
+WITHEXEC=1
+VERBOSE=verbose_none
+
+USAGE="Usage: $0 [-h|-k <keep_num_versions>|-p <symbol_store_path>|-c <comment>|-n|-v]
+ -h: this cruft
+ -c <comment> specifies a comment for the transaction
+ -n do not store exe/dll on the symbole server
+ -k <int>: keep this number of old symbol versions around
+ (default: ${MAX_KEEP}. Set to 0 for unlimited)
+ -v verbose mode, output detail report of files
+ -p <path>: specify full path to symbol store tree
+If no path is specified, defaults to ${SYM_PATH}.
+"
+
+# process args
+while :
+do
+ case "$1" in
+ -k|--keep) MAX_KEEP="$2"; shift 2;;
+ -p|--path) SYM_PATH="$2"; shift 2;;
+ -c|--comment) COMCMD="/c"; COMMENT="$2"; shift 2;;
+ -n|--noexec) WITHEXEC=0; shift ;;
+ -v|--verbose) VERBOSE=echo; shift ;;
+ -h|--help) echo "${USAGE}"; exit 0;;
+ -*) echo "${USAGE}" >&2; exit 1;;
+ *) break;;
+ esac
+done
+
+if [ $# -gt 0 ]; then
+ echo "${USAGE}" >&2
+ exit 1
+fi
+
+# populate symbol store from here
+TMPFILE=$(mktemp) || exit 1
+trap '{ rm -f ${TMPFILE}; }' EXIT
+
+# collect all PDBs
+ALL_PDBS=$(find "${WORKDIR}/" -type f -name "*.pdb")
+
+# add dlls and executables
+add_pdb dll .pdb "${TMPFILE}"
+add_pdb exe .pdb "${TMPFILE}"
+add_pdb bin .bin.pdb "${TMPFILE}"
+
+# stick all of it into symbol store
+symstore.exe add /compress /f "@$(cygpath -w "${TMPFILE}")" /s "$(cygpath -w "${SYM_PATH}")" /t "${PRODUCTNAME}" /v "${LIBO_VERSION_MAJOR}.${LIBO_VERSION_MINOR}.${LIBO_VERSION_MICRO}.${LIBO_VERSION_PATCH}${LIBO_VERSION_SUFFIX}${LIBO_VERSION_SUFFIX_SUFFIX}" "${COMCMD}" "${COMMENT}"
+rm -f "${TMPFILE}"
+
+# Cleanup symstore, older revisions will be removed. Unless the
+# .dll/.exe changes, the .pdb should be shared, so with incremental
+# tinderbox several revisions should not be that space-demanding.
+if [ "${MAX_KEEP}" -gt 0 -a -d "${SYM_PATH}/000Admin" ]; then
+ to_remove=$(ls -1 "${SYM_PATH}/000Admin" | grep -v '\.txt' | grep -v '\.deleted' | sort | head -n "-${MAX_KEEP}")
+ for revision in $to_remove; do
+ echo "Remove $revision from symstore"
+ symstore.exe del /i "${revision}" /s "$(cygpath -w "${SYM_PATH}")"
+ done
+fi
diff --git a/bin/test-hid-vs-ui.py b/bin/test-hid-vs-ui.py
new file mode 100755
index 000000000..ac3321649
--- /dev/null
+++ b/bin/test-hid-vs-ui.py
@@ -0,0 +1,188 @@
+#!/usr/bin/env python
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Parses all help files (.xhp) to check that hids referencing .ui are up-to-date
+# From fdo#67350
+
+
+import sys
+import argparse
+import os
+import subprocess
+import xml.etree.ElementTree as ET
+import collections
+import re
+import smtplib
+import email
+import email.mime.text
+import time
+import datetime
+
+# retrieve all hids related to .ui files
+def init_hids():
+ global args, local_repo
+ if local_repo:
+ repo_dir = os.path.join(core_repo_dir,'helpcontent2')
+ os.chdir(repo_dir)
+ return subprocess.check_output(['git','grep','hid="[^"]*/[^"]*">','.'])
+ else:
+ repo_dir = '/var/tmp/help.git'
+ if not os.path.exists(repo_dir):os.makedirs(repo_dir)
+ os.chdir(repo_dir)
+
+ if not os.path.exists(os.path.join(repo_dir,'config')):
+ subprocess.call(['git','clone','--bare','git://gerrit.libreoffice.org/help',repo_dir])
+ elif not args['git_static']:
+ subprocess.call(['git','fetch','origin'])
+ return subprocess.check_output(['git','grep','hid="[^"]*/[^"]*">','master','--'])
+
+# retrieve .ui files list from the core
+def init_core_files():
+ global core_repo_dir, local_repo
+ core_repo_dir = args['core_repo_dir']
+ if core_repo_dir is None:
+ core_repo_dir = os.path.dirname(os.path.abspath(os.path.dirname(sys.argv[0])))
+ local_repo = True
+
+ if not os.path.exists(core_repo_dir):os.makedirs(core_repo_dir)
+ os.chdir(core_repo_dir)
+
+ if not os.path.exists(os.path.join(core_repo_dir,'.git')):
+ subprocess.call(['git','clone','git://gerrit.libreoffice.org/core',core_repo_dir])
+ elif not args['git_static']:
+ subprocess.call(['git','fetch','origin'])
+ allfiles = subprocess.check_output(['git','ls-tree','--name-only','--full-name','-r','master'])
+ return re.findall(r'.*\.ui',allfiles)
+
+
+if __name__ == "__main__":
+
+ parser = argparse.ArgumentParser('hid for ui consistency parser')
+ parser.add_argument('-s', '--send-to', action='append', help='email address to send the report to. Use one flag per address.', required=False)
+ parser.add_argument('-g', '--git-static', action='store_true', help='to avoid contacting remote server to refresh repositories.', required=False)
+ parser.add_argument('-r', '--core-repo-dir', help='enforce path to core repository when analyzing .ui files.', required=False)
+ args=vars(parser.parse_args())
+
+ uifileslist = init_core_files() # play it early to gain the local repo identification
+
+ rows = init_hids().splitlines()
+ #<tree>:<relative_file>:<text>
+ # handled as sets to remove duplicates (and we don't need an iterator)
+ targets = collections.defaultdict(set)
+ origin = collections.defaultdict(set)
+
+ # fill all matching hids and their parent file
+ for row in rows:
+ fname, rawtext = row.split(':',1)[0:]
+ hid = rawtext.split('hid="')[1].split('"')[0]
+ if hid.startswith('.uno'): continue
+ uifileraw, compname = hid.rsplit('/',1)
+ uifile = uifileraw + ".ui"
+ # map modules/ etc, which exist only in install
+ # back to their source location
+ if uifile.startswith("modules/scalc"):
+ uifile = "sc/scalc" + uifile[13:]
+ elif uifile.startswith("modules/swriter"):
+ uifile = "sw/swriter" + uifile[15:]
+ elif uifile.startswith("modules/schart"):
+ uifile = "chart2" + uifile[14:]
+ elif uifile.startswith("modules/smath"):
+ uifile = "starmath/smath" + uifile[13:]
+ elif uifile.startswith("modules/sdraw"):
+ uifile = "sd/sdraw" + uifile[13:]
+ elif uifile.startswith("modules/simpress"):
+ uifile = "sd/simpress" + uifile[16:]
+ elif uifile.startswith("modules/BasicIDE"):
+ uifile = "basctl/basicide" + uifile[16:]
+ elif uifile.startswith("modules/sabpilot"):
+ uifile = "extensions/sabpilot" + uifile[16:]
+ elif uifile.startswith("modules/sbibliography"):
+ uifile = "extensions/sbibliography" + uifile[21:]
+ elif uifile.startswith("modules/scanner"):
+ uifile = "extensions/scanner" + uifile[15:]
+ elif uifile.startswith("modules/spropctrlr"):
+ uifile = "extensions/spropctrlr" + uifile[18:]
+ elif uifile.startswith("sfx"):
+ uifile = "sfx2" + uifile[3:]
+ elif uifile.startswith("svt"):
+ uifile = "svtools" + uifile[3:]
+ elif uifile.startswith("fps"):
+ uifile = "fpicker" + uifile[3:]
+ components = uifile.split('/',1);
+ uifile = components[0] + '/uiconfig/' + components[1]
+ targets[uifile].add(compname.split(':')[0])
+ origin[uifile].add(fname) # help file(s)
+
+ errors = ''
+ # search in all .ui files referenced in help
+ # 2 possible errors: file not found in repo, id not found in file
+ for uikey in dict.keys(targets):
+ if uikey not in uifileslist:
+ if len(origin[uikey]) == 1:
+ errors += '\nFrom ' + origin[uikey].pop()
+ else:
+ errors += '\nFrom one of ' + str(origin[uikey]).replace('set(','').replace(')','')
+ errors += ', we did not find file '+ uikey+'.'
+ continue
+
+ full_path = os.path.join(core_repo_dir,uikey)
+ # print full_path
+ root = ET.parse(full_path).getroot()
+ ids = [element.attrib['id'].split(':')[0] for element in root.findall('.//object[@id]')]
+ # print targets[uikey]
+ missing_ids = [ element for element in targets[uikey] if element not in ids ]
+ if missing_ids:
+ if len(origin[uikey]) == 1:
+ errors += '\nFrom ' + origin[uikey].pop()
+ else:
+ errors += '\nFrom one of ' + str(origin[uikey]).replace('set(','').replace(')','')
+ errors += ', referenced items '+ str(missing_ids) + ' were not found inside '+ uikey+'.'
+
+ if not errors:
+ errors = '\nall is clean\n'
+
+ if args['send_to']:
+ msg_from = os.path.basename(sys.argv[0]) + '@libreoffice.org'
+ if isinstance(args['send_to'], basestring):
+ msg_to = [args['send_to']]
+ else:
+ msg_to = args['send_to']
+ print "send to array " + msg_to[0]
+
+ server = smtplib.SMTP('localhost')
+ body = '''
+Hello,
+
+Here is the report for wrong hids from help related to .ui files
+
+'''
+ body += errors
+ body += '''
+
+Best,
+
+Your friendly LibreOffice Help-ids Checker
+
+Note: The bot generating this message can be found and improved here:
+ https://gerrit.libreoffice.org/gitweb?p=dev-tools.git;a=blob;f=scripts/test-hid-vs-ui.py'''
+ now = datetime.datetime.now()
+ msg = email.mime.text.MIMEText(body, 'plain', 'UTF-8')
+ msg['From'] = msg_from
+ msg['To'] = msg_to[0]
+ msg['Cc'] = ', '.join(msg_to[1:]) # Works only if at least 2 items in tuple
+ msg['Date'] = email.utils.formatdate(time.mktime(now.timetuple()))
+ msg['Subject'] = 'LibreOffice Gerrit News for python on %s' % (now.date().isoformat())
+ msg['Reply-To'] = msg_to[0]
+ msg['X-Mailer'] = 'LibreOfficeGerritDigestMailer 1.1'
+
+ server.sendmail(msg_from, msg_to, str(msg))
+ else:
+ print errors
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/text_cat/COPYING b/bin/text_cat/COPYING
new file mode 100644
index 000000000..5ab7695ab
--- /dev/null
+++ b/bin/text_cat/COPYING
@@ -0,0 +1,504 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/bin/text_cat/Copyright b/bin/text_cat/Copyright
new file mode 100644
index 000000000..c1e75d3af
--- /dev/null
+++ b/bin/text_cat/Copyright
@@ -0,0 +1,21 @@
+Copyright (c) 1994, 1995, 1996, 1997 by Gertjan van Noord.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston,
+ MA 02110-1301 USA
+
+cf. the file COPYING
+
+
diff --git a/bin/text_cat/LM/english.lm b/bin/text_cat/LM/english.lm
new file mode 100644
index 000000000..ab71632c6
--- /dev/null
+++ b/bin/text_cat/LM/english.lm
@@ -0,0 +1,400 @@
+_ 20326
+e 6617
+t 4843
+o 3834
+n 3653
+i 3602
+a 3433
+s 2945
+r 2921
+h 2507
+e_ 2000
+d 1816
+_t 1785
+c 1639
+l 1635
+th 1535
+he 1351
+_th 1333
+u 1309
+f 1253
+m 1175
+p 1151
+_a 1145
+the 1142
+_the 1060
+s_ 978
+er 968
+_o 967
+he_ 928
+d_ 888
+t_ 885
+the_ 844
+_the_ 843
+on 842
+in 817
+y 783
+n_ 773
+b 761
+re 754
+, 734
+,_ 732
+an 732
+g 728
+w 718
+_i 707
+en 676
+f_ 599
+y_ 595
+of 594
+_of 592
+es 589
+ti 587
+v 580
+_of_ 575
+of_ 575
+nd 568
+at 549
+r_ 540
+_w 534
+it 522
+ed 496
+_p 494
+nt 485
+_c 462
+o_ 457
+io 450
+_an 439
+te 432
+or 425
+_b 418
+nd_ 407
+to 406
+st 402
+is 401
+_s 396
+_in 389
+ion 385
+and 385
+de 384
+ve 382
+ha 375
+ar 366
+_m 361
+and_ 360
+_and 360
+_and_ 358
+se 353
+_to 347
+me 346
+to_ 344
+ed_ 339
+. 330
+be 329
+_f 329
+._ 329
+_to_ 320
+co 317
+ic 316
+ns 308
+al 307
+le 304
+ou 304
+ce 293
+ent 279
+l_ 278
+_co 277
+tio 275
+on_ 274
+_d 274
+tion 268
+ri 266
+_e 264
+ng 253
+hi 251
+er_ 249
+ea 246
+as 245
+_be 242
+pe 242
+h_ 234
+_r 232
+ec 227
+ch 223
+ro 222
+ct 220
+_h 219
+pr 217
+in_ 217
+ne 214
+ll 214
+rt 213
+s,_ 210
+s, 210
+li 209
+ra 208
+T 207
+wh 204
+a_ 203
+ac 201
+_wh 199
+_n 196
+ts 196
+di 196
+es_ 195
+si 194
+re_ 193
+at_ 192
+nc 192
+ie 190
+_a_ 188
+_in_ 185
+ing 184
+us 182
+_re 182
+g_ 179
+ng_ 178
+op 178
+con 177
+tha 175
+_l 174
+_tha 174
+ver 173
+ma 173
+ion_ 171
+_con 171
+ci 170
+ons 170
+_it 170
+po 169
+ere 168
+is_ 167
+ta 167
+la 166
+_pr 165
+fo 164
+ho 164
+ir 162
+ss 161
+men 160
+be_ 160
+un 159
+ty 159
+_be_ 158
+ing_ 157
+om 156
+ot 156
+hat 155
+ly 155
+_g 155
+em 153
+_T 151
+rs 150
+mo 148
+ch_ 148
+wi 147
+we 147
+ad 147
+ts_ 145
+res 143
+_wi 143
+I 143
+hat_ 142
+ei 141
+ly_ 141
+ni 140
+os 140
+ca 139
+ur 139
+A 138
+ut 138
+that 138
+_that 137
+ati 137
+_fo 137
+st_ 137
+il 136
+or_ 136
+for 136
+pa 136
+ul 135
+ate 135
+ter 134
+it_ 134
+nt_ 133
+that_ 132
+_ha 129
+al_ 128
+el 128
+as_ 127
+ll_ 127
+_ma 125
+no 124
+ment 124
+an_ 124
+tion_ 122
+su 122
+bl 122
+_de 122
+nce 120
+pl 120
+fe 119
+tr 118
+so 118
+int 115
+ov 114
+e, 114
+e,_ 114
+_u 113
+ent_ 113
+Th 113
+her 113
+j 112
+atio 112
+ation 112
+_Th 111
+le_ 110
+ai 110
+_it_ 110
+_on 110
+_for 109
+ect 109
+k 109
+hic 108
+est 108
+der 107
+tu 107
+na 106
+_by_ 106
+by_ 106
+E 106
+by 106
+_by 106
+ve_ 106
+_di 106
+en_ 104
+vi 104
+m_ 103
+_whi 102
+iv 102
+whi 102
+ns_ 102
+_A 101
+ich 100
+ge 100
+pro 99
+ess 99
+_whic 99
+ers 99
+hich 99
+ce_ 99
+which 99
+whic 99
+all 98
+ove 98
+_is 98
+ich_ 97
+ee 97
+hich_ 97
+n,_ 96
+n, 96
+im 95
+ir_ 94
+hei 94
+ions 94
+sti 94
+se_ 94
+per 93
+The 93
+_pa 93
+heir 93
+id 93
+eir 93
+eir_ 93
+ig 93
+heir_ 93
+_no 93
+ev 93
+era 92
+_int 92
+ted 91
+_The 91
+ies 91
+art 91
+thei 90
+_ar 90
+_thei 90
+their 90
+_pro 90
+et 89
+_pe 88
+_mo 88
+ther 88
+x 87
+gh 87
+S 87
+_is_ 87
+ol 87
+ty_ 87
+_I 86
+nde 86
+am 86
+rn 86
+nte 86
+mp 85
+_su 84
+_we 84
+par 84
+_v 84
+pu 82
+his 82
+ow 82
+mi 82
+go 81
+N 81
+ue 81
+ple 81
+ep 80
+ab 80
+;_ 80
+; 80
+ex 80
+ain 80
+over 80
+_un 79
+q 79
+qu 79
+pp 79
+ith 79
+ry 79
+_as 79
+ber 79
+ub 78
+av 78
+uc 78
+s._ 77
+s. 77
+enc 77
+are 77
+iti 77
+gr 76
+his_ 76
+ua 76
+part 76
+ff 75
+eve 75
+O 75
+rea 74
+ous 74
+ia 74
+The_ 73
+ag 73
+mb 73
+_go 73
+fa 72
+on,_ 72
+ern 72
+t,_ 72
+on, 72
+t, 72
+_me 71
diff --git a/bin/text_cat/LM/german.lm b/bin/text_cat/LM/german.lm
new file mode 100644
index 000000000..6f14f51ef
--- /dev/null
+++ b/bin/text_cat/LM/german.lm
@@ -0,0 +1,400 @@
+_ 31586
+e 15008
+n 9058
+i 7299
+r 6830
+t 5662
+s 5348
+a 4618
+h 4176
+d 4011
+er 3415
+en 3412
+u 3341
+l 3266
+n_ 2848
+c 2636
+ch 2460
+g 2407
+o 2376
+e_ 2208
+r_ 2128
+m 2077
+_d 1948
+de 1831
+en_ 1786
+ei 1718
+er_ 1570
+in 1568
+te 1505
+ie 1505
+b 1458
+t_ 1425
+f 1306
+k 1176
+ge 1144
+s_ 1137
+un 1113
+, 1104
+,_ 1099
+w 1099
+z 1060
+nd 1039
+he 1004
+st 989
+_s 952
+_de 949
+. 909
+_e 906
+ne 906
+der 880
+._ 847
+be 841
+es 829
+ic 796
+_a 791
+ie_ 779
+is 769
+ich 763
+an 755
+re 749
+di 732
+ein 730
+se 730
+" 720
+ng 709
+_i 706
+sc 683
+sch 681
+it 673
+der_ 652
+h_ 651
+ch_ 642
+S 630
+le 609
+p 609
+ä 607
+ü 603
+au 603
+v 602
+che 599
+_w 596
+d_ 585
+die 576
+_di 572
+m_ 562
+_die 559
+el 548
+_S 540
+_der 529
+li 527
+_der_ 523
+si 515
+al 514
+ns 507
+on 501
+or 495
+ti 490
+ten 487
+ht 486
+die_ 485
+_die_ 483
+D 479
+rt 478
+nd_ 476
+_u 470
+nt 468
+A 466
+in_ 464
+den 461
+cht 447
+und 443
+me 440
+_z 429
+ung 426
+ll 423
+_un 421
+_ei 419
+_n 415
+hr 412
+ine 412
+_A 408
+_ein 405
+ar 404
+ra 403
+_v 400
+_g 400
+as 395
+zu 392
+et 389
+em 385
+_D 380
+eine 376
+gen 376
+g_ 376
+da 368
+we 366
+K 365
+lt 360
+B 354
+_" 353
+nde 349
+ni 347
+und_ 345
+E 345
+ur 345
+_m 342
+ri 341
+ha 340
+eh 339
+ten_ 338
+es_ 336
+_K 336
+_und 335
+ig 335
+_b 335
+hen 334
+_und_ 332
+_au 329
+_B 327
+_da 325
+_zu 324
+_in 322
+at 321
+us 318
+wi 307
+n, 305
+n,_ 304
+nn 304
+te_ 301
+eit 301
+_h 300
+ter 299
+M 298
+n. 295
+ß 294
+ng_ 289
+sche 289
+- 283
+rs 282
+den_ 282
+_si 280
+G 280
+im 278
+_ge 277
+chen 276
+rd 273
+_E 273
+n._ 270
+icht 270
+rn 268
+uf 267
+isch 264
+isc 264
+nen 263
+_in_ 262
+_M 260
+_er 257
+ich_ 255
+ac 253
+lic 252
+_G 252
+ber 252
+la 251
+vo 251
+eb 250
+ke 249
+F 248
+as_ 248
+hen_ 248
+ach 245
+en, 244
+ung_ 243
+lich 243
+ste 243
+en,_ 243
+_k 241
+ben 241
+_f 241
+en. 241
+_be 239
+it_ 239
+L 238
+_se 237
+mi 236
+ve 236
+na 236
+on_ 236
+P 235
+ss 234
+ist 234
+ö 234
+ht_ 233
+ru 233
+st_ 229
+_F 229
+ts 227
+ab 226
+W 226
+ol 225
+_eine 225
+hi 225
+so 224
+em_ 223
+"_ 223
+ren 222
+en._ 221
+chen_ 221
+R 221
+ta 221
+ere 220
+ische 219
+ers 218
+ert 217
+_P 217
+tr 217
+ed 215
+ze 215
+eg 215
+ens 215
+ür 213
+ah 212
+_vo 212
+ne_ 211
+cht_ 210
+uc 209
+_wi 209
+nge 208
+lle 208
+fe 207
+_L 207
+ver 206
+hl 205
+V 204
+ma 203
+wa 203
+auf 201
+H 198
+_W 195
+T 195
+nte 193
+uch 193
+l_ 192
+sei 192
+nen_ 190
+u_ 189
+_den 189
+_al 189
+_V 188
+t. 188
+lte 187
+ut 186
+ent 184
+sich 183
+sic 183
+il 183
+ier 182
+am 181
+gen_ 180
+sen 179
+fü 178
+um 178
+t._ 177
+f_ 174
+he_ 174
+ner 174
+nst 174
+ls 174
+_sei 173
+ro 173
+ir 173
+ebe 173
+mm 173
+ag 172
+ern 169
+t,_ 169
+t, 169
+eu 169
+ft 168
+icht_ 167
+hre 167
+Be 166
+nz 165
+nder 165
+_T 164
+_den_ 164
+iche 163
+tt 163
+zu_ 162
+and 162
+J 161
+rde 160
+rei 160
+_we 159
+_H 159
+ige 159
+_Be 158
+rte 157
+hei 156
+das 155
+aus 155
+che_ 154
+_das 154
+_zu_ 154
+tz 154
+_ni 153
+das_ 153
+_R 153
+N 153
+des 153
+_ve 153
+_J 152
+I 152
+_das_ 152
+men 151
+_so 151
+_ver 151
+_auf 150
+ine_ 150
+_ha 150
+rg 149
+ind 148
+eben 148
+kt 147
+mit 147
+_an 147
+her 146
+Ge 146
+Sc 145
+_sich 145
+U 145
+Sch 145
+_sic 145
+end 145
+Di 144
+abe 143
+ck 143
+sse 142
+ür_ 142
+ell 142
+ik 141
+o_ 141
+nic 141
+nich 141
+sa 141
+_fü 140
+hn 140
+zi 140
+no 140
+nicht 140
+im_ 139
+von_ 139
+von 139
+_nic 139
+_nich 139
+eine_ 139
+oc 138
+wei 138
+io 138
+schen 138
+gt 138
diff --git a/bin/text_cat/text_cat b/bin/text_cat/text_cat
new file mode 100755
index 000000000..74dae861d
--- /dev/null
+++ b/bin/text_cat/text_cat
@@ -0,0 +1,242 @@
+#!/usr/bin/perl -w
+# © Gertjan van Noord, 1997.
+# mailto:vannoord@let.rug.nl
+
+use strict;
+use vars qw($opt_d $opt_f $opt_h $opt_i $opt_l $opt_n $opt_s $opt_t $opt_v $opt_u $opt_a);
+use Getopt::Std;
+use Benchmark;
+
+my $non_word_characters='0-9\s';
+my @languages; # languages (sorted by name)
+my %ngram_for; # map language x ngram => rang
+
+# OPTIONS
+getopts('a:d:f:hi:lnst:u:v');
+
+# defaults: set $opt_X unless already defined (Perl Cookbook p. 6):
+$opt_a ||= 10;
+$opt_d ||= '/users1/vannoord/Perl/TextCat/LM';
+$opt_f ||= 0;
+$opt_t ||= 400;
+$opt_u ||= 1.05;
+
+$| = 1; # auto-flush stdout
+
+sub help {
+ print <<HELP
+Text Categorization. Typically used to determine the language of a
+given document.
+
+Usage
+-----
+
+* print help message:
+
+$0 -h
+
+* for guessing:
+
+$0 [-a Int] [-d Dir] [-f Int] [-i N] [-l] [-t Int] [-u Int] [-v]
+
+ -a the program returns the best-scoring language together
+ with all languages which are $opt_u times worse (cf option -u).
+ If the number of languages to be printed is larger than the value
+ of this option (default: $opt_a) then no language is returned, but
+ instead a message that the input is of an unknown language is
+ printed. Default: $opt_a.
+ -d indicates in which directory the language models are
+ located (files ending in .lm). Currently only a single
+ directory is supported. Default: $opt_d.
+ -f Before sorting is performed the Ngrams which occur this number
+ of times or less are removed. This can be used to speed up
+ the program for longer inputs. For short inputs you should use
+ -f 0.
+ Default: $opt_f.
+ -i N only read first N lines
+ -l indicates that input is given as an argument on the command line,
+ e.g. text_cat -l "this is english text"
+ Cannot be used in combination with -n.
+ -s Determine language of each line of input. Not very efficient yet,
+ because language models are re-loaded after each line.
+ -t indicates the topmost number of ngrams that should be used.
+ If used in combination with -n this determines the size of the
+ output. If used with categorization this determines
+ the number of ngrams that are compared with each of the language
+ models (but each of those models is used completely).
+ -u determines how much worse result must be in order not to be
+ mentioned as an alternative. Typical value: 1.05 or 1.1.
+ Default: $opt_u.
+ -v verbose. Continuation messages are written to standard error.
+
+* for creating new language model, based on text read from standard input:
+
+$0 -n [-v]
+
+ -v verbose. Continuation messages are written to standard error.
+
+
+HELP
+}
+
+if ($opt_h) { help(); exit 0; };
+
+if ($opt_n) {
+ my %ngram=();
+ my @result = create_lm(input(),\%ngram);
+ print join("\n",map { "$_\t $ngram{$_}" ; } @result),"\n";
+} elsif ($opt_l) {
+ classify($ARGV[0]);
+} elsif ($opt_s) {
+ while (<>) {
+ chomp;
+ classify($_);
+ }
+} else {
+ classify(input());
+}
+
+sub read_model {
+ my ($file) = @_;
+ open(LM,"$file") or die "cannot open $file: $!\n";
+ my %ngram;
+ my $rang = 1;
+ while (<LM>) {
+ chomp;
+ # only use lines starting with appropriate character. Others are
+ # ignored.
+ if (/^[^$non_word_characters]+/o) {
+ $ngram{$&} = $rang++;
+ }
+ }
+ return \%ngram;
+}
+
+sub read_models {
+ # open directory to find which languages are supported
+ opendir DIR, "$opt_d" or die "directory $opt_d: $!\n";
+ @languages = sort(grep { s/\.lm// && -r "$opt_d/$_.lm" } readdir(DIR));
+ closedir DIR;
+ @languages or die "sorry, can't read any language models from $opt_d\n" .
+ "language models must reside in files with .lm ending\n";
+
+ foreach my $language (@languages) {
+ $ngram_for{$language} = read_model("$opt_d/$language.lm");
+ }
+}
+
+# CLASSIFICATION
+sub classify {
+ my ($input)=@_;
+ my %results=();
+ my $maxp = $opt_t;
+ read_models() if !@languages;
+
+ # create ngrams for input. Note that hash %unknown is not used;
+ # it contains the actual counts which are only used under -n: creating
+ # new language model (and even then they are not really required).
+ my @unknown=create_lm($input);
+
+ my $t1 = new Benchmark;
+ foreach my $language (@languages) {
+ # compares the language model with input ngrams list
+ my $ngram = $ngram_for{$language} or die "no ngrams for $language";
+
+ my ($i,$p)=(0,0);
+ while ($i < @unknown) {
+ if ($ngram->{$unknown[$i]}) {
+ $p=$p+abs($ngram->{$unknown[$i]}-$i);
+ } else {
+ $p=$p+$maxp;
+ }
+ ++$i;
+ }
+ #print STDERR "$language: $p\n" if $opt_v;
+
+ $results{$language} = $p;
+ }
+ print STDERR "read language models done (" .
+ timestr(timediff(new Benchmark, $t1)) .
+ ".\n" if $opt_v;
+ my @results = sort { $results{$a} <=> $results{$b} } keys %results;
+
+ print join("\n",map { "$_\t $results{$_}"; } @results),"\n" if $opt_v;
+ my $a = $results{$results[0]};
+
+ my @answers=(shift(@results));
+ while (@results && $results{$results[0]} < ($opt_u *$a)) {
+ @answers=(@answers,shift(@results));
+ }
+ if (@answers > $opt_a) {
+ print "I don't know; " .
+ "Perhaps this is a language I haven't seen before?\n";
+ } else {
+ print join(" or ", @answers), "\n";
+ }
+}
+
+# first and only argument is reference to hash.
+# this hash is filled, and a sorted list (opt_n elements)
+# is returned.
+sub input {
+ my $read="";
+ if ($opt_i) {
+ while(<>) {
+ if ($. == $opt_i) {
+ return $read . $_;
+ }
+ $read = $read . $_;
+ }
+ return $read;
+ } else {
+ local $/; # so it doesn't affect $/ elsewhere
+ undef $/;
+ $read = <>; # swallow input.
+ $read || die "determining the language of an empty file is hard...\n";
+ return $read;
+ }
+}
+
+
+sub create_lm {
+ my $t1 = new Benchmark;
+ my $ngram;
+ ($_,$ngram) = @_; #$ngram contains reference to the hash we build
+ # then add the ngrams found in each word in the hash
+ my $word;
+ foreach $word (split("[$non_word_characters]+")) {
+ $word = "_" . $word . "_";
+ my $len = length($word);
+ my $flen=$len;
+ my $i;
+ for ($i=0;$i<$flen;$i++) {
+ $$ngram{substr($word,$i,5)}++ if $len > 4;
+ $$ngram{substr($word,$i,4)}++ if $len > 3;
+ $$ngram{substr($word,$i,3)}++ if $len > 2;
+ $$ngram{substr($word,$i,2)}++ if $len > 1;
+ $$ngram{substr($word,$i,1)}++;
+ $len--;
+ }
+ }
+ ###print "@{[%$ngram]}";
+ my $t2 = new Benchmark;
+ print STDERR "count_ngrams done (".
+ timestr(timediff($t2, $t1)) .").\n" if $opt_v;
+
+ # as suggested by Karel P. de Vos, k.vos@elsevier.nl, we speed up
+ # sorting by removing singletons
+ map { my $key=$_; if ($$ngram{$key} <= $opt_f)
+ { delete $$ngram{$key}; }; } keys %$ngram;
+ #however I have very bad results for short inputs, this way
+
+
+ # sort the ngrams, and spit out the $opt_t frequent ones.
+ # adding `or $a cmp $b' in the sort block makes sorting five
+ # times slower..., although it would be somewhat nicer (unique result)
+ my @sorted = sort { $$ngram{$b} <=> $$ngram{$a} } keys %$ngram;
+ splice(@sorted,$opt_t) if (@sorted > $opt_t);
+ print STDERR "sorting done (" .
+ timestr(timediff(new Benchmark, $t2)) .
+ ").\n" if $opt_v;
+ return @sorted;
+}
diff --git a/bin/text_cat/version b/bin/text_cat/version
new file mode 100644
index 000000000..e6ba9d571
--- /dev/null
+++ b/bin/text_cat/version
@@ -0,0 +1,2 @@
+1.10
+
diff --git a/bin/ui-rules-enforcer.py b/bin/ui-rules-enforcer.py
new file mode 100755
index 000000000..8c222793d
--- /dev/null
+++ b/bin/ui-rules-enforcer.py
@@ -0,0 +1,657 @@
+#!/bin/python
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# ui-rules-enforcer enforces the .ui rules and properties used by LibreOffice
+# mostly the deprecations of
+# https://developer.gnome.org/gtk4/stable/gtk-migrating-3-to-4.html
+# and a few other home cooked rules
+
+# for any existing .ui this should parse it and overwrite it with the same content
+# e.g. for a in `git ls-files "*.ui"`; do bin/ui-rules-enforcer.py $a; done
+
+import lxml.etree as etree
+import sys
+
+def add_truncate_multiline(current):
+ use_truncate_multiline = False
+ istarget = current.get('class') == "GtkEntry" or current.get('class') == "GtkSpinButton"
+ insertpos = 0
+ for child in current:
+ add_truncate_multiline(child)
+ insertpos = insertpos + 1;
+ if not istarget:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "truncate_multiline" or attributes.get("name") == "truncate-multiline":
+ use_truncate_multiline = True
+
+ if istarget and not use_truncate_multiline:
+ truncate_multiline = etree.Element("property")
+ attributes = truncate_multiline.attrib
+ attributes["name"] = "truncate-multiline"
+ truncate_multiline.text = "True"
+ current.insert(insertpos - 1, truncate_multiline)
+
+def do_replace_button_use_stock(current, use_stock, use_underline, label, insertpos):
+ if not use_underline:
+ underline = etree.Element("property")
+ attributes = underline.attrib
+ attributes["name"] = "use-underline"
+ underline.text = "True"
+ current.insert(insertpos - 1, underline)
+ current.remove(use_stock)
+ attributes = label.attrib
+ attributes["translatable"] = "yes"
+ attributes["context"] = "stock"
+ if label.text == 'gtk-add':
+ label.text = "_Add"
+ elif label.text == 'gtk-apply':
+ label.text = "_Apply"
+ elif label.text == 'gtk-cancel':
+ label.text = "_Cancel"
+ elif label.text == 'gtk-close':
+ label.text = "_Close"
+ elif label.text == 'gtk-delete':
+ label.text = "_Delete"
+ elif label.text == 'gtk-edit':
+ label.text = "_Edit"
+ elif label.text == 'gtk-help':
+ label.text = "_Help"
+ elif label.text == 'gtk-new':
+ label.text = "_New"
+ elif label.text == 'gtk-no':
+ label.text = "_No"
+ elif label.text == 'gtk-ok':
+ label.text = "_OK"
+ elif label.text == 'gtk-remove':
+ label.text = "_Remove"
+ elif label.text == 'gtk-revert-to-saved':
+ label.text = "_Reset"
+ elif label.text == 'gtk-yes':
+ label.text = "_Yes"
+ else:
+ raise Exception(sys.argv[1] + ': unknown label', label.text)
+
+def replace_button_use_stock(current):
+ use_underline = False
+ use_stock = None
+ label = None
+ isbutton = current.get('class') == "GtkButton"
+ insertpos = 0
+ for child in current:
+ replace_button_use_stock(child)
+ insertpos = insertpos + 1;
+ if not isbutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "use_underline" or attributes.get("name") == "use-underline":
+ use_underline = True
+ if attributes.get("name") == "use_stock" or attributes.get("name") == "use-stock":
+ use_stock = child
+ if attributes.get("name") == "label":
+ label = child
+
+ if isbutton and use_stock != None:
+ do_replace_button_use_stock(current, use_stock, use_underline, label, insertpos)
+
+def do_replace_image_stock(current, stock):
+ attributes = stock.attrib
+ attributes["name"] = "icon-name"
+ if stock.text == 'gtk-add':
+ stock.text = "list-add"
+ elif stock.text == 'gtk-remove':
+ stock.text = "list-remove"
+ elif stock.text == 'gtk-paste':
+ stock.text = "edit-paste"
+ elif stock.text == 'gtk-index':
+ stock.text = "vcl/res/index.png"
+ elif stock.text == 'gtk-refresh':
+ stock.text = "view-refresh"
+ elif stock.text == 'gtk-dialog-error':
+ stock.text = "dialog-error"
+ elif stock.text == 'gtk-apply':
+ stock.text = "sw/res/sc20558.png"
+ elif stock.text == 'gtk-missing-image':
+ stock.text = "missing-image"
+ elif stock.text == 'gtk-copy':
+ stock.text = "edit-copy"
+ elif stock.text == 'gtk-go-back':
+ stock.text = "go-previous"
+ elif stock.text == 'gtk-go-forward':
+ stock.text = "go-next"
+ elif stock.text == 'gtk-go-down':
+ stock.text = "go-down"
+ elif stock.text == 'gtk-go-up':
+ stock.text = "go-up"
+ elif stock.text == 'gtk-goto-first':
+ stock.text = "go-first"
+ elif stock.text == 'gtk-goto-last':
+ stock.text = "go-last"
+ elif stock.text == 'gtk-new':
+ stock.text = "document-new"
+ elif stock.text == 'gtk-open':
+ stock.text = "document-open"
+ elif stock.text == 'gtk-media-stop':
+ stock.text = "media-playback-stop"
+ elif stock.text == 'gtk-media-play':
+ stock.text = "media-playback-start"
+ elif stock.text == 'gtk-media-next':
+ stock.text = "media-skip-forward"
+ elif stock.text == 'gtk-media-previous':
+ stock.text = "media-skip-backward"
+ elif stock.text == 'gtk-close':
+ stock.text = "window-close"
+ elif stock.text == 'gtk-help':
+ stock.text = "help-browser"
+ else:
+ raise Exception(sys.argv[1] + ': unknown stock name', stock.text)
+
+def replace_image_stock(current):
+ stock = None
+ isimage = current.get('class') == "GtkImage"
+ for child in current:
+ replace_image_stock(child)
+ if not isimage:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "stock":
+ stock = child
+
+ if isimage and stock != None:
+ do_replace_image_stock(current, stock)
+
+def remove_check_button_align(current):
+ xalign = None
+ yalign = None
+ ischeckorradiobutton = current.get('class') == "GtkCheckButton" or current.get('class') == "GtkRadioButton"
+ for child in current:
+ remove_check_button_align(child)
+ if not ischeckorradiobutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "xalign":
+ xalign = child
+ if attributes.get("name") == "yalign":
+ yalign = child
+
+ if ischeckorradiobutton:
+ if xalign != None:
+ if xalign.text != "0":
+ raise Exception(sys.argv[1] + ': non-default xalign', xalign.text)
+ current.remove(xalign)
+ if yalign != None:
+ if yalign.text != "0.5":
+ raise Exception(sys.argv[1] + ': non-default yalign', yalign.text)
+ current.remove(yalign)
+
+def remove_check_button_relief(current):
+ relief = None
+ ischeckorradiobutton = current.get('class') == "GtkCheckButton" or current.get('class') == "GtkRadioButton"
+ for child in current:
+ remove_check_button_relief(child)
+ if not ischeckorradiobutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "relief":
+ relief = child
+
+ if ischeckorradiobutton:
+ if relief != None:
+ current.remove(relief)
+
+def remove_check_button_image_position(current):
+ image_position = None
+ ischeckorradiobutton = current.get('class') == "GtkCheckButton" or current.get('class') == "GtkRadioButton"
+ for child in current:
+ remove_check_button_image_position(child)
+ if not ischeckorradiobutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "image_position" or attributes.get("name") == "image-position":
+ image_position = child
+
+ if ischeckorradiobutton:
+ if image_position != None:
+ current.remove(image_position)
+
+def remove_spin_button_input_purpose(current):
+ input_purpose = None
+ isspinbutton = current.get('class') == "GtkSpinButton"
+ for child in current:
+ remove_spin_button_input_purpose(child)
+ if not isspinbutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "input_purpose" or attributes.get("name") == "input-purpose":
+ input_purpose = child
+
+ if isspinbutton:
+ if input_purpose != None:
+ current.remove(input_purpose)
+
+def remove_caps_lock_warning(current):
+ caps_lock_warning = None
+ iscandidate = current.get('class') == "GtkSpinButton" or current.get('class') == "GtkEntry"
+ for child in current:
+ remove_caps_lock_warning(child)
+ if not iscandidate:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "caps_lock_warning" or attributes.get("name") == "caps-lock-warning":
+ caps_lock_warning = child
+
+ if iscandidate:
+ if caps_lock_warning != None:
+ current.remove(caps_lock_warning)
+
+def remove_spin_button_max_length(current):
+ max_length = None
+ isspinbutton = current.get('class') == "GtkSpinButton"
+ for child in current:
+ remove_spin_button_max_length(child)
+ if not isspinbutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "max_length" or attributes.get("name") == "max-length":
+ max_length = child
+
+ if isspinbutton:
+ if max_length != None:
+ current.remove(max_length)
+
+def remove_entry_shadow_type(current):
+ shadow_type = None
+ isentry = current.get('class') == "GtkEntry"
+ for child in current:
+ remove_entry_shadow_type(child)
+ if not isentry:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "shadow_type" or attributes.get("name") == "shadow-type":
+ shadow_type = child
+
+ if isentry:
+ if shadow_type!= None:
+ current.remove(shadow_type)
+
+def remove_label_pad(current):
+ xpad = None
+ ypad = None
+ islabel = current.get('class') == "GtkLabel"
+ for child in current:
+ remove_label_pad(child)
+ if not islabel:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "xpad":
+ xpad = child
+ elif attributes.get("name") == "ypad":
+ ypad = child
+
+ if xpad != None:
+ current.remove(xpad)
+ if ypad != None:
+ current.remove(ypad)
+
+def remove_label_angle(current):
+ angle = None
+ islabel = current.get('class') == "GtkLabel"
+ for child in current:
+ remove_label_angle(child)
+ if not islabel:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "angle":
+ angle = child
+
+ if angle != None:
+ current.remove(angle)
+
+def remove_track_visited_links(current):
+ track_visited_links = None
+ islabel = current.get('class') == "GtkLabel"
+ for child in current:
+ remove_track_visited_links(child)
+ if not islabel:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "track_visited_links" or attributes.get("name") == "track-visited-links":
+ track_visited_links = child
+
+ if track_visited_links != None:
+ current.remove(track_visited_links)
+
+def remove_toolbutton_focus(current):
+ can_focus = None
+ classname = current.get('class');
+ istoolbutton = classname and classname.endswith("ToolButton");
+ for child in current:
+ remove_toolbutton_focus(child)
+ if not istoolbutton:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "can_focus" or attributes.get("name") == "can-focus":
+ can_focus = child
+
+ if can_focus != None:
+ current.remove(can_focus)
+
+def remove_double_buffered(current):
+ double_buffered = None
+ for child in current:
+ remove_double_buffered(child)
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "double_buffered" or attributes.get("name") == "double-buffered":
+ double_buffered = child
+
+ if double_buffered != None:
+ current.remove(double_buffered)
+
+def remove_label_yalign(current):
+ label_yalign = None
+ for child in current:
+ remove_label_yalign(child)
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "label_yalign" or attributes.get("name") == "label-yalign":
+ label_yalign = child
+
+ if label_yalign != None:
+ current.remove(label_yalign)
+
+def remove_skip_pager_hint(current):
+ skip_pager_hint = None
+ for child in current:
+ remove_skip_pager_hint(child)
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "skip_pager_hint" or attributes.get("name") == "skip-pager-hint":
+ skip_pager_hint = child
+
+ if skip_pager_hint != None:
+ current.remove(skip_pager_hint)
+
+def remove_gravity(current):
+ gravity = None
+ for child in current:
+ remove_gravity(child)
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "gravity":
+ gravity = child
+
+ if gravity != None:
+ current.remove(gravity)
+
+def remove_expander_label_fill(current):
+ label_fill = None
+ isexpander = current.get('class') == "GtkExpander"
+ for child in current:
+ remove_expander_label_fill(child)
+ if not isexpander:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "label_fill" or attributes.get("name") == "label-fill":
+ label_fill = child
+
+ if label_fill != None:
+ current.remove(label_fill)
+
+def remove_expander_spacing(current):
+ spacing = None
+ isexpander = current.get('class') == "GtkExpander"
+ for child in current:
+ remove_expander_spacing(child)
+ if not isexpander:
+ continue
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "spacing":
+ spacing = child
+
+ if spacing != None:
+ current.remove(spacing)
+
+def enforce_menubutton_indicator_consistency(current):
+ draw_indicator = None
+ image = None
+ ismenubutton = current.get('class') == "GtkMenuButton"
+ insertpos = 0
+ for child in current:
+ enforce_menubutton_indicator_consistency(child)
+ if not ismenubutton:
+ continue
+ if child.tag == "property":
+ insertpos = insertpos + 1;
+ attributes = child.attrib
+ if attributes.get("name") == "draw_indicator" or attributes.get("name") == "draw-indicator":
+ draw_indicator = child
+ elif attributes.get("name") == "image":
+ image = child
+
+ if ismenubutton:
+ if draw_indicator == None:
+ if image == None:
+ # if there is no draw indicator and no image there should be a draw indicator
+ draw_indicator = etree.Element("property")
+ attributes = draw_indicator.attrib
+ attributes["name"] = "draw-indicator"
+ draw_indicator.text = "True"
+ current.insert(insertpos, draw_indicator)
+ else:
+ # if there is no draw indicator but there is an image that image should be open-menu-symbolic or x-office-calendar
+ for status_elem in tree.xpath("/interface/object[@id='" + image.text + "']/property[@name='icon_name' or @name='icon-name']"):
+ if status_elem.text != 'x-office-calendar':
+ status_elem.text = "open-menu-symbolic"
+
+def enforce_active_in_group_consistency(current):
+ group = None
+ active = None
+ isradiobutton = current.get('class') == "GtkRadioButton"
+ insertpos = 0
+ for child in current:
+ enforce_active_in_group_consistency(child)
+ if not isradiobutton:
+ continue
+ if child.tag == "property":
+ insertpos = insertpos + 1;
+ attributes = child.attrib
+ if attributes.get("name") == "group":
+ group = child
+ if attributes.get("name") == "active":
+ active = child
+
+ if isradiobutton:
+ if active != None and active.text != "True":
+ raise Exception(sys.argv[1] + ': non-standard active value', active.text)
+ if group != None and active != None:
+ # if there is a group then we are not the leader and should not be active
+ current.remove(active)
+ elif group == None and active == None:
+ # if there is no group then we are the leader and should be active
+ active = etree.Element("property")
+ attributes = active.attrib
+ attributes["name"] = "active"
+ active.text = "True"
+ current.insert(insertpos, active)
+
+def enforce_toolbar_can_focus(current):
+ can_focus = None
+ istoolbar = current.get('class') == "GtkToolbar"
+ insertpos = 0
+ for child in current:
+ enforce_toolbar_can_focus(child)
+ if not istoolbar:
+ continue
+ if child.tag == "property":
+ insertpos = insertpos + 1;
+ attributes = child.attrib
+ if attributes.get("name") == "can-focus" or attributes.get("name") == "can_focus":
+ can_focus = child
+
+ if istoolbar:
+ if can_focus == None:
+ can_focus = etree.Element("property")
+ attributes = can_focus.attrib
+ attributes["name"] = "can-focus"
+ can_focus.text = "True"
+ current.insert(insertpos, can_focus)
+ else:
+ can_focus.text = "True"
+
+def enforce_entry_text_column_id_column_for_gtkcombobox(current):
+ entrytextcolumn = None
+ idcolumn = None
+ isgtkcombobox = current.get('class') == "GtkComboBox"
+ insertpos = 0
+ for child in current:
+ enforce_entry_text_column_id_column_for_gtkcombobox(child)
+ if not isgtkcombobox:
+ continue
+ if child.tag == "property":
+ insertpos = insertpos + 1;
+ attributes = child.attrib
+ if attributes.get("name") == "entry_text_column" or attributes.get("name") == "entry-text-column":
+ entrytextcolumn = child
+ if attributes.get("name") == "id_column" or attributes.get("name") == "id-column":
+ idcolumn = child
+
+ if isgtkcombobox:
+ if entrytextcolumn != None and entrytextcolumn.text != "0":
+ raise Exception(sys.argv[1] + ': non-standard entry_text_column value', entrytextcolumn.text)
+ if idcolumn != None and idcolumn.text != "1":
+ raise Exception(sys.argv[1] + ': non-standard id_column value', idcolumn.text)
+ if entrytextcolumn == None:
+ # if there is no entry_text_column, create one
+ entrytextcolumn = etree.Element("property")
+ attributes = entrytextcolumn.attrib
+ attributes["name"] = "entry-text-column"
+ entrytextcolumn.text = "0"
+ current.insert(insertpos, entrytextcolumn)
+ insertpos = insertpos + 1;
+ if idcolumn == None:
+ # if there is no id_column, create one
+ idcolumn = etree.Element("property")
+ attributes = idcolumn.attrib
+ attributes["name"] = "id-column"
+ idcolumn.text = "1"
+ current.insert(insertpos, idcolumn)
+
+def enforce_button_always_show_image(current):
+ image = None
+ always_show_image = None
+ isbutton = current.get('class') == "GtkButton"
+ insertpos = 0
+ for child in current:
+ enforce_button_always_show_image(child)
+ if not isbutton:
+ continue
+ if child.tag == "property":
+ insertpos = insertpos + 1;
+ attributes = child.attrib
+ if attributes.get("name") == "always_show_image" or attributes.get("name") == "always-show-image":
+ always_show_image = child
+ elif attributes.get("name") == "image":
+ image = child
+
+ if isbutton and image is not None:
+ if always_show_image == None:
+ always_show_image = etree.Element("property")
+ attributes = always_show_image.attrib
+ attributes["name"] = "always-show-image"
+ always_show_image.text = "True"
+ current.insert(insertpos, always_show_image)
+ else:
+ always_show_image.text = "True"
+
+def enforce_noshared_adjustments(current, adjustments):
+ for child in current:
+ enforce_noshared_adjustments(child, adjustments)
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "adjustment":
+ if child.text in adjustments:
+ raise Exception(sys.argv[1] + ': adjustment used more than once', child.text)
+ adjustments.add(child.text)
+
+def enforce_no_productname_in_accessible_description(current, adjustments):
+ for child in current:
+ enforce_no_productname_in_accessible_description(child, adjustments)
+ if child.tag == "property":
+ attributes = child.attrib
+ if attributes.get("name") == "AtkObject::accessible-description":
+ if "%PRODUCTNAME" in child.text:
+ raise Exception(sys.argv[1] + ': %PRODUCTNAME used in accessible-description:' , child.text)
+
+with open(sys.argv[1], encoding="utf-8") as f:
+ header = f.readline()
+ f.seek(0)
+ # remove_blank_text so pretty-printed input doesn't disrupt pretty-printed
+ # output if nodes are added or removed
+ parser = etree.XMLParser(remove_blank_text=True)
+ tree = etree.parse(f, parser)
+ # make sure <property name="label" translatable="no"></property> stays like that
+ # and doesn't change to <property name="label" translatable="no"/>
+ for status_elem in tree.xpath("//property[@name='label' and string() = '']"):
+ status_elem.text = ""
+ root = tree.getroot()
+
+# do some targeted conversion here
+# tdf#138848 Copy-and-Paste in input box should not append an ENTER character
+if not sys.argv[1].endswith('/multiline.ui'): # let this one alone not truncate multiline pastes
+ add_truncate_multiline(root)
+replace_button_use_stock(root)
+replace_image_stock(root)
+remove_check_button_align(root)
+remove_check_button_relief(root)
+remove_check_button_image_position(root)
+remove_spin_button_input_purpose(root)
+remove_caps_lock_warning(root)
+remove_spin_button_max_length(root)
+remove_track_visited_links(root)
+remove_label_pad(root)
+remove_label_angle(root)
+remove_expander_label_fill(root)
+remove_expander_spacing(root)
+enforce_menubutton_indicator_consistency(root)
+enforce_active_in_group_consistency(root)
+enforce_entry_text_column_id_column_for_gtkcombobox(root)
+remove_entry_shadow_type(root)
+remove_double_buffered(root)
+remove_label_yalign(root)
+remove_skip_pager_hint(root)
+remove_gravity(root)
+remove_toolbutton_focus(root)
+enforce_toolbar_can_focus(root)
+enforce_button_always_show_image(root)
+enforce_noshared_adjustments(root, set())
+enforce_no_productname_in_accessible_description(root, set())
+
+with open(sys.argv[1], 'wb') as o:
+ # without encoding='unicode' (and the matching encode("utf8")) we get &#XXXX replacements for non-ascii characters
+ # which we don't want to see changed in the output
+ o.write(etree.tostring(tree, pretty_print=True, method='xml', encoding='unicode', doctype=header[0:-1]).encode("utf8"))
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/ui-translatable.sh b/bin/ui-translatable.sh
new file mode 100755
index 000000000..e3240826b
--- /dev/null
+++ b/bin/ui-translatable.sh
@@ -0,0 +1,22 @@
+#!/usr/bin/env bash
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This script prints lines from .ui files, where the translatable="yes" attribute
+# was not set -- presumably by mistake. It prints a few false positives though.
+
+for i in `git ls-files *.ui`; do
+ for j in "label" "title" "text" "format" "copyright" "comments" "preview_text" "tooltip" "message" ; do
+ grep -s "\<property name\=\"$j\"" $i | grep -v "translatable\=\"yes" | grep -v "translatable\=\"no" | grep -v gtk\- | grep ">.*[A-Za-z].*<";
+ if [ "$?" -eq 0 ] ;
+ then echo "Source: $i^";
+ fi
+ done
+ grep -s "<item" $i | grep -v "translatable\=\"yes" | grep -v "translatable\=\"no" | grep ">.*[A-Za-z].*<";
+ if [ "$?" -eq 0 ] ;
+ then echo "Source: $i^";
+ fi
+done
diff --git a/bin/unpack-sources b/bin/unpack-sources
new file mode 100755
index 000000000..7221696e1
--- /dev/null
+++ b/bin/unpack-sources
@@ -0,0 +1,91 @@
+#!/usr/bin/env bash
+
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+usage()
+{
+ echo "Helper script to unpack the LO source tarballs"
+ echo
+ echo "Usage: ${0##*/} [--help] start-dir tarball..."
+ echo
+ echo "Options:"
+ echo
+ echo " --help this help"
+ echo " start-dir path where the sources are unpacked (bootstrap directory)"
+ echo " tarball list of LO source tarball that need to be unpacked"
+}
+
+start_dir=
+tarballs=
+
+while test -n "$1" ; do
+ case "$1" in
+ --help)
+ usage
+ exit 0;
+ ;;
+ --download)
+ download="yes"
+ ;;
+ -*)
+ echo "Error: unknown option: $1"
+ exit 1;
+ ;;
+ *)
+ if test -z "$start_dir" ; then
+ start_dir="$1"
+ else
+ tarballs="$tarballs $1"
+ fi
+ ;;
+ esac
+ shift
+done
+
+if test -z "$start_dir" ; then
+ echo "Error: Please, define where to unpack sources, try --help"
+fi
+
+if ! test -f $start_dir/Repository.mk ; then
+ echo "Error: $start_dir is not a valid LibreOffice core source directory"
+ exit 1;
+fi
+
+if test ! -f $start_dir/sources.ver -o -d $start_dir/.git ; then
+ echo "Warning: sources are from git and not from tarball"
+ echo " Do nothing."
+ exit 0;
+fi
+
+lo_src_dir="$start_dir/src"
+mkdir -p "$lo_src_dir"
+
+for tarball in $tarballs ; do
+ tarname=`basename $tarball | sed -e "s/\.tar\..*//"`
+ if test -d $lo_src_dir/$tarname ; then
+ echo "Warning: $lo_src_dir/$tarname already exists => skipping"
+ continue;
+ fi
+
+ echo "Unpacking $tarname..."
+ echo mkdir -p "$lo_src_dir/$tarname"
+ if ! mkdir -p "$lo_src_dir/$tarname" ; then
+ echo "Error: could not create directory $lo_src_dir/$tarname"
+ fi
+ echo tar -xf "$tarball" -C "$lo_src_dir/$tarname" --strip-components=1
+ if ! tar -xf "$tarball" -C "$lo_src_dir/$tarname" --strip-components=1; then
+ echo "Error: could not unpack $tarname"
+ exit 1
+ fi
+
+ # create symlinks for module directories; ignore git-hooks directory
+ while read -r dir; do
+ ln -sf "src/${tarname}/$(basename "$dir")" "$start_dir"
+ done < <(find "$lo_src_dir/$tarname" -mindepth 1 -maxdepth 1 -type d -path $lo_src_dir/$tarname/git-hooks)
+done
diff --git a/bin/update/common.sh b/bin/update/common.sh
new file mode 100644
index 000000000..dcdbea8bb
--- /dev/null
+++ b/bin/update/common.sh
@@ -0,0 +1,222 @@
+#!/usr/bin/env bash
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# Code shared by update packaging scripts.
+# Author: Darin Fisher
+#
+
+# -----------------------------------------------------------------------------
+# By default just assume that these tools exist on our path
+MAR=${MAR:-mar}
+BZIP2=${BZIP2:-bzip2}
+MBSDIFF=${MBSDIFF:-mbsdiff}
+
+# -----------------------------------------------------------------------------
+# Helper routines
+
+notice() {
+ echo "$*" 1>&2
+}
+
+get_file_size() {
+ info=($(ls -ln "$1"))
+ echo ${info[4]}
+}
+
+check_externals() {
+
+ # check whether we can call the mar executable
+ "$MAR" --version > /dev/null 2>&1
+ if [ $? != 0 ]; then
+ notice "Could not find a valid mar executable in the path or in the MAR environment variable"
+ exit 1
+ fi
+
+ # check whether we can access the bzip2 executable
+ "$BZIP2" --help > /dev/null 2>&1
+ if [ $? != 0 ]; then
+ notice "Could not find a valid bzip2 executable in the PATH or in the BZIP2 environment variable"
+ exit 1
+ fi
+}
+
+copy_perm() {
+ reference="$1"
+ target="$2"
+
+ if [ -x "$reference" ]; then
+ chmod 0755 "$target"
+ else
+ chmod 0644 "$target"
+ fi
+}
+
+make_add_instruction() {
+ f="$1"
+ filev2="$2"
+ # The third param will be an empty string when a file add instruction is only
+ # needed in the version 2 manifest. This only happens when the file has an
+ # add-if-not instruction in the version 3 manifest. This is due to the
+ # precomplete file prior to the version 3 manifest having a remove instruction
+ # for this file so the file is removed before applying a complete update.
+ filev3="$3"
+
+ # Used to log to the console
+ if [ $4 ]; then
+ forced=" (forced)"
+ else
+ forced=
+ fi
+
+ is_extension=$(echo "$f" | grep -c 'distribution/extensions/.*/')
+ if [ $is_extension = "1" ]; then
+ # Use the subdirectory of the extensions folder as the file to test
+ # before performing this add instruction.
+ testdir=$(echo "$f" | sed 's/\(.*distribution\/extensions\/[^\/]*\)\/.*/\1/')
+ notice " add-if \"$testdir\" \"$f\""
+ echo "add-if \"$testdir\" \"$f\"" >> $filev2
+ if [ ! $filev3 = "" ]; then
+ echo "add-if \"$testdir\" \"$f\"" >> $filev3
+ fi
+ else
+ notice " add \"$f\"$forced"
+ echo "add \"$f\"" >> $filev2
+ if [ ! $filev3 = "" ]; then
+ echo "add \"$f\"" >> $filev3
+ fi
+ fi
+}
+
+check_for_add_if_not_update() {
+ add_if_not_file_chk="$1"
+
+ if [ `basename $add_if_not_file_chk` = "channel-prefs.js" -o \
+ `basename $add_if_not_file_chk` = "update-settings.ini" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+ ## 'false'... because this is bash. Oh yay!
+ return 1;
+}
+
+check_for_add_to_manifestv2() {
+ add_if_not_file_chk="$1"
+
+ if [ `basename $add_if_not_file_chk` = "update-settings.ini" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+ ## 'false'... because this is bash. Oh yay!
+ return 1;
+}
+
+make_add_if_not_instruction() {
+ f="$1"
+ filev3="$2"
+
+ notice " add-if-not \"$f\" \"$f\""
+ echo "add-if-not \"$f\" \"$f\"" >> $filev3
+}
+
+make_patch_instruction() {
+ f="$1"
+ filev2="$2"
+ filev3="$3"
+
+ is_extension=$(echo "$f" | grep -c 'distribution/extensions/.*/')
+ if [ $is_extension = "1" ]; then
+ # Use the subdirectory of the extensions folder as the file to test
+ # before performing this add instruction.
+ testdir=$(echo "$f" | sed 's/\(.*distribution\/extensions\/[^\/]*\)\/.*/\1/')
+ notice " patch-if \"$testdir\" \"$f.patch\" \"$f\""
+ echo "patch-if \"$testdir\" \"$f.patch\" \"$f\"" >> $filev2
+ echo "patch-if \"$testdir\" \"$f.patch\" \"$f\"" >> $filev3
+ else
+ notice " patch \"$f.patch\" \"$f\""
+ echo "patch \"$f.patch\" \"$f\"" >> $filev2
+ echo "patch \"$f.patch\" \"$f\"" >> $filev3
+ fi
+}
+
+append_remove_instructions() {
+ dir="$1"
+ filev2="$2"
+ filev3="$3"
+
+ if [ -f "$dir/removed-files" ]; then
+ listfile="$dir/removed-files"
+ elif [ -f "$dir/Contents/Resources/removed-files" ]; then
+ listfile="$dir/Contents/Resources/removed-files"
+ fi
+ if [ -n "$listfile" ]; then
+ # Map spaces to pipes so that we correctly handle filenames with spaces.
+ files=($(cat "$listfile" | tr " " "|" | sort -r))
+ num_files=${#files[*]}
+ for ((i=0; $i<$num_files; i=$i+1)); do
+ # Map pipes back to whitespace and remove carriage returns
+ f=$(echo ${files[$i]} | tr "|" " " | tr -d '\r')
+ # Trim whitespace
+ f=$(echo $f)
+ # Exclude blank lines.
+ if [ -n "$f" ]; then
+ # Exclude comments
+ if [ ! $(echo "$f" | grep -c '^#') = 1 ]; then
+ if [ $(echo "$f" | grep -c '\/$') = 1 ]; then
+ notice " rmdir \"$f\""
+ echo "rmdir \"$f\"" >> $filev2
+ echo "rmdir \"$f\"" >> $filev3
+ elif [ $(echo "$f" | grep -c '\/\*$') = 1 ]; then
+ # Remove the *
+ f=$(echo "$f" | sed -e 's:\*$::')
+ notice " rmrfdir \"$f\""
+ echo "rmrfdir \"$f\"" >> $filev2
+ echo "rmrfdir \"$f\"" >> $filev3
+ else
+ notice " remove \"$f\""
+ echo "remove \"$f\"" >> $filev2
+ echo "remove \"$f\"" >> $filev3
+ fi
+ fi
+ fi
+ done
+ fi
+}
+
+# List all files in the current directory, stripping leading "./"
+# Pass a variable name and it will be filled as an array.
+list_files() {
+ count=0
+
+ find . -type f \
+ ! -name "update.manifest" \
+ ! -name "updatev2.manifest" \
+ ! -name "updatev3.manifest" \
+ ! -name "temp-dirlist" \
+ ! -name "temp-filelist" \
+ | sed 's/\.\/\(.*\)/\1/' \
+ | sort -r > "temp-filelist"
+ while read file; do
+ eval "${1}[$count]=\"$file\""
+ (( count++ ))
+ done < "temp-filelist"
+ rm "temp-filelist"
+}
+
+# List all directories in the current directory, stripping leading "./"
+list_dirs() {
+ count=0
+
+ find . -type d \
+ ! -name "." \
+ ! -name ".." \
+ | sed 's/\.\/\(.*\)/\1/' \
+ | sort -r > "temp-dirlist"
+ while read dir; do
+ eval "${1}[$count]=\"$dir\""
+ (( count++ ))
+ done < "temp-dirlist"
+ rm "temp-dirlist"
+}
diff --git a/bin/update/config.py b/bin/update/config.py
new file mode 100644
index 000000000..0bc60a07f
--- /dev/null
+++ b/bin/update/config.py
@@ -0,0 +1,28 @@
+
+import configparser
+import os
+
+class Config(object):
+
+ def __init__(self):
+ self.certificate_path = None
+ self.certificate_name = None
+ self.channel = None
+ self.base_url = None
+ self.upload_url = None
+ self.server_url = None
+
+def parse_config(config_file):
+ config = configparser.ConfigParser()
+ config.read(os.path.expanduser(config_file))
+
+ data = Config()
+ updater_data = config['Updater']
+ data.base_url = updater_data['base-url']
+ data.certificate_name = updater_data['certificate-name']
+ data.certificate_path = updater_data['certificate-path']
+ data.channel = updater_data['channel']
+ data.upload_url = updater_data['upload-url']
+ data.server_url = updater_data["ServerURL"]
+
+ return data
diff --git a/bin/update/create_build_config.py b/bin/update/create_build_config.py
new file mode 100755
index 000000000..7cc8ac4be
--- /dev/null
+++ b/bin/update/create_build_config.py
@@ -0,0 +1,60 @@
+#! /usr/bin/env python3
+
+import json
+import sys
+import os
+
+from config import parse_config
+
+from tools import replace_variables_in_string
+
+def update_all_url_entries(data, **kwargs):
+ data['complete']['url'] = replace_variables_in_string(data['complete']['url'], **kwargs)
+
+ if sys.platform != "cygwin":
+ for language in data['languages']:
+ language['complete']['url'] = replace_variables_in_string(language['complete']['url'], **kwargs)
+
+ if 'partials' in data:
+ for partial in data['partials']:
+ partial['file']['url'] = replace_variables_in_string(partial['file']['url'], **kwargs)
+
+ if sys.platform == "cygwin":
+ continue
+
+ for lang, lang_file in partial['languages'].items():
+ lang_file['url'] = replace_variables_in_string(lang_file['url'], **kwargs)
+
+def main(argv):
+ if len(argv) < 7:
+ print("Usage: create_build_config.py $PRODUCTNAME $VERSION $BUILDID $PLATFORM $TARGETDIR $UPDATE_CONFIG")
+ sys.exit(1)
+
+ config = parse_config(argv[6])
+
+ data = { 'productName' : argv[1],
+ 'version' : argv[2],
+ 'buildNumber' : argv[3],
+ 'updateChannel' : config.channel,
+ 'platform' : argv[4]
+ }
+
+ extra_data_files = ['complete_info.json', 'partial_update_info.json']
+ if sys.platform != "cygwin":
+ extra_data_files.append('complete_lang_info.json')
+
+ for extra_file in extra_data_files:
+ extra_file_path = os.path.join(argv[5], extra_file)
+ if not os.path.exists(extra_file_path):
+ continue
+ with open(extra_file_path, "r") as f:
+ extra_data = json.load(f)
+ data.update(extra_data)
+
+ update_all_url_entries(data, channel=config.channel, platform=argv[4], buildid=argv[3], version=argv[2])
+
+ with open(os.path.join(argv[5], "build_config.json"), "w") as f:
+ json.dump(data, f, indent=4)
+
+if __name__ == "__main__":
+ main(sys.argv)
diff --git a/bin/update/create_full_mar.py b/bin/update/create_full_mar.py
new file mode 100755
index 000000000..48686be21
--- /dev/null
+++ b/bin/update/create_full_mar.py
@@ -0,0 +1,54 @@
+#!/usr/bin/env python3
+
+import sys
+import os
+import subprocess
+import json
+
+from tools import uncompress_file_to_dir, get_file_info, make_complete_mar_name
+from config import parse_config
+from signing import sign_mar_file
+from path import UpdaterPath, convert_to_unix, convert_to_native
+
+current_dir_path = os.path.dirname(os.path.realpath(convert_to_unix(__file__)))
+
+def main():
+ if len(sys.argv) < 5:
+ print("Usage: create_full_mar_for_languages.py $PRODUCTNAME $WORKDIR $FILENAMEPREFIX $UPDATE_CONFIG")
+ sys.exit(1)
+
+ update_config = sys.argv[4]
+ filename_prefix = sys.argv[3]
+ workdir = sys.argv[2]
+ product_name = sys.argv[1]
+
+ if len(update_config) == 0:
+ print("missing update config")
+ sys.exit(1)
+
+ update_path = UpdaterPath(workdir)
+ update_path.ensure_dir_exist()
+
+ target_dir = update_path.get_update_dir()
+ temp_dir = update_path.get_current_build_dir()
+
+ config = parse_config(update_config)
+
+ tar_dir = os.path.join(update_path.get_workdir(), "installation", product_name, "archive", "install", "en-US")
+ tar_file = os.path.join(tar_dir, os.listdir(tar_dir)[0])
+
+ uncompress_dir = uncompress_file_to_dir(tar_file, temp_dir)
+
+ mar_file = make_complete_mar_name(target_dir, filename_prefix)
+ path = os.path.join(current_dir_path, 'make_full_update.sh')
+ subprocess.call([path, convert_to_native(mar_file), convert_to_native(uncompress_dir)])
+
+ sign_mar_file(target_dir, config, mar_file, filename_prefix)
+
+ file_info = { 'complete' : get_file_info(mar_file, config.base_url) }
+
+ with open(os.path.join(target_dir, 'complete_info.json'), "w") as complete_info_file:
+ json.dump(file_info, complete_info_file, indent = 4)
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/update/create_full_mar_for_languages.py b/bin/update/create_full_mar_for_languages.py
new file mode 100755
index 000000000..039521dd1
--- /dev/null
+++ b/bin/update/create_full_mar_for_languages.py
@@ -0,0 +1,66 @@
+#!/usr/bin/env python3
+
+import sys
+import os
+import subprocess
+import json
+
+from tools import uncompress_file_to_dir, get_file_info
+
+from config import parse_config
+from path import UpdaterPath
+from signing import sign_mar_file
+
+current_dir_path = os.path.dirname(os.path.realpath(__file__))
+
+def make_complete_mar_name(target_dir, filename_prefix, language):
+ filename = filename_prefix + "_" + language + "_complete_langpack.mar"
+ return os.path.join(target_dir, filename)
+
+def create_lang_infos(mar_file_name, language, url):
+ data = {'lang' : language,
+ 'complete' : get_file_info(mar_file_name, url)
+ }
+ return data
+
+def main():
+ if len(sys.argv) < 5:
+ print("Usage: create_full_mar_for_languages.py $PRODUCTNAME $WORKDIR $TARGETDIR $TEMPDIR $FILENAMEPREFIX $UPDATE_CONFIG")
+ sys.exit(1)
+
+ update_config = sys.argv[4]
+ filename_prefix = sys.argv[3]
+ workdir = sys.argv[2]
+ product_name = sys.argv[1]
+
+ updater_path = UpdaterPath(workdir)
+ target_dir = updater_path.get_update_dir()
+ temp_dir = updater_path.get_language_dir()
+
+ config = parse_config(update_config)
+
+ language_pack_dir = os.path.join(workdir, "installation", product_name + "_languagepack", "archive", "install")
+ language_packs = os.listdir(language_pack_dir)
+ lang_infos = []
+ for language in language_packs:
+ if language == 'log':
+ continue
+
+ language_dir = os.path.join(language_pack_dir, language)
+ language_file = os.path.join(language_dir, os.listdir(language_dir)[0])
+
+ directory = uncompress_file_to_dir(language_file, os.path.join(temp_dir, language))
+
+ mar_file_name = make_complete_mar_name(target_dir, filename_prefix, language)
+
+ subprocess.call([os.path.join(current_dir_path, 'make_full_update.sh'), mar_file_name, directory])
+
+ sign_mar_file(target_dir, config, mar_file_name, filename_prefix)
+
+ lang_infos.append(create_lang_infos(mar_file_name, language, config.base_url))
+
+ with open(os.path.join(target_dir, "complete_lang_info.json"), "w") as language_info_file:
+ json.dump({'languages' : lang_infos}, language_info_file, indent=4)
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/update/create_partial_update.py b/bin/update/create_partial_update.py
new file mode 100755
index 000000000..9412bcd6e
--- /dev/null
+++ b/bin/update/create_partial_update.py
@@ -0,0 +1,160 @@
+#!/usr/bin/env python3
+import requests
+import json
+import sys
+import hashlib
+import os
+import subprocess
+import errno
+import json
+
+from config import parse_config
+from uncompress_mar import extract_mar
+from tools import get_file_info, get_hash
+from signing import sign_mar_file
+
+from path import UpdaterPath, mkdir_p, convert_to_unix, convert_to_native
+
+BUF_SIZE = 1024
+current_dir_path = os.path.dirname(os.path.realpath(convert_to_unix(__file__)))
+
+class InvalidFileException(Exception):
+
+ def __init__(self, *args, **kwargs):
+ super().__init__(self, *args, **kwargs)
+
+def download_file(filepath, url, hash_string):
+ with open(filepath, "wb") as f:
+ response = requests.get(url, stream=True)
+
+ if not response.ok:
+ return
+
+ for block in response.iter_content(1024):
+ f.write(block)
+
+ file_hash = get_hash(filepath)
+
+ if file_hash != hash_string:
+ raise InvalidFileException("file hash does not match for file %s: Expected %s, Got: %s" % (url, hash_string, file_hash))
+
+def handle_language(lang_entries, filedir):
+ mar = os.environ.get('MAR', 'mar')
+ langs = {}
+ for lang, data in lang_entries.items():
+ lang_dir = os.path.join(filedir, lang)
+ lang_file = os.path.join(lang_dir, "lang.mar")
+ mkdir_p(lang_dir)
+ download_file(lang_file , data["url"], data["hash"])
+ dir_path = os.path.join(lang_dir, "lang")
+ mkdir_p(dir_path)
+ extract_mar(lang_file, dir_path)
+ langs[lang] = dir_path
+
+ return langs
+
+def download_mar_for_update_channel_and_platform(config, platform, temp_dir):
+ mar = os.environ.get('MAR', 'mar')
+ base_url = config.server_url + "update/partial-targets/1/"
+ url = base_url + platform + "/" + config.channel
+ r = requests.get(url)
+ if r.status_code != 200:
+ print(r.content)
+ raise Exception("download failed")
+
+ update_info = json.loads(r.content.decode("utf-8"))
+ update_files = update_info['updates']
+ downloaded_updates = {}
+ for update_file in update_files:
+ build = update_file["build"]
+ filedir = os.path.join(temp_dir, build)
+
+ mkdir_p(filedir)
+
+ filepath = filedir + "/complete.mar"
+ url = update_file["update"]["url"]
+ expected_hash = update_file["update"]["hash"]
+ download_file(filepath, url, expected_hash)
+
+ dir_path = os.path.join(filedir, "complete")
+ mkdir_p(dir_path)
+ extract_mar(filepath, dir_path)
+
+ downloaded_updates[build] = {"complete": dir_path}
+
+ langs = handle_language(update_file["languages"], filedir)
+ downloaded_updates[build]["languages"] = langs
+
+ return downloaded_updates
+
+def generate_file_name(current_build_id, old_build_id, mar_name_prefix):
+ name = "%s_from_%s_partial.mar" %(mar_name_prefix, old_build_id)
+ return name
+
+def generate_lang_file_name(current_build_id, old_build_id, mar_name_prefix, lang):
+ name = "%s_%s_from_%s_partial.mar" %(mar_name_prefix, lang, old_build_id)
+ return name
+
+def add_single_dir(path):
+ dir_name = [os.path.join(path, name) for name in os.listdir(path) if os.path.isdir(os.path.join(path, name))]
+ return dir_name[0]
+
+def main():
+ workdir = sys.argv[1]
+
+ updater_path = UpdaterPath(workdir)
+ updater_path.ensure_dir_exist()
+
+ mar_name_prefix = sys.argv[2]
+ update_config = sys.argv[3]
+ platform = sys.argv[4]
+ build_id = sys.argv[5]
+
+ current_build_path = updater_path.get_current_build_dir()
+ mar_dir = updater_path.get_mar_dir()
+ temp_dir = updater_path.get_previous_build_dir()
+ update_dir = updater_path.get_update_dir()
+
+ current_build_path = add_single_dir(current_build_path)
+ if sys.platform == "cygwin":
+ current_build_path = add_single_dir(current_build_path)
+
+ config = parse_config(update_config)
+
+ updates = download_mar_for_update_channel_and_platform(config, platform, temp_dir)
+
+ data = {"partials": []}
+
+ for build, update in updates.items():
+ file_name = generate_file_name(build_id, build, mar_name_prefix)
+ mar_file = os.path.join(update_dir, file_name)
+ subprocess.call([os.path.join(current_dir_path, 'make_incremental_update.sh'), convert_to_native(mar_file), convert_to_native(update["complete"]), convert_to_native(current_build_path)])
+ sign_mar_file(update_dir, config, mar_file, mar_name_prefix)
+
+ partial_info = {"file":get_file_info(mar_file, config.base_url), "from": build, "to": build_id, "languages": {}}
+
+ # on Windows we don't use language packs
+ if sys.platform != "cygwin":
+ for lang, lang_info in update["languages"].items():
+ lang_name = generate_lang_file_name(build_id, build, mar_name_prefix, lang)
+
+ # write the file into the final directory
+ lang_mar_file = os.path.join(update_dir, lang_name)
+
+ # the directory of the old language file is of the form
+ # workdir/mar/language/en-US/LibreOffice_<version>_<os>_archive_langpack_<lang>/
+ language_dir = add_single_dir(os.path.join(mar_dir, "language", lang))
+ subprocess.call([os.path.join(current_dir_path, 'make_incremental_update.sh'), convert_to_native(lang_mar_file), convert_to_native(lang_info), convert_to_native(language_dir)])
+ sign_mar_file(update_dir, config, lang_mar_file, mar_name_prefix)
+
+ # add the partial language info
+ partial_info["languages"][lang] = get_file_info(lang_mar_file, config.base_url)
+
+ data["partials"].append(partial_info)
+
+ with open(os.path.join(update_dir, "partial_update_info.json"), "w") as f:
+ json.dump(data, f)
+
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/update/get_update_channel.py b/bin/update/get_update_channel.py
new file mode 100755
index 000000000..f94507d64
--- /dev/null
+++ b/bin/update/get_update_channel.py
@@ -0,0 +1,23 @@
+#!/usr/bin/python3
+# -*- Mode: python; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import sys
+from config import parse_config
+
+def main():
+ if len(sys.argv) < 2:
+ sys.exit(1)
+
+ update_config = sys.argv[1]
+ config = parse_config(update_config)
+ print(config.channel)
+
+if __name__ == "__main__":
+ main()
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/bin/update/make_full_update.sh b/bin/update/make_full_update.sh
new file mode 100755
index 000000000..4140ecae6
--- /dev/null
+++ b/bin/update/make_full_update.sh
@@ -0,0 +1,122 @@
+#!/usr/bin/env bash
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# This tool generates full update packages for the update system.
+# Author: Darin Fisher
+#
+
+. $(dirname "$0")/common.sh
+
+# -----------------------------------------------------------------------------
+
+print_usage() {
+ notice "Usage: $(basename $0) [OPTIONS] ARCHIVE DIRECTORY"
+}
+
+if [ $# = 0 ]; then
+ print_usage
+ exit 1
+fi
+
+if [ $1 = -h ]; then
+ print_usage
+ notice ""
+ notice "The contents of DIRECTORY will be stored in ARCHIVE."
+ notice ""
+ notice "Options:"
+ notice " -h show this help text"
+ notice ""
+ exit 1
+fi
+
+check_externals
+# -----------------------------------------------------------------------------
+
+archive="$1"
+targetdir="$2"
+# Prevent the workdir from being inside the targetdir so it isn't included in
+# the update mar.
+if [ $(echo "$targetdir" | grep -c '\/$') = 1 ]; then
+ # Remove the /
+ targetdir=$(echo "$targetdir" | sed -e 's:\/$::')
+fi
+workdir="$targetdir.work"
+updatemanifestv2="$workdir/updatev2.manifest"
+updatemanifestv3="$workdir/updatev3.manifest"
+targetfiles="updatev2.manifest updatev3.manifest"
+
+mkdir -p "$workdir"
+echo "updatev2.manifest" >> $workdir/files.txt
+echo "updatev3.manifest" >> $workdir/files.txt
+
+# Generate a list of all files in the target directory.
+pushd "$targetdir"
+if test $? -ne 0 ; then
+ exit 1
+fi
+
+# if [ ! -f "precomplete" ]; then
+# if [ ! -f "Contents/Resources/precomplete" ]; then
+# notice "precomplete file is missing!"
+# exit 1
+# fi
+# fi
+
+list_files files
+
+popd
+
+# Add the type of update to the beginning of the update manifests.
+> $updatemanifestv2
+> $updatemanifestv3
+notice ""
+notice "Adding type instruction to update manifests"
+notice " type complete"
+echo "type \"complete\"" >> $updatemanifestv2
+echo "type \"complete\"" >> $updatemanifestv3
+
+notice ""
+notice "Adding file add instructions to update manifests"
+num_files=${#files[*]}
+
+for ((i=0; $i<$num_files; i=$i+1)); do
+ f="${files[$i]}"
+
+ if check_for_add_if_not_update "$f"; then
+ make_add_if_not_instruction "$f" "$updatemanifestv3"
+ if check_for_add_to_manifestv2 "$f"; then
+ make_add_instruction "$f" "$updatemanifestv2" "" 1
+ fi
+ else
+ make_add_instruction "$f" "$updatemanifestv2" "$updatemanifestv3"
+ fi
+
+ dir=$(dirname "$f")
+ mkdir -p "$workdir/$dir"
+ $BZIP2 -cz9 "$targetdir/$f" > "$workdir/$f"
+ copy_perm "$targetdir/$f" "$workdir/$f"
+
+ targetfiles="$targetfiles \"$f\""
+ echo $f >> $workdir/files.txt
+done
+
+# Append remove instructions for any dead files.
+notice ""
+notice "Adding file and directory remove instructions from file 'removed-files'"
+append_remove_instructions "$targetdir" "$updatemanifestv2" "$updatemanifestv3"
+
+$BZIP2 -z9 "$updatemanifestv2" && mv -f "$updatemanifestv2.bz2" "$updatemanifestv2"
+$BZIP2 -z9 "$updatemanifestv3" && mv -f "$updatemanifestv3.bz2" "$updatemanifestv3"
+
+eval "$MAR -C \"$workdir\" -c output.mar -f $workdir/files.txt"
+mv -f "$workdir/output.mar" "$archive"
+
+# cleanup
+rm -fr "$workdir"
+
+notice ""
+notice "Finished"
+notice ""
diff --git a/bin/update/make_incremental_update.sh b/bin/update/make_incremental_update.sh
new file mode 100755
index 000000000..31bddabdb
--- /dev/null
+++ b/bin/update/make_incremental_update.sh
@@ -0,0 +1,318 @@
+#!/usr/bin/env bash
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# This tool generates incremental update packages for the update system.
+# Author: Darin Fisher
+#
+
+. $(dirname "$0")/common.sh
+
+# -----------------------------------------------------------------------------
+
+print_usage() {
+ notice "Usage: $(basename $0) [OPTIONS] ARCHIVE FROMDIR TODIR"
+ notice ""
+ notice "The differences between FROMDIR and TODIR will be stored in ARCHIVE."
+ notice ""
+ notice "Options:"
+ notice " -h show this help text"
+ notice " -f clobber this file in the installation"
+ notice " Must be a path to a file to clobber in the partial update."
+ notice ""
+}
+
+check_for_forced_update() {
+ force_list="$1"
+ forced_file_chk="$2"
+
+ local f
+
+ if [ "$forced_file_chk" = "precomplete" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+
+ if [ "$forced_file_chk" = "Contents/Resources/precomplete" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+
+ if [ "$forced_file_chk" = "removed-files" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+
+ if [ "$forced_file_chk" = "Contents/Resources/removed-files" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+
+ if [ "${forced_file_chk##*.}" = "chk" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+
+ for f in $force_list; do
+ #echo comparing $forced_file_chk to $f
+ if [ "$forced_file_chk" = "$f" ]; then
+ ## "true" *giggle*
+ return 0;
+ fi
+ done
+ ## 'false'... because this is bash. Oh yay!
+ return 1;
+}
+
+if [ $# = 0 ]; then
+ print_usage
+ exit 1
+fi
+
+requested_forced_updates='Contents/MacOS/firefox'
+
+while getopts "hf:" flag
+do
+ case "$flag" in
+ h) print_usage; exit 0
+ ;;
+ f) requested_forced_updates="$requested_forced_updates $OPTARG"
+ ;;
+ ?) print_usage; exit 1
+ ;;
+ esac
+done
+
+# -----------------------------------------------------------------------------
+
+let arg_start=$OPTIND-1
+shift $arg_start
+
+archive="$1"
+olddir="$2"
+newdir="$3"
+# Prevent the workdir from being inside the targetdir so it isn't included in
+# the update mar.
+if [ $(echo "$newdir" | grep -c '\/$') = 1 ]; then
+ # Remove the /
+ newdir=$(echo "$newdir" | sed -e 's:\/$::')
+fi
+workdir="$newdir.work"
+updatemanifestv2="$workdir/updatev2.manifest"
+updatemanifestv3="$workdir/updatev3.manifest"
+
+mkdir -p "$workdir"
+echo "updatev2.manifest" >> $workdir/files.txt
+echo "updatev3.manifest" >> $workdir/files.txt
+
+# Generate a list of all files in the target directory.
+pushd "$olddir"
+if test $? -ne 0 ; then
+ exit 1
+fi
+
+list_files oldfiles
+list_dirs olddirs
+
+popd
+
+pushd "$newdir"
+if test $? -ne 0 ; then
+ exit 1
+fi
+
+# if [ ! -f "precomplete" ]; then
+# if [ ! -f "Contents/Resources/precomplete" ]; then
+# notice "precomplete file is missing!"
+# exit 1
+# fi
+# fi
+
+list_dirs newdirs
+list_files newfiles
+
+popd
+
+# Add the type of update to the beginning of the update manifests.
+notice ""
+notice "Adding type instruction to update manifests"
+> $updatemanifestv2
+> $updatemanifestv3
+notice " type partial"
+echo "type \"partial\"" >> $updatemanifestv2
+echo "type \"partial\"" >> $updatemanifestv3
+
+notice ""
+notice "Adding file patch and add instructions to update manifests"
+
+num_oldfiles=${#oldfiles[*]}
+remove_array=
+num_removes=0
+
+for ((i=0; $i<$num_oldfiles; i=$i+1)); do
+ f="${oldfiles[$i]}"
+
+ # If this file exists in the new directory as well, then check if it differs.
+ if [ -f "$newdir/$f" ]; then
+
+ if check_for_add_if_not_update "$f"; then
+ # The full workdir may not exist yet, so create it if necessary.
+ mkdir -p `dirname "$workdir/$f"`
+ $BZIP2 -cz9 "$newdir/$f" > "$workdir/$f"
+ copy_perm "$newdir/$f" "$workdir/$f"
+ make_add_if_not_instruction "$f" "$updatemanifestv3"
+ echo $f >> $workdir/files.txt
+ continue 1
+ fi
+
+ if check_for_forced_update "$requested_forced_updates" "$f"; then
+ # The full workdir may not exist yet, so create it if necessary.
+ mkdir -p `dirname "$workdir/$f"`
+ $BZIP2 -cz9 "$newdir/$f" > "$workdir/$f"
+ copy_perm "$newdir/$f" "$workdir/$f"
+ make_add_instruction "$f" "$updatemanifestv2" "$updatemanifestv3" 1
+ echo $f >> $workdir/files.txt
+ continue 1
+ fi
+
+ if ! diff "$olddir/$f" "$newdir/$f" > /dev/null; then
+ # Compute both the compressed binary diff and the compressed file, and
+ # compare the sizes. Then choose the smaller of the two to package.
+ dir=$(dirname "$workdir/$f")
+ mkdir -p "$dir"
+ notice "diffing \"$f\""
+ # MBSDIFF_HOOK represents the communication interface with funsize and,
+ # if enabled, caches the intermediate patches for future use and
+ # compute avoidance
+ #
+ # An example of MBSDIFF_HOOK env variable could look like this:
+ # export MBSDIFF_HOOK="myscript.sh -A https://funsize/api -c /home/user"
+ # where myscript.sh has the following usage:
+ # myscript.sh -A SERVER-URL [-c LOCAL-CACHE-DIR-PATH] [-g] [-u] \
+ # PATH-FROM-URL PATH-TO-URL PATH-PATCH SERVER-URL
+ #
+ # Note: patches are bzipped stashed in funsize to gain more speed
+
+ # if service is not enabled then default to old behavior
+ if [ -z "$MBSDIFF_HOOK" ]; then
+ $MBSDIFF "$olddir/$f" "$newdir/$f" "$workdir/$f.patch"
+ $BZIP2 -z9 "$workdir/$f.patch"
+ else
+ # if service enabled then check patch existence for retrieval
+ if $MBSDIFF_HOOK -g "$olddir/$f" "$newdir/$f" "$workdir/$f.patch.bz2"; then
+ notice "file \"$f\" found in funsize, diffing skipped"
+ else
+ # if not found already - compute it and cache it for future use
+ $MBSDIFF "$olddir/$f" "$newdir/$f" "$workdir/$f.patch"
+ $BZIP2 -z9 "$workdir/$f.patch"
+ $MBSDIFF_HOOK -u "$olddir/$f" "$newdir/$f" "$workdir/$f.patch.bz2"
+ fi
+ fi
+ $BZIP2 -cz9 "$newdir/$f" > "$workdir/$f"
+ copy_perm "$newdir/$f" "$workdir/$f"
+ patchfile="$workdir/$f.patch.bz2"
+ patchsize=$(get_file_size "$patchfile")
+ fullsize=$(get_file_size "$workdir/$f")
+
+ if [ $patchsize -lt $fullsize ]; then
+ make_patch_instruction "$f" "$updatemanifestv2" "$updatemanifestv3"
+ mv -f "$patchfile" "$workdir/$f.patch"
+ rm -f "$workdir/$f"
+ echo $f.patch >> $workdir/files.txt
+ else
+ make_add_instruction "$f" "$updatemanifestv2" "$updatemanifestv3"
+ rm -f "$patchfile"
+ echo $f >> $workdir/files.txt
+ fi
+ fi
+ else
+ # remove instructions are added after add / patch instructions for
+ # consistency with make_incremental_updates.py
+ remove_array[$num_removes]=$f
+ (( num_removes++ ))
+ fi
+done
+
+# Newly added files
+notice ""
+notice "Adding file add instructions to update manifests"
+num_newfiles=${#newfiles[*]}
+
+for ((i=0; $i<$num_newfiles; i=$i+1)); do
+ f="${newfiles[$i]}"
+
+ # If we've already tested this file, then skip it
+ for ((j=0; $j<$num_oldfiles; j=$j+1)); do
+ if [ "$f" = "${oldfiles[j]}" ]; then
+ continue 2
+ fi
+ done
+
+ dir=$(dirname "$workdir/$f")
+ mkdir -p "$dir"
+
+ $BZIP2 -cz9 "$newdir/$f" > "$workdir/$f"
+ copy_perm "$newdir/$f" "$workdir/$f"
+
+ if check_for_add_if_not_update "$f"; then
+ make_add_if_not_instruction "$f" "$updatemanifestv3"
+ else
+ make_add_instruction "$f" "$updatemanifestv2" "$updatemanifestv3"
+ fi
+
+
+ echo $f >> $workdir/files.txt
+done
+
+notice ""
+notice "Adding file remove instructions to update manifests"
+for ((i=0; $i<$num_removes; i=$i+1)); do
+ f="${remove_array[$i]}"
+ notice " remove \"$f\""
+ echo "remove \"$f\"" >> $updatemanifestv2
+ echo "remove \"$f\"" >> $updatemanifestv3
+done
+
+# Add remove instructions for any dead files.
+notice ""
+notice "Adding file and directory remove instructions from file 'removed-files'"
+append_remove_instructions "$newdir" "$updatemanifestv2" "$updatemanifestv3"
+
+notice ""
+notice "Adding directory remove instructions for directories that no longer exist"
+num_olddirs=${#olddirs[*]}
+
+for ((i=0; $i<$num_olddirs; i=$i+1)); do
+ f="${olddirs[$i]}"
+ # If this dir doesn't exist in the new directory remove it.
+ if [ ! -d "$newdir/$f" ]; then
+ notice " rmdir $f/"
+ echo "rmdir \"$f/\"" >> $updatemanifestv2
+ echo "rmdir \"$f/\"" >> $updatemanifestv3
+ fi
+done
+
+$BZIP2 -z9 "$updatemanifestv2" && mv -f "$updatemanifestv2.bz2" "$updatemanifestv2"
+$BZIP2 -z9 "$updatemanifestv3" && mv -f "$updatemanifestv3.bz2" "$updatemanifestv3"
+
+mar_command="$MAR"
+if [[ -n $PRODUCT_VERSION ]]
+then
+ mar_command="$mar_command -V $PRODUCT_VERSION"
+fi
+if [[ -n $CHANNEL_ID ]]
+then
+ mar_command="$mar_command -H $CHANNEL_ID"
+fi
+mar_command="$mar_command -C \"$workdir\" -c output.mar -f $workdir/files.txt"
+eval "$mar_command"
+mv -f "$workdir/output.mar" "$archive"
+
+# cleanup
+rm -fr "$workdir"
+
+notice ""
+notice "Finished"
+notice ""
diff --git a/bin/update/path.py b/bin/update/path.py
new file mode 100644
index 000000000..0fe0fd5eb
--- /dev/null
+++ b/bin/update/path.py
@@ -0,0 +1,69 @@
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import os
+import errno
+import subprocess
+from sys import platform
+
+def mkdir_p(path):
+ try:
+ os.makedirs(path)
+ except OSError as exc: # Python >2.5
+ if exc.errno == errno.EEXIST and os.path.isdir(path):
+ pass
+ else:
+ raise
+
+def convert_to_unix(path):
+ if platform == "cygwin":
+ return subprocess.check_output(["cygpath", "-u", path]).decode("utf-8", "strict").rstrip()
+ else:
+ return path
+
+def convert_to_native(path):
+ if platform == "cygwin":
+ return subprocess.check_output(["cygpath", "-m", path]).decode("utf-8", "strict").rstrip()
+ else:
+ return path
+
+class UpdaterPath(object):
+
+ def __init__(self, workdir):
+ self._workdir = convert_to_unix(workdir)
+
+ def get_workdir(self):
+ return self._workdir
+
+ def get_update_dir(self):
+ return os.path.join(self._workdir, "update-info")
+
+ def get_current_build_dir(self):
+ return os.path.join(self._workdir, "mar", "current-build")
+
+ def get_mar_dir(self):
+ return os.path.join(self._workdir, "mar")
+
+ def get_previous_build_dir(self):
+ return os.path.join(self._workdir, "mar", "previous-build")
+
+ def get_language_dir(self):
+ return os.path.join(self.get_mar_dir(), "language")
+
+ def get_workdir(self):
+ return self._workdir
+
+ def ensure_dir_exist(self):
+ mkdir_p(self.get_update_dir())
+ mkdir_p(self.get_current_build_dir())
+ mkdir_p(self.get_mar_dir())
+ mkdir_p(self.get_previous_build_dir())
+ mkdir_p(self.get_language_dir())
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/update/signing.py b/bin/update/signing.py
new file mode 100644
index 000000000..c0b43ce91
--- /dev/null
+++ b/bin/update/signing.py
@@ -0,0 +1,12 @@
+from tools import make_complete_mar_name
+
+import os
+import subprocess
+import path
+
+def sign_mar_file(target_dir, config, mar_file, filename_prefix):
+ signed_mar_file = make_complete_mar_name(target_dir, filename_prefix + '_signed')
+ mar_executable = os.environ.get('MAR', 'mar')
+ subprocess.check_call([mar_executable, '-C', path.convert_to_native(target_dir), '-d', path.convert_to_native(config.certificate_path), '-n', config.certificate_name, '-s', path.convert_to_native(mar_file), path.convert_to_native(signed_mar_file)])
+
+ os.rename(signed_mar_file, mar_file)
diff --git a/bin/update/tools.py b/bin/update/tools.py
new file mode 100644
index 000000000..8cd786635
--- /dev/null
+++ b/bin/update/tools.py
@@ -0,0 +1,64 @@
+import os
+import hashlib
+import zipfile
+import tarfile
+
+def uncompress_file_to_dir(compressed_file, uncompress_dir):
+ command = None
+ extension = os.path.splitext(compressed_file)[1]
+
+ try:
+ os.mkdir(uncompress_dir)
+ except FileExistsError as e:
+ pass
+
+ if extension == '.gz':
+ tar = tarfile.open(compressed_file)
+ tar.extractall(uncompress_dir)
+ tar.close()
+ elif extension == '.zip':
+ zip_file = zipfile.ZipFile(compressed_file)
+ zip_file.extractall(uncompress_dir)
+ zip_file.close()
+
+ uncompress_dir = os.path.join(uncompress_dir, os.listdir(uncompress_dir)[0])
+ if " " in os.listdir(uncompress_dir)[0]:
+ print("replacing whitespace in directory name")
+ os.rename(os.path.join(uncompress_dir, os.listdir(uncompress_dir)[0]),
+ os.path.join(uncompress_dir, os.listdir(uncompress_dir)[0].replace(" ", "_")))
+ else:
+ print("Error: unknown extension " + extension)
+
+ return os.path.join(uncompress_dir, os.listdir(uncompress_dir)[0])
+
+BUF_SIZE = 1048576
+
+def get_hash(file_path):
+ sha512 = hashlib.sha512()
+ with open(file_path, 'rb') as f:
+ while True:
+ data = f.read(BUF_SIZE)
+ if not data:
+ break
+ sha512.update(data)
+ return sha512.hexdigest()
+
+def get_file_info(mar_file, url):
+ filesize = os.path.getsize(mar_file)
+ data = { 'hash' : get_hash(mar_file),
+ 'hashFunction' : 'sha512',
+ 'size' : filesize,
+ 'url' : url + os.path.basename(mar_file)}
+
+ return data
+
+def replace_variables_in_string(string, **kwargs):
+ new_string = string
+ for key, val in kwargs.items():
+ new_string = new_string.replace('$(%s)'%key, val)
+
+ return new_string
+
+def make_complete_mar_name(target_dir, filename_prefix):
+ filename = filename_prefix + "_complete.mar"
+ return os.path.join(target_dir, filename)
diff --git a/bin/update/uncompress_mar.py b/bin/update/uncompress_mar.py
new file mode 100755
index 000000000..02dafbaff
--- /dev/null
+++ b/bin/update/uncompress_mar.py
@@ -0,0 +1,54 @@
+#!/usr/bin/env python3
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# Extract a mar file and uncompress the content
+
+import os
+import re
+import sys
+import subprocess
+from path import convert_to_native
+
+def uncompress_content(file_path):
+ bzip2 = os.environ.get('BZIP2', 'bzip2')
+ file_path_compressed = file_path + ".bz2"
+ os.rename(file_path, file_path_compressed)
+ subprocess.check_call(["bzip2", "-d", convert_to_native(file_path_compressed)])
+
+def extract_mar(mar_file, target_dir):
+ mar = os.environ.get('MAR', 'mar')
+ subprocess.check_call([mar, "-C", convert_to_native(target_dir), "-x", convert_to_native(mar_file)])
+ file_info = subprocess.check_output([mar, "-t", convert_to_native(mar_file)])
+ lines = file_info.splitlines()
+ prog = re.compile(r"\d+\s+\d+\s+(.+)")
+ for line in lines:
+ match = prog.match(line.decode("utf-8", "strict"))
+ if match is None:
+ continue
+ info = match.groups()[0]
+ # ignore header line
+ if info == b'NAME':
+ continue
+
+ uncompress_content(os.path.join(target_dir, info))
+
+def main():
+ if len(sys.argv) != 3:
+ print("Help: This program takes exactly two arguments pointing to a mar file and a target location")
+ sys.exit(1)
+
+ mar_file = sys.argv[1]
+ target_dir = sys.argv[2]
+ extract_mar(mar_file, target_dir)
+
+if __name__ == "__main__":
+ main()
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/update/upload_build_config.py b/bin/update/upload_build_config.py
new file mode 100755
index 000000000..9a87661ee
--- /dev/null
+++ b/bin/update/upload_build_config.py
@@ -0,0 +1,42 @@
+#! /usr/bin/env python3
+
+import sys
+import os
+import configparser
+import requests
+
+dir_path = os.path.dirname(os.path.realpath(__file__))
+
+def main(argv):
+
+ updater_config = sys.argv[2]
+
+ config = configparser.ConfigParser()
+ config.read(os.path.expanduser(updater_config))
+
+ user = config["Updater"]["User"]
+ password = config["Updater"]["Password"]
+ base_address = config["Updater"]["ServerURL"]
+
+ login_url = base_address + "accounts/login/"
+
+ session = requests.session()
+ r1 = session.get(login_url)
+ csrftoken = session.cookies['csrftoken']
+
+ login_data = { 'username': user,'password': password,
+ 'csrfmiddlewaretoken': csrftoken }
+ r1 = session.post(login_url, data=login_data, headers={"Referer": login_url})
+
+ url = base_address + "update/upload/release"
+ data = {}
+ data['csrfmiddlewaretoken'] = csrftoken
+
+ build_config = os.path.join(sys.argv[1], "build_config.json")
+ r = session.post(url, files={'release_config': open(build_config, "r")}, data=data)
+ print(r.content)
+ if r.status_code != 200:
+ sys.exit(1)
+
+if __name__ == "__main__":
+ main(sys.argv)
diff --git a/bin/update/upload_builds.py b/bin/update/upload_builds.py
new file mode 100755
index 000000000..210668e0d
--- /dev/null
+++ b/bin/update/upload_builds.py
@@ -0,0 +1,32 @@
+#! /usr/bin/env python3
+
+import sys
+import os
+import subprocess
+
+from config import parse_config
+from path import convert_to_unix
+
+from tools import replace_variables_in_string
+
+def main():
+ product_name = sys.argv[1]
+ buildid = sys.argv[2]
+ platform = sys.argv[3]
+ update_dir = sys.argv[4]
+ update_config = sys.argv[5]
+
+ config = parse_config(update_config)
+ upload_url = replace_variables_in_string(config.upload_url, channel=config.channel, buildid=buildid, platform=platform)
+
+ target_url, target_dir = upload_url.split(':')
+
+ command = "ssh %s 'mkdir -p %s'"%(target_url, target_dir)
+ print(command)
+ subprocess.call(command, shell=True)
+ for file in os.listdir(update_dir):
+ if file.endswith('.mar'):
+ subprocess.call(['scp', convert_to_unix(os.path.join(update_dir, file)), upload_url])
+
+if __name__ == '__main__':
+ main()
diff --git a/bin/update_pch b/bin/update_pch
new file mode 100755
index 000000000..1cb5cb997
--- /dev/null
+++ b/bin/update_pch
@@ -0,0 +1,1322 @@
+#! /usr/bin/env python3
+# -*- Mode: python; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+"""
+This script generates precompiled headers for a given
+module and library.
+
+Given a gmake makefile that belongs to some LO module:
+1) Process the makefile to find source files (process_makefile).
+2) For every source file, find all includes (process_source).
+3) Uncommon and rare includes are filtered (remove_rare).
+4) Conflicting headers are excluded (filter_ignore).
+5) Local files to the source are excluded (Filter_Local).
+6) Fixup missing headers that sources expect (fixup).
+7) The resulting includes are sorted by category (sort_by_category).
+8) The pch file is generated (generate).
+"""
+
+import sys
+import re
+import os
+import unittest
+import glob
+
+CUTOFF = 1
+EXCLUDE_MODULE = False
+EXCLUDE_LOCAL = False
+EXCLUDE_SYSTEM = True
+SILENT = False
+WORKDIR = 'workdir'
+
+# System includes: oox, sal, sd, svl, vcl
+
+INCLUDE = False
+EXCLUDE = True
+DEFAULTS = \
+{
+# module.library : (min, system, module, local), best time
+ 'accessibility.acc' : ( 4, EXCLUDE, INCLUDE, INCLUDE), # 7.8
+ 'basctl.basctl' : ( 3, EXCLUDE, INCLUDE, EXCLUDE), # 11.9
+ 'basegfx.basegfx' : ( 3, EXCLUDE, EXCLUDE, INCLUDE), # 3.8
+ 'basic.sb' : ( 2, EXCLUDE, EXCLUDE, INCLUDE), # 10.7
+ 'chart2.chartcontroller' : ( 6, EXCLUDE, INCLUDE, INCLUDE), # 18.4
+ 'chart2.chartcore' : ( 3, EXCLUDE, EXCLUDE, INCLUDE), # 22.5
+ 'comphelper.comphelper' : ( 4, EXCLUDE, INCLUDE, INCLUDE), # 7.6
+ 'configmgr.configmgr' : ( 6, EXCLUDE, INCLUDE, INCLUDE), # 6.0
+ 'connectivity.ado' : ( 2, EXCLUDE, EXCLUDE, EXCLUDE), # 6.4
+ 'connectivity.calc' : ( 2, EXCLUDE, EXCLUDE, EXCLUDE), # 4.6
+ 'connectivity.dbase' : ( 2, EXCLUDE, INCLUDE, INCLUDE), # 5.2
+ 'connectivity.dbpool2' : ( 5, EXCLUDE, INCLUDE, EXCLUDE), # 3.0
+ 'connectivity.dbtools' : ( 2, EXCLUDE, EXCLUDE, INCLUDE), # 0.8
+ 'connectivity.file' : ( 2, EXCLUDE, INCLUDE, EXCLUDE), # 5.1
+ 'connectivity.firebird_sdbc' : ( 2, EXCLUDE, EXCLUDE, EXCLUDE), # 5.1
+ 'connectivity.flat' : ( 2, EXCLUDE, INCLUDE, INCLUDE), # 4.6
+ 'connectivity.mysql' : ( 4, EXCLUDE, INCLUDE, EXCLUDE), # 3.4
+ 'connectivity.odbc' : ( 2, EXCLUDE, EXCLUDE, INCLUDE), # 5.0
+ 'connectivity.postgresql-sdbc-impl' : ( 3, EXCLUDE, EXCLUDE, EXCLUDE), # 6.7
+ 'cppcanvas.cppcanvas' : (11, EXCLUDE, INCLUDE, INCLUDE), # 4.8
+ 'cppuhelper.cppuhelper' : ( 3, EXCLUDE, EXCLUDE, EXCLUDE), # 4.6
+ 'cui.cui' : ( 8, EXCLUDE, INCLUDE, EXCLUDE), # 19.7
+ 'dbaccess.dba' : ( 6, EXCLUDE, INCLUDE, INCLUDE), # 13.8
+ 'dbaccess.dbaxml' : ( 2, EXCLUDE, EXCLUDE, EXCLUDE), # 6.5
+ 'dbaccess.dbu' : (12, EXCLUDE, EXCLUDE, EXCLUDE), # 23.6
+ 'dbaccess.sdbt' : ( 1, EXCLUDE, INCLUDE, EXCLUDE), # 2.9
+ 'desktop.deployment' : ( 3, EXCLUDE, EXCLUDE, EXCLUDE), # 6.1
+ 'desktop.deploymentgui' : ( 3, EXCLUDE, EXCLUDE, EXCLUDE), # 5.7
+ 'desktop.deploymentmisc' : ( 3, EXCLUDE, EXCLUDE, EXCLUDE), # 3.4
+ 'desktop.sofficeapp' : ( 6, EXCLUDE, INCLUDE, INCLUDE), # 6.5
+ 'drawinglayer.drawinglayer' : ( 4, EXCLUDE, EXCLUDE, EXCLUDE), # 7.4
+ 'editeng.editeng' : ( 5, EXCLUDE, INCLUDE, EXCLUDE), # 13.0
+ 'forms.frm' : ( 2, EXCLUDE, EXCLUDE, EXCLUDE), # 14.2
+ 'framework.fwk' : ( 7, EXCLUDE, INCLUDE, INCLUDE), # 14.8
+ 'hwpfilter.hwp' : ( 3, EXCLUDE, INCLUDE, INCLUDE), # 6.0
+ 'lotuswordpro.lwpft' : ( 2, EXCLUDE, EXCLUDE, EXCLUDE), # 11.6
+ 'oox.oox' : ( 6, EXCLUDE, EXCLUDE, INCLUDE), # 28.2
+ 'package.package2' : ( 3, EXCLUDE, INCLUDE, INCLUDE), # 4.5
+ 'package.xstor' : ( 2, EXCLUDE, INCLUDE, EXCLUDE), # 3.8
+ 'reportdesign.rpt' : ( 9, EXCLUDE, INCLUDE, INCLUDE), # 9.4
+ 'reportdesign.rptui' : ( 4, EXCLUDE, INCLUDE, INCLUDE), # 13.1
+ 'reportdesign.rptxml' : ( 2, EXCLUDE, EXCLUDE, INCLUDE), # 7.6
+ 'sal.sal' : ( 2, EXCLUDE, EXCLUDE, INCLUDE), # 4.2
+ 'sc.sc' : (12, EXCLUDE, INCLUDE, INCLUDE), # 92.6
+ 'sc.scfilt' : ( 4, EXCLUDE, EXCLUDE, INCLUDE), # 39.9
+ 'sc.scui' : ( 1, EXCLUDE, EXCLUDE, INCLUDE), # 15.0
+ 'sc.vbaobj' : ( 1, EXCLUDE, EXCLUDE, INCLUDE), # 17.3
+ 'sd.sd' : ( 4, EXCLUDE, EXCLUDE, INCLUDE), # 47.4
+ 'sd.sdui' : ( 4, EXCLUDE, INCLUDE, INCLUDE), # 9.4
+ 'sdext.PresentationMinimizer' : ( 2, EXCLUDE, INCLUDE, INCLUDE), # 4.1
+ 'sdext.PresenterScreen' : ( 2, EXCLUDE, INCLUDE, EXCLUDE), # 7.1
+ 'sfx2.sfx' : ( 3, EXCLUDE, EXCLUDE, EXCLUDE), # 27.4
+ 'slideshow.slideshow' : ( 4, EXCLUDE, INCLUDE, EXCLUDE), # 10.8
+ 'sot.sot' : ( 5, EXCLUDE, EXCLUDE, INCLUDE), # 3.1
+ 'starmath.sm' : ( 5, EXCLUDE, EXCLUDE, INCLUDE), # 10.9
+ 'svgio.svgio' : ( 8, EXCLUDE, EXCLUDE, INCLUDE), # 4.3
+ 'emfio.emfio' : ( 8, EXCLUDE, EXCLUDE, INCLUDE), # 4.3
+ 'svl.svl' : ( 6, EXCLUDE, EXCLUDE, EXCLUDE), # 7.6
+ 'svtools.svt' : ( 4, EXCLUDE, INCLUDE, EXCLUDE), # 17.6
+ 'svx.svx' : ( 3, EXCLUDE, EXCLUDE, INCLUDE), # 20.7
+ 'svx.svxcore' : ( 7, EXCLUDE, INCLUDE, EXCLUDE), # 37.0
+ 'sw.msword' : ( 4, EXCLUDE, INCLUDE, INCLUDE), # 22.4
+ 'sw.sw' : ( 7, EXCLUDE, EXCLUDE, INCLUDE), # 129.6
+ 'sw.swui' : ( 3, EXCLUDE, INCLUDE, INCLUDE), # 26.1
+ 'sw.vbaswobj' : ( 4, EXCLUDE, INCLUDE, INCLUDE), # 13.1
+ 'tools.tl' : ( 5, EXCLUDE, EXCLUDE, EXCLUDE), # 4.2
+ 'unotools.utl' : ( 3, EXCLUDE, EXCLUDE, INCLUDE), # 7.0
+ 'unoxml.unoxml' : ( 1, EXCLUDE, EXCLUDE, EXCLUDE), # 4.6
+ 'uui.uui' : ( 4, EXCLUDE, EXCLUDE, EXCLUDE), # 4.9
+ 'vbahelper.msforms' : ( 3, EXCLUDE, INCLUDE, INCLUDE), # 5.2
+ 'vbahelper.vbahelper' : ( 3, EXCLUDE, EXCLUDE, INCLUDE), # 7.0
+ 'vcl.vcl' : ( 6, EXCLUDE, INCLUDE, INCLUDE), # 35.7
+ 'writerfilter.writerfilter' : ( 5, EXCLUDE, EXCLUDE, EXCLUDE), # 19.7/27.3
+ 'xmloff.xo' : ( 7, EXCLUDE, INCLUDE, INCLUDE), # 22.1
+ 'xmloff.xof' : ( 1, EXCLUDE, EXCLUDE, INCLUDE), # 4.4
+ 'xmlscript.xmlscript' : ( 4, EXCLUDE, EXCLUDE, INCLUDE), # 3.6
+ 'xmlsecurity.xmlsecurity' : ( 6, EXCLUDE, INCLUDE, INCLUDE), # 5.1
+ 'xmlsecurity.xsec_xmlsec' : ( 2, EXCLUDE, INCLUDE, INCLUDE), # 4.4
+ 'xmlsecurity.xsec_gpg' : ( 2, EXCLUDE, INCLUDE, INCLUDE), # ?
+}
+
+def remove_rare(raw, min_use=-1):
+ """ Remove headers not commonly included.
+ The minimum threshold is min_use.
+ """
+ # The minimum number of times a header
+ # must be included to be in the PCH.
+ min_use = min_use if min_use >= 0 else CUTOFF
+
+ out = []
+ if not raw or not len(raw):
+ return out
+
+ inc = sorted(raw)
+ last = inc[0]
+ count = 1
+ for x in range(1, len(inc)):
+ i = inc[x]
+ if i == last:
+ count += 1
+ else:
+ if count >= min_use:
+ out.append(last)
+ last = i
+ count = 1
+
+ # Last group.
+ if count >= min_use:
+ out.append(last)
+
+ return out
+
+def process_list(list, callable):
+ """ Given a list and callable
+ we pass each entry through
+ the callable and only add to
+ the output if not blank.
+ """
+ out = []
+ for i in list:
+ line = callable(i)
+ if line and len(line):
+ out.append(line)
+ return out
+
+def find_files(path, recurse=True):
+ list = []
+ for root, dir, files in os.walk(path):
+ list += map(lambda x: os.path.join(root, x), files)
+ return list
+
+def get_filename(line):
+ """ Strips the line from the
+ '#include' and angled brackets
+ and return the filename only.
+ """
+ if not len(line) or line[0] != '#':
+ return line
+ return re.sub(r'(.*#include\s*)<(.*)>(.*)', r'\2', line)
+
+def is_c_runtime(inc, root, module):
+ """ Heuristic-based detection of C/C++
+ runtime headers.
+ They are all-lowercase, with .h or
+ no extension, filename only.
+ Try to check that they are not LO headers.
+ """
+ inc = get_filename(inc)
+
+ if inc.endswith('.hxx') or inc.endswith('.hpp'):
+ return False
+
+ if inc.endswith('.h') and inc.startswith( 'config_' ):
+ return False
+
+ hasdot = False
+ for c in inc:
+ if c == '/':
+ return False
+ if c == '.' and not inc.endswith('.h'):
+ return False
+ if c == '.':
+ hasdot = True
+ if c.isupper():
+ return False
+ if not hasdot: # <memory> etc.
+ return True
+
+ if glob.glob(os.path.join(root, module, '**', inc), recursive=True):
+ return False;
+
+ return True
+
+def sanitize(raw):
+ """ There are two forms of includes,
+ those with <> and "".
+ Technically, the difference is that
+ the compiler can use an internal
+ representation for an angled include,
+ such that it doesn't have to be a file.
+ For our purposes, there is no difference.
+ Here, we convert everything to angled.
+ """
+ if not raw or not len(raw):
+ return ''
+ raw = raw.strip()
+ if not len(raw):
+ return ''
+ return re.sub(r'(.*#include\s*)\"(.*)\"(.*)', r'#include <\2>', raw)
+
+class Filter_Local(object):
+ """ Filter headers local to a module.
+ allow_public: allows include/module/file.hxx
+ #include <module/file.hxx>
+ allow_module: allows module/inc/file.hxx
+ #include <file.hxx>
+ allow_locals: allows module/source/file.hxx and
+ module/source/inc/file.hxx
+ #include <file.hxx>
+ """
+ def __init__(self, root, module, allow_public=True, allow_module=True, allow_locals=True):
+ self.root = root
+ self.module = module
+ self.allow_public = allow_public
+ self.allow_module = allow_module
+ self.allow_locals = allow_locals
+ self.public_prefix = '<' + self.module + '/'
+
+ all = find_files(os.path.join(root, module))
+ self.module_includes = []
+ self.locals = []
+ mod_prefix = module + '/inc/'
+ for i in all:
+ if mod_prefix in i:
+ self.module_includes.append(i)
+ else:
+ self.locals.append(i)
+
+ def is_public(self, line):
+ return self.public_prefix in line
+
+ def is_module(self, line):
+ """ Returns True if in module/inc/... """
+ filename = get_filename(line)
+ for i in self.module_includes:
+ if i.endswith(filename):
+ return True
+ return False
+
+ def is_local(self, line):
+ """ Returns True if in module/source/... """
+ filename = get_filename(line)
+ for i in self.locals:
+ if i.endswith(filename):
+ return True
+ return False
+
+ def is_external(self, line):
+ return is_c_runtime(line, self.root, self.module) and \
+ not self.is_public(line) and \
+ not self.is_module(line) and \
+ not self.is_local(line)
+
+ def find_local_file(self, line):
+ """ Finds the header file in the module dir,
+ but doesn't validate.
+ """
+ filename = get_filename(line)
+ for i in self.locals:
+ if i.endswith(filename):
+ return i
+ for i in self.module_includes:
+ if i.endswith(filename):
+ return i
+ return None
+
+ def proc(self, line):
+ assert line and len(line)
+
+ if line[0] == '#':
+ if not SILENT:
+ sys.stderr.write('unhandled #include : {}\n'.format(line))
+ return ''
+
+ assert line[0] != '<' and line[0] != '#'
+
+ filename = get_filename(line)
+
+ # Local with relative path.
+ if filename.startswith('..'):
+ # Exclude for now as we don't have cxx path.
+ return ''
+
+ # Locals are included first (by the compiler).
+ if self.is_local(filename):
+ # Use only locals that are in some /inc/ directory (either in <module>/inc or
+ # somewhere under <module>/source/**/inc/, compilations use -I for these paths
+ # and headers elsewhere would not be found when compiling the PCH.
+ if not self.allow_locals:
+ return ''
+ elif '/inc/' in filename:
+ return filename
+ elif glob.glob(os.path.join(self.root, self.module, '**', 'inc', filename), recursive=True):
+ return filename
+ else:
+ return ''
+
+ # Module headers are next.
+ if self.is_module(filename):
+ return line if self.allow_module else ''
+
+ # Public headers are last.
+ if self.is_public(line):
+ return line if self.allow_public else ''
+
+ # Leave out potentially unrelated files local
+ # to some other module we can't include directly.
+ if '/' not in filename and not self.is_external(filename):
+ return ''
+
+ # Unfiltered.
+ return line
+
+def filter_ignore(line, module):
+ """ Filters includes from known
+ problematic ones.
+ Expects sanitized input.
+ """
+ assert line and len(line)
+
+ # Always include files without extension.
+ if '.' not in line:
+ return line
+
+ # Extract filenames for ease of comparison.
+ line = get_filename(line)
+
+ # Filter out all files that are not normal headers.
+ if not line.endswith('.h') and \
+ not line.endswith('.hxx') and \
+ not line.endswith('.hpp') and \
+ not line.endswith('.hdl'):
+ return ''
+
+ ignore_list = [
+ 'LibreOfficeKit/LibreOfficeKitEnums.h', # Needs special directives
+ 'LibreOfficeKit/LibreOfficeKitTypes.h', # Needs special directives
+ 'jerror.h', # c++ unfriendly
+ 'jpeglib.h', # c++ unfriendly
+ 'boost/spirit/include/classic_core.hpp' # depends on BOOST_SPIRIT_DEBUG
+ ]
+
+ if module == 'basic':
+ ignore_list += [
+ 'basic/vbahelper.hxx',
+ ]
+ if module == 'connectivity':
+ ignore_list += [
+ 'com/sun/star/beans/PropertyAttribute.hpp', # OPTIONAL defined via objbase.h
+ 'com/sun/star/sdbcx/Privilege.hpp', # DELETE defined via objbase.h
+ 'ado/*' , # some strange type conflict because of Window's adoctint.h
+ 'adoint.h',
+ 'adoctint.h',
+ ]
+ if module == 'sc':
+ ignore_list += [
+ 'progress.hxx', # special directives
+ 'scslots.hxx', # special directives
+ ]
+ if module == 'sd':
+ ignore_list += [
+ 'sdgslots.hxx', # special directives
+ 'sdslots.hxx', # special directives
+ ]
+ if module == 'sfx2':
+ ignore_list += [
+ 'sfx2/recentdocsview.hxx', # Redefines ApplicationType defined in objidl.h
+ 'sfx2/sidebar/Sidebar.hxx',
+ 'sfx2/sidebar/UnoSidebar.hxx',
+ 'sfxslots.hxx', # externally defined types
+ ]
+ if module == 'sot':
+ ignore_list += [
+ 'sysformats.hxx', # Windows headers
+ ]
+ if module == 'vcl':
+ ignore_list += [
+ 'accmgr.hxx', # redefines ImplAccelList
+ 'image.h',
+ 'jobset.h',
+ 'opengl/gdiimpl.hxx',
+ 'opengl/salbmp.hxx',
+ 'openglgdiimpl', # ReplaceTextA
+ 'printdlg.hxx',
+ 'salinst.hxx', # GetDefaultPrinterA
+ 'salprn.hxx', # SetPrinterDataA
+ 'vcl/jobset.hxx',
+ 'vcl/oldprintadaptor.hxx',
+ 'vcl/opengl/OpenGLContext.hxx',
+ 'vcl/opengl/OpenGLHelper.hxx', # Conflicts with X header on *ix
+ 'vcl/print.hxx',
+ 'vcl/prntypes.hxx', # redefines Orientation from filter/jpeg/Exif.hxx
+ 'vcl/sysdata.hxx',
+ ]
+ if module == 'xmloff':
+ ignore_list += [
+ 'SchXMLExport.hxx', # SchXMLAutoStylePoolP.hxx not found
+ 'SchXMLImport.hxx', # enums redefined in draw\sdxmlimp_impl.hxx
+ 'XMLEventImportHelper.hxx', # NameMap redefined in XMLEventExport.hxx
+ 'xmloff/XMLEventExport.hxx', # enums redefined
+ ]
+ if module == 'xmlsecurity':
+ ignore_list += [
+ 'xmlsec/*',
+ 'xmlsecurity/xmlsec-wrapper.h',
+ ]
+ if module == 'external/pdfium':
+ ignore_list += [
+ 'third_party/freetype/include/pstables.h',
+ ]
+ if module == 'external/clucene':
+ ignore_list += [
+ '_bufferedstream.h',
+ '_condition.h',
+ '_gunichartables.h',
+ '_threads.h',
+ 'error.h',
+ 'CLucene/LuceneThreads.h',
+ 'CLucene/config/_threads.h',
+ ]
+ if module == 'external/skia':
+ ignore_list += [
+ 'skcms_internal.h',
+ 'zlib.h', # causes crc32 conflict
+ 'dirent.h', # unix-specific
+ 'pthread.h',
+ 'unistd.h',
+ 'sys/stat.h',
+ 'ft2build.h',
+ 'fontconfig/fontconfig.h',
+ 'GL/glx.h',
+ 'src/Transform_inl.h',
+ 'src/c/sk_c_from_to.h',
+ 'src/c/sk_types_priv.h',
+ 'src/core/SkBlitBWMaskTemplate.h',
+ 'src/sfnt/SkSFNTHeader.h',
+ 'src/opts/',
+ 'src/core/SkCubicSolver.h',
+ 'src/sksl/SkSLCPP.h',
+ 'src/gpu/vk/GrVkAMDMemoryAllocator.h',
+ 'src/gpu/GrUtil.h',
+ 'src/sksl/', # conflict between SkSL::Expression and SkSL::dsl::Expression
+ 'include/sksl/',
+ 'src/gpu/vk/',
+ 'include/gpu/vk'
+ ]
+ if module == 'external/zxing':
+ ignore_list += [
+ 'rss/ODRSSExpandedBinaryDecoder.h'
+ ]
+
+ for i in ignore_list:
+ if line.startswith(i):
+ return ''
+ if i[0] == '*' and line.endswith(i[1:]):
+ return ''
+ if i[-1] == '*' and line.startswith(i[:-1]):
+ return ''
+
+ return line
+
+def fixup(includes, module):
+ """ Here we add any headers
+ necessary in the pch.
+ These could be known to be very
+ common but for technical reasons
+ left out of the pch by this generator.
+ Or, they could be missing from the
+ source files where they are used
+ (probably because they had been
+ in the old pch, they were missed).
+ Also, these could be headers
+ that make the build faster but
+ aren't added automatically.
+ """
+ fixes = []
+ def append(inc):
+ # Add a space to exclude from
+ # ignore bisecting.
+ line = ' #include <{}>'.format(inc)
+ try:
+ i = fixes.index(inc)
+ fixes[i] = inc
+ except:
+ fixes.append(inc)
+
+ append('sal/config.h')
+
+ if module == 'basctl':
+ if 'basslots.hxx' in includes:
+ append('sfx2/msg.hxx')
+
+ #if module == 'sc':
+ # if 'scslots.hxx' in includes:
+ # append('sfx2/msg.hxx')
+ return fixes
+
+def sort_by_category(list, root, module, filter_local):
+ """ Move all 'system' headers first.
+ Core files of osl, rtl, sal, next.
+ Everything non-module-specific third.
+ Last, module-specific headers.
+ """
+ sys = []
+ boo = []
+ cor = []
+ rst = []
+ mod = []
+
+ prefix = '<' + module + '/'
+ for i in list:
+ if 'sal/config.h' in i:
+ continue # added unconditionally in fixup
+ if is_c_runtime(i, root, module):
+ sys.append(i)
+ elif '<boost/' in i:
+ boo.append(i)
+ elif prefix in i or not '/' in i:
+ mod.append(i)
+ elif '<sal/' in i or '<vcl/' in i:
+ cor.append(i)
+ elif '<osl/' in i or '<rtl/' in i:
+ if module == "sal": # osl and rtl are also part of sal
+ mod.append(i)
+ else:
+ cor.append(i)
+ # Headers from another module that is closely tied to the module.
+ elif module == 'sc' and '<formula' in i:
+ mod.append(i)
+ else:
+ rst.append(i)
+
+ out = []
+ out += [ "#if PCH_LEVEL >= 1" ]
+ out += sorted(sys)
+ out += sorted(boo)
+ out += [ "#endif // PCH_LEVEL >= 1" ]
+ out += [ "#if PCH_LEVEL >= 2" ]
+ out += sorted(cor)
+ out += [ "#endif // PCH_LEVEL >= 2" ]
+ out += [ "#if PCH_LEVEL >= 3" ]
+ out += sorted(rst)
+ out += [ "#endif // PCH_LEVEL >= 3" ]
+ out += [ "#if PCH_LEVEL >= 4" ]
+ out += sorted(mod)
+ out += [ "#endif // PCH_LEVEL >= 4" ]
+ return out
+
+def parse_makefile(groups, lines, lineno, lastif, ifstack):
+
+ inobjects = False
+ ingeneratedobjects = False
+ inelse = False
+ suffix = 'cxx'
+ os_cond_re = re.compile(r'(ifeq|ifneq)\s*\(\$\(OS\)\,(\w*)\)')
+
+ line = lines[lineno]
+ if line.startswith('if'):
+ lastif = line
+ if ifstack == 0:
+ # Correction if first line is an if.
+ lineno = parse_makefile(groups, lines, lineno, line, ifstack+1)
+ else:
+ lineno -= 1
+
+ while lineno + 1 < len(lines):
+ lineno += 1
+ line = lines[lineno].strip()
+ line = line.rstrip('\\').strip()
+ #print('line #{}: {}'.format(lineno, line))
+ if len(line) == 0:
+ continue
+
+ if line == '))':
+ inobjects = False
+ ingeneratedobjects = False
+ elif 'add_exception_objects' in line or \
+ 'add_cxxobject' in line:
+ inobjects = True
+ #print('inobjects')
+ #if ifstack and not SILENT:
+ #sys.stderr.write('Sources in a conditional, ignoring for now.\n')
+ elif 'add_generated_exception_objects' in line or \
+ 'add_generated_cxxobject' in line:
+ ingeneratedobjects = True
+ elif 'set_generated_cxx_suffix' in line:
+ suffix_re = re.compile('.*set_generated_cxx_suffix,[^,]*,([^)]*).*')
+ match = suffix_re.match(line)
+ if match:
+ suffix = match.group(1)
+ elif line.startswith('if'):
+ lineno = parse_makefile(groups, lines, lineno, line, ifstack+1)
+ continue
+ elif line.startswith('endif'):
+ if ifstack:
+ return lineno
+ continue
+ elif line.startswith('else'):
+ inelse = True
+ elif inobjects or ingeneratedobjects:
+ if EXCLUDE_SYSTEM and ifstack:
+ continue
+ file = line + '.' + suffix
+ if ',' in line or '(' in line or ')' in line or file.startswith('-'):
+ #print('passing: ' + line)
+ pass # $if() probably, or something similar
+ else:
+ osname = ''
+ if lastif:
+ if 'filter' in lastif:
+ # We can't grok filter, yet.
+ continue
+ match = os_cond_re.match(lastif)
+ if not match:
+ # We only support OS conditionals.
+ continue
+ in_out = match.group(1)
+ osname = match.group(2) if match else ''
+ if (in_out == 'ifneq' and not inelse) or \
+ (in_out == 'ifeq' and inelse):
+ osname = '!' + osname
+
+ if osname not in groups:
+ groups[osname] = []
+ if ingeneratedobjects:
+ file = WORKDIR + '/' + file
+ groups[osname].append(file)
+
+ return groups
+
+def process_makefile(root, module, libname):
+ """ Parse a gmake makefile and extract
+ source filenames from it.
+ """
+
+ makefile = 'Library_{}.mk'.format(libname)
+ filename = os.path.join(os.path.join(root, module), makefile)
+ if not os.path.isfile(filename):
+ makefile = 'StaticLibrary_{}.mk'.format(libname)
+ filename = os.path.join(os.path.join(root, module), makefile)
+ if not os.path.isfile(filename):
+ sys.stderr.write('Error: Module {} has no makefile at {}.'.format(module, filename))
+
+ groups = {'':[], 'ANDROID':[], 'iOS':[], 'WNT':[], 'LINUX':[], 'MACOSX':[]}
+
+ with open(filename, 'r') as f:
+ lines = f.readlines()
+ groups = parse_makefile(groups, lines, lineno=0, lastif=None, ifstack=0)
+
+ return groups
+
+def is_allowed_if(line, module):
+ """ Check whether the given #if condition
+ is allowed for the given module or whether
+ its block should be ignored.
+ """
+
+ # remove trailing comments
+ line = re.sub(r'(.*) *//.*', r'\1', line)
+ line = line.strip()
+
+ # Our sources always build with LIBO_INTERNAL_ONLY.
+ if line == "#if defined LIBO_INTERNAL_ONLY" or line == "#ifdef LIBO_INTERNAL_ONLY":
+ return True
+ # We use PCHs only for C++.
+ if line == "#if defined(__cplusplus)" or line == "#if defined __cplusplus":
+ return True
+ # Debug-specific code, it shouldn't hurt including it unconditionally.
+ if line == "#ifdef DBG_UTIL" or line == "#if OSL_DEBUG_LEVEL > 0":
+ return True
+ if module == "external/skia":
+ # We always set these.
+ if line == "#ifdef SK_VULKAN" or line == "#if SK_SUPPORT_GPU":
+ return True
+ return False
+
+def process_source(root, module, filename, maxdepth=0):
+ """ Process a source file to extract
+ included headers.
+ For now, skip on compiler directives.
+ maxdepth is used when processing headers
+ which typically have protecting ifndef.
+ """
+
+ ifdepth = 0
+ lastif = ''
+ raw_includes = []
+ allowed_ifs = []
+ ifsallowed = 0
+ with open(filename, 'r') as f:
+ for line in f:
+ line = line.strip()
+ if line.startswith('#if'):
+ if is_allowed_if(line, module):
+ allowed_ifs.append(True)
+ ifsallowed += 1
+ else:
+ allowed_ifs.append(False)
+ lastif = line
+ ifdepth += 1
+ elif line.startswith('#endif'):
+ ifdepth -= 1
+ if allowed_ifs[ ifdepth ]:
+ ifsallowed -= 1
+ else:
+ lastif = '#if'
+ del allowed_ifs[ ifdepth ]
+ elif line.startswith('#pragma once'):
+ # maxdepth == 1 means we are parsing a header file
+ # and are allowed one #ifdef block (the include guard),
+ # but in the #pragma once case do not allow that
+ assert maxdepth == 1
+ maxdepth = 0
+ elif line.startswith('#include'):
+ if ifdepth - ifsallowed <= maxdepth:
+ line = sanitize(line)
+ if line:
+ line = get_filename(line)
+ if line and len(line):
+ raw_includes.append(line)
+ elif not SILENT:
+ sys.stderr.write('#include in {} : {}\n'.format(lastif, line))
+
+ return raw_includes
+
+def explode(root, module, includes, tree, filter_local, recurse):
+ incpath = os.path.join(root, 'include')
+
+ for inc in includes:
+ filename = get_filename(inc)
+ if filename in tree or len(filter_local.proc(filename)) == 0:
+ continue
+
+ try:
+ # Module or Local header.
+ filepath = filter_local.find_local_file(inc)
+ if filepath:
+ #print('trying loc: ' + filepath)
+ incs = process_source(root, module, filepath, maxdepth=1)
+ incs = map(get_filename, incs)
+ incs = process_list(incs, lambda x: filter_ignore(x, module))
+ incs = process_list(incs, filter_local.proc)
+ tree[filename] = incs
+ if recurse:
+ tree = explode(root, module, incs, tree, filter_local, recurse)
+ #print('{} => {}'.format(filepath, tree[filename]))
+ continue
+ except:
+ pass
+
+ try:
+ # Public header.
+ filepath = os.path.join(incpath, filename)
+ #print('trying pub: ' + filepath)
+ incs = process_source(root, module, filepath, maxdepth=1)
+ incs = map(get_filename, incs)
+ incs = process_list(incs, lambda x: filter_ignore(x, module))
+ incs = process_list(incs, filter_local.proc)
+ tree[filename] = incs
+ if recurse:
+ tree = explode(root, module, incs, tree, filter_local, recurse)
+ #print('{} => {}'.format(filepath, tree[filename]))
+ continue
+ except:
+ pass
+
+ # Failed, but remember to avoid searching again.
+ tree[filename] = []
+
+ return tree
+
+def make_command_line():
+ args = sys.argv[:]
+ # Remove command line flags and
+ # use internal flags.
+ for i in range(len(args)-1, 0, -1):
+ if args[i].startswith('--'):
+ args.pop(i)
+
+ args.append('--cutoff=' + str(CUTOFF))
+ if EXCLUDE_SYSTEM:
+ args.append('--exclude:system')
+ else:
+ args.append('--include:system')
+ if EXCLUDE_MODULE:
+ args.append('--exclude:module')
+ else:
+ args.append('--include:module')
+ if EXCLUDE_LOCAL:
+ args.append('--exclude:local')
+ else:
+ args.append('--include:local')
+
+ return ' '.join(args)
+
+def generate_includes(includes):
+ """Generates the include lines of the pch.
+ """
+ lines = []
+ for osname, group in includes.items():
+ if not len(group):
+ continue
+
+ if len(osname):
+ not_eq = ''
+ if osname[0] == '!':
+ not_eq = '!'
+ osname = osname[1:]
+ lines.append('')
+ lines.append('#if {}defined({})'.format(not_eq, osname))
+
+ for i in group:
+ lines.append(i)
+
+ if len(osname):
+ lines.append('#endif')
+
+ return lines
+
+def generate(includes, libname, filename, module):
+ header = \
+"""/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+/*
+ This file has been autogenerated by update_pch.sh. It is possible to edit it
+ manually (such as when an include file has been moved/renamed/removed). All such
+ manual changes will be rewritten by the next run of update_pch.sh (which presumably
+ also fixes all possible problems, so it's usually better to use it).
+"""
+
+ footer = \
+"""
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+"""
+ import datetime
+
+ with open(filename, 'w') as f:
+ f.write(header)
+ f.write('\n Generated on {} using:\n {}\n'.format(
+ datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
+ make_command_line()))
+ f.write('\n If after updating build fails, use the following command to locate conflicting headers:\n ./bin/update_pch_bisect {} "make {}.build" --find-conflicts\n*/\n'.format(
+ filename, module))
+
+ # sal needs this for rand_s()
+ if module == 'sal' and libname == 'sal':
+ sal_define = """
+#if defined(_WIN32)
+#define _CRT_RAND_S
+#endif
+"""
+ f.write(sal_define)
+
+ # Dump the headers.
+ f.write('\n')
+ for i in includes:
+ f.write(i + '\n')
+
+ # Some libraries pull windows headers that aren't self contained.
+ if (module == 'connectivity' and libname == 'ado') or \
+ (module == 'xmlsecurity' and libname == 'xsec_xmlsec'):
+ ado_define = """
+// Cleanup windows header macro pollution.
+#if defined(_WIN32) && defined(WINAPI)
+#include <postwin.h>
+#undef RGB
+#endif
+"""
+ f.write(ado_define)
+
+ f.write(footer)
+
+def remove_from_tree(filename, tree):
+ # Remove this file, if top-level.
+ incs = tree.pop(filename, [])
+ for i in incs:
+ tree = remove_from_tree(i, tree)
+
+ # Also remove if included from another.
+ for (k, v) in tree.items():
+ if filename in v:
+ v.remove(filename)
+
+ return tree
+
+def tree_to_list(includes, filename, tree):
+ if filename in includes:
+ return includes
+ includes.append(filename)
+ #incs = tree.pop(filename, [])
+ incs = tree[filename] if filename in tree else []
+ for i in incs:
+ tree_to_list(includes, i, tree)
+
+ return includes
+
+def promote(includes):
+ """ Common library headers are heavily
+ referenced, even if they are included
+ from a few places.
+ Here we separate them to promote
+ their inclusion in the final pch.
+ """
+ promo = []
+ for inc in includes:
+ if inc.startswith('boost') or \
+ inc.startswith('sal') or \
+ inc.startswith('osl') or \
+ inc.startswith('rtl'):
+ promo.append(inc)
+ return promo
+
+def make_pch_filename(root, module, libname):
+ """ PCH files are stored here:
+ <root>/<module>/inc/pch/precompiled_<libname>.hxx
+ """
+
+ path = os.path.join(root, module)
+ path = os.path.join(path, 'inc')
+ path = os.path.join(path, 'pch')
+ path = os.path.join(path, 'precompiled_' + libname + '.hxx')
+ return path
+
+def main():
+
+ global CUTOFF
+ global EXCLUDE_MODULE
+ global EXCLUDE_LOCAL
+ global EXCLUDE_SYSTEM
+ global SILENT
+ global WORKDIR
+
+ if os.getenv('WORKDIR'):
+ WORKDIR = os.getenv('WORKDIR')
+
+ root = '.'
+ module = sys.argv[1]
+ libname = sys.argv[2]
+ header = make_pch_filename(root, module, libname)
+
+ if not os.path.exists(os.path.join(root, module)):
+ raise Exception('Error: module [{}] not found.'.format(module))
+
+ key = '{}.{}'.format(module, libname)
+ if key in DEFAULTS:
+ # Load the module-specific defaults.
+ CUTOFF = DEFAULTS[key][0]
+ EXCLUDE_SYSTEM = DEFAULTS[key][1]
+ EXCLUDE_MODULE = DEFAULTS[key][2]
+ EXCLUDE_LOCAL = DEFAULTS[key][3]
+
+ force_update = False
+ for x in range(3, len(sys.argv)):
+ i = sys.argv[x]
+ if i.startswith('--cutoff='):
+ CUTOFF = int(i.split('=')[1])
+ elif i.startswith('--exclude:'):
+ cat = i.split(':')[1]
+ if cat == 'module':
+ EXCLUDE_MODULE = True
+ elif cat == 'local':
+ EXCLUDE_LOCAL = True
+ elif cat == 'system':
+ EXCLUDE_SYSTEM = True
+ elif i.startswith('--include:'):
+ cat = i.split(':')[1]
+ if cat == 'module':
+ EXCLUDE_MODULE = False
+ elif cat == 'local':
+ EXCLUDE_LOCAL = False
+ elif cat == 'system':
+ EXCLUDE_SYSTEM = False
+ elif i == '--silent':
+ SILENT = True
+ elif i == '--force':
+ force_update = True
+ else:
+ sys.stderr.write('Unknown option [{}].'.format(i))
+ return 1
+
+ filter_local = Filter_Local(root, module, \
+ not EXCLUDE_MODULE, \
+ not EXCLUDE_LOCAL)
+
+ # Read input.
+ groups = process_makefile(root, module, libname)
+
+ generic = []
+ for osname, group in groups.items():
+ if not len(group):
+ continue
+
+ includes = []
+ for filename in group:
+ includes += process_source(root, module, filename)
+
+ # Save unique top-level includes.
+ unique = set(includes)
+ promoted = promote(unique)
+
+ # Process includes.
+ includes = remove_rare(includes)
+ includes = process_list(includes, lambda x: filter_ignore(x, module))
+ includes = process_list(includes, filter_local.proc)
+
+ # Remove the already included ones.
+ for inc in includes:
+ unique.discard(inc)
+
+ # Explode the excluded ones.
+ tree = {i:[] for i in includes}
+ tree = explode(root, module, unique, tree, filter_local, not EXCLUDE_MODULE)
+
+ # Remove the already included ones from the tree.
+ for inc in includes:
+ filename = get_filename(inc)
+ tree = remove_from_tree(filename, tree)
+
+ extra = []
+ for (k, v) in tree.items():
+ extra += tree_to_list([], k, tree)
+
+ promoted += promote(extra)
+ promoted = process_list(promoted, lambda x: filter_ignore(x, module))
+ promoted = process_list(promoted, filter_local.proc)
+ promoted = set(promoted)
+ # If a promoted header includes others, remove the rest.
+ for (k, v) in tree.items():
+ if k in promoted:
+ for i in v:
+ promoted.discard(i)
+ includes += [x for x in promoted]
+
+ extra = remove_rare(extra)
+ extra = process_list(extra, lambda x: filter_ignore(x, module))
+ extra = process_list(extra, filter_local.proc)
+ includes += extra
+
+ includes = [x for x in set(includes)]
+ fixes = fixup(includes, module)
+ fixes = map(lambda x: '#include <' + x + '>', fixes)
+
+ includes = map(lambda x: '#include <' + x + '>', includes)
+ sorted = sort_by_category(includes, root, module, filter_local)
+ includes = list(fixes) + sorted
+
+ if len(osname):
+ for i in generic:
+ if i in includes:
+ includes.remove(i)
+
+ groups[osname] = includes
+ if not len(osname):
+ generic = includes
+
+ # Open the old pch and compare its contents
+ # with new includes.
+ # Clobber only if they are different.
+ with open(header, 'r') as f:
+ old_pch_lines = [x.strip() for x in f.readlines()]
+ new_lines = generate_includes(groups)
+ # Find the first include in the old pch.
+ start = -1
+ for i in range(len(old_pch_lines)):
+ if old_pch_lines[i].startswith('#include') or old_pch_lines[i].startswith('#if PCH_LEVEL'):
+ start = i
+ break
+ # Clobber if there is a mismatch.
+ if force_update or start < 0 or (len(old_pch_lines) - start < len(new_lines)):
+ generate(new_lines, libname, header, module)
+ return 0
+ else:
+ for i in range(len(new_lines)):
+ if new_lines[i] != old_pch_lines[start + i]:
+ generate(new_lines, libname, header, module)
+ return 0
+ else:
+ # Identical, but see if new pch removed anything.
+ for i in range(start + len(new_lines), len(old_pch_lines)):
+ if '#include' in old_pch_lines[i]:
+ generate(new_lines, libname, header, module)
+ return 0
+
+ # Didn't update.
+ # Use exit code 2 to distinguish it from exit code 1 used e.g. when an exception occurs.
+ return 2
+
+if __name__ == '__main__':
+ """ Process all the includes in a Module
+ to make into a PCH file.
+ Run without arguments for unittests,
+ and to see usage.
+ """
+
+ if len(sys.argv) >= 3:
+ status = main()
+ sys.exit(status)
+
+ print('Usage: {} <Module name> <Library name> [options]'.format(sys.argv[0]))
+ print(' Always run from the root of LO repository.\n')
+ print(' Options:')
+ print(' --cutoff=<count> - Threshold to excluding headers.')
+ print(' --exclude:<category> - Exclude category-specific headers.')
+ print(' --include:<category> - Include category-specific headers.')
+ print(' --force - Force updating the pch even when nothing changes.')
+ print(' Categories:')
+ print(' module - Headers in /inc directory of a module.')
+ print(' local - Headers local to a source file.')
+ print(' system - Platform-specific headers.')
+ print(' --silent - print only errors.')
+ print('\nRunning unit-tests...')
+
+
+class TestMethods(unittest.TestCase):
+
+ def test_sanitize(self):
+ self.assertEqual(sanitize('#include "blah/file.cxx"'),
+ '#include <blah/file.cxx>')
+ self.assertEqual(sanitize(' #include\t"blah/file.cxx" '),
+ '#include <blah/file.cxx>')
+ self.assertEqual(sanitize(' '),
+ '')
+
+ def test_filter_ignore(self):
+ self.assertEqual(filter_ignore('blah/file.cxx', 'mod'),
+ '')
+ self.assertEqual(filter_ignore('vector', 'mod'),
+ 'vector')
+ self.assertEqual(filter_ignore('file.cxx', 'mod'),
+ '')
+
+ def test_remove_rare(self):
+ self.assertEqual(remove_rare([]),
+ [])
+
+class TestMakefileParser(unittest.TestCase):
+
+ def setUp(self):
+ global EXCLUDE_SYSTEM
+ EXCLUDE_SYSTEM = False
+
+ def test_parse_singleline_eval(self):
+ source = "$(eval $(call gb_Library_Library,sal))"
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 1)
+ self.assertEqual(len(groups['']), 0)
+
+ def test_parse_multiline_eval(self):
+ source = """$(eval $(call gb_Library_set_include,sal,\\
+ $$(INCLUDE) \\
+ -I$(SRCDIR)/sal/inc \\
+))
+"""
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 1)
+ self.assertEqual(len(groups['']), 0)
+
+ def test_parse_multiline_eval_with_if(self):
+ source = """$(eval $(call gb_Library_add_defs,sal,\\
+ $(if $(filter $(OS),iOS), \\
+ -DNO_CHILD_PROCESSES \\
+ ) \\
+))
+"""
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 1)
+ self.assertEqual(len(groups['']), 0)
+
+ def test_parse_multiline_add_with_if(self):
+ source = """$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/unx/time \\
+ $(if $(filter DESKTOP,$(BUILD_TYPE)), sal/osl/unx/salinit) \\
+))
+"""
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 1)
+ self.assertEqual(len(groups['']), 1)
+ self.assertEqual(groups[''][0], 'sal/osl/unx/time.cxx')
+
+ def test_parse_if_else(self):
+ source = """ifeq ($(OS),MACOSX)
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/mac/mac \\
+))
+else
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/unx/uunxapi \\
+))
+endif
+"""
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 3)
+ self.assertEqual(len(groups['']), 0)
+ self.assertEqual(len(groups['MACOSX']), 1)
+ self.assertEqual(len(groups['!MACOSX']), 1)
+ self.assertEqual(groups['MACOSX'][0], 'sal/osl/mac/mac.cxx')
+ self.assertEqual(groups['!MACOSX'][0], 'sal/osl/unx/uunxapi.cxx')
+
+ def test_parse_nested_if(self):
+ source = """ifeq ($(OS),MACOSX)
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/mac/mac \\
+))
+else
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/unx/uunxapi \\
+))
+
+ifeq ($(OS),LINUX)
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/textenc/context \\
+))
+endif
+endif
+"""
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 4)
+ self.assertEqual(len(groups['']), 0)
+ self.assertEqual(len(groups['MACOSX']), 1)
+ self.assertEqual(len(groups['!MACOSX']), 1)
+ self.assertEqual(len(groups['LINUX']), 1)
+ self.assertEqual(groups['MACOSX'][0], 'sal/osl/mac/mac.cxx')
+ self.assertEqual(groups['!MACOSX'][0], 'sal/osl/unx/uunxapi.cxx')
+ self.assertEqual(groups['LINUX'][0], 'sal/textenc/context.cxx')
+
+ def test_parse_exclude_system(self):
+ source = """ifeq ($(OS),MACOSX)
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/mac/mac \\
+))
+else
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/unx/uunxapi \\
+))
+
+ifeq ($(OS),LINUX)
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/textenc/context \\
+))
+endif
+endif
+"""
+ global EXCLUDE_SYSTEM
+ EXCLUDE_SYSTEM = True
+
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 1)
+ self.assertEqual(len(groups['']), 0)
+
+ def test_parse_filter(self):
+ source = """ifneq ($(filter $(OS),MACOSX iOS),)
+$(eval $(call gb_Library_add_exception_objects,sal,\\
+ sal/osl/unx/osxlocale \\
+))
+endif
+"""
+ # Filter is still unsupported.
+ lines = source.split('\n')
+ groups = {'':[]}
+ groups = parse_makefile(groups, lines, 0, None, 0)
+ self.assertEqual(len(groups), 1)
+ self.assertEqual(len(groups['']), 0)
+
+unittest.main()
+
+# vim: set et sw=4 ts=4 expandtab:
diff --git a/bin/update_pch.sh b/bin/update_pch.sh
new file mode 100755
index 000000000..4c17a0374
--- /dev/null
+++ b/bin/update_pch.sh
@@ -0,0 +1,70 @@
+#! /bin/bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# Usage: update_pch.sh [<module>/inc/pch/precompiled_xxx.hxx]
+# Usage: update_pch.sh [<module>]
+# Invoke: make cmd cmd="./bin/update_pch.sh [..]"
+
+if test -n "$SRC_DIR"; then
+ root="$SRC_DIR"
+else
+ root=`dirname $0`
+ root=`cd $root/.. >/dev/null && pwd`
+fi
+root=`readlink -f $root`
+cd $root
+
+if test -z "$1"; then
+ headers=`ls ./*/inc/pch/precompiled_*.hxx`
+else
+ headers="$@"
+fi
+
+# Split the headers into an array.
+IFS=' ' read -a aheaders <<< $headers
+hlen=${#aheaders[@]};
+if [ $hlen -gt 1 ]; then
+ if [ -z "$PARALLELISM" ]; then
+ PARALLELISM=0 # Let xargs decide
+ fi
+ echo $headers | xargs -n 1 -P $PARALLELISM $0
+ exit $?
+fi
+
+for x in $headers; do
+ if [ -d "$x" ]; then
+ # We got a directory, find pch files to update.
+ headers=`find $root/$x/ -type f -iname "precompiled_*.hxx"`
+ if test -n "$headers"; then
+ $0 "$headers"
+ fi
+ else
+ header=$x
+ update_msg=`echo $header | sed -e s%$root/%%`
+ module=`readlink -f $header | sed -e s%$root/%% -e s%/.*%%`
+ if [ "$module" = "pch" ]; then
+ continue # PCH's in pch/inc/pch/ are handled manually
+ fi
+ echo updating $update_msg
+ if [ "$module" = "external" ]; then
+ module=external/`readlink -f $header | sed -e s%$root/external/%% -e s%/.*%%`
+ fi
+ libname=`echo $header | sed -e s/.*precompiled_// -e s/\.hxx//`
+
+ ./bin/update_pch "$module" "$libname"
+ exitcode=$?
+ if test $exitcode -ne 0 -a $exitcode -ne 2; then
+ echo Failed.
+ exit 1
+ fi
+ fi
+done
+
+#echo Done.
+exit 0
diff --git a/bin/update_pch_autotune.sh b/bin/update_pch_autotune.sh
new file mode 100755
index 000000000..806e1ad17
--- /dev/null
+++ b/bin/update_pch_autotune.sh
@@ -0,0 +1,229 @@
+#! /bin/bash
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+# Finds the optimal update_pch settings that results in,
+# per module and library, the fastest build time and
+# smallest intermediate files (.o/.obj) output.
+
+# Usage: update_pch_autotune.sh [<module1> <module2>]
+# Invoke: /opt/lo/bin/make cmd cmd="./bin/update_pch_autotune.sh [..]"
+
+# The resulting values may be entered in update_pch
+# to be use for generating PCH in the future.
+# Run this script after major header changes.
+
+root=`dirname $0`
+root=`cd $root/.. && pwd`
+cd $root
+
+if test -z "$1"; then
+ modules=`ls ./*/inc/pch/precompiled_*.hxx | sed -e s%./%% -e s%/.*%% | uniq`
+else
+ modules="$@"
+fi
+
+if [[ "$OSTYPE" == "cygwin" ]]; then
+ MAKE=/opt/lo/bin/make
+else
+ MAKE=make
+fi
+
+function build()
+{
+ local START=$(date +%s.%N)
+
+ $MAKE -sr "$module" > /dev/null
+ status=$?
+ if [ $status -ne 0 ];
+ then
+ # Spurious failures happen.
+ $MAKE "$module.build" > /dev/null
+ status=$?
+ fi
+
+ local END=$(date +%s.%N1)
+ build_time=$(printf %.1f $(echo "$END - $START" | bc))
+
+ size="FAILED"
+ score="FAILED"
+ if [ $status -eq 0 ];
+ then
+ # The total size of the object files.
+ size="$(du -s workdir/CxxObject/$module/ | awk '{print $1}')"
+ # Add the pch file size.
+ filename_rel="workdir/PrecompiledHeader/nodebug/$(basename $header)*"
+ filename_dbg="workdir/PrecompiledHeader/debug/$(basename $header)*"
+ if [[ $filename_rel -nt $filename_dbg ]]; then
+ pch_size="$(du -s $filename_rel | awk '{print $1}' | paste -sd+ | bc)"
+ else
+ pch_size="$(du -s $filename_dbg | awk '{print $1}' | paste -sd+ | bc)"
+ fi
+ size="$(echo "$pch_size + $size" | bc)"
+
+ # Compute a score based on the build time and size.
+ # The shorter the build time, and smaller disk usage, the higher the score.
+ score=$(printf %.2f $(echo "10000 / ($build_time * e($size/1048576))" | bc -l))
+ fi
+}
+
+function run()
+{
+ local msg="$module.$libname, ${@:3}, "
+ printf "$msg"
+ ./bin/update_pch "$module" "$libname" "${@:3}" --silent
+ status=$?
+
+ if [ $status -eq 0 ];
+ then
+ build
+
+ summary="$build_time, $size, $score"
+ if [ $status -eq 0 ];
+ then
+ new_best_for_cuttof=$(echo "$score > $best_score_for_cuttof" | bc -l)
+ if [ $new_best_for_cuttof -eq 1 ];
+ then
+ best_score_for_cuttof=$score
+ fi
+
+ new_best=$(echo "$score > $best_score" | bc -l)
+ if [ $new_best -eq 1 ];
+ then
+ best_score=$score
+ best_args="${@:3}"
+ best_time=$build_time
+ best_cutoff=$cutoff
+ summary="$build_time, $size, $score,*"
+ fi
+ fi
+ else
+ # Skip if pch is not updated.
+ summary="0, 0, 0"
+ fi
+
+ echo "$summary"
+}
+
+function args_to_table()
+{
+ local sys="EXCLUDE"
+ local mod="EXCLUDE"
+ local loc="EXCLUDE"
+ local cutoff=0
+ IFS=' ' read -r -a aargs <<< $best_args
+ for index in "${!aargs[@]}"
+ do
+ if [ "${aargs[index]}" = "--include:system" ];
+ then
+ sys="INCLUDE"
+ elif [ "${aargs[index]}" = "--exclude:system" ];
+ then
+ sys="EXCLUDE"
+ elif [ "${aargs[index]}" = "--include:module" ];
+ then
+ mod="INCLUDE"
+ elif [ "${aargs[index]}" = "--exclude:module" ];
+ then
+ mod="EXCLUDE"
+ elif [ "${aargs[index]}" = "--include:local" ];
+ then
+ loc="INCLUDE"
+ elif [ "${aargs[index]}" = "--exclude:local" ];
+ then
+ loc="EXCLUDE"
+ elif [[ "${aargs[index]}" == *"cutoff"* ]]
+ then
+ cutoff=$(echo "${aargs[index]}" | grep -Po '\-\-cutoff\=\K\d+')
+ fi
+ done
+
+ local key=$(printf "'%s.%s'" $module $libname)
+ echo "$(printf " %-36s: (%2d, %s, %s, %s), # %5.1f" $key $cutoff $sys $mod $loc $best_time)"
+}
+
+for module in $modules; do
+
+ # Build without pch includes as sanity check.
+ #run "$root" "$module" --cutoff=999
+
+ # Build before updating pch.
+ $MAKE "$module.build" > /dev/null
+ if [ $? -ne 0 ];
+ then
+ # Build with dependencies before updating pch.
+ echo "Failed to build $module, building known state with dependencies..."
+ ./bin/update_pch.sh "$module" > /dev/null
+ $MAKE "$module.clean" > /dev/null
+ $MAKE "$module.all" > /dev/null
+ if [ $? -ne 0 ];
+ then
+ # Build all!
+ echo "Failed to build $module with dependencies, building all..."
+ $MAKE > /dev/null
+ if [ $? -ne 0 ];
+ then
+ >&2 echo "Broken build. Please revert changes and try again."
+ exit 1
+ fi
+ fi
+ fi
+
+ # Find pch files in the module to update.
+ headers=`find $root/$module/ -type f -iname "precompiled_*.hxx"`
+
+ # Each pch belongs to a library.
+ for header in $headers; do
+ libname=`echo $header | sed -e s/.*precompiled_// -e s/\.hxx//`
+ #TODO: Backup the header and restore when last tune fails.
+
+ # Force update on first try below.
+ echo "Autotuning $module.$libname..."
+ ./bin/update_pch "$module" "$libname" --cutoff=999 --silent --force
+
+ best_score=0
+ best_args=""
+ best_time=0
+ best_cutoff=0
+ for i in {1..16}; do
+ cutoff=$i
+ best_score_for_cuttof=0
+ #run "$root" "$module" "--cutoff=$i" --include:system --exclude:module --exclude:local
+ run "$root" "$module" "--cutoff=$i" --exclude:system --exclude:module --exclude:local
+ #run "$root" "$module" "--cutoff=$i" --include:system --include:module --exclude:local
+ run "$root" "$module" "--cutoff=$i" --exclude:system --include:module --exclude:local
+ #run "$root" "$module" "--cutoff=$i" --include:system --exclude:module --include:local
+ run "$root" "$module" "--cutoff=$i" --exclude:system --exclude:module --include:local
+ #run "$root" "$module" "--cutoff=$i" --include:system --include:module --include:local
+ run "$root" "$module" "--cutoff=$i" --exclude:system --include:module --include:local
+
+ if [ $i -gt $((best_cutoff+2)) ];
+ then
+ score_too_low=$(echo "$best_score_for_cuttof < $best_score / 1.10" | bc -l)
+ if [ $score_too_low -eq 1 ];
+ then
+ echo "Score hit low of $best_score_for_cuttof, well below overall best of $best_score. Stopping."
+ break;
+ fi
+ fi
+ done
+
+ ./bin/update_pch "$module" "$libname" $best_args --force --silent
+ echo "> $module.$libname, $best_args, $best_time, $size, $score"
+ echo
+
+ table+=$'\n'
+ table+="$(args_to_table)"
+ done
+
+done
+
+echo "Update the relevant lines in ./bin/update_pch script:"
+>&2 echo "$table"
+
+exit 0
diff --git a/bin/update_pch_bisect b/bin/update_pch_bisect
new file mode 100755
index 000000000..271cbc88f
--- /dev/null
+++ b/bin/update_pch_bisect
@@ -0,0 +1,354 @@
+#! /usr/bin/env python
+# -*- Mode: python; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+"""
+This script is to fix precompiled headers.
+
+This script runs in two modes.
+In one mode, it starts with a header
+that doesn't compile. If finds the
+minimum number of includes in the
+header to remove to get a successful
+run of the command (i.e. compile).
+
+In the second mode, it starts with a
+header that compiles fine, however,
+it contains one or more required
+include without which it wouldn't
+compile, which it identifies.
+
+Usage: ./bin/update_pch_bisect ./vcl/inc/pch/precompiled_vcl.hxx "make vcl.build" --find-required --verbose
+"""
+
+import sys
+import re
+import os
+import unittest
+import subprocess
+
+SILENT = True
+FIND_CONFLICTS = True
+
+IGNORE = 0
+GOOD = 1
+TEST_ON = 2
+TEST_OFF = 3
+BAD = 4
+
+def run(command):
+ try:
+ cmd = command.split(' ', 1)
+ status = subprocess.call(cmd, stdout=open(os.devnull, 'w'),
+ stderr=subprocess.STDOUT, close_fds=True)
+ return True if status == 0 else False
+ except Exception as e:
+ sys.stderr.write('Error: {}\n'.format(e))
+ return False
+
+def update_pch(filename, lines, marks):
+ with open(filename, 'w') as f:
+ for i in xrange(len(marks)):
+ mark = marks[i]
+ if mark <= TEST_ON:
+ f.write(lines[i])
+ else:
+ f.write('//' + lines[i])
+
+def log(*args, **kwargs):
+ global SILENT
+ if not SILENT:
+ print(*args, **kwargs)
+
+def bisect(lines, marks, min, max, update, command):
+ """ Disable half the includes and
+ calls the command.
+ Depending on the result,
+ recurse or return.
+ """
+ global FIND_CONFLICTS
+
+ log('Bisecting [{}, {}].'.format(min+1, max))
+ for i in range(min, max):
+ if marks[i] != IGNORE:
+ marks[i] = TEST_ON if FIND_CONFLICTS else TEST_OFF
+
+ assume_fail = False
+ if not FIND_CONFLICTS:
+ on_list = [x for x in marks if x in (TEST_ON, GOOD)]
+ assume_fail = (len(on_list) == 0)
+
+ update(lines, marks)
+ if assume_fail or not command():
+ # Failed
+ log('Failed [{}, {}].'.format(min+1, max))
+ if min >= max - 1:
+ if not FIND_CONFLICTS:
+ # Try with this one alone.
+ marks[min] = TEST_ON
+ update(lines, marks)
+ if command():
+ log(' Found @{}: {}'.format(min+1, lines[min].strip('\n')))
+ marks[min] = GOOD
+ return marks
+ else:
+ log(' Found @{}: {}'.format(min+1, lines[min].strip('\n')))
+ # Either way, this one is irrelevant.
+ marks[min] = BAD
+ return marks
+
+ # Bisect
+ for i in range(min, max):
+ if marks[i] != IGNORE:
+ marks[i] = TEST_OFF if FIND_CONFLICTS else TEST_ON
+
+ half = min + ((max - min) / 2)
+ marks = bisect(lines, marks, min, half, update, command)
+ marks = bisect(lines, marks, half, max, update, command)
+ else:
+ # Success
+ if FIND_CONFLICTS:
+ log(' Good [{}, {}].'.format(min+1, max))
+ for i in range(min, max):
+ if marks[i] != IGNORE:
+ marks[i] = GOOD
+
+ return marks
+
+def get_filename(line):
+ """ Strips the line from the
+ '#include' and angled brackets
+ and return the filename only.
+ """
+ return re.sub(r'(.*#include\s*)<(.*)>(.*)', r'\2', line)
+
+def get_marks(lines):
+ marks = []
+ min = -1
+ max = -1
+ for i in xrange(len(lines)):
+ line = lines[i]
+ if line.startswith('#include'):
+ marks.append(TEST_ON)
+ min = i if min < 0 else min
+ max = i
+ else:
+ marks.append(IGNORE)
+
+ return (marks, min, max+1)
+
+def main():
+
+ global FIND_CONFLICTS
+ global SILENT
+
+ filename = sys.argv[1]
+ command = sys.argv[2]
+
+ for i in range(3, len(sys.argv)):
+ opt = sys.argv[i]
+ if opt == '--find-conflicts':
+ FIND_CONFLICTS = True
+ elif opt == '--find-required':
+ FIND_CONFLICTS = False
+ elif opt == '--verbose':
+ SILENT = False
+ else:
+ sys.stderr.write('Error: Unknown option [{}].\n'.format(opt))
+ return 1
+
+ lines = []
+ with open(filename) as f:
+ lines = f.readlines()
+
+ (marks, min, max) = get_marks(lines)
+
+ # Test preconditions.
+ log('Validating all-excluded state...')
+ for i in range(min, max):
+ if marks[i] != IGNORE:
+ marks[i] = TEST_OFF
+ update_pch(filename, lines, marks)
+ res = run(command)
+
+ if FIND_CONFLICTS:
+ # Must build all excluded.
+ if not res:
+ sys.stderr.write("Error: broken state when all excluded, fix first and try again.")
+ return 1
+ else:
+ # If builds all excluded, we can't bisect.
+ if res:
+ sys.stderr.write("Done: in good state when all excluded, nothing to do.")
+ return 1
+
+ # Must build all included.
+ log('Validating all-included state...')
+ for i in range(min, max):
+ if marks[i] != IGNORE:
+ marks[i] = TEST_ON
+ update_pch(filename, lines, marks)
+ if not run(command):
+ sys.stderr.write("Error: broken state without modifying, fix first and try again.")
+ return 1
+
+ marks = bisect(lines, marks, min, max+1,
+ lambda l, m: update_pch(filename, l, m),
+ lambda: run(command))
+ if not FIND_CONFLICTS:
+ # Simplify further, as sometimes we can have
+ # false positives due to the benign nature
+ # of includes that are not absolutely required.
+ for i in xrange(len(marks)):
+ if marks[i] == GOOD:
+ marks[i] = TEST_OFF
+ update_pch(filename, lines, marks)
+ if not run(command):
+ # Revert.
+ marks[i] = GOOD
+ else:
+ marks[i] = BAD
+ elif marks[i] == TEST_OFF:
+ marks[i] = TEST_ON
+
+ update_pch(filename, lines, marks)
+
+ log('')
+ for i in xrange(len(marks)):
+ if marks[i] == (BAD if FIND_CONFLICTS else GOOD):
+ print("'{}',".format(get_filename(lines[i].strip('\n'))))
+
+ return 0
+
+if __name__ == '__main__':
+
+ if len(sys.argv) in (3, 4, 5):
+ status = main()
+ sys.exit(status)
+
+ print('Usage: {} <pch> <command> [--find-conflicts]|[--find-required] [--verbose]\n'.format(sys.argv[0]))
+ print(' --find-conflicts - Finds all conflicting includes. (Default)')
+ print(' Must compile without any includes.\n')
+ print(' --find-required - Finds all required includes.')
+ print(' Must compile with all includes.\n')
+ print(' --verbose - print noisy progress.')
+ print('Example: ./bin/update_pch_bisect ./vcl/inc/pch/precompiled_vcl.hxx "make vcl.build" --find-required --verbose')
+ print('\nRunning unit-tests...')
+
+
+class TestBisectConflict(unittest.TestCase):
+ TEST = """ /* Test header. */
+#include <memory>
+#include <set>
+#include <algorithm>
+#include <vector>
+/* blah blah */
+"""
+ BAD_LINE = "#include <bad>"
+
+ def setUp(self):
+ global FIND_CONFLICTS
+ FIND_CONFLICTS = True
+
+ def _update_func(self, lines, marks):
+ self.lines = []
+ for i in xrange(len(marks)):
+ mark = marks[i]
+ if mark <= TEST_ON:
+ self.lines.append(lines[i])
+ else:
+ self.lines.append('//' + lines[i])
+
+ def _test_func(self):
+ """ Command function called by bisect.
+ Returns True on Success, False on failure.
+ """
+ # If the bad line is still there, fail.
+ return self.BAD_LINE not in self.lines
+
+ def test_success(self):
+ lines = self.TEST.split('\n')
+ (marks, min, max) = get_marks(lines)
+ marks = bisect(lines, marks, min, max,
+ lambda l, m: self._update_func(l, m),
+ lambda: self._test_func())
+ self.assertTrue(BAD not in marks)
+
+ def test_conflict(self):
+ lines = self.TEST.split('\n')
+ for pos in xrange(len(lines) + 1):
+ lines = self.TEST.split('\n')
+ lines.insert(pos, self.BAD_LINE)
+ (marks, min, max) = get_marks(lines)
+
+ marks = bisect(lines, marks, min, max,
+ lambda l, m: self._update_func(l, m),
+ lambda: self._test_func())
+ for i in xrange(len(marks)):
+ if i == pos:
+ self.assertEqual(BAD, marks[i])
+ else:
+ self.assertNotEqual(BAD, marks[i])
+
+class TestBisectRequired(unittest.TestCase):
+ TEST = """#include <algorithm>
+#include <set>
+#include <map>
+#include <vector>
+"""
+ REQ_LINE = "#include <req>"
+
+ def setUp(self):
+ global FIND_CONFLICTS
+ FIND_CONFLICTS = False
+
+ def _update_func(self, lines, marks):
+ self.lines = []
+ for i in xrange(len(marks)):
+ mark = marks[i]
+ if mark <= TEST_ON:
+ self.lines.append(lines[i])
+ else:
+ self.lines.append('//' + lines[i])
+
+ def _test_func(self):
+ """ Command function called by bisect.
+ Returns True on Success, False on failure.
+ """
+ # If the required line is not there, fail.
+ found = self.REQ_LINE in self.lines
+ return found
+
+ def test_success(self):
+ lines = self.TEST.split('\n')
+ (marks, min, max) = get_marks(lines)
+ marks = bisect(lines, marks, min, max,
+ lambda l, m: self._update_func(l, m),
+ lambda: self._test_func())
+ self.assertTrue(GOOD not in marks)
+
+ def test_required(self):
+ lines = self.TEST.split('\n')
+ for pos in xrange(len(lines) + 1):
+ lines = self.TEST.split('\n')
+ lines.insert(pos, self.REQ_LINE)
+ (marks, min, max) = get_marks(lines)
+
+ marks = bisect(lines, marks, min, max,
+ lambda l, m: self._update_func(l, m),
+ lambda: self._test_func())
+ for i in xrange(len(marks)):
+ if i == pos:
+ self.assertEqual(GOOD, marks[i])
+ else:
+ self.assertNotEqual(GOOD, marks[i])
+
+unittest.main()
+
+# vim: set et sw=4 ts=4 expandtab:
diff --git a/bin/upload_symbols.py b/bin/upload_symbols.py
new file mode 100755
index 000000000..537675102
--- /dev/null
+++ b/bin/upload_symbols.py
@@ -0,0 +1,57 @@
+#!/usr/bin/env python3
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+import configparser
+import platform
+import argparse
+import requests
+
+
+def main():
+ parser = argparse.ArgumentParser()
+ parser.add_argument('symbols_dir')
+ parser.add_argument('config_dir')
+ parser.add_argument('version')
+ group = parser.add_mutually_exclusive_group()
+ group.add_argument('--system', action='store_true')
+ group.add_argument('--platform', choices=('Windows', 'Linux'))
+ args = parser.parse_args()
+
+ base_url = "https://crashreport.libreoffice.org/"
+ upload_url = base_url + "upload/"
+ login_url = base_url + "accounts/login/"
+
+ config = configparser.ConfigParser()
+ config.read(args.config_dir)
+
+ user = config["CrashReport"]["User"]
+ password = config["CrashReport"]["Password"]
+
+ files = {'symbols': open(args.symbols_dir, 'rb')}
+ data = {'version': args.version,
+ 'system': args.system,
+ 'platform': platform.system() if args.platform is None else args.platform}
+
+ session = requests.session()
+ session.get(login_url)
+ csrftoken = session.cookies['csrftoken']
+
+ login_data = {'username': user, 'password': password,
+ 'csrfmiddlewaretoken': csrftoken}
+ headers = {"Referer": base_url}
+ session.post(login_url, headers=headers, data=login_data)
+
+ data['csrfmiddlewaretoken'] = csrftoken
+
+ session.post(upload_url, headers=headers, files=files, data=data)
+
+
+if __name__ == "__main__":
+ main()
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/bin/verify-custom-widgets-libs b/bin/verify-custom-widgets-libs
new file mode 100755
index 000000000..7fad02f17
--- /dev/null
+++ b/bin/verify-custom-widgets-libs
@@ -0,0 +1,30 @@
+#!/bin/sh
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# Run this from the source root dir of a completed build to
+# verify that all customwidgets used in our .ui files have
+# their factory method in the library they claim to be in
+#
+# Under Linux dlsym will search other locations and find
+# them if they exist elsewhere, but not under windows, so
+# its easy to put the wrong lib name in if developing
+# under Linux
+
+ret=0
+FOO=`git grep -h -r lo- */uiconfig | sed -e "s/<object class=\"//g" | sed -e "s/\".*$//"| sed 's/^[ \t]*//;s/[ \t]*$//'|sort|uniq`
+for foo in $FOO; do
+ lib=$(echo $foo | cut -f1 -d-)
+ symbol=$(echo $foo | cut -f2 -d-)
+ nm -D instdir/program/lib$lib.so | grep make$symbol > /dev/null
+ if [ $? != 0 ]; then
+ echo "$foo exists in a .ui file, but make$symbol is missing from lib$lib.so, Windows will fail to find the symbol and crash"
+ echo " typically make$symbol is in a different library and $foo should have the prefix of that library instead"
+ ret=1
+ fi
+done
+exit $ret
diff --git a/binaryurp/CppunitTest_binaryurp_test-cache.mk b/binaryurp/CppunitTest_binaryurp_test-cache.mk
new file mode 100644
index 000000000..97f5b78f0
--- /dev/null
+++ b/binaryurp/CppunitTest_binaryurp_test-cache.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_CppunitTest_CppunitTest,binaryurp_test-cache))
+
+$(eval $(call gb_CppunitTest_use_external,binaryurp_test-cache,boost_headers))
+
+$(eval $(call gb_CppunitTest_use_libraries,binaryurp_test-cache,\
+ sal \
+))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,binaryurp_test-cache,\
+ binaryurp/qa/test-cache \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/binaryurp/CppunitTest_binaryurp_test-unmarshal.mk b/binaryurp/CppunitTest_binaryurp_test-unmarshal.mk
new file mode 100644
index 000000000..11c70f5b9
--- /dev/null
+++ b/binaryurp/CppunitTest_binaryurp_test-unmarshal.mk
@@ -0,0 +1,33 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_CppunitTest_CppunitTest,binaryurp_test-unmarshal))
+
+$(eval $(call gb_CppunitTest_use_external,binaryurp_test-unmarshal,boost_headers))
+
+$(eval $(call gb_CppunitTest_use_libraries,binaryurp_test-unmarshal,\
+ cppu \
+ cppuhelper \
+ sal \
+ salhelper \
+))
+
+$(eval $(call gb_CppunitTest_use_library_objects,binaryurp_test-unmarshal,\
+ binaryurp \
+))
+
+$(eval $(call gb_CppunitTest_use_api,binaryurp_test-unmarshal,\
+ udkapi \
+))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,binaryurp_test-unmarshal,\
+ binaryurp/qa/test-unmarshal \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/binaryurp/IwyuFilter_binaryurp.yaml b/binaryurp/IwyuFilter_binaryurp.yaml
new file mode 100644
index 000000000..49e10617c
--- /dev/null
+++ b/binaryurp/IwyuFilter_binaryurp.yaml
@@ -0,0 +1,34 @@
+---
+assumeFilename: binaryurp/source/bridge.cxx
+excludelist:
+ binaryurp/source/marshal.hxx:
+ # Don't propose hxx -> h change in URE libs
+ - rtl/byteseq.hxx
+ binaryurp/source/reader.hxx:
+ # Don't propose hxx -> h change in URE libs
+ - rtl/byteseq.hxx
+ binaryurp/source/incomingrequest.hxx:
+ # Don't propose hxx -> h change in URE libs
+ - rtl/byteseq.hxx
+ binaryurp/source/lessoperators.cxx:
+ # Don't propose hxx -> h change in URE libs
+ - rtl/byteseq.hxx
+ binaryurp/source/outgoingrequests.cxx:
+ # Don't propose hxx -> h change in URE libs
+ - rtl/byteseq.hxx
+ # Actually needed
+ - lessoperators.hxx
+ binaryurp/source/bridgefactory.cxx:
+ # Actually needed
+ - com/sun/star/connection/XConnection.hpp
+ - com/sun/star/uno/XComponentContext.hpp
+ - com/sun/star/uno/XInterface.hpp
+ binaryurp/source/bridge.cxx:
+ # Actually needed
+ - com/sun/star/bridge/XInstanceProvider.hpp
+ - com/sun/star/connection/XConnection.hpp
+ - com/sun/star/lang/XEventListener.hpp
+ - com/sun/star/uno/XInterface.hpp
+ binaryurp/source/unmarshal.cxx:
+ # Actually used
+ - vector
diff --git a/binaryurp/Library_binaryurp.mk b/binaryurp/Library_binaryurp.mk
new file mode 100644
index 000000000..439f1f7d4
--- /dev/null
+++ b/binaryurp/Library_binaryurp.mk
@@ -0,0 +1,40 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Library_Library,binaryurp))
+
+$(eval $(call gb_Library_set_componentfile,binaryurp,binaryurp/source/binaryurp,ure/services))
+
+$(eval $(call gb_Library_use_udk_api,binaryurp))
+
+$(eval $(call gb_Library_use_external,binaryurp,boost_headers))
+
+$(eval $(call gb_Library_use_libraries,binaryurp,\
+ cppu \
+ cppuhelper \
+ sal \
+ salhelper \
+))
+
+$(eval $(call gb_Library_add_exception_objects,binaryurp,\
+ binaryurp/source/binaryany \
+ binaryurp/source/bridge \
+ binaryurp/source/bridgefactory \
+ binaryurp/source/currentcontext \
+ binaryurp/source/incomingrequest \
+ binaryurp/source/lessoperators \
+ binaryurp/source/marshal \
+ binaryurp/source/outgoingrequests \
+ binaryurp/source/proxy \
+ binaryurp/source/reader \
+ binaryurp/source/unmarshal \
+ binaryurp/source/writer \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/binaryurp/Makefile b/binaryurp/Makefile
new file mode 100644
index 000000000..ccb1c85a0
--- /dev/null
+++ b/binaryurp/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/binaryurp/Module_binaryurp.mk b/binaryurp/Module_binaryurp.mk
new file mode 100644
index 000000000..fcfd303f0
--- /dev/null
+++ b/binaryurp/Module_binaryurp.mk
@@ -0,0 +1,21 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,binaryurp))
+
+$(eval $(call gb_Module_add_targets,binaryurp,\
+ Library_binaryurp \
+))
+
+$(eval $(call gb_Module_add_check_targets,binaryurp,\
+ CppunitTest_binaryurp_test-cache \
+ CppunitTest_binaryurp_test-unmarshal \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/binaryurp/README.md b/binaryurp/README.md
new file mode 100644
index 000000000..ac26bec06
--- /dev/null
+++ b/binaryurp/README.md
@@ -0,0 +1,8 @@
+# UNO Remote Protocol (URP)
+
+UNO provides a binary protocol called the UNO Remote Protocol (URP) that provides
+a bridge between UNO environments. This bridge allows processes and objects
+to send method calls and to receive return values. UNO objects in different
+environments are connected by way of this interprocess bridge. The underlying
+connection is made through a socket or pipe. Remote UNO objects are connected
+by means of TCP/IP using the high-level protocol of the URP.
diff --git a/binaryurp/qa/test-cache.cxx b/binaryurp/qa/test-cache.cxx
new file mode 100644
index 000000000..c4696f783
--- /dev/null
+++ b/binaryurp/qa/test-cache.cxx
@@ -0,0 +1,81 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cstddef>
+
+#include <sal/types.h>
+#include <cppunit/TestAssert.h>
+#include <cppunit/TestFixture.h>
+#include <cppunit/extensions/HelperMacros.h>
+#include <cppunit/plugin/TestPlugIn.h>
+
+#include "../source/cache.hxx"
+
+namespace {
+
+class Test: public CppUnit::TestFixture {
+private:
+ CPPUNIT_TEST_SUITE(Test);
+ CPPUNIT_TEST(testNothingLostFromLruList);
+ CPPUNIT_TEST_SUITE_END();
+
+ void testNothingLostFromLruList();
+};
+
+// cf. jurt/test/com/sun/star/lib/uno/protocols/urp/Cache_Test.java:
+void Test::testNothingLostFromLruList() {
+ int a[8];
+ for (std::size_t i = 0; i != std::size(a); ++i) {
+ for (std::size_t j = 0; j != i; ++j) {
+ a[j] = 0;
+ }
+ for (;;) {
+ binaryurp::Cache< int > c(4);
+ for (std::size_t k = 0; k != i; ++k) {
+ bool f;
+ c.add(a[k], &f);
+ }
+ bool f;
+ CPPUNIT_ASSERT_EQUAL(
+ 6,
+ c.add(-1, &f) + c.add(-2, &f) + c.add(-3, &f) + c.add(-4, &f));
+ std::size_t j = i;
+ while (j != 0 && a[j - 1] == 3) {
+ --j;
+ }
+ if (j == 0) {
+ break;
+ }
+ ++a[j - 1];
+ for (std::size_t k = j; k != i; ++k) {
+ a[k] = 0;
+ }
+ }
+ }
+}
+
+CPPUNIT_TEST_SUITE_REGISTRATION(Test);
+
+}
+
+CPPUNIT_PLUGIN_IMPLEMENT();
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/qa/test-unmarshal.cxx b/binaryurp/qa/test-unmarshal.cxx
new file mode 100644
index 000000000..df3a96d8f
--- /dev/null
+++ b/binaryurp/qa/test-unmarshal.cxx
@@ -0,0 +1,94 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <com/sun/star/io/IOException.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <cppu/unotype.hxx>
+#include <cppunit/TestAssert.h>
+#include <cppunit/TestFixture.h>
+#include <cppunit/extensions/HelperMacros.h>
+#include <cppunit/plugin/TestPlugIn.h>
+#include <rtl/ref.hxx>
+#include <rtl/string.h>
+#include <sal/types.h>
+#include <typelib/typedescription.hxx>
+
+#include "../source/bridge.hxx"
+#include "../source/cache.hxx"
+#include "../source/readerstate.hxx"
+#include "../source/unmarshal.hxx"
+
+namespace {
+
+class Test: public CppUnit::TestFixture {
+private:
+ CPPUNIT_TEST_SUITE(Test);
+ CPPUNIT_TEST(testTypeOfBooleanSequence);
+ CPPUNIT_TEST(testTypeOfVoidSequence);
+ CPPUNIT_TEST_SUITE_END();
+
+ void testTypeOfBooleanSequence();
+
+ void testTypeOfVoidSequence();
+};
+
+void Test::testTypeOfBooleanSequence() {
+ binaryurp::ReaderState state;
+ css::uno::Sequence<sal_Int8> buf{
+ static_cast<sal_Int8>(static_cast<sal_uInt8>(20 | 0x80)),
+ // sequence type | cache flag
+ static_cast<sal_Int8>(
+ static_cast<sal_uInt8>(binaryurp::cache::ignore >> 8)),
+ static_cast<sal_Int8>(
+ static_cast<sal_uInt8>(binaryurp::cache::ignore & 0xFF)),
+ RTL_CONSTASCII_LENGTH("[]boolean"),
+ '[', ']', 'b', 'o', 'o', 'l', 'e', 'a', 'n' };
+ binaryurp::Unmarshal m(rtl::Reference< binaryurp::Bridge >(), state, buf);
+ css::uno::TypeDescription t(m.readType());
+ CPPUNIT_ASSERT(
+ t.equals(
+ css::uno::TypeDescription(
+ cppu::UnoType< css::uno::Sequence< bool > >::get())));
+ m.done();
+}
+
+void Test::testTypeOfVoidSequence() {
+ binaryurp::ReaderState state;
+ css::uno::Sequence<sal_Int8> buf{
+ static_cast<sal_Int8>(static_cast<sal_uInt8>(20 | 0x80)),
+ // sequence type | cache flag
+ static_cast<sal_Int8>(
+ static_cast<sal_uInt8>(binaryurp::cache::ignore >> 8)),
+ static_cast<sal_Int8>(
+ static_cast<sal_uInt8>(binaryurp::cache::ignore & 0xFF)),
+ RTL_CONSTASCII_LENGTH("[]void"), '[', ']', 'v', 'o', 'i', 'd' };
+ binaryurp::Unmarshal m(rtl::Reference< binaryurp::Bridge >(), state, buf);
+ try {
+ m.readType();
+ CPPUNIT_FAIL("exception expected");
+ } catch (const css::io::IOException &) {}
+}
+
+CPPUNIT_TEST_SUITE_REGISTRATION(Test);
+
+}
+
+CPPUNIT_PLUGIN_IMPLEMENT();
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/binaryany.cxx b/binaryurp/source/binaryany.cxx
new file mode 100644
index 000000000..7f6e14a6f
--- /dev/null
+++ b/binaryurp/source/binaryany.cxx
@@ -0,0 +1,114 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <utility>
+
+#include <typelib/typeclass.h>
+#include <typelib/typedescription.hxx>
+#include <uno/any2.h>
+
+#include "binaryany.hxx"
+
+namespace binaryurp {
+
+namespace {
+
+// Cf. com::sun::star::uno::Any move ctor in
+// include/com/sun/star/uno/Any.hxx:
+void moveInternals(uno_Any & from, uno_Any & to) {
+ uno_any_construct(&to, nullptr, nullptr, nullptr);
+ std::swap(from.pType, to.pType);
+ std::swap(from.pData, to.pData);
+ std::swap(from.pReserved, to.pReserved);
+ if (to.pData == &from.pReserved) {
+ to.pData = &to.pReserved;
+ }
+ // This leaves to.pData (where "to" is now VOID) dangling to somewhere (cf.
+ // CONSTRUCT_EMPTY_ANY, cppu/source/uno/prim.hxx), but what's relevant is
+ // only that it isn't a nullptr (as e.g. >>= -> uno_type_assignData ->
+ // _assignData takes a null pSource to mean "construct a default value").
+}
+
+}
+
+BinaryAny::BinaryAny() noexcept {
+ uno_any_construct(&data_, nullptr, nullptr, nullptr);
+}
+
+BinaryAny::BinaryAny(css::uno::TypeDescription const & type, void * value)
+ noexcept
+{
+ assert(type.is());
+ uno_any_construct(&data_, value, type.get(), nullptr);
+}
+
+BinaryAny::BinaryAny(uno_Any const & raw) noexcept {
+ assert(raw.pType != nullptr);
+ data_.pType = raw.pType;
+ typelib_typedescriptionreference_acquire(data_.pType);
+ data_.pData = raw.pData == &raw.pReserved ? &data_.pReserved : raw.pData;
+ data_.pReserved = raw.pReserved;
+}
+
+BinaryAny::BinaryAny(BinaryAny const & other) noexcept {
+ uno_type_any_construct(&data_, other.data_.pData, other.data_.pType, nullptr);
+}
+
+BinaryAny::BinaryAny(BinaryAny && other) noexcept {
+ moveInternals(other.data_, data_);
+}
+
+BinaryAny::~BinaryAny() noexcept {
+ uno_any_destruct(&data_, nullptr);
+}
+
+BinaryAny & BinaryAny::operator =(BinaryAny const & other) noexcept {
+ if (&other != this) {
+ uno_type_any_assign(&data_, other.data_.pData, other.data_.pType, nullptr, nullptr);
+ }
+ return *this;
+}
+
+BinaryAny & BinaryAny::operator =(BinaryAny && other) noexcept {
+ uno_any_destruct(&data_, nullptr);
+ moveInternals(other.data_, data_);
+ return *this;
+}
+
+css::uno::TypeDescription BinaryAny::getType() const noexcept {
+ return css::uno::TypeDescription(data_.pType);
+}
+
+void * BinaryAny::getValue(css::uno::TypeDescription const & type) const
+ noexcept
+{
+ assert(type.is());
+ assert(
+ type.get()->eTypeClass == typelib_TypeClass_ANY ||
+ type.equals(css::uno::TypeDescription(data_.pType)));
+ return type.get()->eTypeClass == typelib_TypeClass_ANY
+ ? &data_ : data_.pData;
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/binaryany.hxx b/binaryurp/source/binaryany.hxx
new file mode 100644
index 000000000..c04fe8f86
--- /dev/null
+++ b/binaryurp/source/binaryany.hxx
@@ -0,0 +1,66 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <uno/any2.h>
+
+namespace com::sun::star::uno { class TypeDescription; }
+
+namespace binaryurp {
+
+class BinaryAny {
+public:
+ BinaryAny() noexcept;
+
+ BinaryAny(com::sun::star::uno::TypeDescription const & type, void * value)
+ noexcept;
+
+ explicit BinaryAny(uno_Any const & raw) noexcept;
+ // takes over raw.pData (but copies raw.pType); raw must not be passed
+ // to uno_any_destruct
+
+ BinaryAny(BinaryAny const & other) noexcept;
+
+ BinaryAny(BinaryAny && other) noexcept;
+
+ ~BinaryAny() noexcept;
+
+ BinaryAny & operator =(BinaryAny const & other) noexcept;
+
+ BinaryAny & operator =(BinaryAny && other) noexcept;
+
+ uno_Any& get() noexcept { return data_; }
+
+ com::sun::star::uno::TypeDescription getType() const noexcept;
+
+ void * getValue(com::sun::star::uno::TypeDescription const & type) const
+ noexcept;
+
+private:
+ mutable uno_Any data_;
+ // mutable so that getValue() can return a non-const void *, as in turn
+ // required at various places in binary UNO
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/binaryurp.component b/binaryurp/source/binaryurp.component
new file mode 100644
index 000000000..b5b0f4da1
--- /dev/null
+++ b/binaryurp/source/binaryurp.component
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
+
+<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.bridge.BridgeFactory"
+ constructor="com_sun_star_comp_bridge_BridgeFactory_get_implementation" single-instance="true">
+ <service name="com.sun.star.bridge.BridgeFactory"/>
+ </implementation>
+</component>
diff --git a/binaryurp/source/bridge.cxx b/binaryurp/source/bridge.cxx
new file mode 100644
index 000000000..7d73d6dd7
--- /dev/null
+++ b/binaryurp/source/bridge.cxx
@@ -0,0 +1,1054 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <algorithm>
+#include <cassert>
+#include <cstddef>
+#include <limits>
+#include <memory>
+#include <utility>
+#include <vector>
+
+#include <com/sun/star/bridge/InvalidProtocolChangeException.hpp>
+#include <com/sun/star/bridge/XBridge.hpp>
+#include <com/sun/star/bridge/XInstanceProvider.hpp>
+#include <com/sun/star/bridge/XProtocolProperties.hpp>
+#include <com/sun/star/connection/XConnection.hpp>
+#include <com/sun/star/io/IOException.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <com/sun/star/lang/EventObject.hpp>
+#include <com/sun/star/lang/XEventListener.hpp>
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <com/sun/star/uno/XInterface.hpp>
+#include <cppuhelper/exc_hlp.hxx>
+#include <cppuhelper/weak.hxx>
+#include <osl/mutex.hxx>
+#include <osl/thread.hxx>
+#include <rtl/byteseq.hxx>
+#include <rtl/random.h>
+#include <rtl/ref.hxx>
+#include <rtl/string.h>
+#include <rtl/ustring.hxx>
+#include <sal/log.hxx>
+#include <sal/types.h>
+#include <typelib/typeclass.h>
+#include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
+#include <uno/dispatcher.hxx>
+#include <uno/environment.hxx>
+#include <uno/lbnames.h>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "bridgefactory.hxx"
+#include "incomingreply.hxx"
+#include "lessoperators.hxx"
+#include "outgoingrequest.hxx"
+#include "outgoingrequests.hxx"
+#include "proxy.hxx"
+#include "reader.hxx"
+
+namespace binaryurp {
+
+namespace {
+
+sal_Int32 random() {
+ sal_Int32 n;
+ rtlRandomPool pool = rtl_random_createPool();
+ rtl_random_getBytes(pool, &n, sizeof n);
+ rtl_random_destroyPool(pool);
+ return n;
+}
+
+OUString toString(css::uno::TypeDescription const & type) {
+ typelib_TypeDescription * d = type.get();
+ assert(d != nullptr && d->pTypeName != nullptr);
+ return OUString(d->pTypeName);
+}
+
+extern "C" void freeProxyCallback(
+ SAL_UNUSED_PARAMETER uno_ExtEnvironment *, void * pProxy)
+{
+ assert(pProxy != nullptr);
+ static_cast< Proxy * >(pProxy)->do_free();
+}
+
+bool isThread(salhelper::Thread * thread) {
+ assert(thread != nullptr);
+ return osl::Thread::getCurrentIdentifier() == thread->getIdentifier();
+}
+
+class AttachThread {
+public:
+ explicit AttachThread(uno_ThreadPool threadPool);
+
+ ~AttachThread();
+
+ const rtl::ByteSequence& getTid() const noexcept { return tid_;}
+
+private:
+ AttachThread(const AttachThread&) = delete;
+ AttachThread& operator=(const AttachThread&) = delete;
+
+ uno_ThreadPool threadPool_;
+ rtl::ByteSequence tid_;
+};
+
+AttachThread::AttachThread(uno_ThreadPool threadPool): threadPool_(threadPool) {
+ sal_Sequence * s = nullptr;
+ uno_getIdOfCurrentThread(&s);
+ tid_ = rtl::ByteSequence(s, rtl::BYTESEQ_NOACQUIRE);
+ uno_threadpool_attach(threadPool_);
+}
+
+AttachThread::~AttachThread() {
+ uno_threadpool_detach(threadPool_);
+ uno_releaseIdFromCurrentThread();
+}
+
+
+class PopOutgoingRequest {
+public:
+ PopOutgoingRequest(
+ OutgoingRequests & requests, rtl::ByteSequence tid,
+ OutgoingRequest const & request);
+
+ ~PopOutgoingRequest();
+
+ void clear();
+
+private:
+ PopOutgoingRequest(const PopOutgoingRequest&) = delete;
+ PopOutgoingRequest& operator=(const PopOutgoingRequest&) = delete;
+
+ OutgoingRequests & requests_;
+ rtl::ByteSequence tid_;
+ bool cleared_;
+};
+
+PopOutgoingRequest::PopOutgoingRequest(
+ OutgoingRequests & requests, rtl::ByteSequence tid,
+ OutgoingRequest const & request):
+ requests_(requests), tid_(std::move(tid)), cleared_(false)
+{
+ requests_.push(tid_, request);
+}
+
+PopOutgoingRequest::~PopOutgoingRequest() {
+ if (!cleared_) {
+ requests_.pop(tid_);
+ }
+}
+
+void PopOutgoingRequest::clear() {
+ cleared_ = true;
+}
+
+}
+
+struct Bridge::SubStub {
+ com::sun::star::uno::UnoInterfaceReference object;
+
+ sal_uInt32 references;
+};
+
+Bridge::Bridge(
+ rtl::Reference< BridgeFactory > const & factory, OUString name,
+ css::uno::Reference< css::connection::XConnection > const & connection,
+ css::uno::Reference< css::bridge::XInstanceProvider > provider):
+ factory_(factory), name_(std::move(name)), connection_(connection),
+ provider_(std::move(provider)),
+ binaryUno_(UNO_LB_UNO),
+ cppToBinaryMapping_(CPPU_CURRENT_LANGUAGE_BINDING_NAME, UNO_LB_UNO),
+ binaryToCppMapping_(UNO_LB_UNO, CPPU_CURRENT_LANGUAGE_BINDING_NAME),
+ protPropTid_(
+ reinterpret_cast< sal_Int8 const * >(".UrpProtocolPropertiesTid"),
+ RTL_CONSTASCII_LENGTH(".UrpProtocolPropertiesTid")),
+ protPropOid_("UrpProtocolProperties"),
+ protPropType_(
+ cppu::UnoType<
+ css::uno::Reference< css::bridge::XProtocolProperties > >::get()),
+ protPropRequest_("com.sun.star.bridge.XProtocolProperties::requestChange"),
+ protPropCommit_("com.sun.star.bridge.XProtocolProperties::commitChange"),
+ state_(STATE_INITIAL), threadPool_(nullptr), currentContextMode_(false),
+ proxies_(0), calls_(0), normalCall_(false), activeCalls_(0),
+ mode_(MODE_REQUESTED)
+{
+ assert(factory.is() && connection.is());
+ if (!binaryUno_.is()) {
+ throw css::uno::RuntimeException("URP: no binary UNO environment");
+ }
+ if (!(cppToBinaryMapping_.is() && binaryToCppMapping_.is())) {
+ throw css::uno::RuntimeException("URP: no C++ UNO mapping");
+ }
+ passive_.set();
+ // coverity[uninit_member] - random_ is set in due course by the reader_ thread's state machine
+}
+
+void Bridge::start() {
+ rtl::Reference r(new Reader(this));
+ rtl::Reference w(new Writer(this));
+ {
+ std::lock_guard g(mutex_);
+ assert(
+ state_ == STATE_INITIAL && threadPool_ == nullptr && !writer_.is() &&
+ !reader_.is());
+ threadPool_ = uno_threadpool_create();
+ assert(threadPool_ != nullptr);
+ reader_ = r;
+ writer_ = w;
+ state_ = STATE_STARTED;
+ }
+ // It is important to call reader_->launch() last here; both
+ // Writer::execute and Reader::execute can call Bridge::terminate, but
+ // Writer::execute is initially blocked in unblocked_.wait() until
+ // Reader::execute has called bridge_->sendRequestChangeRequest(), so
+ // effectively only reader_->launch() can lead to an early call to
+ // Bridge::terminate
+ w->launch();
+ r->launch();
+}
+
+void Bridge::terminate(bool final) {
+ uno_ThreadPool tp;
+ // Make sure function-local variables (Stubs s, etc.) are destroyed before
+ // the final uno_threadpool_destroy/threadPool_ = 0:
+ {
+ rtl::Reference< Reader > r;
+ rtl::Reference< Writer > w;
+ bool joinW;
+ Listeners ls;
+ {
+ std::unique_lock g(mutex_);
+ switch (state_) {
+ case STATE_INITIAL: // via ~Bridge -> dispose -> terminate
+ case STATE_FINAL:
+ return;
+ case STATE_STARTED:
+ break;
+ case STATE_TERMINATED:
+ if (final) {
+ g.unlock();
+ terminated_.wait();
+ {
+ std::lock_guard g2(mutex_);
+ tp = threadPool_;
+ threadPool_ = nullptr;
+ if (reader_.is()) {
+ if (!isThread(reader_.get())) {
+ r = reader_;
+ }
+ reader_.clear();
+ }
+ if (writer_.is()) {
+ if (!isThread(writer_.get())) {
+ w = writer_;
+ }
+ writer_.clear();
+ }
+ state_ = STATE_FINAL;
+ }
+ assert(!(r.is() && w.is()));
+ if (r.is()) {
+ r->join();
+ } else if (w.is()) {
+ w->join();
+ }
+ if (tp != nullptr) {
+ uno_threadpool_destroy(tp);
+ }
+ }
+ return;
+ }
+ tp = threadPool_;
+ assert(!(final && isThread(reader_.get())));
+ if (!isThread(reader_.get())) {
+ std::swap(reader_, r);
+ }
+ w = writer_;
+ joinW = !isThread(writer_.get());
+ assert(!final || joinW);
+ if (joinW) {
+ writer_.clear();
+ }
+ ls.swap(listeners_);
+ state_ = final ? STATE_FINAL : STATE_TERMINATED;
+ }
+ try {
+ connection_->close();
+ } catch (const css::io::IOException & e) {
+ SAL_INFO("binaryurp", "caught IO exception '" << e << '\'');
+ }
+ assert(w.is());
+ w->stop();
+ if (r.is()) {
+ r->join();
+ }
+ if (joinW) {
+ w->join();
+ }
+ assert(tp != nullptr);
+ uno_threadpool_dispose(tp);
+ Stubs s;
+ {
+ std::lock_guard g(mutex_);
+ s.swap(stubs_);
+ }
+ for (auto & stub : s)
+ {
+ for (auto & item : stub.second)
+ {
+ SAL_INFO(
+ "binaryurp",
+ "stub '" << stub.first << "', '" << toString(item.first)
+ << "' still mapped at Bridge::terminate");
+ binaryUno_.get()->pExtEnv->revokeInterface(
+ binaryUno_.get()->pExtEnv, item.second.object.get());
+ }
+ }
+ factory_->removeBridge(this);
+ for (auto const& listener : ls)
+ {
+ try {
+ listener->disposing(
+ css::lang::EventObject(
+ static_cast< cppu::OWeakObject * >(this)));
+ } catch (const css::uno::RuntimeException & e) {
+ SAL_WARN("binaryurp", "caught " << e);
+ }
+ }
+ }
+ if (final) {
+ uno_threadpool_destroy(tp);
+ }
+ {
+ std::lock_guard g(mutex_);
+ if (final) {
+ threadPool_ = nullptr;
+ }
+ }
+ terminated_.set();
+}
+
+
+BinaryAny Bridge::mapCppToBinaryAny(css::uno::Any const & cppAny) {
+ css::uno::Any in(cppAny);
+ BinaryAny out;
+ out.~BinaryAny();
+ uno_copyAndConvertData(
+ &out.get(), &in,
+ css::uno::TypeDescription(cppu::UnoType< css::uno::Any >::get()).get(),
+ cppToBinaryMapping_.get());
+ return out;
+}
+
+uno_ThreadPool Bridge::getThreadPool() {
+ std::lock_guard g(mutex_);
+ checkDisposed();
+ assert(threadPool_ != nullptr);
+ return threadPool_;
+}
+
+rtl::Reference< Writer > Bridge::getWriter() {
+ std::lock_guard g(mutex_);
+ checkDisposed();
+ assert(writer_.is());
+ return writer_;
+}
+
+css::uno::UnoInterfaceReference Bridge::registerIncomingInterface(
+ OUString const & oid, css::uno::TypeDescription const & type)
+{
+ assert(type.is());
+ if (oid.isEmpty()) {
+ return css::uno::UnoInterfaceReference();
+ }
+ css::uno::UnoInterfaceReference obj(findStub(oid, type));
+ if (!obj.is()) {
+ binaryUno_.get()->pExtEnv->getRegisteredInterface(
+ binaryUno_.get()->pExtEnv,
+ reinterpret_cast< void ** >(&obj.m_pUnoI), oid.pData,
+ reinterpret_cast< typelib_InterfaceTypeDescription * >(type.get()));
+ if (obj.is()) {
+ makeReleaseCall(oid, type);
+ } else {
+ obj.set(new Proxy(this, oid, type), SAL_NO_ACQUIRE);
+ {
+ std::lock_guard g(mutex_);
+ assert(proxies_ < std::numeric_limits< std::size_t >::max());
+ ++proxies_;
+ }
+ binaryUno_.get()->pExtEnv->registerProxyInterface(
+ binaryUno_.get()->pExtEnv,
+ reinterpret_cast< void ** >(&obj.m_pUnoI), &freeProxyCallback,
+ oid.pData,
+ reinterpret_cast< typelib_InterfaceTypeDescription * >(
+ type.get()));
+ }
+ }
+ return obj;
+}
+
+OUString Bridge::registerOutgoingInterface(
+ css::uno::UnoInterfaceReference const & object,
+ css::uno::TypeDescription const & type)
+{
+ assert(type.is());
+ if (!object.is()) {
+ return OUString();
+ }
+ OUString oid;
+ if (!Proxy::isProxy(this, object, &oid)) {
+ binaryUno_.get()->pExtEnv->getObjectIdentifier(
+ binaryUno_.get()->pExtEnv, &oid.pData, object.get());
+ std::lock_guard g(mutex_);
+ Stubs::iterator i(stubs_.find(oid));
+ Stub newStub;
+ Stub * stub = i == stubs_.end() ? &newStub : &i->second;
+ Stub::iterator j(stub->find(type));
+ //TODO: Release sub-stub if it is not successfully sent to remote side
+ // (otherwise, stub will leak until terminate()):
+ if (j == stub->end()) {
+ j = stub->emplace(type, SubStub()).first;
+ if (stub == &newStub) {
+ i = stubs_.emplace(oid, Stub()).first;
+ std::swap(i->second, newStub);
+ j = i->second.find(type);
+ assert(j != i->second.end());
+ }
+ j->second.object = object;
+ j->second.references = 1;
+ binaryUno_.get()->pExtEnv->registerInterface(
+ binaryUno_.get()->pExtEnv,
+ reinterpret_cast< void ** >(&j->second.object.m_pUnoI),
+ oid.pData,
+ reinterpret_cast< typelib_InterfaceTypeDescription * >(
+ type.get()));
+ } else {
+ assert(stub != &newStub);
+ if (j->second.references == SAL_MAX_UINT32) {
+ throw css::uno::RuntimeException(
+ "URP: stub reference count overflow");
+ }
+ ++j->second.references;
+ }
+ }
+ return oid;
+}
+
+css::uno::UnoInterfaceReference Bridge::findStub(
+ OUString const & oid, css::uno::TypeDescription const & type)
+{
+ assert(!oid.isEmpty() && type.is());
+ std::lock_guard g(mutex_);
+ Stubs::iterator i(stubs_.find(oid));
+ if (i != stubs_.end()) {
+ Stub::iterator j(i->second.find(type));
+ if (j != i->second.end()) {
+ return j->second.object;
+ }
+ for (auto const& item : i->second)
+ {
+ if (typelib_typedescription_isAssignableFrom(
+ type.get(), item.first.get()))
+ {
+ return item.second.object;
+ }
+ }
+ }
+ return css::uno::UnoInterfaceReference();
+}
+
+void Bridge::releaseStub(
+ OUString const & oid, css::uno::TypeDescription const & type)
+{
+ assert(!oid.isEmpty() && type.is());
+ css::uno::UnoInterfaceReference obj;
+ bool unused;
+ {
+ std::lock_guard g(mutex_);
+ Stubs::iterator i(stubs_.find(oid));
+ if (i == stubs_.end()) {
+ throw css::uno::RuntimeException("URP: release unknown stub");
+ }
+ Stub::iterator j(i->second.find(type));
+ if (j == i->second.end()) {
+ throw css::uno::RuntimeException("URP: release unknown stub");
+ }
+ assert(j->second.references > 0);
+ --j->second.references;
+ if (j->second.references == 0) {
+ obj = j->second.object;
+ i->second.erase(j);
+ if (i->second.empty()) {
+ stubs_.erase(i);
+ }
+ }
+ unused = becameUnused();
+ }
+ if (obj.is()) {
+ binaryUno_.get()->pExtEnv->revokeInterface(
+ binaryUno_.get()->pExtEnv, obj.get());
+ }
+ terminateWhenUnused(unused);
+}
+
+void Bridge::resurrectProxy(Proxy & proxy) {
+ uno_Interface * p = &proxy;
+ binaryUno_.get()->pExtEnv->registerProxyInterface(
+ binaryUno_.get()->pExtEnv,
+ reinterpret_cast< void ** >(&p), &freeProxyCallback,
+ proxy.getOid().pData,
+ reinterpret_cast< typelib_InterfaceTypeDescription * >(
+ proxy.getType().get()));
+ assert(p == &proxy);
+}
+
+void Bridge::revokeProxy(Proxy & proxy) {
+ binaryUno_.get()->pExtEnv->revokeInterface(
+ binaryUno_.get()->pExtEnv, &proxy);
+}
+
+void Bridge::freeProxy(Proxy & proxy) {
+ try {
+ makeReleaseCall(proxy.getOid(), proxy.getType());
+ } catch (const css::uno::RuntimeException & e) {
+ SAL_INFO(
+ "binaryurp", "caught runtime exception '" << e << '\'');
+ } catch (const std::exception & e) {
+ SAL_WARN("binaryurp", "caught C++ exception '" << e.what() << '\'');
+ }
+ bool unused;
+ {
+ std::lock_guard g(mutex_);
+ assert(proxies_ > 0);
+ --proxies_;
+ unused = becameUnused();
+ }
+ terminateWhenUnused(unused);
+}
+
+void Bridge::incrementCalls(bool normalCall) noexcept {
+ std::lock_guard g(mutex_);
+ assert(calls_ < std::numeric_limits< std::size_t >::max());
+ ++calls_;
+ normalCall_ |= normalCall;
+}
+
+void Bridge::decrementCalls() {
+ bool unused;
+ {
+ std::lock_guard g(mutex_);
+ assert(calls_ > 0);
+ --calls_;
+ unused = becameUnused();
+ }
+ terminateWhenUnused(unused);
+}
+
+void Bridge::incrementActiveCalls() noexcept {
+ std::lock_guard g(mutex_);
+ assert(
+ activeCalls_ <= calls_ &&
+ activeCalls_ < std::numeric_limits< std::size_t >::max());
+ ++activeCalls_;
+ passive_.reset();
+}
+
+void Bridge::decrementActiveCalls() noexcept {
+ std::lock_guard g(mutex_);
+ assert(activeCalls_ <= calls_ && activeCalls_ > 0);
+ --activeCalls_;
+ if (activeCalls_ == 0) {
+ passive_.set();
+ }
+}
+
+bool Bridge::makeCall(
+ OUString const & oid, css::uno::TypeDescription const & member,
+ bool setter, std::vector< BinaryAny >&& inArguments,
+ BinaryAny * returnValue, std::vector< BinaryAny > * outArguments)
+{
+ std::unique_ptr< IncomingReply > resp;
+ {
+ uno_ThreadPool tp = getThreadPool();
+ AttachThread att(tp);
+ PopOutgoingRequest pop(
+ outgoingRequests_, att.getTid(),
+ OutgoingRequest(OutgoingRequest::KIND_NORMAL, member, setter));
+ sendRequest(
+ att.getTid(), oid, css::uno::TypeDescription(), member,
+ std::move(inArguments));
+ pop.clear();
+ incrementCalls(true);
+ incrementActiveCalls();
+ void * job;
+ uno_threadpool_enter(tp, &job);
+ resp.reset(static_cast< IncomingReply * >(job));
+ decrementActiveCalls();
+ decrementCalls();
+ }
+ if (resp == nullptr)
+ {
+ throw css::lang::DisposedException(
+ "Binary URP bridge disposed during call",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+ *returnValue = resp->returnValue;
+ if (!resp->exception) {
+ *outArguments = resp->outArguments;
+ }
+ return resp->exception;
+}
+
+void Bridge::sendRequestChangeRequest() {
+ assert(mode_ == MODE_REQUESTED);
+ random_ = random();
+ std::vector< BinaryAny > a;
+ a.emplace_back(
+ css::uno::TypeDescription(cppu::UnoType< sal_Int32 >::get()),
+ &random_);
+ sendProtPropRequest(OutgoingRequest::KIND_REQUEST_CHANGE, a);
+}
+
+void Bridge::handleRequestChangeReply(
+ bool exception, BinaryAny const & returnValue)
+{
+ try {
+ throwException(exception, returnValue);
+ } catch (css::uno::RuntimeException & e) {
+ // Before OOo 2.2, Java URP would throw a RuntimeException when
+ // receiving a requestChange message (see i#35277 "Java URP: Support
+ // Manipulation of Protocol Properties"):
+ if (mode_ != MODE_REQUESTED) {
+ throw;
+ }
+ SAL_WARN(
+ "binaryurp",
+ "requestChange caught " << e << " in state 'requested'");
+ mode_ = MODE_NORMAL;
+ getWriter()->unblock();
+ decrementCalls();
+ return;
+ }
+ sal_Int32 n = *static_cast< sal_Int32 * >(
+ returnValue.getValue(
+ css::uno::TypeDescription(cppu::UnoType< sal_Int32 >::get())));
+ sal_Int32 exp = 0;
+ switch (mode_) {
+ case MODE_REQUESTED:
+ case MODE_REPLY_1:
+ exp = 1;
+ break;
+ case MODE_REPLY_MINUS1:
+ exp = -1;
+ mode_ = MODE_REQUESTED;
+ break;
+ case MODE_REPLY_0:
+ exp = 0;
+ mode_ = MODE_WAIT;
+ break;
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ if (n != exp) {
+ throw css::uno::RuntimeException(
+ "URP: requestChange reply with unexpected return value received",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+ decrementCalls();
+ switch (exp) {
+ case -1:
+ sendRequestChangeRequest();
+ break;
+ case 0:
+ break;
+ case 1:
+ sendCommitChangeRequest();
+ break;
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+}
+
+void Bridge::handleCommitChangeReply(
+ bool exception, BinaryAny const & returnValue)
+{
+ bool bCcMode = true;
+ try {
+ throwException(exception, returnValue);
+ } catch (const css::bridge::InvalidProtocolChangeException &) {
+ bCcMode = false;
+ }
+ if (bCcMode) {
+ setCurrentContextMode();
+ }
+ assert(mode_ == MODE_REQUESTED || mode_ == MODE_REPLY_1);
+ mode_ = MODE_NORMAL;
+ getWriter()->unblock();
+ decrementCalls();
+}
+
+void Bridge::handleRequestChangeRequest(
+ rtl::ByteSequence const & tid, std::vector< BinaryAny > const & inArguments)
+{
+ assert(inArguments.size() == 1);
+ switch (mode_) {
+ case MODE_REQUESTED:
+ {
+ sal_Int32 n2 = *static_cast< sal_Int32 * >(
+ inArguments[0].getValue(
+ css::uno::TypeDescription(
+ cppu::UnoType< sal_Int32 >::get())));
+ sal_Int32 ret;
+ if (n2 > random_) {
+ ret = 1;
+ mode_ = MODE_REPLY_0;
+ } else if (n2 == random_) {
+ ret = -1;
+ mode_ = MODE_REPLY_MINUS1;
+ } else {
+ ret = 0;
+ mode_ = MODE_REPLY_1;
+ }
+ getWriter()->sendDirectReply(
+ tid, protPropRequest_, false,
+ BinaryAny(
+ css::uno::TypeDescription(
+ cppu::UnoType< sal_Int32 >::get()),
+ &ret),
+ std::vector< BinaryAny >());
+ break;
+ }
+ case MODE_NORMAL:
+ {
+ mode_ = MODE_NORMAL_WAIT;
+ sal_Int32 ret = 1;
+ getWriter()->queueReply(
+ tid, protPropRequest_, false, false,
+ BinaryAny(
+ css::uno::TypeDescription(
+ cppu::UnoType< sal_Int32 >::get()),
+ &ret),
+ std::vector< BinaryAny >(), false);
+ break;
+ }
+ default:
+ throw css::uno::RuntimeException(
+ "URP: unexpected requestChange request received",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+}
+
+void Bridge::handleCommitChangeRequest(
+ rtl::ByteSequence const & tid, std::vector< BinaryAny > const & inArguments)
+{
+ bool bCcMode = false;
+ bool bExc = false;
+ BinaryAny ret;
+ assert(inArguments.size() == 1);
+ css::uno::Sequence< css::bridge::ProtocolProperty > s;
+ [[maybe_unused]] bool ok = (mapBinaryToCppAny(inArguments[0]) >>= s);
+ assert(ok);
+ for (const auto & pp : std::as_const(s)) {
+ if (pp.Name == "CurrentContext") {
+ bCcMode = true;
+ } else {
+ bCcMode = false;
+ bExc = true;
+ ret = mapCppToBinaryAny(
+ css::uno::Any(
+ css::bridge::InvalidProtocolChangeException(
+ "InvalidProtocolChangeException",
+ css::uno::Reference< css::uno::XInterface >(), pp,
+ 1)));
+ break;
+ }
+ }
+ switch (mode_) {
+ case MODE_WAIT:
+ getWriter()->sendDirectReply(
+ tid, protPropCommit_, bExc, ret, std::vector< BinaryAny >());
+ if (bCcMode) {
+ setCurrentContextMode();
+ mode_ = MODE_NORMAL;
+ getWriter()->unblock();
+ } else {
+ mode_ = MODE_REQUESTED;
+ sendRequestChangeRequest();
+ }
+ break;
+ case MODE_NORMAL_WAIT:
+ getWriter()->queueReply(
+ tid, protPropCommit_, false, false, ret, std::vector< BinaryAny >(),
+ bCcMode);
+ mode_ = MODE_NORMAL;
+ break;
+ default:
+ throw css::uno::RuntimeException(
+ "URP: unexpected commitChange request received",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+}
+
+OutgoingRequest Bridge::lastOutgoingRequest(rtl::ByteSequence const & tid) {
+ OutgoingRequest req(outgoingRequests_.top(tid));
+ outgoingRequests_.pop(tid);
+ return req;
+}
+
+bool Bridge::isProtocolPropertiesRequest(
+ std::u16string_view oid, css::uno::TypeDescription const & type) const
+{
+ return oid == protPropOid_ && type.equals(protPropType_);
+}
+
+void Bridge::setCurrentContextMode() {
+ std::lock_guard g(mutex_);
+ currentContextMode_ = true;
+}
+
+bool Bridge::isCurrentContextMode() {
+ std::lock_guard g(mutex_);
+ return currentContextMode_;
+}
+
+Bridge::~Bridge() {
+#if OSL_DEBUG_LEVEL > 0
+ {
+ std::lock_guard g(mutex_);
+ SAL_WARN_IF(
+ state_ == STATE_STARTED || state_ == STATE_TERMINATED, "binaryurp",
+ "undisposed bridge \"" << name_ <<"\" in state " << state_
+ << ", potential deadlock ahead");
+ }
+#endif
+ dispose();
+}
+
+css::uno::Reference< css::uno::XInterface > Bridge::getInstance(
+ OUString const & sInstanceName)
+{
+ if (sInstanceName.isEmpty()) {
+ throw css::uno::RuntimeException(
+ "XBridge::getInstance sInstanceName must be non-empty",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+ for (sal_Int32 i = 0; i != sInstanceName.getLength(); ++i) {
+ if (sInstanceName[i] > 0x7F) {
+ throw css::uno::RuntimeException(
+ "XBridge::getInstance sInstanceName contains non-ASCII"
+ " character");
+ }
+ }
+ css::uno::TypeDescription ifc(cppu::UnoType<css::uno::XInterface>::get());
+ typelib_TypeDescription * p = ifc.get();
+ std::vector< BinaryAny > inArgs;
+ inArgs.emplace_back(
+ css::uno::TypeDescription(cppu::UnoType< css::uno::Type >::get()),
+ &p);
+ BinaryAny ret;
+ std::vector< BinaryAny> outArgs;
+ bool bExc = makeCall(
+ sInstanceName,
+ css::uno::TypeDescription(
+ "com.sun.star.uno.XInterface::queryInterface"),
+ false, std::move(inArgs), &ret, &outArgs);
+ throwException(bExc, ret);
+ auto const t = ret.getType();
+ if (t.get()->eTypeClass == typelib_TypeClass_VOID) {
+ return {};
+ }
+ if (!t.equals(ifc)) {
+ throw css::uno::RuntimeException(
+ "initial object queryInterface for OID \"" + sInstanceName + "\" returned ANY of type "
+ + OUString::unacquired(&t.get()->pTypeName));
+ }
+ auto const val = *static_cast< uno_Interface ** >(ret.getValue(ifc));
+ if (val == nullptr) {
+ throw css::uno::RuntimeException(
+ "initial object queryInterface for OID \"" + sInstanceName
+ + "\" returned null css.uno.XInterface ANY");
+ }
+ return css::uno::Reference< css::uno::XInterface >(
+ static_cast< css::uno::XInterface * >(
+ binaryToCppMapping_.mapInterface(
+ val,
+ ifc.get())),
+ SAL_NO_ACQUIRE);
+}
+
+OUString Bridge::getName() {
+ return name_;
+}
+
+OUString Bridge::getDescription() {
+ OUString b = name_ + ":" + connection_->getDescription();
+ return b;
+}
+
+void Bridge::dispose() {
+ // For terminate(true) not to deadlock, an external protocol must ensure
+ // that dispose is not called from a thread pool worker thread (that dispose
+ // is never called from the reader or writer thread is already ensured
+ // internally):
+ terminate(true);
+ // OOo expects dispose to not return while there are still remote calls in
+ // progress; an external protocol must ensure that dispose is not called
+ // from within an incoming or outgoing remote call, as passive_.wait() would
+ // otherwise deadlock:
+ passive_.wait();
+}
+
+void Bridge::addEventListener(
+ css::uno::Reference< css::lang::XEventListener > const & xListener)
+{
+ assert(xListener.is());
+ {
+ std::lock_guard g(mutex_);
+ assert(state_ != STATE_INITIAL);
+ if (state_ == STATE_STARTED) {
+ listeners_.push_back(xListener);
+ return;
+ }
+ }
+ xListener->disposing(
+ css::lang::EventObject(static_cast< cppu::OWeakObject * >(this)));
+}
+
+void Bridge::removeEventListener(
+ css::uno::Reference< css::lang::XEventListener > const & aListener)
+{
+ std::lock_guard g(mutex_);
+ Listeners::iterator i(
+ std::find(listeners_.begin(), listeners_.end(), aListener));
+ if (i != listeners_.end()) {
+ listeners_.erase(i);
+ }
+}
+
+void Bridge::sendCommitChangeRequest() {
+ assert(mode_ == MODE_REQUESTED || mode_ == MODE_REPLY_1);
+ css::uno::Sequence< css::bridge::ProtocolProperty > s(1);
+ s.getArray()[0].Name = "CurrentContext";
+ std::vector< BinaryAny > a { mapCppToBinaryAny(css::uno::Any(s)) };
+ sendProtPropRequest(OutgoingRequest::KIND_COMMIT_CHANGE, a);
+}
+
+void Bridge::sendProtPropRequest(
+ OutgoingRequest::Kind kind, std::vector< BinaryAny > const & inArguments)
+{
+ assert(
+ kind == OutgoingRequest::KIND_REQUEST_CHANGE ||
+ kind == OutgoingRequest::KIND_COMMIT_CHANGE);
+ incrementCalls(false);
+ css::uno::TypeDescription member(
+ kind == OutgoingRequest::KIND_REQUEST_CHANGE
+ ? protPropRequest_ : protPropCommit_);
+ PopOutgoingRequest pop(
+ outgoingRequests_, protPropTid_, OutgoingRequest(kind, member, false));
+ getWriter()->sendDirectRequest(
+ protPropTid_, protPropOid_, protPropType_, member, inArguments);
+ pop.clear();
+}
+
+void Bridge::makeReleaseCall(
+ OUString const & oid, css::uno::TypeDescription const & type)
+{
+ //HACK to decouple the processing of release calls from all other threads. Normally, sending
+ // the release request should use the current thread's TID (via AttachThread), which would cause
+ // that asynchronous request to be processed by a physical thread that is paired with the
+ // physical thread processing the normal synchronous call stack (see ThreadIdHashMap in
+ // cppu/source/threadpool/threadpool.hxx). However, that can lead to deadlock when a thread
+ // illegally makes a synchronous UNO call with the SolarMutex locked (e.g.,
+ // SfxBaseModel::postEvent_Impl in sfx2/source/doc/sfxbasemodel.cxx doing documentEventOccurred
+ // and notifyEvent calls), and while that call is on the stack the remote side sends back some
+ // release request on the same logical UNO thread for an object that wants to acquire the
+ // SolarMutex in its destructor (e.g., SwXTextDocument in sw/inc/unotxdoc.hxx holding its
+ // m_pImpl via an sw::UnoImplPtr). While the correct approach would be to not make UNO calls
+ // with the SolarMutex (or any other mutex) locked, fixing that would probably be a heroic
+ // effort. So for now live with this hack, hoping that it does not introduce any new issues of
+ // its own:
+ static auto const tid = [] {
+ static sal_Int8 const id[] = {'r', 'e', 'l', 'e', 'a', 's', 'e', 'h', 'a', 'c', 'k'};
+ return rtl::ByteSequence(id, std::size(id));
+ }();
+ sendRequest(
+ tid, oid, type,
+ css::uno::TypeDescription("com.sun.star.uno.XInterface::release"),
+ std::vector< BinaryAny >());
+}
+
+void Bridge::sendRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ css::uno::TypeDescription const & type,
+ css::uno::TypeDescription const & member,
+ std::vector< BinaryAny >&& inArguments)
+{
+ getWriter()->queueRequest(tid, oid, type, member, std::move(inArguments));
+}
+
+void Bridge::throwException(bool exception, BinaryAny const & value) {
+ if (exception) {
+ cppu::throwException(mapBinaryToCppAny(value));
+ }
+}
+
+css::uno::Any Bridge::mapBinaryToCppAny(BinaryAny const & binaryAny) {
+ BinaryAny in(binaryAny);
+ css::uno::Any out;
+ out.~Any();
+ uno_copyAndConvertData(
+ &out, &in.get(),
+ css::uno::TypeDescription(cppu::UnoType< css::uno::Any >::get()).get(),
+ binaryToCppMapping_.get());
+ return out;
+}
+
+bool Bridge::becameUnused() const {
+ return stubs_.empty() && proxies_ == 0 && calls_ == 0 && normalCall_;
+}
+
+void Bridge::terminateWhenUnused(bool unused) {
+ if (unused) {
+ // That the current thread considers the bridge unused implies that it
+ // is not within an incoming or outgoing remote call (so calling
+ // terminate cannot lead to deadlock):
+ terminate(false);
+ }
+}
+
+void Bridge::checkDisposed() {
+ assert(state_ != STATE_INITIAL);
+ if (state_ != STATE_STARTED) {
+ throw css::lang::DisposedException(
+ "Binary URP bridge already disposed",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/bridge.hxx b/binaryurp/source/bridge.hxx
new file mode 100644
index 000000000..9da6640fa
--- /dev/null
+++ b/binaryurp/source/bridge.hxx
@@ -0,0 +1,281 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <cstddef>
+#include <map>
+#include <mutex>
+#include <vector>
+
+#include <com/sun/star/bridge/XBridge.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/uno/Reference.hxx>
+#include <cppuhelper/implbase.hxx>
+#include <osl/conditn.hxx>
+#include <osl/mutex.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <uno/environment.hxx>
+#include <uno/mapping.hxx>
+#include <uno/threadpool.h>
+
+#include "outgoingrequest.hxx"
+#include "outgoingrequests.hxx"
+#include "writer.hxx"
+
+namespace binaryurp {
+ class BinaryAny;
+ class BridgeFactory;
+ class Proxy;
+ class Reader;
+}
+namespace com::sun::star {
+ namespace bridge { class XInstanceProvider; }
+ namespace connection { class XConnection; }
+ namespace lang { class XEventListener; }
+ namespace uno {
+ class Any;
+ class TypeDescription;
+ class UnoInterfaceReference;
+ class XInterface;
+ }
+}
+namespace rtl { class ByteSequence; }
+
+namespace binaryurp {
+
+class Bridge:
+ public cppu::WeakImplHelper<
+ com::sun::star::bridge::XBridge, com::sun::star::lang::XComponent >
+{
+public:
+ Bridge(
+ rtl::Reference< BridgeFactory > const & factory,
+ OUString name,
+ com::sun::star::uno::Reference<
+ com::sun::star::connection::XConnection > const & connection,
+ com::sun::star::uno::Reference<
+ com::sun::star::bridge::XInstanceProvider > provider);
+
+ void start();
+
+ // Internally waits for all incoming and outgoing remote calls to terminate,
+ // so must not be called from within such a call; when final is true, also
+ // joins all remaining threads (reader, writer, and worker threads from the
+ // thread pool), so must not be called with final set to true from such a
+ // thread:
+ void terminate(bool final);
+
+ const com::sun::star::uno::Reference< com::sun::star::connection::XConnection >&
+ getConnection() const { return connection_;}
+
+ const com::sun::star::uno::Reference< com::sun::star::bridge::XInstanceProvider >&
+ getProvider() const { return provider_;}
+
+ com::sun::star::uno::Mapping & getCppToBinaryMapping() { return cppToBinaryMapping_;}
+
+ BinaryAny mapCppToBinaryAny(com::sun::star::uno::Any const & cppAny);
+
+ uno_ThreadPool getThreadPool();
+
+ rtl::Reference< Writer > getWriter();
+
+ com::sun::star::uno::UnoInterfaceReference registerIncomingInterface(
+ OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type);
+
+ OUString registerOutgoingInterface(
+ com::sun::star::uno::UnoInterfaceReference const & object,
+ com::sun::star::uno::TypeDescription const & type);
+
+ com::sun::star::uno::UnoInterfaceReference findStub(
+ OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type);
+
+ void releaseStub(
+ OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type);
+
+ void resurrectProxy(Proxy & proxy);
+
+ void revokeProxy(Proxy & proxy);
+
+ void freeProxy(Proxy & proxy);
+
+ void incrementCalls(bool normalCall) noexcept;
+
+ void decrementCalls();
+
+ void incrementActiveCalls() noexcept;
+
+ void decrementActiveCalls() noexcept;
+
+ bool makeCall(
+ OUString const & oid,
+ com::sun::star::uno::TypeDescription const & member, bool setter,
+ std::vector< BinaryAny >&& inArguments, BinaryAny * returnValue,
+ std::vector< BinaryAny > * outArguments);
+
+ // Only called from reader_ thread:
+ void sendRequestChangeRequest();
+
+ // Only called from reader_ thread:
+ void handleRequestChangeReply(
+ bool exception, BinaryAny const & returnValue);
+
+ // Only called from reader_ thread:
+ void handleCommitChangeReply(bool exception, BinaryAny const & returnValue);
+
+ // Only called from reader_ thread:
+ void handleRequestChangeRequest(
+ rtl::ByteSequence const & tid,
+ std::vector< BinaryAny > const & inArguments);
+
+ // Only called from reader_ thread:
+ void handleCommitChangeRequest(
+ rtl::ByteSequence const & tid,
+ std::vector< BinaryAny > const & inArguments);
+
+ OutgoingRequest lastOutgoingRequest(rtl::ByteSequence const & tid);
+
+ bool isProtocolPropertiesRequest(
+ std::u16string_view oid,
+ com::sun::star::uno::TypeDescription const & type) const;
+
+ void setCurrentContextMode();
+
+ bool isCurrentContextMode();
+
+private:
+ Bridge(const Bridge&) = delete;
+ Bridge& operator=(const Bridge&) = delete;
+
+ virtual ~Bridge() override;
+
+ virtual com::sun::star::uno::Reference< com::sun::star::uno::XInterface >
+ SAL_CALL getInstance(OUString const & sInstanceName) override;
+
+ virtual OUString SAL_CALL getName() override;
+
+ virtual OUString SAL_CALL getDescription() override;
+
+ virtual void SAL_CALL dispose() override;
+
+ virtual void SAL_CALL addEventListener(
+ com::sun::star::uno::Reference< com::sun::star::lang::XEventListener >
+ const & xListener) override;
+
+ virtual void SAL_CALL removeEventListener(
+ com::sun::star::uno::Reference< com::sun::star::lang::XEventListener >
+ const & aListener) override;
+
+ // Only called from reader_ thread:
+ void sendCommitChangeRequest();
+
+ // Only called from reader_ thread:
+ void sendProtPropRequest(
+ OutgoingRequest::Kind kind,
+ std::vector< BinaryAny > const & inArguments);
+
+ void makeReleaseCall(
+ OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type);
+
+ void sendRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type,
+ com::sun::star::uno::TypeDescription const & member,
+ std::vector< BinaryAny >&& inArguments);
+
+ void throwException(bool exception, BinaryAny const & value);
+
+ com::sun::star::uno::Any mapBinaryToCppAny(BinaryAny const & binaryAny);
+
+ bool becameUnused() const;
+
+ void terminateWhenUnused(bool unused);
+
+ // Must only be called with mutex_ locked:
+ void checkDisposed();
+
+ typedef
+ std::vector<
+ com::sun::star::uno::Reference<
+ com::sun::star::lang::XEventListener > >
+ Listeners;
+
+ struct SubStub;
+
+ typedef std::map< com::sun::star::uno::TypeDescription, SubStub > Stub;
+
+ typedef std::map< OUString, Stub > Stubs;
+
+ enum State { STATE_INITIAL, STATE_STARTED, STATE_TERMINATED, STATE_FINAL };
+
+ enum Mode {
+ MODE_REQUESTED, MODE_REPLY_MINUS1, MODE_REPLY_0, MODE_REPLY_1,
+ MODE_WAIT, MODE_NORMAL, MODE_NORMAL_WAIT };
+
+ rtl::Reference< BridgeFactory > factory_;
+ OUString name_;
+ com::sun::star::uno::Reference< com::sun::star::connection::XConnection >
+ connection_;
+ com::sun::star::uno::Reference< com::sun::star::bridge::XInstanceProvider >
+ provider_;
+ com::sun::star::uno::Environment binaryUno_;
+ com::sun::star::uno::Mapping cppToBinaryMapping_;
+ com::sun::star::uno::Mapping binaryToCppMapping_;
+ rtl::ByteSequence protPropTid_;
+ OUString protPropOid_;
+ com::sun::star::uno::TypeDescription protPropType_;
+ com::sun::star::uno::TypeDescription protPropRequest_;
+ com::sun::star::uno::TypeDescription protPropCommit_;
+ OutgoingRequests outgoingRequests_;
+ osl::Condition passive_;
+ // to guarantee that passive_ is eventually set (to avoid deadlock, see
+ // dispose), activeCalls_ only counts those calls for which it can be
+ // guaranteed that incrementActiveCalls is indeed followed by
+ // decrementActiveCalls, without an intervening exception
+ osl::Condition terminated_;
+
+ std::mutex mutex_;
+ State state_;
+ Listeners listeners_;
+ uno_ThreadPool threadPool_;
+ rtl::Reference< Writer > writer_;
+ rtl::Reference< Reader > reader_;
+ bool currentContextMode_;
+ Stubs stubs_;
+ std::size_t proxies_;
+ std::size_t calls_;
+ bool normalCall_;
+ std::size_t activeCalls_;
+
+ // Only accessed from reader_ thread:
+ Mode mode_;
+ sal_Int32 random_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/bridgefactory.cxx b/binaryurp/source/bridgefactory.cxx
new file mode 100644
index 000000000..a2dd1fa97
--- /dev/null
+++ b/binaryurp/source/bridgefactory.cxx
@@ -0,0 +1,192 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <algorithm>
+#include <cassert>
+
+#include <com/sun/star/bridge/BridgeExistsException.hpp>
+#include <com/sun/star/connection/XConnection.hpp>
+#include <com/sun/star/lang/IllegalArgumentException.hpp>
+#include <com/sun/star/uno/Exception.hpp>
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/uno/XInterface.hpp>
+#include <cppuhelper/supportsservice.hxx>
+#include <o3tl/safeint.hxx>
+#include <rtl/ref.hxx>
+#include <sal/log.hxx>
+#include <sal/types.h>
+
+#include "bridge.hxx"
+#include "bridgefactory.hxx"
+
+namespace binaryurp {
+
+void BridgeFactory::removeBridge(
+ css::uno::Reference< css::bridge::XBridge > const & bridge)
+{
+ assert(bridge.is());
+ OUString n(bridge->getName());
+ osl::MutexGuard g(m_aMutex);
+ if (n.isEmpty())
+ {
+ unnamed_.erase(std::remove(unnamed_.begin(), unnamed_.end(), bridge), unnamed_.end());
+ }
+ else
+ {
+ BridgeMap::iterator i(named_.find(n));
+ if (i != named_.end() && i->second == bridge)
+ named_.erase(i);
+ }
+}
+
+BridgeFactory::BridgeFactory():
+ BridgeFactoryBase(m_aMutex)
+{
+}
+
+BridgeFactory::~BridgeFactory() {}
+
+OUString BridgeFactory::getImplementationName()
+{
+ return "com.sun.star.comp.bridge.BridgeFactory";
+}
+
+sal_Bool BridgeFactory::supportsService(OUString const & ServiceName)
+{
+ return cppu::supportsService(this, ServiceName);
+}
+
+css::uno::Sequence< OUString > BridgeFactory::getSupportedServiceNames()
+{
+ return { "com.sun.star.bridge.BridgeFactory" };
+}
+
+css::uno::Reference< css::bridge::XBridge > BridgeFactory::createBridge(
+ OUString const & sName, OUString const & sProtocol,
+ css::uno::Reference< css::connection::XConnection > const & aConnection,
+ css::uno::Reference< css::bridge::XInstanceProvider > const &
+ anInstanceProvider)
+{
+ rtl::Reference< Bridge > b;
+ {
+ osl::MutexGuard g(m_aMutex);
+ if (rBHelper.bDisposed) {
+ throw css::lang::DisposedException(
+ "BridgeFactory disposed",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+ if (named_.find(sName) != named_.end()) {
+ throw css::bridge::BridgeExistsException(
+ sName, static_cast< cppu::OWeakObject * >(this));
+ }
+ if (sProtocol != "urp" || !aConnection.is()) {
+ throw css::lang::IllegalArgumentException(
+ ("BridgeFactory::createBridge: sProtocol != urp ||"
+ " aConnection == null"),
+ static_cast< cppu::OWeakObject * >(this), -1);
+ }
+ b.set(new Bridge(this, sName, aConnection, anInstanceProvider));
+ if (sName.isEmpty()) {
+ unnamed_.emplace_back(b.get());
+ } else {
+ named_[sName] = b.get();
+ }
+ }
+ b->start();
+ return b;
+}
+
+css::uno::Reference< css::bridge::XBridge > BridgeFactory::getBridge(
+ OUString const & sName)
+{
+ osl::MutexGuard g(m_aMutex);
+ BridgeMap::iterator i(named_.find(sName));
+ return i == named_.end()
+ ? css::uno::Reference< css::bridge::XBridge >() : i->second;
+}
+
+css::uno::Sequence< css::uno::Reference< css::bridge::XBridge > >
+BridgeFactory::getExistingBridges() {
+ osl::MutexGuard g(m_aMutex);
+ if (unnamed_.size() > SAL_MAX_INT32) {
+ throw css::uno::RuntimeException(
+ "BridgeFactory::getExistingBridges: too many",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+ sal_Int32 n = static_cast< sal_Int32 >(unnamed_.size());
+ if (named_.size() > o3tl::make_unsigned(SAL_MAX_INT32 - n)) {
+ throw css::uno::RuntimeException(
+ "BridgeFactory::getExistingBridges: too many",
+ static_cast< cppu::OWeakObject * >(this));
+ }
+ n = static_cast< sal_Int32 >(n + named_.size());
+ css::uno::Sequence< css::uno::Reference< css::bridge::XBridge > > s(n);
+ auto r = asNonConstRange(s);
+ sal_Int32 i = 0;
+ for (auto const& item : unnamed_)
+ r[i++] = item;
+
+ for (auto const& item : named_)
+ r[i++] = item.second;
+
+ return s;
+}
+
+void BridgeFactory::disposing() {
+ BridgeVector l1;
+ BridgeMap l2;
+ {
+ osl::MutexGuard g(m_aMutex);
+ l1.swap(unnamed_);
+ l2.swap(named_);
+ }
+ for (auto const& item : l1)
+ {
+ try {
+ css::uno::Reference<css::lang::XComponent>(
+ item, css::uno::UNO_QUERY_THROW)->dispose();
+ } catch (css::uno::Exception & e) {
+ SAL_WARN("binaryurp", "ignoring " << e);
+ }
+ }
+ for (auto const& item : l2)
+ {
+ try {
+ css::uno::Reference<css::lang::XComponent>(
+ item.second, css::uno::UNO_QUERY_THROW)->dispose();
+ } catch (css::uno::Exception & e) {
+ SAL_WARN("binaryurp", "ignoring " << e);
+ }
+ }
+}
+
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
+com_sun_star_comp_bridge_BridgeFactory_get_implementation(
+ css::uno::XComponentContext* , css::uno::Sequence<css::uno::Any> const&)
+{
+ return cppu::acquire(new binaryurp::BridgeFactory);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/bridgefactory.hxx b/binaryurp/source/bridgefactory.hxx
new file mode 100644
index 000000000..590238960
--- /dev/null
+++ b/binaryurp/source/bridgefactory.hxx
@@ -0,0 +1,115 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <vector>
+#include <map>
+
+#include <com/sun/star/bridge/XBridgeFactory2.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/uno/Reference.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <cppuhelper/compbase.hxx>
+#include <sal/types.h>
+
+namespace com::sun::star {
+ namespace connection { class XConnection; }
+ namespace uno {
+ class XComponentContext;
+ class XInterface;
+ }
+}
+
+namespace binaryurp {
+
+// That BridgeFactory derives from XComponent appears to be a historic mistake;
+// the implementation does not care about a disposed state:
+
+typedef
+ cppu::WeakComponentImplHelper<
+ com::sun::star::lang::XServiceInfo,
+ com::sun::star::bridge::XBridgeFactory2 >
+ BridgeFactoryBase;
+
+class BridgeFactory : private cppu::BaseMutex, public BridgeFactoryBase
+{
+public:
+ void removeBridge(
+ com::sun::star::uno::Reference< com::sun::star::bridge::XBridge >
+ const & bridge);
+
+ using BridgeFactoryBase::acquire;
+ using BridgeFactoryBase::release;
+
+ BridgeFactory(const BridgeFactory&) = delete;
+ BridgeFactory& operator=(const BridgeFactory&) = delete;
+
+ BridgeFactory();
+
+ virtual ~BridgeFactory() override;
+
+private:
+ virtual OUString SAL_CALL getImplementationName() override;
+
+ virtual sal_Bool SAL_CALL supportsService(OUString const & ServiceName) override;
+
+ virtual com::sun::star::uno::Sequence< OUString > SAL_CALL
+ getSupportedServiceNames() override;
+
+ virtual com::sun::star::uno::Reference< com::sun::star::bridge::XBridge >
+ SAL_CALL createBridge(
+ OUString const & sName, OUString const & sProtocol,
+ com::sun::star::uno::Reference<
+ com::sun::star::connection::XConnection > const & aConnection,
+ com::sun::star::uno::Reference<
+ com::sun::star::bridge::XInstanceProvider > const &
+ anInstanceProvider) override;
+
+ virtual com::sun::star::uno::Reference< com::sun::star::bridge::XBridge >
+ SAL_CALL getBridge(
+ OUString const & sName) override;
+
+ virtual
+ com::sun::star::uno::Sequence<
+ com::sun::star::uno::Reference< com::sun::star::bridge::XBridge > >
+ SAL_CALL getExistingBridges() override;
+
+ void SAL_CALL disposing() override;
+
+ typedef
+ std::vector<
+ com::sun::star::uno::Reference< com::sun::star::bridge::XBridge > >
+ BridgeVector;
+
+ typedef
+ std::map<
+ OUString,
+ com::sun::star::uno::Reference< com::sun::star::bridge::XBridge > >
+ BridgeMap;
+
+ BridgeVector unnamed_;
+ BridgeMap named_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/cache.hxx b/binaryurp/source/cache.hxx
new file mode 100644
index 000000000..bd8648efd
--- /dev/null
+++ b/binaryurp/source/cache.hxx
@@ -0,0 +1,95 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <cstddef>
+#include <map>
+#include <list>
+
+#include <sal/types.h>
+
+namespace binaryurp {
+
+namespace cache {
+
+enum { size = 256, ignore = 0xFFFF };
+
+}
+
+template< typename T > class Cache {
+public:
+ typedef sal_uInt16 IdxType;
+
+ explicit Cache(std::size_t size):
+ size_(size)
+ {
+ assert(size < cache::ignore);
+ }
+
+ IdxType add( const T& rContent, bool* pbFound) {
+ assert( pbFound != nullptr);
+ if( !size_) {
+ *pbFound = false;
+ return cache::ignore;
+ }
+ // try to insert into the map
+ list_.push_front( rContent); // create a temp entry
+ auto const [it, inserted] = map_.emplace( list_.begin(), 0 );
+ *pbFound = !inserted;
+
+ if( !inserted) { // insertion not needed => found the entry
+ list_.pop_front(); // remove the temp entry
+ list_.splice( list_.begin(), list_, it->first); // the found entry is moved to front
+ return it->second;
+ }
+
+ // test insertion successful => it was new so we keep it
+ IdxType n = static_cast<IdxType>( map_.size() - 1);
+ if( n >= size_) { // cache full => replace the LRU entry
+ // find the least recently used element in the map
+ typename LruItMap::iterator lru = map_.find( --list_.end());
+ n = lru->second;
+ map_.erase( lru); // remove it from the map
+ list_.pop_back(); // remove from the list
+ }
+ it->second = n;
+ return n;
+ }
+
+private:
+ Cache(const Cache&) = delete;
+ Cache& operator=(const Cache&) = delete;
+
+ typedef std::list<T> LruList; // last recently used list
+ typedef typename LruList::iterator LruListIt;
+ struct CmpT{ bool operator()( const LruListIt& rA, const LruListIt& rB) const { return (*rA<*rB);}};
+ typedef std::map< LruListIt, IdxType, CmpT > LruItMap; // a map into a LruList
+
+ std::size_t size_;
+ LruItMap map_;
+ LruList list_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/currentcontext.cxx b/binaryurp/source/currentcontext.cxx
new file mode 100644
index 000000000..acaf606d2
--- /dev/null
+++ b/binaryurp/source/currentcontext.cxx
@@ -0,0 +1,55 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <rtl/ustring.hxx>
+#include <uno/current_context.h>
+#include <uno/dispatcher.hxx>
+#include <uno/lbnames.h>
+
+#include "currentcontext.hxx"
+
+namespace binaryurp::current_context {
+
+css::uno::UnoInterfaceReference get() {
+ css::uno::UnoInterfaceReference cc;
+ if (!uno_getCurrentContext(
+ reinterpret_cast< void ** >(&cc.m_pUnoI),
+ OUString(UNO_LB_UNO).pData, nullptr))
+ {
+ throw css::uno::RuntimeException("uno_getCurrentContext failed");
+ }
+ return cc;
+}
+
+void set(css::uno::UnoInterfaceReference const & value) {
+ css::uno::UnoInterfaceReference cc(value);
+ if (!uno_setCurrentContext(
+ cc.m_pUnoI,
+ OUString(UNO_LB_UNO).pData, nullptr))
+ {
+ throw css::uno::RuntimeException("uno_setCurrentContext failed");
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/currentcontext.hxx b/binaryurp/source/currentcontext.hxx
new file mode 100644
index 000000000..b5f55a824
--- /dev/null
+++ b/binaryurp/source/currentcontext.hxx
@@ -0,0 +1,36 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+namespace com::sun::star::uno
+{
+class UnoInterfaceReference;
+}
+
+namespace binaryurp::current_context
+{
+com::sun::star::uno::UnoInterfaceReference get();
+
+void set(com::sun::star::uno::UnoInterfaceReference const& value);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/incomingreply.hxx b/binaryurp/source/incomingreply.hxx
new file mode 100644
index 000000000..c2f5353ff
--- /dev/null
+++ b/binaryurp/source/incomingreply.hxx
@@ -0,0 +1,52 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <utility>
+#include <vector>
+
+#include "binaryany.hxx"
+
+namespace binaryurp {
+
+struct IncomingReply {
+private:
+ IncomingReply(const IncomingReply&) = delete;
+ IncomingReply& operator=(const IncomingReply&) = delete;
+public:
+ IncomingReply(
+ bool theException, BinaryAny theReturnValue,
+ std::vector< BinaryAny >&& theOutArguments):
+ exception(theException), returnValue(std::move(theReturnValue)),
+ outArguments(std::move(theOutArguments))
+ {}
+
+ bool exception;
+
+ BinaryAny returnValue;
+
+ std::vector< BinaryAny > outArguments;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/incomingrequest.cxx b/binaryurp/source/incomingrequest.cxx
new file mode 100644
index 000000000..6f4107693
--- /dev/null
+++ b/binaryurp/source/incomingrequest.cxx
@@ -0,0 +1,286 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <utility>
+#include <vector>
+
+#include <com/sun/star/bridge/XInstanceProvider.hpp>
+#include <com/sun/star/container/NoSuchElementException.hpp>
+#include <cppuhelper/exc_hlp.hxx>
+#include <o3tl/runtimetooustring.hxx>
+#include <rtl/byteseq.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/log.hxx>
+#include <sal/types.h>
+#include <typelib/typedescription.hxx>
+#include <uno/dispatcher.hxx>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "currentcontext.hxx"
+#include "incomingrequest.hxx"
+#include "specialfunctionids.hxx"
+
+namespace binaryurp {
+
+IncomingRequest::IncomingRequest(
+ rtl::Reference< Bridge > const & bridge, rtl::ByteSequence tid,
+ OUString oid, css::uno::UnoInterfaceReference object,
+ css::uno::TypeDescription type, sal_uInt16 functionId,
+ bool synchronous, css::uno::TypeDescription const & member, bool setter,
+ std::vector< BinaryAny >&& inArguments, bool currentContextMode,
+ css::uno::UnoInterfaceReference currentContext):
+ bridge_(bridge), tid_(std::move(tid)), oid_(std::move(oid)), object_(std::move(object)), type_(std::move(type)),
+ member_(member), currentContext_(std::move(currentContext)),
+ inArguments_(std::move(inArguments)), functionId_(functionId),
+ synchronous_(synchronous), setter_(setter), currentContextMode_(currentContextMode)
+{
+ assert(bridge.is());
+ assert(member.is());
+ assert(member.get()->bComplete);
+}
+
+IncomingRequest::~IncomingRequest() {}
+
+void IncomingRequest::execute() const {
+ BinaryAny ret;
+ std::vector< BinaryAny > outArgs;
+ bool isExc;
+ try {
+ bool resetCc = false;
+ css::uno::UnoInterfaceReference oldCc;
+ if (currentContextMode_) {
+ oldCc = current_context::get();
+ current_context::set(currentContext_);
+ resetCc = true;
+ }
+ try {
+ try {
+ isExc = !execute_throw(&ret, &outArgs);
+ } catch (const std::exception & e) {
+ throw css::uno::RuntimeException(
+ "caught C++ exception: "
+ + o3tl::runtimeToOUString(e.what()));
+ }
+ } catch (const css::uno::RuntimeException &) {
+ css::uno::Any exc(cppu::getCaughtException());
+ ret = bridge_->mapCppToBinaryAny(exc);
+ isExc = true;
+ }
+ if (resetCc) {
+ current_context::set(oldCc);
+ }
+ } catch (const css::uno::RuntimeException &) {
+ css::uno::Any exc(cppu::getCaughtException());
+ ret = bridge_->mapCppToBinaryAny(exc);
+ isExc = true;
+ }
+ if (synchronous_) {
+ bridge_->decrementActiveCalls();
+ try {
+ bridge_->getWriter()->queueReply(
+ tid_, member_, setter_, isExc, ret, std::move(outArgs), false);
+ return;
+ } catch (const css::uno::RuntimeException & e) {
+ SAL_INFO("binaryurp", "caught " << e);
+ } catch (const std::exception & e) {
+ SAL_INFO("binaryurp", "caught C++ exception " << e.what());
+ }
+ bridge_->terminate(false);
+ } else {
+ if (isExc) {
+ SAL_INFO("binaryurp", "oneway method raised exception");
+ }
+ bridge_->decrementCalls();
+ }
+}
+
+static size_t size_t_round(size_t val)
+{
+ return (val + (sizeof(size_t)-1)) & ~(sizeof(size_t)-1);
+}
+
+bool IncomingRequest::execute_throw(
+ BinaryAny * returnValue, std::vector< BinaryAny > * outArguments) const
+{
+ assert(returnValue != nullptr);
+ assert(
+ returnValue->getType().equals(
+ css::uno::TypeDescription(cppu::UnoType<void>::get())));
+ assert(outArguments != nullptr);
+ assert(outArguments->empty());
+ bool isExc = false;
+ switch (functionId_) {
+ case SPECIAL_FUNCTION_ID_RESERVED:
+ assert(false); // this cannot happen
+ break;
+ case SPECIAL_FUNCTION_ID_RELEASE:
+ bridge_->releaseStub(oid_, type_);
+ break;
+ case SPECIAL_FUNCTION_ID_QUERY_INTERFACE:
+ if (!object_.is()) {
+ css::uno::Reference< css::uno::XInterface > ifc;
+ css::uno::Reference< css::bridge::XInstanceProvider > prov(
+ bridge_->getProvider());
+ if (prov.is()) {
+ try {
+ ifc = prov->getInstance(oid_);
+ } catch (const css::container::NoSuchElementException & e) {
+ SAL_INFO("binaryurp", "initial element " << oid_ << ": " << e);
+ }
+ }
+ if (ifc.is()) {
+ css::uno::UnoInterfaceReference unoIfc(
+ static_cast< uno_Interface * >(
+ bridge_->getCppToBinaryMapping().mapInterface(
+ ifc.get(),
+ (css::uno::TypeDescription(
+ cppu::UnoType<
+ css::uno::Reference<
+ css::uno::XInterface > >::get()).
+ get()))),
+ SAL_NO_ACQUIRE);
+ *returnValue = BinaryAny(
+ css::uno::TypeDescription(
+ cppu::UnoType<
+ css::uno::Reference<
+ css::uno::XInterface > >::get()),
+ &unoIfc.m_pUnoI);
+ }
+ break;
+ }
+ [[fallthrough]];
+ default:
+ {
+ assert(object_.is());
+ css::uno::TypeDescription retType;
+ std::vector< std::vector< char > > outBufs;
+ std::vector< void * > args;
+ switch (member_.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+ css::uno::TypeDescription t(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member_.get())->
+ pAttributeTypeRef);
+ if (setter_) {
+ assert(inArguments_.size() == 1);
+ args.push_back(inArguments_[0].getValue(t));
+ } else {
+ assert(inArguments_.empty());
+ retType = t;
+ }
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ member_.get());
+ retType = css::uno::TypeDescription(mtd->pReturnTypeRef);
+ std::vector< BinaryAny >::const_iterator i(
+ inArguments_.begin());
+ for (sal_Int32 j = 0; j != mtd->nParams; ++j) {
+ void * p;
+ if (mtd->pParams[j].bIn) {
+ p = i++->getValue(
+ css::uno::TypeDescription(
+ mtd->pParams[j].pTypeRef));
+ } else {
+ outBufs.emplace_back(size_t_round(
+ css::uno::TypeDescription(
+ mtd->pParams[j].pTypeRef).
+ get()->nSize));
+ p = outBufs.back().data();
+ }
+ args.push_back(p);
+ if (mtd->pParams[j].bOut) {
+ outArguments->push_back(BinaryAny());
+ }
+ }
+ assert(i == inArguments_.end());
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ size_t nSize = 0;
+ if (retType.is())
+ nSize = size_t_round(retType.get()->nSize);
+ std::vector< char > retBuf(nSize);
+ uno_Any exc;
+ uno_Any * pexc = &exc;
+ (*object_.get()->pDispatcher)(
+ object_.get(), member_.get(), retBuf.empty() ? nullptr : retBuf.data(),
+ args.empty() ? nullptr : args.data(), &pexc);
+ isExc = pexc != nullptr;
+ if (isExc) {
+ *returnValue = BinaryAny(
+ css::uno::TypeDescription(
+ cppu::UnoType< css::uno::Any >::get()),
+ &exc);
+ uno_any_destruct(&exc, nullptr);
+ } else {
+ if (!retBuf.empty()) {
+ *returnValue = BinaryAny(retType, retBuf.data());
+ uno_destructData(retBuf.data(), retType.get(), nullptr);
+ }
+ if (!outArguments->empty()) {
+ assert(
+ member_.get()->eTypeClass ==
+ typelib_TypeClass_INTERFACE_METHOD);
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ member_.get());
+ std::vector< BinaryAny >::iterator i(outArguments->begin());
+ std::vector< std::vector< char > >::iterator j(
+ outBufs.begin());
+ for (sal_Int32 k = 0; k != mtd->nParams; ++k) {
+ if (mtd->pParams[k].bOut) {
+ *i++ = BinaryAny(
+ css::uno::TypeDescription(
+ mtd->pParams[k].pTypeRef),
+ args[k]);
+ }
+ if (!mtd->pParams[k].bIn) {
+ uno_type_destructData(
+ (j++)->data(), mtd->pParams[k].pTypeRef, nullptr);
+ }
+ }
+ assert(i == outArguments->end());
+ assert(j == outBufs.end());
+ }
+ }
+ break;
+ }
+ }
+ return !isExc;
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/incomingrequest.hxx b/binaryurp/source/incomingrequest.hxx
new file mode 100644
index 000000000..faff4f5a5
--- /dev/null
+++ b/binaryurp/source/incomingrequest.hxx
@@ -0,0 +1,79 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <vector>
+
+#include <rtl/byteseq.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <typelib/typedescription.hxx>
+#include <uno/dispatcher.hxx>
+
+namespace binaryurp {
+ class BinaryAny;
+ class Bridge;
+}
+
+namespace binaryurp {
+
+class IncomingRequest {
+private:
+ IncomingRequest(const IncomingRequest&) = delete;
+ IncomingRequest& operator=(const IncomingRequest&) = delete;
+public:
+ IncomingRequest(
+ rtl::Reference< Bridge > const & bridge, rtl::ByteSequence tid,
+ OUString oid,
+ com::sun::star::uno::UnoInterfaceReference object,
+ com::sun::star::uno::TypeDescription type,
+ sal_uInt16 functionId, bool synchronous,
+ com::sun::star::uno::TypeDescription const & member, bool setter,
+ std::vector< BinaryAny >&& inArguments, bool currentContextMode,
+ com::sun::star::uno::UnoInterfaceReference currentContext);
+
+ ~IncomingRequest();
+
+ void execute() const;
+
+private:
+ bool execute_throw(
+ BinaryAny * returnValue, std::vector< BinaryAny > * outArguments) const;
+
+ rtl::Reference< Bridge > bridge_;
+ rtl::ByteSequence tid_;
+ OUString oid_; // initial object queryInterface; release
+ com::sun::star::uno::UnoInterfaceReference object_;
+ com::sun::star::uno::TypeDescription type_;
+ com::sun::star::uno::TypeDescription member_;
+ com::sun::star::uno::UnoInterfaceReference currentContext_;
+ std::vector< BinaryAny > inArguments_;
+ sal_uInt16 functionId_;
+ bool synchronous_;
+ bool setter_;
+ bool currentContextMode_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/lessoperators.cxx b/binaryurp/source/lessoperators.cxx
new file mode 100644
index 000000000..acab81175
--- /dev/null
+++ b/binaryurp/source/lessoperators.cxx
@@ -0,0 +1,65 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <algorithm>
+#include <cassert>
+
+#include <rtl/byteseq.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <typelib/typeclass.h>
+#include <typelib/typedescription.hxx>
+
+#include "lessoperators.hxx"
+
+namespace com::sun::star::uno {
+
+bool operator <(TypeDescription const & left, TypeDescription const & right) {
+ assert(left.is() && right.is());
+ typelib_TypeClass tc1 = left.get()->eTypeClass;
+ typelib_TypeClass tc2 = right.get()->eTypeClass;
+ return tc1 < tc2 ||
+ (tc1 == tc2 &&
+ (OUString::unacquired(&left.get()->pTypeName) <
+ OUString::unacquired(&right.get()->pTypeName)));
+}
+
+}
+
+namespace rtl {
+
+bool operator <(ByteSequence const & left, ByteSequence const & right) {
+ const sal_Int32 nLen = std::min( left.getLength(), right.getLength());
+ for( sal_Int32 i = 0; i < nLen; ++i )
+ {
+ if (left[i] < right[i]) {
+ return true;
+ }
+ if (right[i] < left[i]) {
+ return false;
+ }
+ }
+ return left.getLength() < right.getLength();
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/lessoperators.hxx b/binaryurp/source/lessoperators.hxx
new file mode 100644
index 000000000..306710de6
--- /dev/null
+++ b/binaryurp/source/lessoperators.hxx
@@ -0,0 +1,39 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+namespace com::sun::star::uno { class TypeDescription; }
+namespace rtl { class ByteSequence; }
+
+namespace com::sun::star::uno {
+
+bool operator <(TypeDescription const & left, TypeDescription const & right);
+
+}
+
+namespace rtl {
+
+bool operator <(ByteSequence const & left, ByteSequence const & right);
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/marshal.cxx b/binaryurp/source/marshal.cxx
new file mode 100644
index 000000000..7d60cbf4d
--- /dev/null
+++ b/binaryurp/source/marshal.cxx
@@ -0,0 +1,300 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <vector>
+
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <cppu/unotype.hxx>
+#include <rtl/byteseq.hxx>
+#include <rtl/string.hxx>
+#include <rtl/textcvt.h>
+#include <rtl/textenc.h>
+#include <rtl/ustring.h>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <typelib/typeclass.h>
+#include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
+#include <uno/dispatcher.hxx>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "cache.hxx"
+#include "lessoperators.hxx"
+#include "marshal.hxx"
+
+namespace binaryurp {
+
+namespace {
+
+void write64(std::vector< unsigned char > * buffer, sal_uInt64 value) {
+ Marshal::write8(buffer, value >> 56);
+ Marshal::write8(buffer, (value >> 48) & 0xFF);
+ Marshal::write8(buffer, (value >> 40) & 0xFF);
+ Marshal::write8(buffer, (value >> 32) & 0xFF);
+ Marshal::write8(buffer, (value >> 24) & 0xFF);
+ Marshal::write8(buffer, (value >> 16) & 0xFF);
+ Marshal::write8(buffer, (value >> 8) & 0xFF);
+ Marshal::write8(buffer, value & 0xFF);
+}
+
+void writeCompressed(std::vector< unsigned char > * buffer, sal_uInt32 value) {
+ if (value < 0xFF) {
+ Marshal::write8(buffer, static_cast< sal_uInt8 >(value));
+ } else {
+ Marshal::write8(buffer, 0xFF);
+ Marshal::write32(buffer, value);
+ }
+}
+
+void writeString(
+ std::vector< unsigned char > * buffer, OUString const & value)
+{
+ assert(buffer != nullptr);
+ OString v;
+ if (!value.convertToString(
+ &v, RTL_TEXTENCODING_UTF8,
+ (RTL_UNICODETOTEXT_FLAGS_UNDEFINED_ERROR |
+ RTL_UNICODETOTEXT_FLAGS_INVALID_ERROR)))
+ {
+ throw css::uno::RuntimeException(
+ "UNO string contains invalid UTF-16 sequence");
+ }
+ writeCompressed(buffer, static_cast< sal_uInt32 >(v.getLength()));
+ buffer->insert(buffer->end(), v.getStr(), v.getStr() + v.getLength());
+}
+
+}
+
+Marshal::Marshal(rtl::Reference< Bridge > const & bridge, WriterState & state):
+ bridge_(bridge), state_(state)
+{
+ assert(bridge.is());
+}
+
+Marshal::~Marshal() {}
+
+void Marshal::write8(std::vector< unsigned char > * buffer, sal_uInt8 value) {
+ assert(buffer != nullptr);
+ buffer->push_back(value);
+}
+
+void Marshal::write16(std::vector< unsigned char > * buffer, sal_uInt16 value) {
+ write8(buffer, value >> 8);
+ write8(buffer, value & 0xFF);
+}
+
+void Marshal::write32(std::vector< unsigned char > * buffer, sal_uInt32 value) {
+ write8(buffer, value >> 24);
+ write8(buffer, (value >> 16) & 0xFF);
+ write8(buffer, (value >> 8) & 0xFF);
+ write8(buffer, value & 0xFF);
+}
+
+void Marshal::writeValue(
+ std::vector< unsigned char > * buffer,
+ css::uno::TypeDescription const & type, BinaryAny const & value)
+{
+ assert(
+ type.is() &&
+ (type.get()->eTypeClass == typelib_TypeClass_ANY ||
+ value.getType().equals(type)));
+ writeValue(buffer, type, value.getValue(type));
+}
+
+void Marshal::writeType(
+ std::vector< unsigned char > * buffer,
+ css::uno::TypeDescription const & value)
+{
+ value.makeComplete();
+ assert(value.is());
+ typelib_TypeClass tc = value.get()->eTypeClass;
+ if (tc <= typelib_TypeClass_ANY) {
+ write8(buffer, static_cast< sal_uInt8 >(tc));
+ } else {
+ bool found;
+ sal_uInt16 idx = state_.typeCache.add(value, &found);
+ if (found) {
+ write8(buffer, static_cast< sal_uInt8 >(tc));
+ write16(buffer, idx);
+ } else {
+ write8(buffer, static_cast< sal_uInt8 >(tc) | 0x80);
+ write16(buffer, idx);
+ writeString(buffer, OUString(value.get()->pTypeName));
+ }
+ }
+}
+
+void Marshal::writeOid(
+ std::vector< unsigned char > * buffer, OUString const & oid)
+{
+ bool found;
+ sal_uInt16 idx;
+ if ( oid.isEmpty() ) {
+ found = true;
+ idx = cache::ignore;
+ } else {
+ idx = state_.oidCache.add(oid, &found);
+ }
+ if (found) {
+ write8(buffer, 0);
+ } else {
+ writeString(buffer, oid);
+ }
+ write16(buffer, idx);
+}
+
+void Marshal::writeTid(
+ std::vector< unsigned char > * buffer, rtl::ByteSequence const & tid)
+{
+ bool found;
+ sal_uInt16 idx = state_.tidCache.add(tid, &found);
+ if (found) {
+ write8(buffer, 0);
+ } else {
+ sal_Sequence * p = tid.getHandle();
+ writeValue(
+ buffer,
+ css::uno::TypeDescription(
+ cppu::UnoType< css::uno::Sequence< sal_Int8 > >::get()), &p);
+ }
+ write16(buffer, idx);
+}
+
+void Marshal::writeValue(
+ std::vector< unsigned char > * buffer,
+ css::uno::TypeDescription const & type, void const * value)
+{
+ assert(buffer != nullptr && type.is());
+ type.makeComplete();
+ switch (type.get()->eTypeClass) {
+ case typelib_TypeClass_VOID:
+ break;
+ case typelib_TypeClass_BOOLEAN:
+ assert(*static_cast< sal_uInt8 const * >(value) <= 1);
+ [[fallthrough]];
+ case typelib_TypeClass_BYTE:
+ write8(buffer, *static_cast< sal_uInt8 const * >(value));
+ break;
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ case typelib_TypeClass_CHAR:
+ write16(buffer, *static_cast< sal_uInt16 const * >(value));
+ break;
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_FLOAT:
+ case typelib_TypeClass_ENUM:
+ write32(buffer, *static_cast< sal_uInt32 const * >(value));
+ break;
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ case typelib_TypeClass_DOUBLE:
+ write64(buffer, *static_cast< sal_uInt64 const * >(value));
+ break;
+ case typelib_TypeClass_STRING:
+ writeString(
+ buffer,
+ OUString(*static_cast< rtl_uString * const * >(value)));
+ break;
+ case typelib_TypeClass_TYPE:
+ writeType(
+ buffer,
+ css::uno::TypeDescription(
+ *static_cast< typelib_TypeDescriptionReference * const * >(
+ value)));
+ break;
+ case typelib_TypeClass_ANY:
+ {
+ uno_Any const * p = static_cast< uno_Any const * >(value);
+ css::uno::TypeDescription t(p->pType);
+ writeType(buffer, t);
+ writeValue(buffer, t, p->pData);
+ break;
+ }
+ case typelib_TypeClass_SEQUENCE:
+ {
+ sal_Sequence * p = *static_cast< sal_Sequence * const * >(value);
+ writeCompressed(buffer, static_cast< sal_uInt32 >(p->nElements));
+ css::uno::TypeDescription ctd(
+ reinterpret_cast< typelib_IndirectTypeDescription * >(
+ type.get())->
+ pType);
+ assert(ctd.is());
+ if (ctd.get()->eTypeClass == typelib_TypeClass_BYTE) {
+ buffer->insert(
+ buffer->end(), p->elements, p->elements + p->nElements);
+ } else {
+ for (sal_Int32 i = 0; i != p->nElements; ++i) {
+ writeValue(buffer, ctd, p->elements + i * ctd.get()->nSize);
+ }
+ }
+ break;
+ }
+ case typelib_TypeClass_STRUCT:
+ case typelib_TypeClass_EXCEPTION:
+ writeMemberValues(buffer, type, value);
+ break;
+ case typelib_TypeClass_INTERFACE:
+ writeOid(
+ buffer,
+ bridge_->registerOutgoingInterface(
+ css::uno::UnoInterfaceReference(
+ *static_cast< uno_Interface * const * >(value)),
+ type));
+ break;
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+}
+
+void Marshal::writeMemberValues(
+ std::vector< unsigned char > * buffer,
+ css::uno::TypeDescription const & type, void const * aggregateValue)
+{
+ assert(
+ type.is() &&
+ (type.get()->eTypeClass == typelib_TypeClass_STRUCT ||
+ type.get()->eTypeClass == typelib_TypeClass_EXCEPTION) &&
+ aggregateValue != nullptr);
+ type.makeComplete();
+ typelib_CompoundTypeDescription * ctd =
+ reinterpret_cast< typelib_CompoundTypeDescription * >(type.get());
+ if (ctd->pBaseTypeDescription != nullptr) {
+ writeMemberValues(
+ buffer,
+ css::uno::TypeDescription(&ctd->pBaseTypeDescription->aBase),
+ aggregateValue);
+ }
+ for (sal_Int32 i = 0; i != ctd->nMembers; ++i) {
+ writeValue(
+ buffer, css::uno::TypeDescription(ctd->ppTypeRefs[i]),
+ (static_cast< char const * >(aggregateValue) +
+ ctd->pMemberOffsets[i]));
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/marshal.hxx b/binaryurp/source/marshal.hxx
new file mode 100644
index 000000000..93930e356
--- /dev/null
+++ b/binaryurp/source/marshal.hxx
@@ -0,0 +1,88 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <vector>
+
+#include <rtl/byteseq.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <typelib/typedescription.hxx>
+
+namespace binaryurp {
+ class BinaryAny;
+ class Bridge;
+ struct WriterState;
+}
+
+namespace binaryurp {
+
+class Marshal {
+public:
+ Marshal(rtl::Reference< Bridge > const & bridge, WriterState & state);
+
+ ~Marshal();
+
+ static void write8(std::vector< unsigned char > * buffer, sal_uInt8 value);
+
+ static void write16(
+ std::vector< unsigned char > * buffer, sal_uInt16 value);
+
+ static void write32(
+ std::vector< unsigned char > * buffer, sal_uInt32 value);
+
+ void writeValue(
+ std::vector< unsigned char > * buffer,
+ com::sun::star::uno::TypeDescription const & type,
+ BinaryAny const & value);
+
+ void writeType(
+ std::vector< unsigned char > * buffer,
+ com::sun::star::uno::TypeDescription const & value);
+
+ void writeOid(
+ std::vector< unsigned char > * buffer, OUString const & oid);
+
+ void writeTid(
+ std::vector< unsigned char > * buffer, rtl::ByteSequence const & tid);
+
+private:
+ Marshal(const Marshal&) = delete;
+ Marshal& operator=(const Marshal&) = delete;
+
+ void writeValue(
+ std::vector< unsigned char > * buffer,
+ com::sun::star::uno::TypeDescription const & type, void const * value);
+
+ void writeMemberValues(
+ std::vector< unsigned char > * buffer,
+ com::sun::star::uno::TypeDescription const & type,
+ void const * aggregateValue);
+
+ rtl::Reference< Bridge > bridge_;
+ WriterState & state_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/outgoingrequest.hxx b/binaryurp/source/outgoingrequest.hxx
new file mode 100644
index 000000000..efa673eac
--- /dev/null
+++ b/binaryurp/source/outgoingrequest.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <typelib/typedescription.hxx>
+#include <utility>
+
+namespace binaryurp {
+
+struct OutgoingRequest {
+ enum Kind { KIND_NORMAL, KIND_REQUEST_CHANGE, KIND_COMMIT_CHANGE };
+
+ OutgoingRequest(
+ Kind theKind, com::sun::star::uno::TypeDescription theMember,
+ bool theSetter):
+ member(std::move(theMember)), kind(theKind), setter(theSetter)
+ {}
+
+ com::sun::star::uno::TypeDescription member;
+
+ Kind kind;
+
+ bool setter;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/outgoingrequests.cxx b/binaryurp/source/outgoingrequests.cxx
new file mode 100644
index 000000000..3cdc80e82
--- /dev/null
+++ b/binaryurp/source/outgoingrequests.cxx
@@ -0,0 +1,67 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <rtl/byteseq.hxx>
+
+#include "lessoperators.hxx"
+#include "outgoingrequest.hxx"
+#include "outgoingrequests.hxx"
+
+namespace binaryurp {
+
+OutgoingRequests::OutgoingRequests() {}
+
+OutgoingRequests::~OutgoingRequests() {}
+
+void OutgoingRequests::push(
+ rtl::ByteSequence const & tid, OutgoingRequest const & request)
+{
+ std::scoped_lock g(mutex_);
+ map_[tid].push_back(request);
+}
+
+OutgoingRequest OutgoingRequests::top(rtl::ByteSequence const & tid) {
+ std::scoped_lock g(mutex_);
+ Map::iterator i(map_.find(tid));
+ if (i == map_.end()) {
+ throw css::uno::RuntimeException(
+ "URP: reply for unknown TID");
+ }
+ assert(!i->second.empty());
+ return i->second.back();
+}
+
+void OutgoingRequests::pop(rtl::ByteSequence const & tid) noexcept {
+ std::scoped_lock g(mutex_);
+ Map::iterator i(map_.find(tid));
+ assert(i != map_.end());
+ i->second.pop_back();
+ if (i->second.empty()) {
+ map_.erase(i);
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/outgoingrequests.hxx b/binaryurp/source/outgoingrequests.hxx
new file mode 100644
index 000000000..698b6db9e
--- /dev/null
+++ b/binaryurp/source/outgoingrequests.hxx
@@ -0,0 +1,63 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <map>
+#include <mutex>
+#include <vector>
+
+namespace binaryurp
+{
+struct OutgoingRequest;
+}
+namespace rtl
+{
+class ByteSequence;
+}
+
+namespace binaryurp
+{
+class OutgoingRequests
+{
+public:
+ OutgoingRequests();
+
+ ~OutgoingRequests();
+
+ void push(rtl::ByteSequence const& tid, OutgoingRequest const& request);
+
+ OutgoingRequest top(rtl::ByteSequence const& tid);
+
+ void pop(rtl::ByteSequence const& tid) noexcept;
+
+private:
+ OutgoingRequests(const OutgoingRequests&) = delete;
+ OutgoingRequests& operator=(const OutgoingRequests&) = delete;
+
+ typedef std::map<rtl::ByteSequence, std::vector<OutgoingRequest>> Map;
+
+ std::mutex mutex_;
+ Map map_;
+};
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/proxy.cxx b/binaryurp/source/proxy.cxx
new file mode 100644
index 000000000..49705e06a
--- /dev/null
+++ b/binaryurp/source/proxy.cxx
@@ -0,0 +1,239 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <exception>
+#include <utility>
+#include <vector>
+
+#include <cppuhelper/exc_hlp.hxx>
+#include <o3tl/runtimetooustring.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
+#include <uno/any2.h>
+#include <uno/dispatcher.h>
+#include <uno/dispatcher.hxx>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "proxy.hxx"
+
+namespace binaryurp {
+
+namespace {
+
+extern "C" void proxy_acquireInterface(uno_Interface * pInterface) {
+ assert(pInterface != nullptr);
+ static_cast< Proxy * >(pInterface)->do_acquire();
+}
+
+extern "C" void proxy_releaseInterface(uno_Interface * pInterface) {
+ assert(pInterface != nullptr);
+ static_cast< Proxy * >(pInterface)->do_release();
+}
+
+extern "C" void proxy_dispatchInterface(
+ uno_Interface * pUnoI, typelib_TypeDescription const * pMemberType,
+ void * pReturn, void ** pArgs, uno_Any ** ppException)
+{
+ assert(pUnoI != nullptr);
+ static_cast< Proxy * >(pUnoI)->do_dispatch(
+ pMemberType, pReturn, pArgs, ppException);
+}
+
+}
+
+Proxy::Proxy(
+ rtl::Reference< Bridge > const & bridge, OUString oid,
+ css::uno::TypeDescription type):
+ bridge_(bridge), oid_(std::move(oid)), type_(std::move(type)), references_(1)
+{
+ assert(bridge.is());
+ acquire = &proxy_acquireInterface;
+ release = &proxy_releaseInterface;
+ pDispatcher = &proxy_dispatchInterface;
+}
+
+
+void Proxy::do_acquire() {
+ if (++references_ == 1) {
+ bridge_->resurrectProxy(*this);
+ }
+}
+
+void Proxy::do_release() {
+ if (--references_ == 0) {
+ bridge_->revokeProxy(*this);
+ }
+}
+
+void Proxy::do_free() {
+ bridge_->freeProxy(*this);
+ delete this;
+}
+
+void Proxy::do_dispatch(
+ typelib_TypeDescription const * member, void * returnValue,
+ void ** arguments, uno_Any ** exception) const
+{
+ try {
+ try {
+ do_dispatch_throw(member, returnValue, arguments, exception);
+ } catch (const std::exception & e) {
+ throw css::uno::RuntimeException(
+ "caught C++ exception: " + o3tl::runtimeToOUString(e.what()));
+ }
+ } catch (const css::uno::RuntimeException &) {
+ css::uno::Any exc(cppu::getCaughtException());
+ uno_copyAndConvertData(
+ *exception, &exc,
+ (css::uno::TypeDescription(cppu::UnoType< css::uno::Any >::get()).
+ get()),
+ bridge_->getCppToBinaryMapping().get());
+ }
+}
+
+bool Proxy::isProxy(
+ rtl::Reference< Bridge > const & bridge,
+ css::uno::UnoInterfaceReference const & object, OUString * oid)
+{
+ assert(object.is());
+ return object.m_pUnoI->acquire == &proxy_acquireInterface &&
+ static_cast< Proxy * >(object.m_pUnoI)->isProxy(bridge, oid);
+}
+
+Proxy::~Proxy() {}
+
+void Proxy::do_dispatch_throw(
+ typelib_TypeDescription const * member, void * returnValue,
+ void ** arguments, uno_Any ** exception) const
+{
+ //TODO: Optimize queryInterface:
+ assert(member != nullptr);
+ bool bSetter = false;
+ std::vector< BinaryAny > inArgs;
+ switch (member->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ bSetter = returnValue == nullptr;
+ if (bSetter) {
+ inArgs.emplace_back(
+ css::uno::TypeDescription(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription const * >(
+ member)->
+ pAttributeTypeRef),
+ arguments[0]);
+ }
+ break;
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription const * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription const * >(member);
+ for (sal_Int32 i = 0; i != mtd->nParams; ++i) {
+ if (mtd->pParams[i].bIn) {
+ inArgs.emplace_back(
+ css::uno::TypeDescription(mtd->pParams[i].pTypeRef),
+ arguments[i]);
+ }
+ }
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ BinaryAny ret;
+ std::vector< BinaryAny > outArgs;
+ if (bridge_->makeCall(
+ oid_,
+ css::uno::TypeDescription(
+ const_cast< typelib_TypeDescription * >(member)),
+ bSetter, std::move(inArgs), &ret, &outArgs))
+ {
+ assert(ret.getType().get()->eTypeClass == typelib_TypeClass_EXCEPTION);
+ uno_any_construct(
+ *exception, ret.getValue(ret.getType()), ret.getType().get(), nullptr);
+ } else {
+ switch (member->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ if (!bSetter) {
+ css::uno::TypeDescription t(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription const * >(
+ member)->
+ pAttributeTypeRef);
+ uno_copyData(returnValue, ret.getValue(t), t.get(), nullptr);
+ }
+ break;
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription const * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription const * >(
+ member);
+ css::uno::TypeDescription t(mtd->pReturnTypeRef);
+ if (t.get()->eTypeClass != typelib_TypeClass_VOID) {
+ uno_copyData(returnValue, ret.getValue(t), t.get(), nullptr);
+ }
+ std::vector< BinaryAny >::iterator i(outArgs.begin());
+ for (sal_Int32 j = 0; j != mtd->nParams; ++j) {
+ if (mtd->pParams[j].bOut) {
+ css::uno::TypeDescription pt(mtd->pParams[j].pTypeRef);
+ if (mtd->pParams[j].bIn) {
+ (void) uno_assignData(
+ arguments[j], pt.get(), i++->getValue(pt),
+ pt.get(), nullptr, nullptr, nullptr);
+ } else {
+ uno_copyData(
+ arguments[j], i++->getValue(pt), pt.get(), nullptr);
+ }
+ }
+ }
+ assert(i == outArgs.end());
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ *exception = nullptr;
+ }
+}
+
+bool Proxy::isProxy(
+ rtl::Reference< Bridge > const & bridge, OUString * oid) const
+{
+ assert(oid != nullptr);
+ if (bridge == bridge_) {
+ *oid = oid_;
+ return true;
+ } else {
+ return false;
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/proxy.hxx b/binaryurp/source/proxy.hxx
new file mode 100644
index 000000000..4e1fa3656
--- /dev/null
+++ b/binaryurp/source/proxy.hxx
@@ -0,0 +1,85 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <atomic>
+#include <cstddef>
+
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
+#include <uno/any2.h>
+#include <uno/dispatcher.h>
+
+namespace binaryurp { class Bridge; }
+namespace com::sun::star::uno { class UnoInterfaceReference; }
+
+namespace binaryurp {
+
+class Proxy: public uno_Interface {
+public:
+ Proxy(
+ rtl::Reference< Bridge > const & bridge, OUString oid,
+ com::sun::star::uno::TypeDescription type);
+
+ const OUString& getOid() const { return oid_;}
+
+ const com::sun::star::uno::TypeDescription& getType() const { return type_;}
+
+ void do_acquire();
+
+ void do_release();
+
+ void do_free();
+
+ void do_dispatch(
+ typelib_TypeDescription const * member, void * returnValue,
+ void ** arguments, uno_Any ** exception) const;
+
+ static bool isProxy(
+ rtl::Reference< Bridge > const & bridge,
+ com::sun::star::uno::UnoInterfaceReference const & object,
+ OUString * oid);
+
+private:
+ Proxy(const Proxy&) = delete;
+ Proxy& operator=(const Proxy&) = delete;
+
+ ~Proxy();
+
+ void do_dispatch_throw(
+ typelib_TypeDescription const * member, void * returnValue,
+ void ** arguments, uno_Any ** exception) const;
+
+ bool isProxy(rtl::Reference< Bridge > const & bridge, OUString * oid)
+ const;
+
+ rtl::Reference< Bridge > bridge_;
+ OUString oid_;
+ com::sun::star::uno::TypeDescription type_;
+ std::atomic<std::size_t> references_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/reader.cxx b/binaryurp/source/reader.cxx
new file mode 100644
index 000000000..cbd18f1d8
--- /dev/null
+++ b/binaryurp/source/reader.cxx
@@ -0,0 +1,480 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <exception>
+#include <memory>
+#include <vector>
+
+#include <com/sun/star/connection/XConnection.hpp>
+#include <com/sun/star/io/IOException.hpp>
+#include <com/sun/star/uno/Any.hxx>
+#include <com/sun/star/uno/Exception.hpp>
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <com/sun/star/uno/Type.hxx>
+#include <com/sun/star/uno/XCurrentContext.hpp>
+#include <com/sun/star/uno/XInterface.hpp>
+#include <cppu/unotype.hxx>
+#include <o3tl/safeint.hxx>
+#include <rtl/byteseq.h>
+#include <rtl/ustring.hxx>
+#include <sal/log.hxx>
+#include <sal/types.h>
+#include <typelib/typeclass.h>
+#include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "incomingreply.hxx"
+#include "incomingrequest.hxx"
+#include "outgoingrequest.hxx"
+#include "reader.hxx"
+#include "specialfunctionids.hxx"
+#include "unmarshal.hxx"
+
+namespace binaryurp {
+
+namespace {
+
+css::uno::Sequence< sal_Int8 > read(
+ css::uno::Reference< css::connection::XConnection > const & connection,
+ sal_uInt32 size, bool eofOk)
+{
+ assert(connection.is());
+ if (size > SAL_MAX_INT32) {
+ throw css::uno::RuntimeException(
+ "binaryurp::Reader: block size too large");
+ }
+ css::uno::Sequence< sal_Int8 > buf;
+ sal_Int32 n = connection->read(buf, static_cast< sal_Int32 >(size));
+ if (n == 0 && eofOk) {
+ return css::uno::Sequence< sal_Int8 >();
+ }
+ if (o3tl::make_unsigned(n) != size) {
+ throw css::io::IOException(
+ "binaryurp::Reader: premature end of input");
+ }
+ assert(o3tl::make_unsigned(buf.getLength()) == size);
+ return buf;
+}
+
+extern "C" void request(void * pThreadSpecificData) {
+ assert(pThreadSpecificData != nullptr);
+ std::unique_ptr< IncomingRequest >(
+ static_cast< IncomingRequest * >(pThreadSpecificData))->
+ execute();
+}
+
+}
+
+Reader::Reader(rtl::Reference< Bridge > const & bridge):
+ Thread("binaryurpReader"), bridge_(bridge)
+{
+ assert(bridge.is());
+}
+
+Reader::~Reader() {}
+
+void Reader::execute() {
+ try {
+ bridge_->sendRequestChangeRequest();
+ css::uno::Reference< css::connection::XConnection > con(
+ bridge_->getConnection());
+ for (;;) {
+ css::uno::Sequence< sal_Int8 > s(read(con, 8, true));
+ if (!s.hasElements()) {
+ break;
+ }
+ Unmarshal header(bridge_, state_, s);
+ sal_uInt32 size = header.read32();
+ sal_uInt32 count = header.read32();
+ header.done();
+ if (count == 0) {
+ throw css::io::IOException(
+ "binaryurp::Reader: block with zero message count received");
+ }
+ Unmarshal block(bridge_, state_, read(con, size, false));
+ for (sal_uInt32 i = 0; i != count; ++i) {
+ readMessage(block);
+ }
+ block.done();
+ }
+ } catch (const css::uno::Exception & e) {
+ SAL_WARN("binaryurp", "caught UNO exception '" << e << '\'');
+ } catch (const std::exception & e) {
+ SAL_WARN("binaryurp", "caught C++ exception '" << e.what() << '\'');
+ }
+ bridge_->terminate(false);
+ bridge_.clear();
+}
+
+void Reader::readMessage(Unmarshal & unmarshal) {
+ sal_uInt8 flags1 = unmarshal.read8();
+ bool newType;
+ bool newOid;
+ bool newTid;
+ bool forceSynchronous;
+ sal_uInt16 functionId;
+ if ((flags1 & 0x80) != 0) { // bit 7: LONGHEADER
+ if ((flags1 & 0x40) == 0) { // bit 6: REQUEST
+ readReplyMessage(unmarshal, flags1);
+ return;
+ }
+ newType = (flags1 & 0x20) != 0; // bit 5: NEWTYPE
+ newOid = (flags1 & 0x10) != 0; // bit 4: NEWOID
+ newTid = (flags1 & 0x08) != 0; // bit 3: NEWTID
+ if ((flags1 & 0x01) != 0) { // bit 0: MOREFLAGSS
+ sal_uInt8 flags2 = unmarshal.read8();
+ forceSynchronous = (flags2 & 0x80) != 0; // bit 7: MUSTREPLY
+ if (((flags2 & 0x40) != 0) != forceSynchronous) {
+ // bit 6: SYNCHRONOUS
+ throw css::uno::RuntimeException(
+ "URP: request message with MUSTREPLY != SYNCHRONOUS"
+ " received");
+ }
+ } else {
+ forceSynchronous = false;
+ }
+ functionId = ((flags1 & 0x04) != 0) // bit 2: FUNCTIONID16
+ ? unmarshal.read16() : unmarshal.read8();
+ } else {
+ newType = false;
+ newOid = false;
+ newTid = false;
+ forceSynchronous = false;
+ functionId = ((flags1 & 0x40) != 0) // bit 6: FUNCTIONID14
+ ? ((flags1 & 0x3F) << 8) | unmarshal.read8() : flags1 & 0x3F;
+ }
+ css::uno::TypeDescription type;
+ if (newType) {
+ type = unmarshal.readType();
+ lastType_ = type;
+ } else {
+ if (!lastType_.is()) {
+ throw css::uno::RuntimeException(
+ "URP: request message with NEWTYPE received when last"
+ " interface type has not yet been set");
+ }
+ type = lastType_;
+ }
+ OUString oid;
+ if (newOid) {
+ oid = unmarshal.readOid();
+ if (oid.isEmpty()) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: empty OID");
+ }
+ lastOid_ = oid;
+ } else {
+ if (lastOid_.isEmpty()) {
+ throw css::uno::RuntimeException(
+ "URP: request message with NEWOID received when last OID has"
+ " not yet been set");
+ }
+ oid = lastOid_;
+ }
+ rtl::ByteSequence tid(getTid(unmarshal, newTid));
+ lastTid_ = tid;
+ type.makeComplete();
+ if (type.get()->eTypeClass != typelib_TypeClass_INTERFACE) {
+ throw css::uno::RuntimeException(
+ "URP: request message with non-interface interface type received");
+ }
+ typelib_InterfaceTypeDescription * itd =
+ reinterpret_cast< typelib_InterfaceTypeDescription * >(type.get());
+ if (functionId >= itd->nMapFunctionIndexToMemberIndex) {
+ throw css::uno::RuntimeException(
+ "URP: request message with unknown function ID received");
+ }
+ sal_Int32 memberId = itd->pMapFunctionIndexToMemberIndex[functionId];
+ css::uno::TypeDescription memberTd(itd->ppAllMembers[memberId]);
+ memberTd.makeComplete();
+ assert(memberTd.is());
+ bool protProps = bridge_->isProtocolPropertiesRequest(oid, type);
+ bool ccMode = !protProps && functionId != SPECIAL_FUNCTION_ID_RELEASE &&
+ bridge_->isCurrentContextMode();
+ css::uno::UnoInterfaceReference cc;
+ if (ccMode) {
+ css::uno::TypeDescription t(
+ cppu::UnoType<css::uno::XCurrentContext>::get());
+ cc.set(
+ *static_cast< uno_Interface ** >(
+ unmarshal.readValue(t).getValue(t)));
+ }
+ bool oneWay =
+ memberTd.get()->eTypeClass == typelib_TypeClass_INTERFACE_METHOD &&
+ (reinterpret_cast< typelib_InterfaceMethodTypeDescription * >(
+ memberTd.get())->
+ bOneWay);
+ SAL_INFO_IF(
+ !oneWay && forceSynchronous, "binaryurp",
+ ("superfluous MUSTREPLY/SYNCHRONOUS ignored in request message with"
+ " non-oneway function ID"));
+ bool synchronous = !oneWay || forceSynchronous;
+ bool bSetter = false;
+ std::vector< BinaryAny > inArgs;
+ switch (memberTd.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ bSetter = itd->pMapMemberIndexToFunctionIndex[memberId] != functionId;
+ // pMapMemberIndexToFunctionIndex contains function index of
+ // attribute getter
+ if (bSetter) {
+ inArgs.push_back(
+ unmarshal.readValue(
+ css::uno::TypeDescription(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ memberTd.get())->
+ pAttributeTypeRef)));
+ }
+ break;
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast< typelib_InterfaceMethodTypeDescription * >(
+ memberTd.get());
+ for (sal_Int32 i = 0; i != mtd->nParams; ++i) {
+ if (mtd->pParams[i].bIn) {
+ inArgs.push_back(
+ unmarshal.readValue(
+ css::uno::TypeDescription(
+ mtd->pParams[i].pTypeRef)));
+ }
+ }
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ bridge_->incrementCalls(
+ !protProps && functionId != SPECIAL_FUNCTION_ID_RELEASE);
+ if (protProps) {
+ switch (functionId) {
+ case SPECIAL_FUNCTION_ID_REQUEST_CHANGE:
+ bridge_->handleRequestChangeRequest(tid, inArgs);
+ break;
+ case SPECIAL_FUNCTION_ID_COMMIT_CHANGE:
+ bridge_->handleCommitChangeRequest(tid, inArgs);
+ break;
+ default:
+ throw css::uno::RuntimeException(
+ "URP: request message with UrpProtocolProperties OID and"
+ " unknown function ID received");
+ }
+ } else {
+ css::uno::UnoInterfaceReference obj;
+ switch (functionId) {
+ case SPECIAL_FUNCTION_ID_QUERY_INTERFACE:
+ obj = bridge_->findStub(oid, type);
+ if (!obj.is()) {
+ assert(
+ inArgs.size() == 1
+ && inArgs[0].getType().equals(
+ css::uno::TypeDescription(
+ cppu::UnoType< css::uno::Type >::get())));
+ if (!(type.equals(
+ css::uno::TypeDescription(
+ cppu::UnoType<
+ css::uno::Reference<
+ css::uno::XInterface > >::get()))
+ && (css::uno::TypeDescription(
+ *static_cast<
+ typelib_TypeDescriptionReference ** >(
+ inArgs[0].getValue(inArgs[0].getType()))).
+ equals(
+ css::uno::TypeDescription(
+ cppu::UnoType<
+ css::uno::Reference<
+ css::uno::XInterface > >::get())))))
+ {
+ throw css::uno::RuntimeException(
+ "URP: queryInterface request message with unknown OID '"
+ + oid + "' received");
+ }
+ }
+ break;
+ case SPECIAL_FUNCTION_ID_RESERVED:
+ throw css::uno::RuntimeException(
+ "URP: request message with unknown function ID 1 received");
+ case SPECIAL_FUNCTION_ID_RELEASE:
+ break;
+ default:
+ obj = bridge_->findStub(oid, type);
+ if (!obj.is()) {
+ throw css::uno::RuntimeException(
+ "URP: request message with unknown OID received");
+ }
+ break;
+ }
+ std::unique_ptr< IncomingRequest > req(
+ new IncomingRequest(
+ bridge_, tid, oid, obj, type, functionId, synchronous, memberTd,
+ bSetter, std::move(inArgs), ccMode, cc));
+ if (synchronous) {
+ bridge_->incrementActiveCalls();
+ }
+ uno_threadpool_putJob(
+ bridge_->getThreadPool(), tid.getHandle(), req.get(), &request,
+ !synchronous);
+ req.release();
+ }
+}
+
+void Reader::readReplyMessage(Unmarshal & unmarshal, sal_uInt8 flags1) {
+ rtl::ByteSequence tid(getTid(unmarshal, (flags1 & 0x08) != 0));
+ // bit 3: NEWTID
+ lastTid_ = tid;
+ OutgoingRequest req(bridge_->lastOutgoingRequest(tid));
+ bool exc = (flags1 & 0x20) != 0; // bit 5: EXCEPTION
+ BinaryAny ret;
+ std::vector< BinaryAny > outArgs;
+ if (exc) {
+ ret = unmarshal.readValue(
+ css::uno::TypeDescription(cppu::UnoType< css::uno::Any >::get()));
+ if (!typelib_typedescription_isAssignableFrom(
+ (css::uno::TypeDescription(
+ cppu::UnoType< css::uno::RuntimeException >::get()).
+ get()),
+ ret.getType().get()))
+ {
+ sal_Int32 n = 0;
+ typelib_TypeDescriptionReference ** p = nullptr;
+ switch (req.member.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+ typelib_InterfaceAttributeTypeDescription * atd =
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ req.member.get());
+ n = req.setter ? atd->nSetExceptions : atd->nGetExceptions;
+ p = req.setter
+ ? atd->ppSetExceptions : atd->ppGetExceptions;
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ req.member.get());
+ n = mtd->nExceptions;
+ p = mtd->ppExceptions;
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ bool bOk = false;
+ for (sal_Int32 i = 0; i != n; ++i) {
+ if (typelib_typedescriptionreference_isAssignableFrom(
+ p[i],
+ reinterpret_cast< typelib_TypeDescriptionReference * >(
+ ret.getType().get())))
+ {
+ bOk = true;
+ break;
+ }
+ }
+ if (!bOk) {
+ throw css::uno::RuntimeException(
+ "URP: reply message with bad exception type received");
+ }
+ }
+ } else {
+ switch (req.member.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ if (!req.setter) {
+ ret = unmarshal.readValue(
+ css::uno::TypeDescription(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ req.member.get())->
+ pAttributeTypeRef));
+ }
+ break;
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ req.member.get());
+ ret = unmarshal.readValue(
+ css::uno::TypeDescription(mtd->pReturnTypeRef));
+ for (sal_Int32 i = 0; i != mtd->nParams; ++i) {
+ if (mtd->pParams[i].bOut) {
+ outArgs.push_back(
+ unmarshal.readValue(
+ css::uno::TypeDescription(
+ mtd->pParams[i].pTypeRef)));
+ }
+ }
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ }
+ switch (req.kind) {
+ case OutgoingRequest::KIND_NORMAL:
+ {
+ std::unique_ptr< IncomingReply > resp(
+ new IncomingReply(exc, ret, std::move(outArgs)));
+ uno_threadpool_putJob(
+ bridge_->getThreadPool(), tid.getHandle(), resp.get(), nullptr,
+ false);
+ resp.release();
+ break;
+ }
+ case OutgoingRequest::KIND_REQUEST_CHANGE:
+ assert(outArgs.empty());
+ bridge_->handleRequestChangeReply(exc, ret);
+ break;
+ case OutgoingRequest::KIND_COMMIT_CHANGE:
+ assert(outArgs.empty());
+ bridge_->handleCommitChangeReply(exc, ret);
+ break;
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+}
+
+rtl::ByteSequence Reader::getTid(Unmarshal & unmarshal, bool newTid) const {
+ if (newTid) {
+ return unmarshal.readTid();
+ }
+ if (lastTid_.getLength() == 0) {
+ throw css::uno::RuntimeException(
+ "URP: message with NEWTID received when last TID has not yet been"
+ " set");
+ }
+ return lastTid_;
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/reader.hxx b/binaryurp/source/reader.hxx
new file mode 100644
index 000000000..2f3ec0dd9
--- /dev/null
+++ b/binaryurp/source/reader.hxx
@@ -0,0 +1,65 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <rtl/byteseq.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <salhelper/thread.hxx>
+#include <typelib/typedescription.hxx>
+
+#include "readerstate.hxx"
+
+namespace binaryurp
+{
+class Bridge;
+class Unmarshal;
+}
+
+namespace binaryurp
+{
+class Reader : public salhelper::Thread
+{
+public:
+ explicit Reader(rtl::Reference<Bridge> const& bridge);
+
+private:
+ virtual ~Reader() override;
+
+ virtual void execute() override;
+
+ void readMessage(Unmarshal& unmarshal);
+
+ void readReplyMessage(Unmarshal& unmarshal, sal_uInt8 flags1);
+
+ rtl::ByteSequence getTid(Unmarshal& unmarshal, bool newTid) const;
+
+ rtl::Reference<Bridge> bridge_;
+ com::sun::star::uno::TypeDescription lastType_;
+ OUString lastOid_;
+ rtl::ByteSequence lastTid_;
+ ReaderState state_;
+};
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/readerstate.hxx b/binaryurp/source/readerstate.hxx
new file mode 100644
index 000000000..a93a45dfc
--- /dev/null
+++ b/binaryurp/source/readerstate.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <rtl/byteseq.hxx>
+#include <rtl/ustring.hxx>
+#include <typelib/typedescription.hxx>
+
+#include "cache.hxx"
+
+namespace binaryurp
+{
+struct ReaderState
+{
+private:
+ ReaderState(const ReaderState&) = delete;
+ ReaderState& operator=(const ReaderState&) = delete;
+
+public:
+ ReaderState() {}
+
+ com::sun::star::uno::TypeDescription typeCache[cache::size];
+ OUString oidCache[cache::size];
+ rtl::ByteSequence tidCache[cache::size];
+};
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/specialfunctionids.hxx b/binaryurp/source/specialfunctionids.hxx
new file mode 100644
index 000000000..e2b6ae0f8
--- /dev/null
+++ b/binaryurp/source/specialfunctionids.hxx
@@ -0,0 +1,40 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+namespace binaryurp
+{
+enum SpecialFunctionIds
+{
+ SPECIAL_FUNCTION_ID_QUERY_INTERFACE = 0,
+
+ SPECIAL_FUNCTION_ID_RESERVED = 1,
+
+ SPECIAL_FUNCTION_ID_RELEASE = 2,
+
+ SPECIAL_FUNCTION_ID_REQUEST_CHANGE = 4,
+
+ SPECIAL_FUNCTION_ID_COMMIT_CHANGE = 5
+};
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/unmarshal.cxx b/binaryurp/source/unmarshal.cxx
new file mode 100644
index 000000000..7d943d37b
--- /dev/null
+++ b/binaryurp/source/unmarshal.cxx
@@ -0,0 +1,491 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <cstdlib>
+#include <new>
+#include <utility>
+#include <vector>
+
+#include <com/sun/star/io/IOException.hpp>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <cppu/unotype.hxx>
+#include <rtl/byteseq.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/textcvt.h>
+#include <rtl/textenc.h>
+#include <rtl/ustring.h>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <typelib/typeclass.h>
+#include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
+#include <uno/any2.h>
+#include <uno/data.h>
+#include <uno/dispatcher.hxx>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "cache.hxx"
+#include "readerstate.hxx"
+#include "unmarshal.hxx"
+
+namespace binaryurp {
+
+namespace {
+
+void * allocate(sal_Size size) {
+ void * p = std::malloc(size);
+ if (p == nullptr) {
+ throw std::bad_alloc();
+ }
+ return p;
+}
+
+std::vector< BinaryAny >::iterator copyMemberValues(
+ css::uno::TypeDescription const & type,
+ std::vector< BinaryAny >::iterator const & it, void * buffer) noexcept
+{
+ assert(
+ type.is() &&
+ (type.get()->eTypeClass == typelib_TypeClass_STRUCT ||
+ type.get()->eTypeClass == typelib_TypeClass_EXCEPTION) &&
+ buffer != nullptr);
+ type.makeComplete();
+ std::vector< BinaryAny >::iterator i(it);
+ typelib_CompoundTypeDescription * ctd =
+ reinterpret_cast< typelib_CompoundTypeDescription * >(type.get());
+ if (ctd->pBaseTypeDescription != nullptr) {
+ i = copyMemberValues(
+ css::uno::TypeDescription(&ctd->pBaseTypeDescription->aBase), i,
+ buffer);
+ }
+ for (sal_Int32 j = 0; j != ctd->nMembers; ++j) {
+ uno_type_copyData(
+ static_cast< char * >(buffer) + ctd->pMemberOffsets[j],
+ i++->getValue(css::uno::TypeDescription(ctd->ppTypeRefs[j])),
+ ctd->ppTypeRefs[j], nullptr);
+ }
+ return i;
+}
+
+}
+
+Unmarshal::Unmarshal(
+ rtl::Reference< Bridge > bridge, ReaderState & state,
+ css::uno::Sequence< sal_Int8 > const & buffer):
+ bridge_(std::move(bridge)), state_(state), buffer_(buffer)
+{
+ data_ = reinterpret_cast< sal_uInt8 const * >(buffer_.getConstArray());
+ end_ = data_ + buffer_.getLength();
+}
+
+Unmarshal::~Unmarshal() {}
+
+sal_uInt8 Unmarshal::read8() {
+ check(1);
+ return *data_++;
+}
+
+sal_uInt16 Unmarshal::read16() {
+ check(2);
+ sal_uInt16 n = static_cast< sal_uInt16 >(*data_++) << 8;
+ return n | *data_++;
+}
+
+sal_uInt32 Unmarshal::read32() {
+ check(4);
+ sal_uInt32 n = static_cast< sal_uInt32 >(*data_++) << 24;
+ n |= static_cast< sal_uInt32 >(*data_++) << 16;
+ n |= static_cast< sal_uInt32 >(*data_++) << 8;
+ return n | *data_++;
+}
+
+css::uno::TypeDescription Unmarshal::readType() {
+ sal_uInt8 flags = read8();
+ typelib_TypeClass tc = static_cast< typelib_TypeClass >(flags & 0x7F);
+ switch (tc) {
+ case typelib_TypeClass_VOID:
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ case typelib_TypeClass_FLOAT:
+ case typelib_TypeClass_DOUBLE:
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_STRING:
+ case typelib_TypeClass_TYPE:
+ case typelib_TypeClass_ANY:
+ if ((flags & 0x80) != 0) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: cache flag of simple type is set");
+ }
+ return css::uno::TypeDescription(
+ *typelib_static_type_getByTypeClass(tc));
+ case typelib_TypeClass_SEQUENCE:
+ case typelib_TypeClass_ENUM:
+ case typelib_TypeClass_STRUCT:
+ case typelib_TypeClass_EXCEPTION:
+ case typelib_TypeClass_INTERFACE:
+ {
+ sal_uInt16 idx = readCacheIndex();
+ if ((flags & 0x80) == 0) {
+ if (idx == cache::ignore || !state_.typeCache[idx].is()) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: unknown type cache index");
+ }
+ return state_.typeCache[idx];
+ } else {
+ OUString const str(readString());
+ css::uno::TypeDescription t(str);
+ if (!t.is() || t.get()->eTypeClass != tc) {
+
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: type with unknown name: " + str);
+ }
+ for (css::uno::TypeDescription t2(t);
+ t2.get()->eTypeClass == typelib_TypeClass_SEQUENCE;)
+ {
+ t2.makeComplete();
+ t2 = css::uno::TypeDescription(
+ reinterpret_cast< typelib_IndirectTypeDescription * >(
+ t2.get())->pType);
+ if (!t2.is()) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: sequence type with unknown"
+ " component type");
+ }
+ switch (t2.get()->eTypeClass) {
+ case typelib_TypeClass_VOID:
+ case typelib_TypeClass_EXCEPTION:
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: sequence type with bad"
+ " component type");
+ default:
+ break;
+ }
+ }
+ if (idx != cache::ignore) {
+ state_.typeCache[idx] = t;
+ }
+ return t;
+ }
+ }
+ default:
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: type of unknown type class");
+ }
+}
+
+OUString Unmarshal::readOid() {
+ OUString oid(readString());
+ for (sal_Int32 i = 0; i != oid.getLength(); ++i) {
+ if (oid[i] > 0x7F) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: OID contains non-ASCII character");
+ }
+ }
+ sal_uInt16 idx = readCacheIndex();
+ if (oid.isEmpty() && idx != cache::ignore) {
+ if (state_.oidCache[idx].isEmpty()) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: unknown OID cache index");
+ }
+ return state_.oidCache[idx];
+ }
+ if (idx != cache::ignore) {
+ state_.oidCache[idx] = oid;
+ }
+ return oid;
+}
+
+rtl::ByteSequence Unmarshal::readTid() {
+ rtl::ByteSequence tid(
+ *static_cast< sal_Sequence * const * >(
+ readSequence(
+ css::uno::TypeDescription(
+ cppu::UnoType< css::uno::Sequence< sal_Int8 > >::get())).
+ getValue(
+ css::uno::TypeDescription(
+ cppu::UnoType< css::uno::Sequence< sal_Int8 > >::get()))));
+ sal_uInt16 idx = readCacheIndex();
+ if (tid.getLength() == 0) {
+ if (idx == cache::ignore || state_.tidCache[idx].getLength() == 0) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: unknown TID cache index");
+ }
+ return state_.tidCache[idx];
+ }
+ if (idx != cache::ignore) {
+ state_.tidCache[idx] = tid;
+ }
+ return tid;
+}
+
+BinaryAny Unmarshal::readValue(css::uno::TypeDescription const & type) {
+ assert(type.is());
+ switch (type.get()->eTypeClass) {
+ default:
+ std::abort(); // this cannot happen
+ // pseudo fall-through to avoid compiler warnings
+ case typelib_TypeClass_VOID:
+ return BinaryAny();
+ case typelib_TypeClass_BOOLEAN:
+ {
+ sal_uInt8 v = read8();
+ if (v > 1) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: boolean of unknown value");
+ }
+ return BinaryAny(type, &v);
+ }
+ case typelib_TypeClass_BYTE:
+ {
+ sal_uInt8 v = read8();
+ return BinaryAny(type, &v);
+ }
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ case typelib_TypeClass_CHAR:
+ {
+ sal_uInt16 v = read16();
+ return BinaryAny(type, &v);
+ }
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_FLOAT:
+ {
+ sal_uInt32 v = read32();
+ return BinaryAny(type, &v);
+ }
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ case typelib_TypeClass_DOUBLE:
+ {
+ sal_uInt64 v = read64();
+ return BinaryAny(type, &v);
+ }
+ case typelib_TypeClass_STRING:
+ {
+ OUString v(readString());
+ return BinaryAny(type, &v.pData);
+ }
+ case typelib_TypeClass_TYPE:
+ {
+ css::uno::TypeDescription v(readType());
+ typelib_TypeDescription * p = v.get();
+ return BinaryAny(type, &p);
+ }
+ case typelib_TypeClass_ANY:
+ {
+ css::uno::TypeDescription t(readType());
+ if (t.get()->eTypeClass == typelib_TypeClass_ANY) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: any of type ANY");
+ }
+ return readValue(t);
+ }
+ case typelib_TypeClass_SEQUENCE:
+ type.makeComplete();
+ return readSequence(type);
+ case typelib_TypeClass_ENUM:
+ {
+ sal_Int32 v = static_cast< sal_Int32 >(read32());
+ type.makeComplete();
+ typelib_EnumTypeDescription * etd =
+ reinterpret_cast< typelib_EnumTypeDescription * >(type.get());
+ bool bFound = false;
+ for (sal_Int32 i = 0; i != etd->nEnumValues; ++i) {
+ if (etd->pEnumValues[i] == v) {
+ bFound = true;
+ break;
+ }
+ }
+ if (!bFound) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: unknown enum value");
+ }
+ return BinaryAny(type, &v);
+ }
+ case typelib_TypeClass_STRUCT:
+ case typelib_TypeClass_EXCEPTION:
+ {
+ std::vector< BinaryAny > as;
+ readMemberValues(type, &as);
+ void * buf = allocate(type.get()->nSize);
+ copyMemberValues(type, as.begin(), buf);
+ uno_Any raw;
+ raw.pType = reinterpret_cast< typelib_TypeDescriptionReference * >(
+ type.get());
+ raw.pData = buf;
+ raw.pReserved = nullptr;
+ return BinaryAny(raw);
+ }
+ case typelib_TypeClass_INTERFACE:
+ {
+ css::uno::UnoInterfaceReference obj(
+ bridge_->registerIncomingInterface(readOid(), type));
+ return BinaryAny(type, &obj.m_pUnoI);
+ }
+ }
+}
+
+void Unmarshal::done() const {
+ if (data_ != end_) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: block contains excess data");
+ }
+}
+
+void Unmarshal::check(sal_Int32 size) const {
+ if (end_ - data_ < size) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: trying to read past end of block");
+ }
+}
+
+sal_uInt32 Unmarshal::readCompressed() {
+ sal_uInt8 n = read8();
+ return n == 0xFF ? read32() : n;
+}
+
+sal_uInt16 Unmarshal::readCacheIndex() {
+ sal_uInt16 idx = read16();
+ if (idx >= cache::size && idx != cache::ignore) {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: cache index out of range");
+ }
+ return idx;
+}
+
+sal_uInt64 Unmarshal::read64() {
+ check(8);
+ sal_uInt64 n = static_cast< sal_uInt64 >(*data_++) << 56;
+ n |= static_cast< sal_uInt64 >(*data_++) << 48;
+ n |= static_cast< sal_uInt64 >(*data_++) << 40;
+ n |= static_cast< sal_uInt64 >(*data_++) << 32;
+ n |= static_cast< sal_uInt64 >(*data_++) << 24;
+ n |= static_cast< sal_uInt64 >(*data_++) << 16;
+ n |= static_cast< sal_uInt64 >(*data_++) << 8;
+ return n | *data_++;
+}
+
+OUString Unmarshal::readString() {
+ sal_uInt32 n = readCompressed();
+ if (n > SAL_MAX_INT32) {
+ throw css::uno::RuntimeException(
+ "binaryurp::Unmarshal: string size too large");
+ }
+ check(static_cast< sal_Int32 >(n));
+ OUString s;
+ if (!rtl_convertStringToUString(
+ &s.pData, reinterpret_cast< char const * >(data_),
+ static_cast< sal_Int32 >(n), RTL_TEXTENCODING_UTF8,
+ (RTL_TEXTTOUNICODE_FLAGS_UNDEFINED_ERROR |
+ RTL_TEXTTOUNICODE_FLAGS_MBUNDEFINED_ERROR |
+ RTL_TEXTTOUNICODE_FLAGS_INVALID_ERROR)))
+ {
+ throw css::io::IOException(
+ "binaryurp::Unmarshal: string does not contain UTF-8");
+ }
+ data_ += n;
+ return s;
+}
+
+BinaryAny Unmarshal::readSequence(css::uno::TypeDescription const & type) {
+ assert(type.is() && type.get()->eTypeClass == typelib_TypeClass_SEQUENCE);
+ sal_uInt32 n = readCompressed();
+ if (n > SAL_MAX_INT32) {
+ throw css::uno::RuntimeException(
+ "binaryurp::Unmarshal: sequence size too large");
+ }
+ if (n == 0) {
+ return BinaryAny(type, nullptr);
+ }
+ css::uno::TypeDescription ctd(
+ reinterpret_cast< typelib_IndirectTypeDescription * >(
+ type.get())->pType);
+ if (ctd.get()->eTypeClass == typelib_TypeClass_BYTE) {
+ check(static_cast< sal_Int32 >(n));
+ rtl::ByteSequence s(
+ reinterpret_cast< sal_Int8 const * >(data_),
+ static_cast< sal_Int32 >(n));
+ data_ += n;
+ sal_Sequence * p = s.getHandle();
+ return BinaryAny(type, &p);
+ }
+ std::vector< BinaryAny > as;
+ as.reserve(n);
+ for (sal_uInt32 i = 0; i != n; ++i) {
+ as.push_back(readValue(ctd));
+ }
+ assert(ctd.get()->nSize >= 0);
+ sal_uInt64 size = static_cast< sal_uInt64 >(n) *
+ static_cast< sal_uInt64 >(ctd.get()->nSize);
+ // sal_uInt32 * sal_Int32 -> sal_uInt64 cannot overflow
+ if (size > SAL_MAX_SIZE - SAL_SEQUENCE_HEADER_SIZE) {
+ throw css::uno::RuntimeException(
+ "binaryurp::Unmarshal: sequence size too large");
+ }
+ void * buf = allocate(
+ SAL_SEQUENCE_HEADER_SIZE + static_cast< sal_Size >(size));
+ static_cast< sal_Sequence * >(buf)->nRefCount = 0;
+ static_cast< sal_Sequence * >(buf)->nElements =
+ static_cast< sal_Int32 >(n);
+ for (sal_uInt32 i = 0; i != n; ++i) {
+ uno_copyData(
+ static_cast< sal_Sequence * >(buf)->elements + i * ctd.get()->nSize,
+ as[i].getValue(ctd), ctd.get(), nullptr);
+ }
+ return BinaryAny(type, &buf);
+}
+
+void Unmarshal::readMemberValues(
+ css::uno::TypeDescription const & type, std::vector< BinaryAny > * values)
+{
+ assert(
+ type.is() &&
+ (type.get()->eTypeClass == typelib_TypeClass_STRUCT ||
+ type.get()->eTypeClass == typelib_TypeClass_EXCEPTION) &&
+ values != nullptr);
+ type.makeComplete();
+ typelib_CompoundTypeDescription * ctd =
+ reinterpret_cast< typelib_CompoundTypeDescription * >(type.get());
+ if (ctd->pBaseTypeDescription != nullptr) {
+ readMemberValues(
+ css::uno::TypeDescription(&ctd->pBaseTypeDescription->aBase),
+ values);
+ }
+ values->reserve(values->size() + ctd->nMembers);
+ for (sal_Int32 i = 0; i != ctd->nMembers; ++i) {
+ values->push_back(
+ readValue(css::uno::TypeDescription(ctd->ppTypeRefs[i])));
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/unmarshal.hxx b/binaryurp/source/unmarshal.hxx
new file mode 100644
index 000000000..1972c30d0
--- /dev/null
+++ b/binaryurp/source/unmarshal.hxx
@@ -0,0 +1,93 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <vector>
+
+#include <com/sun/star/uno/Sequence.hxx>
+#include <rtl/ref.hxx>
+#include <sal/types.h>
+#include <typelib/typedescription.hxx>
+
+namespace binaryurp {
+ class BinaryAny;
+ class Bridge;
+ struct ReaderState;
+}
+namespace com::sun::star::uno { class TypeDescription; }
+
+namespace binaryurp {
+
+class Unmarshal {
+public:
+ Unmarshal(
+ rtl::Reference< Bridge > bridge, ReaderState & state,
+ com::sun::star::uno::Sequence< sal_Int8 > const & buffer);
+
+ ~Unmarshal();
+
+ sal_uInt8 read8();
+
+ sal_uInt16 read16();
+
+ sal_uInt32 read32();
+
+ com::sun::star::uno::TypeDescription readType();
+
+ OUString readOid();
+
+ rtl::ByteSequence readTid();
+
+ BinaryAny readValue(com::sun::star::uno::TypeDescription const & type);
+
+ void done() const;
+
+private:
+ Unmarshal(const Unmarshal&) = delete;
+ Unmarshal& operator=(const Unmarshal&) = delete;
+
+ void check(sal_Int32 size) const;
+
+ sal_uInt32 readCompressed();
+
+ sal_uInt16 readCacheIndex();
+
+ sal_uInt64 read64();
+
+ OUString readString();
+
+ BinaryAny readSequence(com::sun::star::uno::TypeDescription const & type);
+
+ void readMemberValues(
+ com::sun::star::uno::TypeDescription const & type,
+ std::vector< BinaryAny > * values);
+
+ rtl::Reference< Bridge > bridge_;
+ ReaderState & state_;
+ com::sun::star::uno::Sequence< sal_Int8 > buffer_;
+ sal_uInt8 const * data_;
+ sal_uInt8 const * end_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/writer.cxx b/binaryurp/source/writer.cxx
new file mode 100644
index 000000000..539d8a2c5
--- /dev/null
+++ b/binaryurp/source/writer.cxx
@@ -0,0 +1,455 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <sal/config.h>
+
+#include <cassert>
+#include <cstddef>
+#include <cstring>
+#include <exception>
+#include <limits>
+#include <utility>
+#include <vector>
+
+#include <com/sun/star/connection/XConnection.hpp>
+#include <com/sun/star/io/IOException.hpp>
+#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
+#include <com/sun/star/uno/XCurrentContext.hpp>
+#include <cppuhelper/exc_hlp.hxx>
+#include <sal/log.hxx>
+#include <uno/dispatcher.hxx>
+
+#include "binaryany.hxx"
+#include "bridge.hxx"
+#include "currentcontext.hxx"
+#include "specialfunctionids.hxx"
+#include "writer.hxx"
+
+namespace binaryurp {
+
+Writer::Item::Item()
+ : request(false)
+ , setter(false)
+ , exception(false)
+ , setCurrentContextMode(false)
+{}
+
+Writer::Item::Item(
+ rtl::ByteSequence theTid, OUString theOid,
+ css::uno::TypeDescription theType,
+ css::uno::TypeDescription theMember,
+ std::vector< BinaryAny >&& inArguments,
+ css::uno::UnoInterfaceReference theCurrentContext):
+ tid(std::move(theTid)), oid(std::move(theOid)), type(std::move(theType)), member(std::move(theMember)),
+ currentContext(std::move(theCurrentContext)), arguments(std::move(inArguments)),
+ request(true), setter(false), exception(false), setCurrentContextMode(false)
+{}
+
+Writer::Item::Item(
+ rtl::ByteSequence theTid,
+ css::uno::TypeDescription theMember, bool theSetter,
+ bool theException, BinaryAny theReturnValue,
+ std::vector< BinaryAny >&& outArguments,
+ bool theSetCurrentContextMode):
+ tid(std::move(theTid)), member(std::move(theMember)),
+ returnValue(std::move(theReturnValue)), arguments(std::move(outArguments)),
+ request(false), setter(theSetter),
+ exception(theException), setCurrentContextMode(theSetCurrentContextMode)
+{}
+
+Writer::Writer(rtl::Reference< Bridge > const & bridge):
+ Thread("binaryurpWriter"), bridge_(bridge), marshal_(bridge, state_),
+ stop_(false)
+{
+ assert(bridge.is());
+}
+
+void Writer::sendDirectRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ css::uno::TypeDescription const & type,
+ css::uno::TypeDescription const & member,
+ std::vector< BinaryAny > const & inArguments)
+{
+ assert(!unblocked_.check());
+ sendRequest(
+ tid, oid, type, member, inArguments, false,
+ css::uno::UnoInterfaceReference());
+}
+
+void Writer::sendDirectReply(
+ rtl::ByteSequence const & tid, css::uno::TypeDescription const & member,
+ bool exception, BinaryAny const & returnValue,
+ std::vector< BinaryAny > const & outArguments)
+{
+ assert(!unblocked_.check());
+ sendReply(tid, member, false, exception, returnValue,outArguments);
+}
+
+void Writer::queueRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ css::uno::TypeDescription const & type,
+ css::uno::TypeDescription const & member,
+ std::vector< BinaryAny >&& inArguments)
+{
+ css::uno::UnoInterfaceReference cc(current_context::get());
+ std::lock_guard g(mutex_);
+ queue_.emplace_back(tid, oid, type, member, std::move(inArguments), cc);
+ items_.set();
+}
+
+void Writer::queueReply(
+ rtl::ByteSequence const & tid,
+ com::sun::star::uno::TypeDescription const & member, bool setter,
+ bool exception, BinaryAny const & returnValue,
+ std::vector< BinaryAny >&& outArguments, bool setCurrentContextMode)
+{
+ std::lock_guard g(mutex_);
+ queue_.emplace_back(
+ tid, member, setter, exception, returnValue, std::move(outArguments),
+ setCurrentContextMode);
+ items_.set();
+}
+
+void Writer::unblock() {
+ // Assumes that osl::Condition::set works as a memory barrier, so that
+ // changes made by preceding sendDirectRequest/Reply calls are visible to
+ // subsequent sendRequest/Reply calls:
+ unblocked_.set();
+}
+
+void Writer::stop() {
+ {
+ std::lock_guard g(mutex_);
+ stop_ = true;
+ }
+ unblocked_.set();
+ items_.set();
+}
+
+Writer::~Writer() {}
+
+void Writer::execute() {
+ try {
+ unblocked_.wait();
+ for (;;) {
+ items_.wait();
+ Item item;
+ {
+ std::lock_guard g(mutex_);
+ if (stop_) {
+ return;
+ }
+ assert(!queue_.empty());
+ item = queue_.front();
+ queue_.pop_front();
+ if (queue_.empty()) {
+ items_.reset();
+ }
+ }
+ if (item.request) {
+ sendRequest(
+ item.tid, item.oid, item.type, item.member, item.arguments,
+ (item.oid != "UrpProtocolProperties" &&
+ !item.member.equals(
+ css::uno::TypeDescription(
+ "com.sun.star.uno.XInterface::release")) &&
+ bridge_->isCurrentContextMode()),
+ item.currentContext);
+ } else {
+ sendReply(
+ item.tid, item.member, item.setter, item.exception,
+ item.returnValue, item.arguments);
+ if (item.setCurrentContextMode) {
+ bridge_->setCurrentContextMode();
+ }
+ }
+ }
+ } catch (const css::uno::Exception & e) {
+ SAL_INFO("binaryurp", "caught " << e);
+ } catch (const std::exception & e) {
+ SAL_INFO("binaryurp", "caught C++ exception " << e.what());
+ }
+ bridge_->terminate(false);
+ bridge_.clear();
+}
+
+void Writer::sendRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ css::uno::TypeDescription const & type,
+ css::uno::TypeDescription const & member,
+ std::vector< BinaryAny > const & inArguments, bool currentContextMode,
+ css::uno::UnoInterfaceReference const & currentContext)
+{
+ assert(tid.getLength() != 0);
+ assert(!oid.isEmpty());
+ assert(member.is());
+ css::uno::TypeDescription t(type);
+ sal_Int32 functionId = 0;
+ bool bForceSynchronous = false;
+ member.makeComplete();
+ switch (member.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+ typelib_InterfaceAttributeTypeDescription * atd =
+ reinterpret_cast< typelib_InterfaceAttributeTypeDescription * >(
+ member.get());
+ assert(atd->pInterface != nullptr);
+ if (!t.is()) {
+ t = css::uno::TypeDescription(&atd->pInterface->aBase);
+ }
+ t.makeComplete();
+ functionId = atd->pInterface->pMapMemberIndexToFunctionIndex[
+ atd->aBase.nPosition];
+ if (!inArguments.empty()) { // setter
+ ++functionId;
+ }
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast< typelib_InterfaceMethodTypeDescription * >(
+ member.get());
+ assert(mtd->pInterface != nullptr);
+ if (!t.is()) {
+ t = css::uno::TypeDescription(&mtd->pInterface->aBase);
+ }
+ t.makeComplete();
+ functionId = mtd->pInterface->pMapMemberIndexToFunctionIndex[
+ mtd->aBase.nPosition];
+ bForceSynchronous = mtd->bOneWay &&
+ functionId != SPECIAL_FUNCTION_ID_RELEASE;
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ assert(functionId >= 0);
+ if (functionId > SAL_MAX_UINT16) {
+ throw css::uno::RuntimeException("function ID too large for URP");
+ }
+ std::vector< unsigned char > buf;
+ bool newType = !(lastType_.is() && t.equals(lastType_));
+ bool newOid = oid != lastOid_;
+ bool newTid = tid != lastTid_;
+ if (newType || newOid || newTid || bForceSynchronous || functionId > 0x3FFF)
+ // > 14 bit function ID
+ {
+ Marshal::write8(
+ &buf,
+ (0xC0 | (newType ? 0x20 : 0) | (newOid ? 0x10 : 0) |
+ (newTid ? 0x08 : 0) | (functionId > 0xFF ? 0x04 : 0) |
+ (bForceSynchronous ? 0x01 : 0)));
+ // bit 7: LONGHEADER, bit 6: REQUEST, bit 5: NEWTYPE, bit 4: NEWOID,
+ // bit 3: NEWTID, bit 2: FUNCTIONID16, bit 0: MOREFLAGS
+ if (bForceSynchronous) {
+ Marshal::write8(&buf, 0xC0); // bit 7: MUSTREPLY, bit 6: SYNCHRONOUS
+ }
+ if (functionId <= 0xFF) {
+ Marshal::write8(&buf, static_cast< sal_uInt8 >(functionId));
+ } else {
+ Marshal::write16(&buf, static_cast< sal_uInt16 >(functionId));
+ }
+ if (newType) {
+ marshal_.writeType(&buf, t);
+ }
+ if (newOid) {
+ marshal_.writeOid(&buf, oid);
+ }
+ if (newTid) {
+ marshal_.writeTid(&buf, tid);
+ }
+ } else if (functionId <= 0x3F) { // <= 6 bit function ID
+ Marshal::write8(&buf, static_cast< sal_uInt8 >(functionId));
+ // bit 7: !LONGHEADER, bit 6: !FUNCTIONID14
+ } else {
+ Marshal::write8(
+ &buf, static_cast< sal_uInt8 >(0x40 | (functionId >> 8)));
+ // bit 7: !LONGHEADER, bit 6: FUNCTIONID14
+ Marshal::write8(&buf, functionId & 0xFF);
+ }
+ if (currentContextMode) {
+ css::uno::UnoInterfaceReference cc(currentContext);
+ marshal_.writeValue(
+ &buf,
+ css::uno::TypeDescription(
+ cppu::UnoType<
+ css::uno::Reference< css::uno::XCurrentContext > >::get()),
+ BinaryAny(
+ css::uno::TypeDescription(
+ cppu::UnoType<
+ css::uno::Reference<
+ css::uno::XCurrentContext > >::get()),
+ &cc.m_pUnoI));
+ }
+ switch (member.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ if (!inArguments.empty()) { // setter
+ assert(inArguments.size() == 1);
+ marshal_.writeValue(
+ &buf,
+ css::uno::TypeDescription(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member.get())->
+ pAttributeTypeRef),
+ inArguments.front());
+ }
+ break;
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast< typelib_InterfaceMethodTypeDescription * >(
+ member.get());
+ std::vector< BinaryAny >::const_iterator i(inArguments.begin());
+ for (sal_Int32 j = 0; j != mtd->nParams; ++j) {
+ if (mtd->pParams[j].bIn) {
+ marshal_.writeValue(
+ &buf,
+ css::uno::TypeDescription(mtd->pParams[j].pTypeRef),
+ *i++);
+ }
+ }
+ assert(i == inArguments.end());
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ sendMessage(buf);
+ lastType_ = t;
+ lastOid_ = oid;
+ lastTid_ = tid;
+}
+
+void Writer::sendReply(
+ rtl::ByteSequence const & tid,
+ com::sun::star::uno::TypeDescription const & member, bool setter,
+ bool exception, BinaryAny const & returnValue,
+ std::vector< BinaryAny > const & outArguments)
+{
+ assert(tid.getLength() != 0);
+ assert(member.is());
+ assert(member.get()->bComplete);
+ std::vector< unsigned char > buf;
+ bool newTid = tid != lastTid_;
+ Marshal::write8(&buf, 0x80 | (exception ? 0x20 : 0) | (newTid ? 0x08 : 0));
+ // bit 7: LONGHEADER; bit 6: !REQUEST; bit 5: EXCEPTION; bit 3: NEWTID
+ if (newTid) {
+ marshal_.writeTid(&buf, tid);
+ }
+ if (exception) {
+ marshal_.writeValue(
+ &buf,
+ css::uno::TypeDescription(cppu::UnoType< css::uno::Any >::get()),
+ returnValue);
+ } else {
+ switch (member.get()->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ if (!setter) {
+ marshal_.writeValue(
+ &buf,
+ css::uno::TypeDescription(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member.get())->
+ pAttributeTypeRef),
+ returnValue);
+ }
+ break;
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ typelib_InterfaceMethodTypeDescription * mtd =
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ member.get());
+ marshal_.writeValue(
+ &buf, css::uno::TypeDescription(mtd->pReturnTypeRef),
+ returnValue);
+ std::vector< BinaryAny >::const_iterator i(
+ outArguments.begin());
+ for (sal_Int32 j = 0; j != mtd->nParams; ++j) {
+ if (mtd->pParams[j].bOut) {
+ marshal_.writeValue(
+ &buf,
+ css::uno::TypeDescription(mtd->pParams[j].pTypeRef),
+ *i++);
+ }
+ }
+ assert(i == outArguments.end());
+ break;
+ }
+ default:
+ assert(false); // this cannot happen
+ break;
+ }
+ }
+ sendMessage(buf);
+ lastTid_ = tid;
+ bridge_->decrementCalls();
+}
+
+void Writer::sendMessage(std::vector< unsigned char > const & buffer) {
+ std::vector< unsigned char > header;
+ if (buffer.size() > SAL_MAX_UINT32) {
+ throw css::uno::RuntimeException(
+ "message too large for URP");
+ }
+ Marshal::write32(&header, static_cast< sal_uInt32 >(buffer.size()));
+ Marshal::write32(&header, 1);
+ assert(!buffer.empty());
+ unsigned char const * p = buffer.data();
+ std::vector< unsigned char >::size_type n = buffer.size();
+ assert(header.size() <= SAL_MAX_INT32);
+ /*static_*/assert(SAL_MAX_INT32 <= std::numeric_limits<std::size_t>::max());
+ std::size_t k = SAL_MAX_INT32 - header.size();
+ if (n < k) {
+ k = n;
+ }
+ css::uno::Sequence<sal_Int8> s(header.size() + k);
+ assert(!header.empty());
+ std::memcpy(s.getArray(), header.data(), header.size());
+ for (;;) {
+ std::memcpy(s.getArray() + s.getLength() - k, p, k);
+ try {
+ bridge_->getConnection()->write(s);
+ } catch (const css::io::IOException & e) {
+ css::uno::Any exc(cppu::getCaughtException());
+ throw css::lang::WrappedTargetRuntimeException(
+ "Binary URP write raised IO exception: " + e.Message,
+ css::uno::Reference< css::uno::XInterface >(), exc);
+ }
+ n -= k;
+ if (n == 0) {
+ break;
+ }
+ p += k;
+ k = SAL_MAX_INT32;
+ if (n < k) {
+ k = n;
+ }
+ s.realloc(k);
+ }
+}
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/writer.hxx b/binaryurp/source/writer.hxx
new file mode 100644
index 000000000..e2061502a
--- /dev/null
+++ b/binaryurp/source/writer.hxx
@@ -0,0 +1,150 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <deque>
+#include <mutex>
+#include <vector>
+
+#include <osl/conditn.hxx>
+#include <rtl/byteseq.hxx>
+#include <rtl/ref.hxx>
+#include <rtl/ustring.hxx>
+#include <salhelper/thread.hxx>
+#include <typelib/typedescription.hxx>
+#include <uno/dispatcher.hxx>
+
+#include "binaryany.hxx"
+#include "marshal.hxx"
+#include "writerstate.hxx"
+
+namespace binaryurp { class Bridge; }
+
+namespace binaryurp {
+
+class Writer: public salhelper::Thread
+{
+public:
+ explicit Writer(rtl::Reference< Bridge > const & bridge);
+
+ // Only called from Bridge::reader_ thread, and only before Bridge::writer_
+ // thread is unblocked:
+ void sendDirectRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type,
+ com::sun::star::uno::TypeDescription const & member,
+ std::vector< BinaryAny > const & inArguments);
+
+ // Only called from Bridge::reader_ thread, and only before Bridge::writer_
+ // thread is unblocked:
+ void sendDirectReply(
+ rtl::ByteSequence const & tid,
+ com::sun::star::uno::TypeDescription const & member,
+ bool exception, BinaryAny const & returnValue,
+ std::vector< BinaryAny > const & outArguments);
+
+ void queueRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type,
+ com::sun::star::uno::TypeDescription const & member,
+ std::vector< BinaryAny >&& inArguments);
+
+ void queueReply(
+ rtl::ByteSequence const & tid,
+ com::sun::star::uno::TypeDescription const & member, bool setter,
+ bool exception, BinaryAny const & returnValue,
+ std::vector< BinaryAny >&& outArguments,
+ bool setCurrentContextMode);
+
+ void unblock();
+
+ void stop();
+
+private:
+ virtual ~Writer() override;
+
+ virtual void execute() override;
+
+ void sendRequest(
+ rtl::ByteSequence const & tid, OUString const & oid,
+ com::sun::star::uno::TypeDescription const & type,
+ com::sun::star::uno::TypeDescription const & member,
+ std::vector< BinaryAny > const & inArguments, bool currentContextMode,
+ com::sun::star::uno::UnoInterfaceReference const & currentContext);
+
+ void sendReply(
+ rtl::ByteSequence const & tid,
+ com::sun::star::uno::TypeDescription const & member, bool setter,
+ bool exception, BinaryAny const & returnValue,
+ std::vector< BinaryAny > const & outArguments);
+
+ void sendMessage(std::vector< unsigned char > const & buffer);
+
+ struct Item {
+ Item();
+
+ // Request:
+ Item(
+ rtl::ByteSequence theTid, OUString theOid,
+ com::sun::star::uno::TypeDescription theType,
+ com::sun::star::uno::TypeDescription theMember,
+ std::vector< BinaryAny >&& inArguments,
+ com::sun::star::uno::UnoInterfaceReference theCurrentContext);
+
+ // Reply:
+ Item(
+ rtl::ByteSequence theTid,
+ com::sun::star::uno::TypeDescription theMember,
+ bool theSetter, bool theException, BinaryAny theReturnValue,
+ std::vector< BinaryAny >&& outArguments,
+ bool theSetCurrentContextMode);
+
+ rtl::ByteSequence tid; // request + reply
+ OUString oid; // request
+ com::sun::star::uno::TypeDescription type; // request
+ com::sun::star::uno::TypeDescription member; // request + reply
+ com::sun::star::uno::UnoInterfaceReference currentContext; // request
+ BinaryAny returnValue; // reply
+ std::vector< BinaryAny > arguments; // request: inArguments; reply: outArguments
+ bool request;
+ bool setter; // reply
+ bool exception; // reply
+ bool setCurrentContextMode; // reply
+ };
+
+ rtl::Reference< Bridge > bridge_;
+ WriterState state_;
+ Marshal marshal_;
+ com::sun::star::uno::TypeDescription lastType_;
+ OUString lastOid_;
+ rtl::ByteSequence lastTid_;
+ osl::Condition unblocked_;
+ osl::Condition items_;
+
+ std::mutex mutex_;
+ std::deque< Item > queue_;
+ bool stop_;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binaryurp/source/writerstate.hxx b/binaryurp/source/writerstate.hxx
new file mode 100644
index 000000000..72477ad17
--- /dev/null
+++ b/binaryurp/source/writerstate.hxx
@@ -0,0 +1,49 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <sal/config.h>
+
+#include <rtl/byteseq.hxx>
+#include <rtl/ustring.hxx>
+#include <typelib/typedescription.hxx>
+
+#include "cache.hxx"
+
+namespace binaryurp {
+
+struct WriterState {
+private:
+ WriterState(const WriterState&) = delete;
+ WriterState& operator=(const WriterState&) = delete;
+public:
+ WriterState():
+ typeCache(cache::size), oidCache(cache::size), tidCache(cache::size) {}
+
+ Cache< com::sun::star::uno::TypeDescription > typeCache;
+
+ Cache< OUString > oidCache;
+
+ Cache< rtl::ByteSequence > tidCache;
+};
+
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */