summaryrefslogtreecommitdiff
path: root/include/toolkit
AgeCommit message (Collapse)Author
2021-01-25avoid some ref-countingNoel Grandin
can just return a pointer here, instead of VclPtr. Change-Id: I9ab8962cbbe84ed4dfcfd658a6d758112914cb89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109923 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-11-21tdf#123936 Formatting files in module include with clang-formatPhilipp Hofer
Change-Id: I0507dd797cd5a35e0ae14f4b69ee4e172d08a71a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105681 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
2020-10-26switching long to a 64-bit type on 64-bit windowsNoel
(*) create a rewriting plugin to do most of the work, heavily based on the fakebool plugin (*) but there are still a number of "long"s in the codebase that will need to be done by hand (*) the plugin needs lots of handholding, due to needing to add #include and update macros Change-Id: I8184d7000ca482c0469514bb73178c3a1123b1e9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104203 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-08-18Removed duplicated includesAndrea Gelmini
Change-Id: I61861d87449f83cb3a1efe8a2cf0345864c2f1db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100918 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2020-08-18move VCLXMultiLineEdit and MultiLineEdit to toolkitCaolán McNamara
Change-Id: I9aa4b1efbecb71141647dbf5d8809482be15d266 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100888 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-08-03tdf#42949 Fix IWYU warnings in include/[t-x]*/*hxxGabor Kelemen
Recheck after 7-0 branchoff Also drop the now unused file include/vcl/field.hxx Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I9e54c82f50d1e02a0f99858939cac999fc66f7de Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99261 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-07-31ASan/UBSan build still needs VCLXEdit RTTIStephan Bergmann
...after 0c311bfbf67441823f8b3916db963e2680e9eb43 "make some classes private": > warn:sal.osl:729320:729320:sal/osl/unx/module.cxx:162: dlopen(instdir/program/libacclo.so, 1): instdir/program/libacclo.so: undefined symbol: _ZTI8VCLXEdit > warn:legacy.osl:729320:729320:toolkit/source/helper/accessibilityclient.cxx:183: AccessibilityClient::ensureInitialized: could not load the library, or not retrieve the needed symbol! > cppunittester: include/com/sun/star/uno/Reference.h:381: interface_type *com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext>::operator->() const [interface_type = com::sun::star::accessibility::XAccessibleContext]: Assertion `_pInterface != NULL' failed. during CppunitTest_sw_accessible_relation_set, with > $ find workdir/CxxObject/accessibility/source -name \*.o -exec bash -c 'nm "$0" | grep -F _ZTI8VCLXEdit && echo "^ $0"' {} \; > U _ZTI8VCLXEdit > ^ workdir/CxxObject/accessibility/source/standard/vclxaccessibleedit.o Change-Id: Ic1f5fcfa1ba2d415bc6f0e076a2e24daadf86d7f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99823 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-30make some classes privateNoel Grandin
Change-Id: Icfce56436aafa14fe923b4d35835ed6dee52afba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99624 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-20drop unused VCLXCurrencyFieldCaolán McNamara
Change-Id: Ia2a44d64d4458c15e074522b022388e1da170e27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99014 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-07-20compact namespace declNoel Grandin
used git grep -lw namespace | xargs perl -i -p0e 's/(\w+)\s*.\{.\s*namespace\s*(\w+)/\1::\2/smg;' to do the initial replace, then compiled and fixed. Change-Id: If69904d75940c851aeffab0e78c4ba02cc968d44 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98526 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-15move SVTXDateField to toolkitCaolán McNamara
and svtools CalendarField to vcl Change-Id: I6f3e9a71f21ac7ca70f8172d4f8be4804f3b1c7f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98818 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-06-21don't include vcl/fmtfield.hxx from public hxxCaolán McNamara
Change-Id: I99077c7fe204ab86eef2c5d7dce1a902d7d10df9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96781 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-05-18tdf#133142 UnoControlTabPageContainer: Handle tab property changesMichael Weghorn
In the model, changing a tab page's title or enabled/disabled status is done via methods 'XTabPageModel.setTitle' and 'XTabPageModel.setEnabled'. Changes to the title and enabled/disabled status are propagated to the tab page container containing the tab page (s.a. 25c692c2a94ab83c2c859ac5ab334b62ac8b825e ("ControlModelContainerBase: Use property for enabled status", 2020-05-15)). Make 'VCLXTabPageContainer' derive from 'XPropertiesChangeListener' and implement the 'propertiesChange' method defined in that interface to handle property changes for the tab pages and have 'UnoControlTabPageContainer' forward 'PropertyChangeEvent's to its peer so they can be handled there. This way, changes for those tab page properties via UNO are now properly updated in the UI as well. Change-Id: I6fa1fadf781575c4ad1d066aed9c3a651b10869d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94402 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2020-05-03use more compact namespace syntax in /includeNoel Grandin
excluding the UDK headers of course Change-Id: Iac7ab83d60265f7d362c860776f1de9d5e444ec0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93268 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-10Make BitmapPrimitive2D vcl-independentArmin Le Grand
as preparation to have drawinglayer module independent from vcl in the future Change-Id: Iaa01370f27b51cba5114a54f37d1ec73d0719918 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92048 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2020-03-23make more classes private in mergedlibs modeNoel Grandin
Change-Id: I486922d0652f26fa7ee56f5fe308e19fe5ff137e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90856 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-03-04make some symbols privateNoel Grandin
Change-Id: I3115dda50e77dc6a335e46026724641c08c04030 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89949 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-21Drop o3tl::optional wrapperStephan Bergmann
...now that macOS builds are guaranteed to have std::optional since 358146bbbd1b9775c12770fb5e497b6ec5adfc51 "Bump macOS build baseline to Xcode 11.3 and macOS 10.14.4". The change is done mostly mechanically with > for i in $(git grep -Fl optional); do > sed -i -e 's:<o3tl/optional\.hxx>\|\"o3tl/optional\.hxx\":<optional>:' \ > -e 's/\<o3tl::optional\>/std::optional/g' \ > -e 's/\<o3tl::make_optional\>/std::make_optional/g' "$i" > done > for i in $(git grep -Flw o3tl::nullopt); do > sed -i -e 's/\<o3tl::nullopt\>/std::nullopt/g' "$i" > done (though that causes some of the resulting #include <optional> to appear at different places relative to other includes than if they had been added manually), plus a few manual modifications: * adapt bin/find-unneeded-includes * adapt desktop/IwyuFilter_desktop.yaml * remove include/o3tl/optional.hxx * quote resulting "<"/">" as "&lt;"/"&gt;" in officecfg/registry/cppheader.xsl * and then solenv/clang-format/reformat-formatted-files Change-Id: I68833d9f7945e57aa2bc703349cbc5a56b342273 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89165 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-18move SVTXFormattedField, SVTXCurrencyField, SVTXNumericField to toolkitCaolán McNamara
Change-Id: If22200a4f342d4d779c612dbace61a4cf99471ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88866 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-14move VCLXFileControl to toolkitCaolán McNamara
Change-Id: I39bb417fe7e033a8f368fa04d4a30b2388bcddfb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88615 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-05move some toolkit/ headers inside the moduleNoel Grandin
Change-Id: I88badb1eb586db00a350afbcd6f4903a5623c724 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87988 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-27tdf#124176: Use pragma once instead of header guardPelin Kuran
Change-Id: Id28874549342349fb2727c3cb8e92da1dcdb727c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87513 Reviewed-by: Muhammet Kara <muhammet.kara@collabora.com> Tested-by: Muhammet Kara <muhammet.kara@collabora.com>
2019-12-23sal_Char->char in toolkitNoel Grandin
Change-Id: I3016c8c672beb5a2d5f772f8a2ddc0047088e1da Reviewed-on: https://gerrit.libreoffice.org/85743 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-05make some classes module privateNoel Grandin
Mark some stuff SAL_DLLPUBLIC_RTTI in include/vcl/metaact.hxx in order to make ASAN happy. Change-Id: I97febe0968bf58b9cbe60ce647f0ada25e6f4bb0 Reviewed-on: https://gerrit.libreoffice.org/84202 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-03remove some useless comment linesNoel Grandin
which merely announce that the next declaration is a class Change-Id: Ifdb1398bcd99816b13e0b3769b46d0562bfbc1dc Reviewed-on: https://gerrit.libreoffice.org/84229 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-01Introduce o3tl::optional as an alias for std::optionalStephan Bergmann
...with a boost::optional fallback for Xcode < 10 (as std::optional is only available starting with Xcode 10 according to <https://en.cppreference.com/w/cpp/compiler_support>, and our baseline for iOS and macOS is still Xcode 9.3 according to README.md). And mechanically rewrite all code to use o3tl::optional instead of boost::optional. One immediate benefit is that disabling -Wmaybe-uninitialized for GCC as per fed7c3deb3f4ec81f78967c2d7f3c4554398cb9d "Slience bogus -Werror=maybe-uninitialized" should no longer be necessary (and whose check happened to no longer trigger for GCC 10 trunk, even though that compiler would still emit bogus -Wmaybe-uninitialized for uses of boost::optional under --enable-optimized, which made me ponder whether this switch from boost::optional to std::optional would be a useful thing to do; I keep that configure.ac check for now, though, and will only remove it in a follow up commit). Another longer-term benefit is that the code is now already in good shape for an eventual switch to std::optional (a switch we would have done anyway once we no longer need to support Xcode < 10). Only desktop/qa/desktop_lib/test_desktop_lib.cxx heavily uses boost::property_tree::ptree::get_child_optional returning boost::optional, so let it keep using boost::optional for now. After a number of preceding commits have paved the way for this change, this commit is completely mechanical, done with > git ls-files -z | grep -vz -e '^bin/find-unneeded-includes$' -e '^configure.ac$' -e '^desktop/qa/desktop_lib/test_desktop_lib.cxx$' -e '^dictionaries$' -e '^external/' -e '^helpcontent2$' -e '^include/IwyuFilter_include.yaml$' -e '^sc/IwyuFilter_sc.yaml$' -e '^solenv/gdb/boost/optional.py$' -e '^solenv/vs/LibreOffice.natvis$' -e '^translations$' -e '\.svg$' | xargs -0 sed -i -E -e 's|\<boost(/optional)?/optional\.hpp\>|o3tl/optional.hxx|g' -e 's/\<boost(\s*)::(\s*)(make_)?optional\>/o3tl\1::\2\3optional/g' -e 's/\<boost(\s*)::(\s*)none\>/o3tl\1::\2nullopt/g' (before committing include/o3tl/optional.hxx, and relying on some GNU features). It excludes some files where mention of boost::optional et al should apparently not be changed (and the sub-repo directory stubs). It turned out that all uses of boost::none across the code base were in combination with boost::optional, so had all to be rewritten as o3tl::nullopt. Change-Id: Ibfd9f4b3d5a8aee6e6eed310b988c4e5ffd8b11b Reviewed-on: https://gerrit.libreoffice.org/84128 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-01Don't use boost::optional forward declarationsStephan Bergmann
...in preparation for wholesale replacement of boost::optional with o3tl::optional (which will be a using declaration for either std::optional or boost::optional, hence can't be forward-declared easily) Change-Id: I031ed1812a0c939f37253f7753e358f1ad9153a3 Reviewed-on: https://gerrit.libreoffice.org/84126 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-30merge classes VCLXTopWindow_Base and VCLXTopWindowNoel Grandin
Change-Id: I4c0718d2947449fa076b0afd3046587c73784558 Reviewed-on: https://gerrit.libreoffice.org/84035 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-15make some classes module-privateNoel Grandin
Change-Id: I95845d7217fc5e77e3f8e205030e9cd761ad0cc5 Reviewed-on: https://gerrit.libreoffice.org/82116 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-04move VCLXProgressBar to toolkitCaolán McNamara
Change-Id: I3aa21aff97346a9a43ad7b25621e8a8733fc4041 Reviewed-on: https://gerrit.libreoffice.org/82004 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-03find symbols that can be privateNoel Grandin
update the script and make private standalone functions Change-Id: Icb26ce258107700c90f89ad4e0d3329d075a2eb1 Reviewed-on: https://gerrit.libreoffice.org/81879 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-30loplugin:finalclasses frameworkNoel Grandin
Change-Id: Ide6531c29fd44003a3235dbd75af79fec0d94678 Reviewed-on: https://gerrit.libreoffice.org/81727 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-08use cppu::WeakImplHelper in VCLXRegionNoel Grandin
Change-Id: I93bb52b35b4c15dc93d7638d7fc1e00652a2a1e7 Reviewed-on: https://gerrit.libreoffice.org/80400 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-08use cppu::WeakImplHelper in VCLXBitmapNoel Grandin
Change-Id: I789646591caca8ee164d32e07b050b862f627973 Reviewed-on: https://gerrit.libreoffice.org/80385 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-07use cppu::WeakImplHelper in VCLXGraphicsNoel Grandin
Change-Id: If862818ef3eb534493ac61d5071ec1adf590ebf2 Reviewed-on: https://gerrit.libreoffice.org/80388 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-07use cppu::WeakImplHelper in VCLXDeviceNoel Grandin
Change-Id: Ia83cc372d53db41edc8199077db91cb7b1d06e24 Reviewed-on: https://gerrit.libreoffice.org/80386 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-07use cppu::WeakImplHelper in VCLXFontNoel Grandin
Change-Id: Iab0ff79ba1f94f087b57faefa3945aba1ed42448 Reviewed-on: https://gerrit.libreoffice.org/80387 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-09-18tdf#42949 Fix IWYU warnings in toolkit/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Ib49e2f29daa6d9b2a8195915c4ba10a8cef965ce Reviewed-on: https://gerrit.libreoffice.org/78722 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-09-06TyposAndrea Gelmini
Mainly fixing '....' and '..' Change-Id: Ic928701b319868671b826d757dd94c296fd5e942 Reviewed-on: https://gerrit.libreoffice.org/78668 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-08-23tdf#39593 extract UnoTunnelId comparison to template functionArkadiy Illarionov
Change-Id: Ia2b5dea273c8de7b8c54e74780193a8d4cba7b45 Reviewed-on: https://gerrit.libreoffice.org/73874 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-08-22loplugin:constmethod in toolkitNoel Grandin
Change-Id: Id80ee487d7083da5c1f1c4d012d6339700471204 Reviewed-on: https://gerrit.libreoffice.org/77952 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-31Improved loplugin:stringconstant (now that GCC 7 supports it): toolkitStephan Bergmann
Change-Id: I598d89be70d476663ffef95029015cba17bf09b9 Reviewed-on: https://gerrit.libreoffice.org/76636 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-07-19Fix typosAndrea Gelmini
Change-Id: Ia7486fe6c110a4a7f53f1dac82dbff3a15405fd7 Reviewed-on: https://gerrit.libreoffice.org/75947 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2019-06-04tdf#39593 remove IMPL_XUNOTUNNEL* macrosArkadiy Illarionov
Replace with UNO3_GETIMPLEMENTATION* macros. Replace single usage of IMPL_XUNOTUNNEL_MINIMAL with it's body. Change-Id: I7d4ad76399b999ebb2178ecf57edcf6bd2aa6c3e Reviewed-on: https://gerrit.libreoffice.org/73424 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-19tdf#125207 [API CHANGE] extend css.awt.PrinterServer: XPrinterServer2brinzing
Change-Id: Ic2df8ac676ae786d9c0ea2ab3619f9f9de087ca7 Reviewed-on: https://gerrit.libreoffice.org/72135 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-10an uno -> a unoCaolán McNamara
Change-Id: I538db88f8477dd2d2ad25c372928fec6c11d979d Reviewed-on: https://gerrit.libreoffice.org/72105 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-05-09tdf#124400 a11y: add accessible IDSamuel Thibault
Such ID is not meant to be presented to the user, but to be an ID which is stable over application development. Typically, this is the gtkbuilder ID. Such an ID can then be used to identify a given well-known accessible object independently from the current locale, user-visible labelling, or dialog structure. This can then be used for tailored screen reading (e.g. automatically announcing the content of a well-known object), or for automatic regression testing (to check the behavior of well-known objects). Uniqueness within the window is thus desirable when returning a non-empty string. This adds XAccessibleXContext2 to augment XAccessibleXContext with getAccessibleId(). The VCL implementation just takes Window::get_id(), i.e. the gtkbuilder id, which is enough for most use cases for now. atk_object_wrapper_new then passes it to atk_object_set_accessible_id() for AT-SPI technologies to pick it up. Change-Id: Iea0ad08d036e539dbcfec1a9be026c8da8d17357 Reviewed-on: https://gerrit.libreoffice.org/71743 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins
2019-05-03The -fvisibility-ms-compat hack is no longer needed for UBSan on Linux...Stephan Bergmann
...with latest Clang trunk towards Clang 9. All the no-longer necessary hacks are made conditional on new NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY, which is still set for UBSan builds with older Clang on Linux (but which should eventually be purged). Various classes needed additional SAL_DLLPUBLIC_RTTI annotations, as building with UBSan instrumentation can generate references to RTTI symbols from additional places like outside a dynamic library that used to hide those symbols by default (but used to not hide them for old UBSan builds thanks to the -fvisibility-ms-compat hack). The odr-violation suppressions in solenv/sanitizers/asan-suppressions (which is not referenced from anywhere in the code base, but meant to be included in an ASan/UBSan build's ASAN_OPTIONS env var) are also no longer needed when NEED_CLANG_LINUX_UBSAN_RTTI_VISIBILITY is false. Change-Id: I24ec3e388b0cbab50dbe2bf008d9569bff7bf25a Reviewed-on: https://gerrit.libreoffice.org/70829 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-03-07log nice exception messages whereever possibleNoel Grandin
Change-Id: Idd125c18bee1a39b9ea8cc4f8c55cddfd37c33e1 Reviewed-on: https://gerrit.libreoffice.org/68579 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-01expand out IMPL_XTYPEPROVIDER_START macroNoel Grandin
and make cppu::OTypeCollection::getTypes be const Change-Id: I2dd1c0bacb2e1872f8b7a0da72f73013b04bef3c Reviewed-on: https://gerrit.libreoffice.org/68536 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>