summaryrefslogtreecommitdiff
path: root/include/vcl/salnativewidgets.hxx
AgeCommit message (Collapse)Author
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-07Looks like UBSan still needs various RTTI for some reasonStephan Bergmann
After 5d7af3c38b618d438e065da9d90668e7c4baa849 "make some classes module-private" various tests in my Linux ASan+UBSan build failed due to missing symbols. Identified the problematic types with > make check screenshot gb_SUPPRESS_TESTS=x && for i in $(find instdir/program workdir/LinkTarget/CppunitTest -type f); do LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}instdir/program:workdir/UnpackedTarball/cppunit/src/cppunit/.libs ldd -r "$i" 2>/dev/null | grep 'undefined symbol: _ZTI'; done and fixed the ensuing > sw/source/core/SwNumberTree/SwNodeNum.cxx:190:32: error: dynamic_cast from 'SwNumberTreeNode' with hidden type visibility to 'SwNodeNum' with default type visibility [loplugin:dyncastvisibility] > SwNodeNum* pChild( dynamic_cast<SwNodeNum*>(pNode) ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > sw/inc/SwNumberTree.hxx:114:7: note: base class 'SwNumberTreeNode' with hidden type visibility defined here [loplugin:dyncastvisibility] > class SwNumberTreeNode > ~~~~~~^~~~~~~~~~~~~~~~ > sw/inc/SwNodeNum.hxx:29:26: note: derived class 'SwNodeNum' with default type visibility defined here [loplugin:dyncastvisibility] > class SAL_DLLPUBLIC_RTTI SwNodeNum : public SwNumberTreeNode > ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fallout. Change-Id: I7abafdb4d02216e1a047f886d5e72ad3420115ce Reviewed-on: https://gerrit.libreoffice.org/82210 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-06make some classes module-privateNoel Grandin
Change-Id: I00ab3a3f6a8bbc85320e7b4fd1aa13af798e7e4c Reviewed-on: https://gerrit.libreoffice.org/82062 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-05make some classes module-privateNoel Grandin
Change-Id: Ice9a57eedb166672dbdfae6da2a172ab77566a19 Reviewed-on: https://gerrit.libreoffice.org/81983 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-03make some classes module-privateNoel Grandin
improve the script, but it still generates some false positives Change-Id: If8ee1cba8c04ac0be11f73220149e6de15f24f44 Reviewed-on: https://gerrit.libreoffice.org/81929 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-31loplugin:finalclasses in vclNoel Grandin
Change-Id: Id6dd59d0a335d84c513059ed7870135cf9959af8 Reviewed-on: https://gerrit.libreoffice.org/81827 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-22loplugin:unusedenumconstantsNoel Grandin
Change-Id: I76aadeefce66df93f21b7e45c0e87ab92df45131 Reviewed-on: https://gerrit.libreoffice.org/81324 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-23Fix typoAndrea Gelmini
Change-Id: I3a4b8aad30f4d8bcfda472ddfd151410db21a5b1 Reviewed-on: https://gerrit.libreoffice.org/74551 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-06-21tdf#105884 Qt5 implement TabControl themingJan-Marek Glogowski
Drawing a QTabWidget is a really complex procedure. The main problems I had were the adjustment of the frame, which I totally missed in the Qt code for a long time. Then there is the frame gap, which Qt draws by simply overlapping the items a bit with the frame. And all the calculations need the tabs together with the pane. None of it really fits very good into the way VCL handles drawing the TabControl and since I needed a way back from the plugin into VCL for the nOverlap value, there is this hack using a static. I hope nOverlap never changes. Change-Id: I8fe6eb12d39a2ac7f6fb89424586cac76e12545b Reviewed-on: https://gerrit.libreoffice.org/74480 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2019-02-22loplugin:unusedfields in vclNoel Grandin
maStatusText in HelpTextWindow is dead since commit bd3ea40ed49074c4fa4439de7b5dea4fc3161880 Date: Fri Jan 21 14:48:58 2011 +0200 Remove ShowHelpStatusText and HideHelpStatusText and associated cruft Change-Id: I7a74e2a1b909a479f9338bd4da5fad06ccc25283 Reviewed-on: https://gerrit.libreoffice.org/68153 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-12-10tdf#42949 Fix IWYU warnings in include/vcl/s*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Ie87d27dd2c385a63349e0b322fd067ba03d2d152 Reviewed-on: https://gerrit.libreoffice.org/64479 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2018-12-07custom widgets: Rename 'stock' to 'action'.Jan Holesovsky
If the button has this property, it means it is located in the action area, not that it is a stock button per se. Change-Id: Ia57ad24d8cd4ff1d7b74d7ef82da0f352fe3deb3
2018-11-09vcl: mark stock buttons and transfer this to NWF on drawingTomaž Vajngerl
Stock buttons like OK/Cancel/Help need sometimes to be drawn differently than just another button. For this we need to mark such push buttons as "stock" when building them from a glade file and transfer this information down to the NWF backend when drawing the widget. Change-Id: I131657f026a731208db47f4c8220622c8aabb464
2018-10-02Silence new Clang trunk -Wdefaulted-function-deletedStephan Bergmann
This mostly affects explicitly defaulted functions that had recently been user- declared to silence new GCC trunk -Wdeprecated-copy. It is not entirely clear to me what the best approach is overall, see my mail <http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20181001/245321.html> "Re: r343285 - [cxx2a] P0641R2: (Some) type mismatches on defaulted functions only", but lets just explicitly delete those functions for now. Change-Id: If8c72f612f67a8feb8b03c2fb988c807e704ef03 Reviewed-on: https://gerrit.libreoffice.org/61259 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-09-14loplugin:constfields in vclNoel Grandin
Change-Id: I1072642be4fdfa720e61f2d7bad3c2701eb81610 Reviewed-on: https://gerrit.libreoffice.org/60430 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-07-27vcl: avoid -Werror=deprecated-copy (GCC trunk towards GCC 9)Stephan Bergmann
...by explicitly defaulting the copy/move functions (and, where needed in turn, also a default ctor) for classes that have a user-declared dtor that does nothing other than an implicitly-defined one would do, but needs to be user- declared because it is virtual and potentially serves as a key function to emit the vtable, or is non-public, etc.; and by removing explicitly user- provided functions that do the same as their implicitly-defined counterparts, but may prevent implicitly declared copy functions from being defined as non- deleted in the future. (Even if such a user-provided function was declared non-inline in an include file, the apparently-used implicitly-defined copy functions are already include, so why bother with non-inline functions.) Change-Id: Ife5d8eb699b8b6c84b9229ae275dc386fa189bce Reviewed-on: https://gerrit.libreoffice.org/58105 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-02-01Fix typosAndrea Gelmini
Change-Id: Id9d4f277ec684f4baaa9f16000da1b208d745e03 Reviewed-on: https://gerrit.libreoffice.org/49099 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
2017-06-17loplugin:unusedfields in vcl part1Noel Grandin
Change-Id: I67d176003f39992cd0ff9271a7d6ce26d2cb6619 Reviewed-on: https://gerrit.libreoffice.org/38828 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-31tdf#82580 tools: rename Rectangle to tools::RectangleMiklos Vajna
Mostly generated using make check COMPILER_EXTERNAL_TOOL=1 CCACHE_PREFIX=clang-rename-wrapper RENAME_ARGS="-qualified-name=Rectangle -new-name=tools::Rectangle" Except some modules have their own foo::tools namespace, so there have to use ::tools::Rectangle. This commit just moves the class from the global namespace, it does not update pre/postwin.h yet. Change-Id: I42b2de3c6f769fcf28cfe086f98eb31e42a305f2 Reviewed-on: https://gerrit.libreoffice.org/35923 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-03-03Remove redundant 'inline' keywordStephan Bergmann
...from function definitions occurring within class definitions. Done with a rewriting Clang plugin (to be pushed later). Change-Id: I9c6f2818a57ccdb361548895a7743107cbacdff8 Reviewed-on: https://gerrit.libreoffice.org/34874 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-21fix KDE buildNoel Grandin
after commit 0649622956431e0a1955cb80d1175025401ab5e5 "loplugin:unusedmethods" Change-Id: Ia9ef3f8c1e64397a350656a3addc1b2a67f0b118
2017-02-21loplugin:unusedmethodsNoel Grandin
Change-Id: I52a9f16f3ed543a3c83ca111df70e3f7ae1ef33c Reviewed-on: https://gerrit.libreoffice.org/34508 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-04tdf#97228 Moved class ControlCacheKey in a seperate include file.Huzaifa Iftikhar
class ControlCacheKey defined in include/vcl/salnativewidgets.hxx is used only by vcl therefore it is moved to a seperate include file named ControlCacheKey.hxx which is inside vcl/inc/ControlCacheKey.hxx. This header file contains the definition of the the class ControlCacheKey. Since this class uses an object of another class named Size which is defined in gen.hxx therefore this is included in ControlCacheKey.hxx. All the files that references the class ControlCacheKey includes ControlCacheKey.hxx with the syntax: #include "ControlCacheKey.hxx" Change-Id: I7d7b3e1cf6950a953e6bbed670c1914826b2bacd Reviewed-on: https://gerrit.libreoffice.org/32422 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-09-22attempt to fix build, reintroduce TabitemValue::isLast()Eike Rathke
commit 7419057e3ec4365748fa6456e207f40fd9e09c62 Date: Thu Sep 22 16:34:14 2016 +0200 loplugin:unusedmethods in chart2..svx removed that but vcl/unx/kde/salnativewidgets-kde.cxx needs it. Change-Id: I1ddc98ffafb1f6a1a22642a9a83cc58085cb4271
2016-09-22loplugin:unusedmethods in chart2..svxNoel Grandin
Change-Id: Ifb6045885049733415895f58cdd911256f48323c Reviewed-on: https://gerrit.libreoffice.org/29187 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-18loplugin:unusedenumvaluesNoel Grandin
Change-Id: Icf17f936ce6d07d0e152252833c8645cf9b1163b Reviewed-on: https://gerrit.libreoffice.org/28942 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-13loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark overriding destructors as 'virtual'" appears to no longer be a problem with MSVC 2013. (The little change in the rewriting code of compilerplugins/clang/override.cxx was necessary to prevent an endless loop when adding "override" to OOO_DLLPUBLIC_CHARTTOOLS virtual ~CloseableLifeTimeManager(); in chart2/source/inc/LifeTime.hxx, getting stuck in the leading OOO_DLLPUBLIC_CHARTTOOLS macro. Can't remember what that isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.) Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-09-07loplugin:constantparam in vcl..xmlscriptNoel Grandin
Change-Id: Icf66c08071b154259c9e551342d30331caf2b15a Reviewed-on: https://gerrit.libreoffice.org/28685 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-20Convert PART to scoped enumNoel Grandin
Change-Id: If4c2849beb207593d3d450ae3846ed24eaf66ca4 Reviewed-on: https://gerrit.libreoffice.org/26173 Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-08Convert ButtonValue to scoped enumNoel Grandin
Change-Id: Ia882914fb99844f21ce89d7218321933ef084b22 Reviewed-on: https://gerrit.libreoffice.org/26036 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-31Convert ControlType to scoped enumNoel Grandin
Change-Id: Iaa13c3e7030296a97bab144103745867d43b4b19 Reviewed-on: https://gerrit.libreoffice.org/25554 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-31fix KDE4 buildNoel Grandin
after 3d7325898547c94826cfdd "loplugin:unusedmethods" Change-Id: I32303948c5046b2880cd4e64cada32ea776a0861
2016-05-31loplugin:unusedmethodsNoel Grandin
Change-Id: Ifeb818227a960cab8fd2e8e7352468efbfe1232c Reviewed-on: https://gerrit.libreoffice.org/25668 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-27tdf#98666: Don't cache progress bars eitherTor Lillqvist
Fixes the bug only partially, though. Change-Id: I262f671659e8ad0a3ecd735f5b36362c4119b26c Reviewed-on: https://gerrit.libreoffice.org/25557 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2016-05-20fix KDE4 buildNoel Grandin
after 72edb696 "loplugin:unusedmethods in vcl" Change-Id: I15d884b39b38da80bcf10ca81161d0dcb5683954
2016-05-20loplugin:unusedmethods in vclNoel Grandin
also drops the CairoFontsCache ref-counting, since nothing was actually using it. Change-Id: If05ecb054b6b8d97b0d3010185cf23c28390ec04 Reviewed-on: https://gerrit.libreoffice.org/25105 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-03-16loplugin:constantparams in vcl/Noel Grandin
also some improvements to the plugin Change-Id: I0e3a519d70756e577fcb1bd47dd66864b5b4c871 Reviewed-on: https://gerrit.libreoffice.org/23289 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-02-17tdf#97922 - get control area right for spinbuttons.Michael Meeks
Also avoid caching both spin-buttons and some other complex types. The cache key needs to be able to include more state. Change-Id: I8eff6b1c5c51d27afb796cae66b45390433138b4
2016-01-31move boost header dependency for ControlCacheHashFunction inside vclNoel Grandin
ControlCacheHashFunction is only used by vcl/opengl/* Change-Id: Id3aef4fc1ffc909a24a9cce0b86c5dc82e6e6612 Reviewed-on: https://gerrit.libreoffice.org/21900 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-01-18tdf#95913: Don't cache CTRL_SLIDERTor Lillqvist
Change-Id: I6af4b27f5bc2f24918d92fe8c5e430cfdfad6439
2015-12-14tdf#95813: Don't cache CTRL_LISTNODE (disclosure control)Tor Lillqvist
It keeps state that apparently doesn't affect its cache hash key. Change-Id: I82ead9fcded16152f2a106a971484cf4a9eaf8ea
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-09-02opengl: Don't cache the menubar background.Jan Holesovsky
It can change based on the _toolbar_ size. The toolbar itself is fine though; it may depend on the menubar size, but that should be constant. Change-Id: Id2c68c89f4ec0774bc74b8c4a5b9a5e59e22137f
2015-09-02tdf#93859 opengl - don't cache radiobuttons, refactor code dupl.Tomaž Vajngerl
Radio buttons and check boxes can't be cached with current framework as they have an additional rendering state provided in additional data. Refactor code to control which controls can be cached in one place only. Change-Id: I095a01cbf5dde013247d70ada89020f64c8c6510
2015-07-30add assert for valid value in o3tl::typed_flags_setNoel Grandin
, fixing a couple of bugs in the process Change-Id: I40f932deecbcc99dff9aa13dd1882c7487e7fa8e Reviewed-on: https://gerrit.libreoffice.org/17411 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-07-24tdf#92018 cache native controls for X11 OpenGL backend (for now)Tomaž Vajngerl
Change-Id: I85c7cc01113bc4ac810c450a6460059463cc8e03
2015-05-24rendercontext: Make the Gtk+ native widgets work with double-buffering.Jan Holesovsky
Change-Id: Ic7101ab7cbaa7fd5f6b073a73ef0c0088b1af4c6
2015-05-21convert TABITEM constants to scoped enumNoel Grandin
Change-Id: Ia16127a7d97ef7db59bd2b0e6b8d14d8625bc526 Reviewed-on: https://gerrit.libreoffice.org/15827 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-05-14gtk3: provide a scheme where NWF can render the focus rects itselfCaolán McNamara
Change-Id: Ide68e35964670f7acf7a9098b2e04451a17e335a
2015-05-13Remove EditBoxValue again and just use the native widgets size requestCaolán McNamara
Change-Id: Ib9d0f06bffc9e9d31149a622350145024a9b8a99