summaryrefslogtreecommitdiff
path: root/sc
AgeCommit message (Collapse)Author
2019-03-06remove some unnecessary typedef struct... sugarNoel Grandin
Change-Id: I1576282b0a0a3af8ae14c04725d9c4900073f2c4 Reviewed-on: https://gerrit.libreoffice.org/68758 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-06loplugin:unnecessaryparen improve member expressionNoel Grandin
Change-Id: I304621018cb1e2a47e478e86df4229bcf2176741 Reviewed-on: https://gerrit.libreoffice.org/68757 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-06tdf#45904 Move XPropertySet Java tests to C++Jens Carl
Move XPropertySet Java tests to C++ for ScDataPilotFieldObj. Change-Id: I9fa5d153cced1aae8892d2422025dfcdcda73c69 Reviewed-on: https://gerrit.libreoffice.org/68782 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-06tdf#45904 Move XNamed Java tests to C++Jens Carl
Move XNamed Java tests to C++ for ScDataPilotFieldObj. Change-Id: Ieecd8799f56dcfa9279d4d523d470a62d9aed203 Reviewed-on: https://gerrit.libreoffice.org/68781 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-06Remove unnecessary calls to Reference::is() after an UNO_QUERY_THROWJens Carl
Change-Id: Icb5ab21168e91951a81c09752e7b53e11813aa1b Reviewed-on: https://gerrit.libreoffice.org/68780 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-06do not access uninitialized values when printing (tdf#121439)Luboš Luňák
The assert in the bugreport is triggered by ScPrintFunc::CalcPages() passing uninitialized values of nEndRow (and others). These variables apparently get initialized only by constructors that take ScPrintState. These ctors also set (the somewhat poorly named) bState and the call to CalcPages() is guarded by this. However, GetPrintState() will simply create ScPrintState filled with these uninitialized values and later on this will be used with these ctors, so bState will be set, but nEndRow will be bogus. Although 5217a2a0bf27e496cc429ee45dff7c239b466ae6 introduced tdf#121439, this strange bState logic and unitialized variables has been these since the initial commit, and the code doesn't take any precautions to check whether the values are valid or not, so I assume this always was just lucky enough to work and 5217a2a0bf finally triggered a problem. Given that it's rather unclear to me how this is supposed to work properly, just add an extra flag to both ScPrintFunc and ScPrintState marking whether the values are set or not and make CalcPages() depends on this flag instead. Change-Id: I0620de6562865c24f5a0edca2566b01546bf2e2b Reviewed-on: https://gerrit.libreoffice.org/68739 Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Tested-by: Jenkins
2019-03-05Use already available index in following getToken callMatteo Casalin
Change-Id: I1617af942d59c59039e97400a8c39bbc36c3bceb Reviewed-on: https://gerrit.libreoffice.org/68124 Tested-by: Jenkins Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
2019-03-05Use indexed getToken()Matteo Casalin
Change-Id: I3f34ccb4253c587088f621f914b315e56f96008f Reviewed-on: https://gerrit.libreoffice.org/68123 Tested-by: Jenkins Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
2019-03-05Simplify ShapeAnchor::importVmlAnchorMatteo Casalin
Change-Id: Ibee7914a0c5027b4679163e6a5108f646ad66546 Reviewed-on: https://gerrit.libreoffice.org/68122 Tested-by: Jenkins Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
2019-03-05Index returned by getToken is always lower than string lengthMatteo Casalin
Change-Id: I7de7a3eaf7b4ae6ef97b0c23fb755ad108db19e6 Reviewed-on: https://gerrit.libreoffice.org/68118 Tested-by: Jenkins Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
2019-03-05Index returned by getToken is always lower than string lengthMatteo Casalin
Also take care of handling possibly empty strings, for which the initial 0 index would fail the comparison. Change-Id: I280fac697554f2a4513a641ac258b1d2baf803f4 Reviewed-on: https://gerrit.libreoffice.org/68117 Tested-by: Jenkins Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
2019-03-05Index is not needed for single getToken callMatteo Casalin
Change-Id: I46d466c0526797e5c246dea3c68a6b2f865964e0 Reviewed-on: https://gerrit.libreoffice.org/68116 Tested-by: Jenkins Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
2019-03-05Introduce o3tl::underlyingEnumValueStephan Bergmann
Change-Id: I6554eb86326159b0da707539f45c411f61c0f3de Reviewed-on: https://gerrit.libreoffice.org/68761 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-03-05fix ScDetOpList::operator==Noel Grandin
should be comparing the values of the elements, not the pointers. Regression from commit 927447356fb7025d2b61073f525adc24643c7925 Date: Sat Sep 12 16:49:29 2015 -0600 replace boost::ptr_container with std::container<std::unique_ptr> noticed while doing some other plugin work Change-Id: I96230e52571e9a96e1c96f53f61bbc5afe902b31 Reviewed-on: https://gerrit.libreoffice.org/68738 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-05Add missing DoCloseAurimas Fišeras
Change-Id: I7c6f055a93ece2c80eb0f9c4974829d479d1edca Signed-off-by: Aurimas Fišeras <aurimas@members.fsf.org> Reviewed-on: https://gerrit.libreoffice.org/68617 Tested-by: Jenkins Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2019-03-05Add missing DoCloseAurimas Fišeras
Change-Id: Ie315d490da6d8c1f62edc54d662e169fa827f610 Signed-off-by: Aurimas Fišeras <aurimas@members.fsf.org> Reviewed-on: https://gerrit.libreoffice.org/68618 Tested-by: Jenkins Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2019-03-05re-land "new loplugin typedefparam""Noel Grandin
This reverts commit c9bb48386bad7d2a40e6958883328145ae439cad, and adds a bunch more fixes. Change-Id: Ib584d302a73125528eba85fa1e722cb6fc41538a Reviewed-on: https://gerrit.libreoffice.org/68680 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-04Rename SVBT16ToShort to SVBT16ToUInt16Stephan Bergmann
For one, it that way matches reality (as it returns sal_uInt16, not short or sal_Int16) and its SVBT32ToUInt32 counterpart. For another, I plan a follow-up commit of introducing an additional SVBT16ToInt16 to explicitly return sal_Int16. Change-Id: I28915e6593ccdca0c11d7b2fa593e96e359a9532 Reviewed-on: https://gerrit.libreoffice.org/68686 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-03-04Fix some UITests to use copies of SRCDIR documentsStephan Bergmann
...so that running those tests with a read-only SRCDIR succeeds. (Needed to move sc/qa/uitest/calc_tests/data/tdf76731.ods to fit the changes made to sc/UITest_statistics.mk; all documents used by that test need to be at the same place.) Change-Id: I5c4a28539b9bacde3ca8983502ceed8e4688c787 Reviewed-on: https://gerrit.libreoffice.org/68683 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-03-04tdf#121040 sc: use pixel-per-twips in X for horizontal value conversionSerge Krot
Change-Id: I25bc3b3ec42ef5b026c2cd9572e8ff1863ed8c2d Reviewed-on: https://gerrit.libreoffice.org/68492 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2019-03-04Fix typo: KATAGANA -> KATAKANATakeshi Abe
No functional change offered, but this reduces some amount of confusion. Japanese word "Katakana" ("kata" + "kana") does not undergo Rendaku [1] while "Hiragana" ("hira" + "kana") does. [1] https://en.wikipedia.org/wiki/Rendaku Change-Id: I07824147d72397c312a0774eca1fdcc7549abc59 Reviewed-on: https://gerrit.libreoffice.org/68661 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-03-04simplify UNO getTypes methodsNoel Grandin
Change-Id: Ia8b07edec54527fb4904536fabb03a18e8452550 Reviewed-on: https://gerrit.libreoffice.org/68659 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-04Revert "new loplugin typedefparam"Noel Grandin
This reverts commit 9865440d217d975206a3f91612f0666312bc8fd8. This is not ready to land yet, seems like the latest update of the logic reveals a bunch more places I need to fix before it can land.
2019-03-04new loplugin typedefparamNoel Grandin
verify that parameters use the exact same typedef-names (if any) in definition and declaration Change-Id: I55d2817f599b0253904dce2d35a1a93967e15a77 Reviewed-on: https://gerrit.libreoffice.org/68439 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-03weld SvxMacroAssignDlgCaolán McNamara
and SvxEventConfigPage, SvxMacroTabPage_, SvxMacroTabPage Change-Id: I98a2e71794f098015927dc7cd7ec4e258f56e703 Reviewed-on: https://gerrit.libreoffice.org/68649 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-03-03Add XServiceInfo tests to ScAnnontationObjJens Carl
Change-Id: I866b057f768b29f14f7eaa75bc8db3591ddca836 Reviewed-on: https://gerrit.libreoffice.org/68635 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-03tdf#45904 Move XTextRange Java tests to C++Jens Carl
Move XTextRange Java tests to C++ for ScAnnotationObj (also fixes i109517). Change-Id: Id7e45d9f1159b45fb267cb28dc875b62eae12e24 Reviewed-on: https://gerrit.libreoffice.org/68634 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-03tdf#45904 Move XSimpleText Java tests to C++Jens Carl
Move XSimpleText Java tests to C++ for ScAnnotationObj (this also fixes i109517). Change-Id: Ieed0c94ed7a426c921c099a1edb520cbfd830656 Reviewed-on: https://gerrit.libreoffice.org/68632 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-03More test cases for FOURIER formulaDennis Francis
This adds test cases for N(data length) for non powers of 2. This tests real and complex input cases. It also tests polar and non-polar output case. The reference(expected) numbers were obtained using fft() of Matlab R2018b. Finally the inverse transform is compared is compared with original inputs for correctness. Change-Id: Ibc13fb5ce900facd3fb0896e85a4e0d1694ad7f3 Reviewed-on: https://gerrit.libreoffice.org/68640 Tested-by: Jenkins Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2019-03-03FOURIER : use Bluestein's algorithm for N != 2^kDennis Francis
For inputs that are not an even power of 2, use Bluestein's algorithm[1] to match the output of fft()/ifft() in Octave/Matlab() in those cases. This algorithm is slower than radix-2 FFT algorithm but still has the asymptotic time complexity of O(N lg(N)). This patch also introduces considerable speedup in case of real valued inputs. DFT of a real valued input of length N can be computed using any DFT algorithm with a N/2 length complex valued input, provided we do some pre and post processing[2]. All implementations in this patch are written from scratch using the below theory references. [1] https://en.wikipedia.org/wiki/Chirp_Z-transform#Bluestein.27s_algorithm [2] Jones, K., 2010. Fast Solutions to Real-Data Discrete Fourier Transform. In The Regularized Fast Hartley Transform (pp. 15-25). Springer, Dordrecht. --------------------------- Below are some perf measurements for various input cases :- Timing numbers are only for the DFT computation part and does not include the time for writing data to the spreadsheet model. We don't use threading yet, so these are numbers for just one cpu-core. Exact Powers of 2 ================= Real Input size,Time (ms) 32768,2 65536,4 262144,21 1048576,185 Complex Input size, Time(ms) 32768,2 65536,5 262144,30 1048576,400 Even non-powers of 2 : 2^k - 2 ================================ Real Input size,Time (ms) 32766,8 65534,20 262142,105 1048574,1440 Complex Input size, Time(ms) 32766,15 65534,36 262142,313 1048574,3332 Odd non-powers of 2 : 2^k - 1 ================================ Real Input size,Time (ms) 32767,16 65535,39 262143,313 1048575,2729 Complex Input size, Time(ms) 32767,16 65535,38 262143,309 1048575,2703 Change-Id: Iccc31455e526ee5e6d18c20812dfa53defcf869f Reviewed-on: https://gerrit.libreoffice.org/68639 Tested-by: Jenkins Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2019-03-02tdf#45904 Move XNameAccess Java tests to C++Jens Carl
Move XNameAccess Java tests to C++ for ScDataPilotItemsObj. Change-Id: Id8e83bb68408600f471148df7527467a371590fb Reviewed-on: https://gerrit.libreoffice.org/68611 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-02tdf#45904 Move XIndexAccess Java tests to C++Jens Carl
Move XIndexAccess Java tests to C++ for ScDataPilotItemsObj. Change-Id: I66888c4515e84cf0e8f051378616c0ecbf60c0e8 Reviewed-on: https://gerrit.libreoffice.org/68610 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-02tdf#45904 Move XEnumerationAccess Java test to C++Jens Carl
Move XEnumerationAccess Java test to C++ for ScDataPilotItemsObj. Change-Id: I6123692aee130f4c5bf326676ace2a6e7ac09405 Reviewed-on: https://gerrit.libreoffice.org/68609 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-02tdf#45904 Move XElementAccess Java tests to C++Jens Carl
Move XElementAccess Java tests to C++ for ScDataPilotItemsObj. Change-Id: Ideb56b3f24d9b6045f68d7e5e84ee9858b6df7bf Reviewed-on: https://gerrit.libreoffice.org/68608 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-02Add XServiceInfo tests to ScDataPilotItemsObjJens Carl
Change-Id: Ie6e6e0edf9815744fd8ba97e0259b409db4d8c75 Reviewed-on: https://gerrit.libreoffice.org/68607 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-01Add XServiceInfo tests to ScDataPilotFieldGroupItemObjJens Carl
Change-Id: I4be975c465b0a5427ab678eb58f9a1779ac6dd07 Reviewed-on: https://gerrit.libreoffice.org/68526 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-01do not call GetFormatTable() from GetNonThreadedContext() (tdf#121949)Luboš Luňák
ScDocument dtor calls ClearLookupCaches(), which calls GetNonThreadedContext(). But ScDocument instances used for copy&paste GetFormatTable() fails on null mxPoolHelper, because ScDocument ctor doesn't set it in such a case. So set up the pointer in ScInterpreterContext on demand only if actually needed. Change-Id: If3811da5bb00a2d7d404c089ee1bf46037a2cddb Reviewed-on: https://gerrit.libreoffice.org/68350 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2019-03-01tdf#45904 Move XNamed Java tests to C++Jens Carl
Move XNamed Java tests to C++ for ScDataPilotFieldGroupItemObj. Change-Id: I1070f99e2e1655f72c1a6ffaf3f61618b083140e Reviewed-on: https://gerrit.libreoffice.org/68525 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-01Rename ScDataPilotFieldGroupItemObj to ScDataPilotFieldGroupsObjJens Carl
Correct class name to mirror the name of object we are testing against. Change-Id: Id89f29843045182bc01d48e7368648ede886d963 Reviewed-on: https://gerrit.libreoffice.org/68524 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-03-01Add test XNameContainer::testRemoveByNameNoneExistingElementJens Carl
Add test XNameContainer::testRemoveByNameNoneExistingElement to get the same coverage as before when these case where split with commit 4b98337699e5e59a543d95c73ea7c64b3d9a1caf. Change-Id: I45ba5af4e2b3137d9379623556ce4129a860e696 Reviewed-on: https://gerrit.libreoffice.org/68477 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-02-28ocMatTrans with ForceArrayEike Rathke
Now that OOXML reveiled that the formula expression containing a TRANSPOSE() call shall be in array mode, the old comment about Excel not forcing array on the argument (in BIFF token class) makes sense. Use ForceArray and remove now moot comment. Change-Id: Iab2bced788de3429aab2bb7c3ca7f24d5dbf0340 Reviewed-on: https://gerrit.libreoffice.org/68509 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-02-28use the xmlTextWriterPtr typedef consistentlyNoel Grandin
this is the single biggest chunk of stuff my upcoming paramtypedef loplugin will warn about, so do it separately Change-Id: I412e69e76406d6d947101885d4cd92c65e021508 Reviewed-on: https://gerrit.libreoffice.org/68486 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-28simplify CreateColumnIfNotExistsNoel Grandin
if "if (aOldColSize==0)" check can never be hit since we pre-allocate these columns to some size. Also move the cold part of the function out-of-line, doesn't seem useful to have all of it in a header Change-Id: If8675ca17d70ee55dde8418ff75e2ddb3c931c58 Reviewed-on: https://gerrit.libreoffice.org/68506 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-28avoid std::out_of_range thrown by mdds (tdf#122643)Luboš Luňák
Calling GetLastDataRow/Pos() with MAXROW as the last row is apparently fine, but if that's an invalid row, but anything beyond that is not ok. ScDependantsCalculator::trimLength() may use such larger "last" row value because it works on a range of cells. Change-Id: I819a4d20a4765e23af6208df5f2e208ac44b694c Reviewed-on: https://gerrit.libreoffice.org/68349 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Reviewed-by: Kohei Yoshida <libreoffice@kohei.us>
2019-02-28missing includeStephan Bergmann
Change-Id: Icaad7f774ecc973114d7e569327dae3dcb1bbcc5
2019-02-28reintroduce ScCaptionPtrLuboš Luňák
This basically reverts b6b1ded0a0539e7be1b5338de378a3276a6ff445, since it introduces tdf#118707, and I cannot reproduce any of the original problems when reverting. The patch itself is technically correct, but the problem is in the Windows implementation of clipboard handling, which uses delayed processing of setting clipboard contents. This leads to previous clipboard contents being deleted too late, and with shared_ptr instances of SdrCaptionObj may get deleted after the related SdrModel has already been deleted. A proper fix would be to remove the stupid delayed processing from the clipboard code, but that's non-trivial. If that gets fixed, the change removing ScCaptionPtr may most probably be applied again. Change-Id: I29634847486aa955b20483c9eb38bba4fed87187 Reviewed-on: https://gerrit.libreoffice.org/67725 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2019-02-28remove some unused definesNoel Grandin
Change-Id: I5304e85cd3fd2edc48147f1297caa57417a3d038 Reviewed-on: https://gerrit.libreoffice.org/68496 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-28fix "doc will be saved" dialog messageNoel Grandin
looks like a copy/paste error in commit 942f05996bc287923cdbcae12c64e57adf8ec975 Author: Caolán McNamara <caolanm@redhat.com> convert remaining ErrorBox to weld::MessageDialog Change-Id: I52d38311b1e276fd799128e058ea0b9c902aef06 Reviewed-on: https://gerrit.libreoffice.org/68491 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-28remove some unused typedefsNoel Grandin
Change-Id: I7775a7d86e9641cd514e58f03d3727d2ad846120 Reviewed-on: https://gerrit.libreoffice.org/68485 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-27Related: tdf#122301 TRANSPOSE() with ForceArrayReturn on callerEike Rathke
As stated in ECMA-376-1:2016 OOXML 18.17.7.327 TRANSPOSE "The formula containing the call to TRANSPOSE shall be an array formula [...]" Similar to commit d0ded163d8e93dc5b10d7a7c9bdab1d0a6a50bac CommitDate: Wed Jan 16 11:17:14 2019 +0100 Related: tdf#122301 FREQUENCY() with ForceArrayReturn on caller Change-Id: I617bfcc0b8ecb244df3441ab885ec926efd77e3f Reviewed-on: https://gerrit.libreoffice.org/68436 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins