summaryrefslogtreecommitdiff
path: root/basctl
AgeCommit message (Collapse)Author
2020-02-13remove unneeded includes and update pchCaolán McNamara
Change-Id: I6b38e96e6eb509e9d1ea0acaf30cb2a542bdbc2d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88546 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-13tdf#130161 detect if a node already had an expansion attemptCaolán McNamara
and so isn't in child-on-demand mode anymore, in which case in basctl new module/dialog children should be appended to it similarly to how they are added if had been expanded in the earlier attempt Change-Id: I75255fb743852c70e194bbf4828cd90b9112db79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88544 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-13tdf#130161 adding a document dialog or modules doesn't update catalogCaolán McNamara
in basctl UI, seems to be since... commit 44861f2435a0c487d4fb5b196f7e4fe7f9569396 Date: Fri Aug 17 07:29:20 2012 +0200 Object Catalog in Dialog Editor if it even really worked before that changed UpdateObjectCatalog to only get called for non-document changes Change-Id: I77a94bb4859cc399e86d75fdf2c9ca7c50288b35 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88543 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-13tdf#57307 - Expand word boundaries to include connector punctuationsAndreas Heinisch
Include connector punctuations when adding a variable to the watch window using "Enable Watch (F7)" in order to add the correct variable name. Change-Id: Idaf7699dde3f4147d603c6aea4b2381e2af497a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88575 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-12Fix typoAndrea Gelmini
Change-Id: I2b0fe68cf5346a6788bbd63242eadf872d58a87e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88556 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-02-12drop newly unused TreeListBoxCaolán McNamara
Change-Id: Iea157bb472ee409a1a15b9f6c9cfe0adc21d1a03 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88449 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-12weld ObjectCatalogCaolán McNamara
Change-Id: I1979c6f8f5705360aa0df8cb7aeaeca00cd66ce9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88448 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-12only freeze/thaw if we have toCaolán McNamara
because gtk will relayout and things jump around confusingly and unnecessarily Change-Id: I817e803f8ad7e523e5855326fc097f8798ddb679 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88526 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-12we always want to expand/collapse on double clickCaolán McNamara
Change-Id: Idf5496b44f5e2d5782d99317029aa0e9cb99e8d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88527 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-12cypress: mobile: Font size combobox is broken on core/master.Caolán McNamara
a) for vcl version, listen to modify and select, instead of just modify so we can get the artificial select via uiobject that the mobile makes use of. (and disregard the modify which we know will lead to select so we get just one event in that case) b) default to assuming something has been picked "directly" unless we know otherwise. ideally the result is that https://cgit.freedesktop.org/libreoffice/online/commit/?id=08d6c3fdf9bac4ad8318151ab1402690eb950f52 isn't needed Change-Id: Ibbf33eab88dabd55d0c329aa00c8adaf001a4f50 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88476 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-11ensure the module combobox gets updated with the current selectionCaolán McNamara
Change-Id: Ia9bf71c1890d9f2700a67ad9a3727dbf140c0492 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88446 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-11Related: tdf#130161 invalid iterator used in BrowseMode::Subs caseCaolán McNamara
xTreeIter is invalid here before AddEntry, afterwards it will remain invalid unless it was passed in to AddEntry to be updated to the newly inserted location, and we need it to be valid in the BrowseMode::Subs case Change-Id: I4831b7713bdb67889604fd4f8a7cd1644fd81a10 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88442 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-11add some more libs to libmergedNoel Grandin
and fix a consequent symbol name clash in basctl Change-Id: Idc836fcbb379e1046a60008391635eb6241b27c7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88188 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-10weld SvxFmAbsRecWin item windowCaolán McNamara
Change-Id: I6a11d8ba226b28447e2ab04925090491d6953132 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88348 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-08weld LibBox and LanguageBox Item WindowsCaolán McNamara
Change-Id: Ifdbef243093b588887c3d3fe1efcaf2e4c7c982a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88235 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-08crash in manage languages in basic ideCaolán McNamara
when there is more than one language, there needs to be two separate columns with a renderer each, not one column with two renderers Change-Id: Id4f2c9938fd3bd0aa3e006166df6081d57ef57df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88222 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-07property browser appearing as a blank area when changing modulesCaolán McNamara
under gtk, so just don't create it until we need it Change-Id: I0fd86c6b587788c42646a107746e8e4e10f2a13f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88230 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-06drop newly unused FontSizeBoxCaolán McNamara
Change-Id: I8a84ce74888e1d3c468251ddd3633aedf6339a11 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88064 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-01make update_pch also consider files in <module>/src/**/incLuboš Luňák
With --enable-pch=full there's not much difference between a "public" header in <module>/inc and a private one in <module>/src/somewhere/inc . And since the script searches recursively, this apparently helps to find even more headers for lower pch levels. Change-Id: I8483d0aa5b4fea5a59107c20a8aa5f1ef694af0a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87799 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-31clang-tidy modernize-concat-nested-namespaceNoel Grandin
Change-Id: Iab35a8b85b3ba1df791c774f40b037f9420a071a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86708 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-28remove some unused local varsNoel Grandin
found by my new aggressive unused var plugin. these are unused return values from function calls Change-Id: I3359c583f535828f192cb833762dfedc008d82f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87439 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-27tdf#124176: Use pragma once instead of include guardsAleyna Doğrucan
Change-Id: Ib0708c72fff342c25f79662cc3f4bbbfdfe0574a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86230 Tested-by: Jenkins Reviewed-by: Muhammet Kara <muhammet.kara@collabora.com>
2020-01-27tdf#124176:Use pragma once instead of include guardsayhanyalcinsoy
Change-Id: Ie00f05a3661a9fd6159c424e01f11e7bb1ea45fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85640 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2020-01-24loplugin:makeshared in basctl..canvasNoel Grandin
Change-Id: I1461da594db222abbaeccfb636194b9790f5dbe8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87271 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-22tdf#42949 Fix IWYU warnings in basctl/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Id956a2aaffb7ac8787847eedc4860bf9f4b70184 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86943 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-01-14tdf#129360: don't try to use uninitialized objectsMike Kaganski
And also don't forget to re-initialize member list of watch item. Another old bug masked by hacks removed in commit 62f3f3d92aa204eaaa063b30d7ade44df501b997. E.g., previously in code Type t1 var1 var2 End Type Type t2 var1 var2 var3 End Type Sub test Dim v1 As t1, v2 As t2, v v = v1 v = v2 End Sub breaking on line 'v = v1', expanding v in Watch, and stepping to next line, didn't update the children count. After the change, this surfaced, and now fixed. Change-Id: Ia47f5363a2fc62042701ff14d084870d1cced392 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86792 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-01-13tdf#129360: fix old unsigned underflowMike Kaganski
... discovered thanks to 62f3f3d92aa204eaaa063b30d7ade44df501b997: properties count may be 0, and unconditionally subtracting 3 from that will give a big number. Previously this was masked by a "Very Hot Fix" in SbxArray::GetRef that was dropped in the said commit. This unifies property count correction in the two places that use it: in WatchTreeListBox::RequestingChildren, where it was correct, and in WatchTreeListBox::UpdateWatches, where underflow happened. Change-Id: Ie980bc9571b2555cc2f643e770d824d5e2eb3731 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86700 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-01-10use more std::make_sharedNoel Grandin
found using 'git grep', I tried using clang-tidy, but it only successfully found a tiny fraction of these Change-Id: I61c7d85105ff7a911722750e759d6641d578da33 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86526 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-07tdf#124176: Use pragma once instead of include guardsAleyna Doğrucan
Change-Id: Ib2c93eb61d8d4c944a1b7de074fd0e9e48715ca4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86232 Tested-by: Jenkins Reviewed-by: Muhammet Kara <muhammet.kara@collabora.com>
2020-01-01Removed executable permission on fileAndrea Gelmini
Change-Id: Id84b58da363210a3ff54aacebfcfc5c3ead3f5be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86085 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2020-01-01tdf#126506 - Adjusted height margin of the tab barU-DESKTOP-8OSNV7R\DrRobotto
Adjusted the height margin of the tab bar in the Basic IDE in order to reflect the new look of the TabBar from tdf#124572. Change-Id: I4fadec983405b05c7330f762f4ed2e12d3a40d27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86048 Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Tested-by: Jenkins
2019-12-26use more TOOLS_WARN_EXCEPTIONNoel Grandin
so we get more useful log messages when stuff goes wrong Change-Id: Ia55db7ab1a4d79b0f281673fbbb06c61745fa89e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85829 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-18sal_Char->char in avmedia..basicNoel Grandin
Change-Id: Ied1331d979539ef1183da64c55351b57d24f4a4f Reviewed-on: https://gerrit.libreoffice.org/85371 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-17make approximate_char_width private and use approximate_digit_widthCaolán McNamara
Change-Id: I063cb5b9823d374014fd2c8129eba53384b96870 Reviewed-on: https://gerrit.libreoffice.org/85273 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-12use covariant return type for SfxPoolItem::CloneCaolán McNamara
and can then remove some casting Change-Id: Id821c32ca2cbcdb7f57ef7a5fa1960042e630ffc Reviewed-on: https://gerrit.libreoffice.org/85022 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-12Remove some redundant user-provided dtorsStephan Bergmann
...which silences various -Wdeprecated-copy-dtor warnings from Clang 10 trunk about copy functions being implicitly defined as non-deleted even though the class has a user-declared dtor Change-Id: I3409d403c3c709de4ad94eccbc2d7869e41847cc Reviewed-on: https://gerrit.libreoffice.org/85032 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-09GetSource32 and GetSource are identicalMike Kaganski
Change-Id: Ia7c6687586b5a37b7556f1bae9ffd5b5b954db47 Reviewed-on: https://gerrit.libreoffice.org/84747 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-09SbxArray: drop 16-bit indicesMike Kaganski
Change-Id: I43b478187636b9bb53fdf7ab938436ae364bd7a7 Reviewed-on: https://gerrit.libreoffice.org/84733 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-12-09weld Property BrowserCaolán McNamara
Replaced the odd HyperlinkField Edit whose text can be clicked on to activate listeners, with an ordinary Edit and a Button beside it which can be clicked instead to do that. I couldn't find a real world use of this HyperlinkField in the forms or control properties, nor in casual experimentation in the sidebar in the basicide dialog editor. Also replaced the other strange Edit-alike TextView with a real Edit entry and a dropdown which can be used to support entry of multi-line labels Change-Id: Iad5265e404f6de14c8e760d617dbad49cd6ddead Reviewed-on: https://gerrit.libreoffice.org/82213 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-12-04remove some unnecessary includes and update pchesCaolán McNamara
Change-Id: Ieee11f2ea3c5c18a84316a8b7c39a261afd720ed Reviewed-on: https://gerrit.libreoffice.org/84308 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
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-01boost::optional: replace uses of get_value_or with value_orStephan Bergmann
...in preparation for wholesale replacement of boost::optional with o3tl::optional, which will be an alias for either std::optional or boost::optional, and std::optional only has value_or. boost::optional::value_or was added with <https://github.com/boostorg/optional/ commit/3984c9f9a157ef116cea69bc8bb20f433320eb61> "Added function value_or()", which according to git-describe first appeared in tag boost-1.56.0. We appear to have no strict Boost baseline (the closest we get is with > [AC_MSG_ERROR(boost/spirit/include/classic_core.hpp not found. install boost >= 1.36)] in configure.ac), and at least CentOS 7 TDF machine tb76 only has boost-devel-1.53.0-27.el7.x86_64. However, any environment using Xcode < 10 that needs to make o3tl::optional fall back to boost::optional should use --without-system-boost, and external/boost is currently at 1.69.0, so should be safe. ATTENTION: In isolation, this commit will break in any environment that uses Boost older than 1.56.0. It requires the following commit introducing o3tl::optional. (But doing these changes in individual commits was deemed more valuable than supporting a hypothetical future git-bisect against an old Boost.) Change-Id: Ib31affa3eebf0d0029d8620dc6abb7a60f6c7629 Reviewed-on: https://gerrit.libreoffice.org/84127 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-30Rewrite uses of boost::optionalStephan Bergmann
...to only use functions that are also available for std::optional (in preparation for changing from boost::optional to std::optional): * uses of get are replaced with operator * or operator -> * uses of is_initialized are replaced with operator bool * uses of reset with an argument are replace with operator = (All of the replacements are also available for boost::optional "since forever", so this change should not break builds against old --with-system-boost. An alternative replacement for is_initialized would have been has_value, but that is only available since Boost 1.68.) Change-Id: I532687b6a5ee37dab28befb8e0eb05c22cbecf0f Reviewed-on: https://gerrit.libreoffice.org/84124 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-22Extend loplugin:external to warn about classesStephan Bergmann
...following up on 314f15bff08b76bf96acf99141776ef64d2f1355 "Extend loplugin:external to warn about enums". Cases where free functions were moved into an unnamed namespace along with a class, to not break ADL, are in: filter/source/svg/svgexport.cxx sc/source/filter/excel/xelink.cxx sc/source/filter/excel/xilink.cxx svx/source/sdr/contact/viewobjectcontactofunocontrol.cxx All other free functions mentioning moved classes appear to be harmless and not give rise to (silent, even) ADL breakage. (One remaining TODO in compilerplugins/clang/external.cxx is that derived classes are not covered by computeAffectedTypes, even though they could also be affected by ADL-breakage--- but don't seem to be in any acutal case across the code base.) For friend declarations using elaborate type specifiers, like class C1 {}; class C2 { friend class C1; }; * If C2 (but not C1) is moved into an unnamed namespace, the friend declaration must be changed to not use an elaborate type specifier (i.e., "friend C1;"; see C++17 [namespace.memdef]/3: "If the name in a friend declaration is neither qualified nor a template-id and the declaration is a function or an elaborated-type-specifier, the lookup to determine whether the entity has been previously declared shall not consider any scopes outside the innermost enclosing namespace.") * If C1 (but not C2) is moved into an unnamed namespace, the friend declaration must be changed too, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71882> "elaborated-type-specifier friend not looked up in unnamed namespace". Apart from that, to keep changes simple and mostly mechanical (which should help avoid regressions), out-of-line definitions of class members have been left in the enclosing (named) namespace. But explicit specializations of class templates had to be moved into the unnamed namespace to appease <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92598> "explicit specialization of template from unnamed namespace using unqualified-id in enclosing namespace". Also, accompanying declarations (of e.g. typedefs or static variables) that could arguably be moved into the unnamed namespace too have been left alone. And in some cases, mention of affected types in blacklists in other loplugins needed to be adapted. And sc/qa/unit/mark_test.cxx uses a hack of including other .cxx, one of which is sc/source/core/data/segmenttree.cxx where e.g. ScFlatUInt16SegmentsImpl is not moved into an unnamed namespace (because it is declared in sc/inc/segmenttree.hxx), but its base ScFlatSegmentsImpl is. GCC warns about such combinations with enabled-by-default -Wsubobject-linkage, but "The compiler doesn’t give this warning for types defined in the main .C file, as those are unlikely to have multiple definitions." (<https://gcc.gnu.org/onlinedocs/gcc-9.2.0/gcc/Warning-Options.html>) The warned-about classes also don't have multiple definitions in the given test, so disable the warning when including the .cxx. Change-Id: Ib694094c0d8168be68f8fe90dfd0acbb66a3f1e4 Reviewed-on: https://gerrit.libreoffice.org/83239 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-20Resolves: tdf#128900 can't edit initial macro with empty user profileCaolán McNamara
Change-Id: I5e28a4253b755fc3f5ed7c02c99c2611513e5bd8 Reviewed-on: https://gerrit.libreoffice.org/83282 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-18cid#1421106 Useless callCaolán McNamara
add annotation Change-Id: I9e0f67fc14bc15a011faeb75264f64930a0c3065 Reviewed-on: https://gerrit.libreoffice.org/83063 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-17Extend loplugin:external to warn about enumsStephan Bergmann
To mitigate the dangers of silently breaking ADL when moving enums into unnamed namespaces (see the commit message of 206b5b2661be37efdff3c6aedb6f248c4636be79 "New loplugin:external"), note all functions that are affected. (The plan is to extend loplugin:external further to also warn about classes and class templates, and the code to identify affected functions already takes that into account, so some parts of that code are not actually relevant for enums.) But it appears that none of the functions that are actually affected by the changes in this commit relied on being found through ADL, so no adaptions were necessary for them. (clang::DeclContext::collectAllContexts is non-const, which recursively means that External's Visit... functions must take non-const Decl*. Which required compilerplugins/clang/sharedvisitor/analyzer.cxx to be generalized to support such Visit... functions with non-const Decl* parameters.) Change-Id: Ia215291402bf850d43defdab3cff4db5b270d1bd Reviewed-on: https://gerrit.libreoffice.org/83001 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-12Fix macro disabling in Basic IDESamuel Mehrbrodt
After 8d69ca60f3c8f53699986f924291a2acda5694a1 macros were always disabled as ScriptDocument::allowMacros always returned false when called from non-document context. Change-Id: Ibef4c7d561f4ee01cd44f5327e4ab948282bb07d Reviewed-on: https://gerrit.libreoffice.org/82444 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2019-11-09tdf#80731: Only check closing parenthesis when in IDEMike Kaganski
This reinstates the fix by Pierre Lepage, which was reverted in 351dead74b4c213b13102f81b5ae9bb47ad8ca39, and makes sure it only has effect when the compilation is started from IDE. The idea is that the IDE is used primarily for development, and that's a good opportunity to detect any error in the code. When the code is compiled from outside of the IDE (like running an extension), the error is tolerated to allow users run the legacy code having this error. Hopefully this is enough for tdf#106529. This re-uses comphelper's NoEnableJavaInteractionContext class, which is converted into general-purpose SetFlagContext class to avoid code duplication. Change-Id: Ie290019cb190b8d1d590699ec13bd63eac478d09 Reviewed-on: https://gerrit.libreoffice.org/81616 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>