summaryrefslogtreecommitdiff
path: root/include/svl
AgeCommit message (Collapse)Author
2019-12-23sal_Char->char in svtools..svlNoel Grandin
Change-Id: Ideb61209e8795865bce6e0b1d667b34f8a8db4d9 Reviewed-on: https://gerrit.libreoffice.org/85713 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-12-17Elide use of rtl_Instance (which is obsoleted by C++11 thread-safe statics)Stephan Bergmann
Change-Id: Ic7b78dffb2f8d1908f3263d88c5912aec2ebce8b Reviewed-on: https://gerrit.libreoffice.org/85263 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-13loplugin:unusedmethodsNoel Grandin
Change-Id: I8ad75d1251df4d6f8097aaa68e4ec92331e38ad4 Reviewed-on: https://gerrit.libreoffice.org/85077 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
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-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-02tdf#42949 Replace property_tre/ptree.hpp with fw declaration headerGabor Kelemen
Similarly to commit fb1b461208e7a2760fa1c018db08606a9b3e435d replace new instances of boost/property_tree/ptree.hpp with forward declaration only header, as suggested by IWYU This reduces includebloat from 28.5G to 22.6G and cold clean build time from real 68m54,192s user 947m28,508s to real 62m50,689s user 861m33,131s on my machine. Change-Id: I5530f1b4b1a46d9159c752ad5af9a408215baf40 Reviewed-on: https://gerrit.libreoffice.org/84175 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-11-28jsdialog: dump Sfx_Int__Items to JSONSzymon Kłos
Change-Id: I6a1d2847251b90f86457b552e5354f5e179e1627 Reviewed-on: https://gerrit.libreoffice.org/83977 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2019-11-28jsdialogs: send graphic items updatesSzymon Kłos
Change-Id: I57d05726f80115b92e7599a7d033bf1ea8f79695 Reviewed-on: https://gerrit.libreoffice.org/83955 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2019-11-27jsdialogs: dumpAsJSON for SfxItems with FillGradient exampleSzymon Kłos
Change-Id: I1b9303af6f52ad071074200bb630c587c8f611c1 Reviewed-on: https://gerrit.libreoffice.org/83875 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2019-11-25Remove some redundantly user-declared copy ctors and assignment opsStephan Bergmann
...that trigger -Werror,-Wdeprecated-copy ("definition of implicit copy {constructor, assignment operator} for ... is deprecated beause it has a user-declared copy {assignment operator, constructor}") new in recent Clang 10 trunk (and which apparently warns about more cases then its GCC counterpart, for which we already adapted the code in the past, see e.g. the various "-Werror=deprecated-copy (GCC trunk towards GCC 9)" commits) Change-Id: Ie37bd820e6c0c05c74e1a862bb1d4ead5fb7cc9c Reviewed-on: https://gerrit.libreoffice.org/83698 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-11-20tdf#128557 Add tooltips to styles listsJim Raykowski
Change-Id: Ia8f00cd882c1c8c239b95de8e917ff317a6485e8 Reviewed-on: https://gerrit.libreoffice.org/83152 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.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-10-30loplugin:finalclasses sot..svlNoel Grandin
Change-Id: I0814e98c82822752dd4410d595d35acb67d5a1d1 Reviewed-on: https://gerrit.libreoffice.org/81703 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-19Resolves: tdf#76441 accept two digit groups MM:SS input if formatted as suchEike Rathke
... instead of producing the usual HH:MM:00 Works on the formats MM:SS [MM]:SS MM:SS.00 [MM]:SS.00 and even MM:[SS] MM:[SS].00 although these two don't make much sense except of displaying leading 00:, but were always accepted. Change-Id: I1dbe147cafaa934efa1d86b187eaab61f0981fca Reviewed-on: https://gerrit.libreoffice.org/81117 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-10-08loplugin:redundantpointerops simplify *p.get()Noel Grandin
Change-Id: I12517651fb3f777fd08e384992bb3e84b340ad85 Reviewed-on: https://gerrit.libreoffice.org/80382 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-05move file picker only code to fpickerCaolán McNamara
Change-Id: I47cc2cb7db396a06a2abeffe4a5d40a039f21c58 Reviewed-on: https://gerrit.libreoffice.org/80222 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-05simplify SfxAllEnumItemNoel Grandin
It is just a data carrier for an array of values for SID_ATTR_PATHNAME, it does not need associated enum logic. Change-Id: I547cd5580d02eb9c261feeb3545e31910a4ed644 Reviewed-on: https://gerrit.libreoffice.org/80253 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-03Simplify a bit SfxAllEnumItem (svl)Julien Nabet
Make private GetValueByPos which is only used in svl/source/items/aeitem.cxx Remove "RemoveValue" method which is only used in InsertValue( sal_uInt16 nValue, const OUString &rValue ) It allows to call once "GetPosByValue" and the assert is useless since we're in the case: "else if ( nPos != USHRT_MAX )" I think we can more optimize by replacing vector by another container for pValues (type "SfxAllEnumValueArr"). Indeed, we insert and remove a lot in pValues in a specific position. Vector is not the best container for this There's also still the part "//FIXME: Optimisation: use binary search or SortArray" in GetPosByValue_ method Change-Id: I0cafea70e9d0361ef9a7b345ff770a9b888ef85b Reviewed-on: https://gerrit.libreoffice.org/80089 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-10-02Avoid std::vector inheritance for SfxAllEnumValueArrJulien Nabet
No need to inherit, just create a typedef Change-Id: Ifeabb90e640e10e590f793716c022f91850ae8b9 Reviewed-on: https://gerrit.libreoffice.org/79991 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-01loplugin:returnconstval (clang-cl)Stephan Bergmann
Change-Id: Ib3c3e32bd998ac7e29f45cc4ce511a863096c3b5 Reviewed-on: https://gerrit.libreoffice.org/79958 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-01Drop SfxItemIter::FirstItemMike Kaganski
It is always used right after the iterator is created, where simple GetCurItem gives the same value without reseting the position. Change-Id: I871dc7989b79e13f06436ef7928692645b5209f6 Reviewed-on: https://gerrit.libreoffice.org/79903 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-10-01Avoid redundant IsAtEnd: NextItem returns nullptr iif iterator is at endMike Kaganski
To keep the check efficient, split NextItem to inline and Impl parts Change-Id: Id5877a3c5bed73aac9c39c655b106a715cf888ea Reviewed-on: https://gerrit.libreoffice.org/79894 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-09-27loplugin:virtualdead in svlNoel Grandin
Change-Id: Idbb5d0a633f12d5813561a2ad8aed46ec6d67c48 Reviewed-on: https://gerrit.libreoffice.org/79639 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-09-16dont define PROPERTY_NONE multiple timesBjoern Michaelsen
Change-Id: Ia4af4a281058131d41c2a65abbce58bf5f7a38b6 Reviewed-on: https://gerrit.libreoffice.org/78866 Tested-by: Jenkins Reviewed-by: Björn Michaelsen <bjoern.michaelsen@libreoffice.org>
2019-09-06tdf#39593 use isUnoTunnelIdArkadiy Illarionov
Adapt getUnoTunnelId methods where required: rename or make public. Change-Id: I0fd2120bf9f0ff1aa690329a65ff64a154c89315 Reviewed-on: https://gerrit.libreoffice.org/78680 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-08-24loplugin:returnconstval in svlNoel Grandin
Change-Id: I55371fde92204e6405e74fb8deecbaf14707a312 Reviewed-on: https://gerrit.libreoffice.org/78053 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-08-23Mark move ctors/assignments noexceptMike Kaganski
This should enable using move semantics where possible e.g. in standard containers. According to https://en.cppreference.com/w/cpp/language/move_constructor: To make strong exception guarantee possible, user-defined move constructors should not throw exceptions. For example, std::vector relies on std::move_if_noexcept to choose between move and copy when the elements need to be relocated. Change-Id: I6e1e1cdd5cd430b139ffa2fa7031fb0bb625decb Reviewed-on: https://gerrit.libreoffice.org/77957 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2019-08-22loplugin:constmethod in svlNoel Grandin
Change-Id: I9c16689dfeef11b77504106d22aceaaf9ec3df7d Reviewed-on: https://gerrit.libreoffice.org/77945 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-08-20Resolves: tdf#122110 convert condition decimal separator to target localeEike Rathke
Otherwise re-scanning the format code in the target locale failed. Change-Id: Ia4face1b5630c197f68b1f521e62b163550301e6 Reviewed-on: https://gerrit.libreoffice.org/77852 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-08-19Resolves: tdf#72040 add predefined ISO 8601 date+time format with "T"Eike Rathke
Still missing is selecting the format if such input is detected, but if applied it is preserved as edit format when editing the value. Change-Id: Ic36a643bb90ac897a303d5d59782aa4b297a56ea Reviewed-on: https://gerrit.libreoffice.org/77732 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-08-14svl: update grabbbagitem docMiklos Vajna
Commit 5261417cbb3051b812164838d19c0f748573df45 (weld SpellDialog, 2019-06-14) started to use this for purposes outside OOXML interop, so the doc was misleading. Change-Id: Iece7b5b084585e486854d10e98bccbbf0451a6dd Reviewed-on: https://gerrit.libreoffice.org/77431 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-07-25QRCode Dialog Box featureShubham Goyal
The patch handles the created QR code as a Customized Shape (Graphic Object) Change-Id: I1cee6f0e7fac585de880a9ac34e3bc441a4b7390 Reviewed-on: https://gerrit.libreoffice.org/74167 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2019-07-20Fix typoAndrea Gelmini
Change-Id: I4b5bc31e2513a36069643e8b302ed756985ed8b2 Reviewed-on: https://gerrit.libreoffice.org/75985 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-06-18loplugin:passstuffbyrefNoel Grandin
Change-Id: Icb7c22cf4ac95eab54d04e79312fb471ca27bceb Reviewed-on: https://gerrit.libreoffice.org/74246 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-06-07tdf#42949 Fix IWYU warnings in svl/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Except source/svdde/* which is WIN-specific Also recheck include/svl Change-Id: I32d3bcb6b14665c56c07a2f10526329b08c64cbe Reviewed-on: https://gerrit.libreoffice.org/73630 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-06-03tdf#39593 use UNO3_GETIMPLEMENTATION* macrosArkadiy Illarionov
Change-Id: I4e9af3b43a5baf19e100f42b3f37a2ade89ada5d Reviewed-on: https://gerrit.libreoffice.org/73320 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-16tdf#125254 Performance: A spreadsheet opens too slow, part1Noel Grandin
This takes the opening time from 55s to 48s for me. Change-Id: Ia60fff33e9948e0bd6906c82b48aa30f8b2551bb Reviewed-on: https://gerrit.libreoffice.org/72394 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-10Apply duration format for such newly entered formula cellsEike Rathke
... and the cell didn't have a number format applied already, [HH]:MM:SS instead of wall clock time format HH:MM:SS which comes to a surprise anyway if the result is >=24h. Related to tdf#125099 Change-Id: I6c19a86177f8714ac588d6798acf86e247a79b26 Reviewed-on: https://gerrit.libreoffice.org/72131 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-05-09loplugin:unusedmethodsNoel Grandin
Change-Id: I7b4d2e5e611935284e2902b0089950768dfb7717 Reviewed-on: https://gerrit.libreoffice.org/72036 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-09avoid copying when placing items into SfxItemSetNoel Grandin
Change-Id: I05c627f590e7794c1ba11b66021dc30aa3285eb0 Reviewed-on: https://gerrit.libreoffice.org/71941 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-09move constructor for SfxItemSetNoel Grandin
Change-Id: If7f51a657606da8aea4bcf01f13468c6ac2086a8 Reviewed-on: https://gerrit.libreoffice.org/71901 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-08Fix typed flags bitmask, tdf#125099 follow-upEike Rathke
Change-Id: I25327cfcafc9e1f2e88b388677853c638dd9b0e6 Reviewed-on: https://gerrit.libreoffice.org/71946 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-05-08Resolves: tdf#125099 round duration results in interpreter alreadyEike Rathke
So wall clock time formats less likely display a one-off value, duration formats are too rarely used if the expected duration is less than 24 hours. Change-Id: I9b0872420699b17e3ed3f20993f8cfe02761f862 Reviewed-on: https://gerrit.libreoffice.org/71909 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>
2019-05-07tdf#63640 FILEOPEN/FILESAVE: particular .odt loads/saves very slow, part2Noel Grandin
Use the existing sorting functionality in SfxItemPool and extend it to search for NameOrIndex item in SvxUnoNameItemTable This is a little tricky in that we are defining only a partial ordering over the CntUnencodedStringItem (and their subclasses) items. Partial because I can only use the part of the item that is not randomly mutated by various code, which is why the other fields in the subclasses are mostly out of bounds. I had to exclude FillBitmapItem because it triggers a unit test failure and I cannot figure out why that specific item does not play nice with this optimisation. After this optimisation, the load time goes from 3.6s to 2s on my machine. Change-Id: I52d58c68db2536b69a7b0a9611a2b4c703bc4928 Reviewed-on: https://gerrit.libreoffice.org/71461 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-29tdf#63640 FILEOPEN/FILESAVE: particular .odt loads/saves very slow, part1Noel Grandin
Make CntUnencodedStringItem sortable, implementing operator<. This takes the load time from 4s to 3.3s Change-Id: I532cdf65149a733d41d2caf367675800d2ba4d41 Reviewed-on: https://gerrit.libreoffice.org/71460 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-26Removed executions flags on source filesAndrea Gelmini
Change-Id: I165d417a8e28d5732945722158b83e2ac5edb402 Reviewed-on: https://gerrit.libreoffice.org/71388 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-04-25WIP: Further preparations for deeper Item changesArmin Le Grand
(1) Migrated all still existing binary load/save stuff in SfxPoolItem to legacy files. Isolated from Item implementations. Adapted all usages. No more methods Create/Store needed, also GetVersion removed (2) Removed operator= for SfxPoolItem. Adapted all usages. Goal ist to handle Items more as Objects ('Object-Oriented') in the sense to move/handle instances, not to copy one instance over another one (which is more and more problematic with hard to copy content as UNO API stuff or similar). This lead to much more usages of std::shared_ptr which correlates well with future plans fr Items (see dev branch). Next logic step will be to also remove copy constructor Linux build and corrections done Fixed Writer test and removed unused defines Fixed another unused m,acro Started to unify the AutoFormat stuff Changes to OUString constructor usages, tests completely No idea why, but SfxStringItem constructor which takes a OUString& now insists of not getting ::OUString's handed in - changed all 'SfxStringItem.*OUString.*".*"' accordingly Change-Id: Ibed7358b18fb019994a7490332b9d797a6694c29 Reviewed-on: https://gerrit.libreoffice.org/71075 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2019-04-24simplify call sites of SfxItemPool::PutNoel Grandin
use template to make return type match input type, so we don't need to cast at the call sites Change-Id: I1e65f362c67f74c9a230cdbc1db12545b28eb499 Reviewed-on: https://gerrit.libreoffice.org/71216 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-23tdf#113266 slow opening XLS with 45 MB drawingNoel Grandin
Some hot-spots around dynamic_cast of SdrHint, so avoid that by creating special SfxHintId::ThisIsAnSdrHint The most common CPU hot-spot was in SvxShape::Notify, the other changes are just for consistency. Also remove some dead code in ScShapeChildren, the Notify method was doing nothing useful. Change-Id: I696db1fcafc09bb10bf23ac673de292746141491 Reviewed-on: https://gerrit.libreoffice.org/71108 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-21tdf#81765 slow loading of .ods with >1000 of conditional formats, part 2Noel Grandin
This takes the loading time from 15s to 14s. Reduce unnecessary allocation/copying by passing down ownership of the newly created ScPatternAttr to the item pool Change-Id: Iec38bbff572d10ff8d86f5e65fbe9a96b6a5a706 Reviewed-on: https://gerrit.libreoffice.org/71010 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>