summaryrefslogtreecommitdiff
path: root/formula
AgeCommit message (Collapse)AuthorFilesLines
2019-11-22mark with overrideCaolán McNamara1-1/+1
Change-Id: Ia7e8093106136b54ea3908ebc355e01ade37ad36 Reviewed-on: https://gerrit.libreoffice.org/83483 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-11-19up/down in ArgEdit doesn't do anythingCaolán McNamara2-5/+10
but it should cycle through the arguments Change-Id: Ifa398039e77d536a0df021b1a18e06d6df673980 Reviewed-on: https://gerrit.libreoffice.org/83192 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com> (cherry picked from commit 7a73a586571a8242d9a49051adc62ef7c1c43e86) Reviewed-on: https://gerrit.libreoffice.org/83213
2019-11-03loplugin:stringaddNoel Grandin2-10/+8
tweak the plugin to be more permissive, then validate by hand afterwards Change-Id: I40c5c911fe6ff7e45baaca372abf7dac211d9654 Reviewed-on: https://gerrit.libreoffice.org/81942 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-31Fix StringAdd::isCompileTimeConstantStephan Bergmann1-8/+3
...to find StringLiteral on the RHS of +=. Which revealed that the VisitCompoundStmt/checkForCompoundAssign logic needed to be fixed, too, so that s += side_effect(); s += "literal"; s += side_effect(); only gets combined to s += side_effect() + "literal"; s += side_effect(); and not all the way to s += side_effect() + "literal" + side_effect(); Change-Id: I432e3458b933a7d0ad6141c747b675cc8b0f0ba4 Reviewed-on: https://gerrit.libreoffice.org/81804 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-28loplugin:stringadd improve detectionNoel Grandin1-2/+1
if one side of the expression is a compile-time-constant, we don't need to worry about side-effects on the other side Change-Id: Iee71ea51b327ef244bf39f128f921ac325d74e2b Reviewed-on: https://gerrit.libreoffice.org/81589 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-10-17Pre-allocate an ScInterpreter object for each thread...Dennis Francis1-0/+6
and reuse them for interpret'ing all cells under the respective threads. This gives a sizeable win in the execution time especially for long formula-groups. Change-Id: Ib340950f21e863b5b821d20c092214d8bc5012aa Reviewed-on: https://gerrit.libreoffice.org/80845 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-15Resolves: tdf#128140 stabilize formula dialog widthCaolán McNamara2-7/+9
Change-Id: Ifdb80adfd4b399035ed793f8636f31b90cf50094 Reviewed-on: https://gerrit.libreoffice.org/80800 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-11Add comments about preserving the leading '#' hash character in translationsEike Rathke1-0/+13
Comments at least end up in .po files and hopefully help.. Change-Id: I19d3177f5e36a53aa02c8b41dfee5ea6c290f1d3
2019-10-09name all Notebooks 'tabcontrol'Caolán McNamara2-2/+2
Change-Id: I5159ed77c2b3ba2f06e381a738a49dbe17a6a4dd Reviewed-on: https://gerrit.libreoffice.org/80542 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-06Related: tdf#127935 set default activate handler to toggle row expansionCaolán McNamara2-2/+3
Change-Id: I2bbfb1445b8d2e748f642cdf4723d41b7f072e2b Reviewed-on: https://gerrit.libreoffice.org/80305 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-10-03drop some unnecessary includesCaolán McNamara1-1/+1
Change-Id: Ia388aef3063c99f3b0d9282f53e78edfda5ce4bb Reviewed-on: https://gerrit.libreoffice.org/80085 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-09-19improve and enable loplugin:fragiledestructorNoel Grandin1-1/+1
Where the problem was benign and the class was not extended, I marked the class as final. Where the problem was benign and the class was extended, I marked the relevant callee methods as final. Other cases were excluded in the plugin. Change-Id: Idb762fb2206af4e8b534aa35ff77f8368c7909bc Reviewed-on: https://gerrit.libreoffice.org/79089 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-09-04loplugin:constmethod in formulaNoel Grandin9-25/+25
Change-Id: Iae40405e7805b7c7ce3ce7f4b3653094fd49f396 Reviewed-on: https://gerrit.libreoffice.org/78564 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-09-03Resolves: tdf#126911 make structure box expandableCaolán McNamara3-1/+8
Change-Id: Iaf0676b4889dc643d468af758ca0be9b609618c3 Reviewed-on: https://gerrit.libreoffice.org/78537 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2019-09-01Fix '..'Andrea Gelmini2-3/+3
To complete this: https://gerrit.libreoffice.org/#/c/78312/ This is a massive replace for lines ending with ".." instead of "..." It passed "make check" on Linux. Change-Id: I07fa7b2e30ba9ea17a1f9a5e21c57216ba958efe Reviewed-on: https://gerrit.libreoffice.org/78356 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2019-08-16use more TOOLS_WARN_EXCEPTIONNoel Grandin1-4/+2
Change-Id: Ic21ea11ff106e0732bb8fa600ef39a549d7bda86 Reviewed-on: https://gerrit.libreoffice.org/77569 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-07-31Improved loplugin:stringconstant (now that GCC 7 supports it): formulaStephan Bergmann1-1/+1
Change-Id: Ifbe74d3d1d08f150844de33201f60059d62e5e4b Reviewed-on: https://gerrit.libreoffice.org/76675 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-06-02drop some unneeded includesCaolán McNamara7-35/+6
Change-Id: I13019ae1b991b5910c50e760a8a825bcf50509d2 Reviewed-on: https://gerrit.libreoffice.org/73321 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-01tdf#124279: consider also functions with no argumentsKatarina Behrens1-1/+1
such as PI() or TRUE() Change-Id: I1243e6d6da7ac884d93d5d46058d94eb35f848ab Reviewed-on: https://gerrit.libreoffice.org/73242 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>
2019-05-31Use hasElements to check Sequence emptiness in [e-i]*Arkadiy Illarionov1-1/+1
Similar to clang-tidy readability-container-size-empty Change-Id: I79e31919db8f4132216f09a7868d18835eeb154b Reviewed-on: https://gerrit.libreoffice.org/71795 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-11remove unused RefEdit/RefButtonCaolán McNamara5-264/+69
and rename WeldRefEdit/WeldRefButton back Change-Id: I3aab8585d4ba1017cc755bf21e827522e7ee6980 Reviewed-on: https://gerrit.libreoffice.org/71957 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-05-11weld conditional formattingCaolán McNamara1-1/+1
Change-Id: Ia9c99a17d5a95d67a412cfde959192c99caa70be Reviewed-on: https://gerrit.libreoffice.org/71956 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-05-09loplugin:unusedmethodsNoel Grandin4-57/+0
Change-Id: I7b4d2e5e611935284e2902b0089950768dfb7717 Reviewed-on: https://gerrit.libreoffice.org/72036 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-09loplugin:unusedfieldsNoel Grandin3-30/+0
Change-Id: I8dc5a6ef84f43bad0bee26592b3a8e95c58e6f22 Reviewed-on: https://gerrit.libreoffice.org/72027 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-05-07weld FormulaDialogCaolán McNamara13-1406/+1267
drop xFocusWin hack, I don't see what gain it gives Change-Id: I31952b5440797e6209ed1de6b546f1e4c0238d08 Reviewed-on: https://gerrit.libreoffice.org/71675 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-05-06tdf#42949 Fix IWYU warnings in include/formula/Gabor Kelemen1-0/+1
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I564e3dd53e7718326fc1e8b98c9ae3367381703c Reviewed-on: https://gerrit.libreoffice.org/70550 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-04-19drop some unneeded includesCaolán McNamara3-3/+3
Change-Id: Idde1f747f500d94b3191a97e7d502794cc2b8450 Reviewed-on: https://gerrit.libreoffice.org/70972 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-04-17weld ScTPValidationValue and ScValidationDlgCaolán McNamara1-0/+1
Change-Id: I74b1569fe378f42c1cc78ca8d9b758c6e585c979 Reviewed-on: https://gerrit.libreoffice.org/70845 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-04-10weld ScCorrelationDialogCaolán McNamara2-0/+201
this is first of the calc dialogs with a range selector, so some temp scaffolding is required during interim case of both welded/unwelded in existence Change-Id: I5480179092da7b56864cef066af781b35f735ebc Reviewed-on: https://gerrit.libreoffice.org/70474 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-04-10clang-tidy: Fix suspicious catches of WIP unhandled-self-assignment checkTamás Zolnai1-0/+3
Change-Id: I1cb16b180f4cc5bf4d65485f03c44a06414d3580 Reviewed-on: https://gerrit.libreoffice.org/70481 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2019-03-25tdf#42949 Fix IWYU warnings in include/sfx2/[a-D]*Gabor Kelemen1-0/+1
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I444cb71bc3d045072a4b1f9eed279ed7e425a0d4 Reviewed-on: https://gerrit.libreoffice.org/69481 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-03-07log nice exception messages whereever possibleNoel Grandin1-4/+6
Change-Id: Idd125c18bee1a39b9ea8cc4f8c55cddfd37c33e1 Reviewed-on: https://gerrit.libreoffice.org/68579 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-23loplugin:unusedfields in forms..fpickerNoel Grandin1-6/+0
Change-Id: Ifd3afbf276100e3cef802bbcc0792b43a9cd84f8 Reviewed-on: https://gerrit.libreoffice.org/68228 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-23Resolves: tdf#123477 let array/matrix formula act as ForceArray on callsEike Rathke1-2/+11
... so the inheritance and checks introduced with ParamClass::ReferenceOrRefArray work for those as well. Change-Id: Ieb87f6a3df5a388f859eae4c5558cf282cd0cde3 Reviewed-on: https://gerrit.libreoffice.org/68236 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-02-19tdf#74664 : Adds FOURIER() formulaDennis Francis2-0/+7
FOURIER(Array, GroupedByColumns, Inverse, Polar) is a matrix formula that computes discrete Fourier transform[DFT] of input array(first argument) via a radix-2, decimation-in-time fast Fourier transform algorithm. Unit test for this is coming up in a new commit. The data in input array(first argument) can be :- 1) grouped by columns (needs to be indicated by flag GroupedByColumns = TRUE) In this case the array can contain 1 or 2 columns, where the first column contains the real part of input series and second column if present contains the imaginary part of the input series. If there is only 1 column, the input series is treated as purely real. If the number of rows is not a power of 2, zeroes are appended to the input series internally to make the series length equal to the next nearest power of 2. 2) grouped by rows (needs to be indicated by flag GroupedByColumns = FALSE) In this case the array can contain 1 or 2 rows, where the first row contains the real part of input series and second row if present contains the imaginary part of the input series. If there is only 1 row, the input series is treated as purely real. If the number of columns is not a power of 2, zeroes are appended to the input series internally to make the series length equal to the next nearest power of 2. The third argument "Inverse" is a boolean flag to indicate whether an inverse DFT needs to be computed. This argument is optional and the default value is FALSE. The fourth argument Polar is a boolean flag to indicate whether the final output needs to be in polar coordinates. This argument is optional and the default value is FALSE. The result of DFT consists of two columns - first column contains the real parts (or the magnitudes if Polar=TRUE) and second column contains the imaginary parts (or the phases if Polar=TRUE). Implementation: A fairly straighforward non-recursive implementation of radix-2 FFT algorithm is written from scratch. Reference: Heckbert, P., 1995. Fourier transforms and the fast Fourier transform (FFT) algorithm. Computer Graphics, 2, pp.15-463. The normalization factor used in DFT / and inverse DFT in this implementation matches that of fft() and ifft() functions of Matlab/Octave. It also matches the one used in Wikipedia article on DFT: https://en.wikipedia.org/wiki/Discrete_Fourier_transform. Change-Id: If4a40a6ef62bce1f03c589ae5357b2049f66fe64 Reviewed-on: https://gerrit.libreoffice.org/67938 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>
2019-01-21o3tl::make_unique -> std::make_unique in dbaccess...frameworkGabor Kelemen1-2/+1
Since it is now possible to use C++14, it's time to replace the temporary solution with the standard one Change-Id: Iad5a422bc5a7da43d905edc91d1c46793332ec5e Reviewed-on: https://gerrit.libreoffice.org/66545 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-01-16Related: tdf#122301 FREQUENCY() with ForceArrayReturn on callerEike Rathke3-1/+9
FREQUENCY() forces its direct caller into array mode, but only for the immediate subexpression and not for further operators of the same parameter. This weird Excel behaviour is stated in ECMA-376-1:2016 OOXML 18.17.7.127 FREQUENCY "A call to FREQUENCY shall be an array formula." somewhat unclear what it actually applies to, but it turned out that "a call" is indeed *only* THE direct call, see https://bugs.documentfoundation.org/show_bug.cgi?id=122301#c19 Change-Id: I145d8fe26d75d5af25b987e190bf35f2d2c03ec6 Reviewed-on: https://gerrit.libreoffice.org/66407 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2019-01-07tdf#42949 Fix IWYU warnings in include/vcl/[v-x]*Gabor Kelemen1-0/+1
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I98f49765c6b74808dcbd692e0f375dd2848fcfd4 Reviewed-on: https://gerrit.libreoffice.org/65614 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2018-12-08use Image(OUString) instead of Image(Bitmap(OUString))Noel Grandin2-6/+6
which benefits LOOL since we can delay creating the image until we know the dpi setting of the display we are going to write to. Achieved by perl -pi -w -e "s/\bImage\s*\(\s*BitmapEx\s*\((\w+)\s*\)\s*\)/Image\(\1\)/g" $( git grep -lw "BitmapEx" ) followed by git grep -nP '\bImage\s*\(\s*BitmapEx\s*\(' followed by commenting out the BitmapEx(OUString) constructor and seeing what needed adjusting. Change-Id: I3224e11937d720fa484b0d659d25673a9e809267 Reviewed-on: https://gerrit.libreoffice.org/64760 Tested-by: Jenkins Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2018-12-08Remove obsolete SAL_FALLTHROUGH completelyStephan Bergmann1-2/+2
...after 7ffdd830d5fb52f2ca25aa80277d22ea6d89970b "HAVE_CPP_ATTRIBUTE_FALLTHROUGH is always true now" Change-Id: I54e5ff4e036a6bb3e5774d1c0524158aae18e937 Reviewed-on: https://gerrit.libreoffice.org/64800 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-11-28drop some unnecessary includesCaolán McNamara3-3/+0
Change-Id: I474b5762e6a07982fddc0315a67181399ea4c30e Reviewed-on: https://gerrit.libreoffice.org/64156 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-11-25tdf#120703 PVS: V560 A part of conditional expression is always true/falseMike Kaganski1-5/+4
Change-Id: If173f42302553b164267909a0a3156bb25a6d558 Reviewed-on: https://gerrit.libreoffice.org/63957 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-11-23convert FormulaDlgMode to scoped enumNoel Grandin1-7/+7
and drop unused ARGS value Change-Id: I9b9d0c9ea64a2174759dcf6406bdf6cd5be5862a Reviewed-on: https://gerrit.libreoffice.org/63892 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-11-17Adapt to C++2a char_tStephan Bergmann2-2/+2
u8 literals incompatibly change their type (as implemented by recent Clang trunk) Change-Id: Ia4f7b91f5d86656a056303d2754981ab2093a739 Reviewed-on: https://gerrit.libreoffice.org/63494 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-11-10clang-tidy: (WIP) bugprone-too-small-loop-variable findings 2Tamás Zolnai1-4/+4
Change-Id: I1ddf3fe0e5fad265ae14712a23469b684253079d Reviewed-on: https://gerrit.libreoffice.org/63241 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
2018-11-09Resolves: tdf#120895 new ParamClass::ReferenceOrRefArray, tdf#58874 relatedEike Rathke3-9/+28
Too many side conditions are possible with implicit array of references in array mode. Propagate new ReferenceOrRefArray parameter class to indicate the preferred return type for arguments to functions whose parameters explicitly handle array of references. Change-Id: I1f01266495c2ef1941ffe0cb7c2e0a5ae0bb7e69 Reviewed-on: https://gerrit.libreoffice.org/63201 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2018-11-07move SvTreeListBox to vclCaolán McNamara4-4/+4
Change-Id: I04a146d3d8a428ac1678827dc883525c40240a44 Reviewed-on: https://gerrit.libreoffice.org/62787 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-11-06loplugin:collapseif in dbaccess..lotuswordproNoel Grandin1-5/+2
Change-Id: Ia2a0d25c3833dfde0cd28337361f3cbd2aa29662 Reviewed-on: https://gerrit.libreoffice.org/62934 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-11-03tdf#120703 PVS: V547 Expression is always true/falseMike Kaganski1-7/+3
Change-Id: I27bf92770431f6a1f35e1c8224c0847555a8d43f Reviewed-on: https://gerrit.libreoffice.org/62819 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-10-28update old 'interface-requires' comments to <requires> tagCaolán McNamara2-2/+2
Change-Id: If7533650ae543f9d43a3a50fdfc137141fa64586 Reviewed-on: https://gerrit.libreoffice.org/62444 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>