summaryrefslogtreecommitdiff
path: root/basegfx/test
AgeCommit message (Collapse)Author
2020-07-16merge needlessly split polygons back in Skia drawing (tdf#133016)Luboš Luňák
There are places in LO code that needlessly split polygons into a group of adjacent polygons. These should theoretically result in the same, but only if antialiasing is not used (where Skia has a problem and according to Skia developers that's not really Skia's fault). So whenever a possibly problematic polygon is asked to be drawn, delay it and try to merge it with followup polygons back into one polygon where those needlessly created problematic edges do not exist. This is indeed just a hack and those problematic places should be fixed, but oh well :/. Change-Id: I1b03fe7c2f5e8c962b0dcb8962196b7fea090146 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98887 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-06-02basegfx: test of coordinate system conversionTomaž Vajngerl
Change-Id: I059d1f272f0633c450287f272083bb09732357b0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95304 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-04-22tdf#42949 Simplify use of rtl::math::approxEqual in include/basegfx/Gabor Kelemen
Turns out we can save about 500Mb of preprocessor input if we use rtl_math_approxEqual from rtl/math.h instead of its C++ wrapper rtl::math::approxEqual from rtl/math.hxx and manage the fallout accordingly. Before: bin/includebloat.awk | head sum total bytes included (excluding system headers): 19017296671 After: $ bin/includebloat.awk | head sum total bytes included (excluding system headers): 18535432672 Change-Id: I1691171f3a309405a7099882ad9989d147f59118 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92508 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-03-30remove Matrix class from basegfx, convert B2DHomMatrix testsTomaž Vajngerl
The common test cases of MAtrix and B2DHomMatrix are just converted into additional test cases for B2DHomMatrix. Change-Id: I8ed2f6d25263797b21a844e209e910a8a3f2a347 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91342 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-03-29basegfx: test B2DHomMatrix and Matrix togetherTomaž Vajngerl
This adds a test for B2DHomMatix and Matrix to test them together. Ther reason for this is that we can remove Matrix in favour to B2DHomMatrix, but first we need to make sure it is safe so by checking that the operations in Matrix yield the same result as with B2DHomMatrix. Change-Id: Ia93c1d3c7b2b7ff257c35831ff31afad3e8f34ba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91312 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2019-12-26Test for B2DRangeTomaž Vajngerl
Change-Id: I8a616e4bbea8ec597f94c1b179b4e2221d10fcdb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85836 Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Tested-by: Tomaž Vajngerl <quikee@gmail.com>
2019-07-28unit test for B2DPointTomaž Vajngerl
Change-Id: I86a9d555e4915658acf5829fbf7c8336255d6343 Reviewed-on: https://gerrit.libreoffice.org/76490 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2019-06-28add appendQuadraticBezierSegment to B2DPolygonTomaž Vajngerl
This adds a convenience method to B2DPolygon to add a quadratic bezier segment, which converts its one control point to two control points of a cubic bezier segment. The SVG path import is also modified to use this new method instead of converting inside the importer itself. Change-Id: I96e9b306066d9ccf2542b17a117db01fa235f405 Reviewed-on: https://gerrit.libreoffice.org/74809 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2019-05-14Revert "drawinglayer: avoid AA for hairline polygons built from ...Miklos Vajna
.. hori/vert lines only" This reverts commit f8b4d371eddd27594d549fb00294c01229a9bd24. Tomaz considers this ugly and it's no longer needed since commit 93abdf39b01bb7b404dc09ef37369a4350fb0d10 (sw lok: assume no windows in SwLayoutFrame::PaintSwFrame(), 2019-05-14). Conflicts: basegfx/test/B2DPolygonTest.cxx Change-Id: Ia9b29921ff3e5d82085e1abf9f39c172357a5e13 Reviewed-on: https://gerrit.libreoffice.org/72297 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2019-05-11Fix typoAndrea Gelmini
Change-Id: I3ba8dc5a2519a85a2da88f1d40832dd2fb6c10a6 Reviewed-on: https://gerrit.libreoffice.org/72144 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-05-09drawinglayer: avoid AA for hairline polygons built from hori/vert lines onlyMiklos Vajna
For one, it seems this was the intention already since commit 85c70f37b56299f6fa02312c0fb73cc55af084ef (CWS-TOOLING: integrate CWS aw063, 2009-03-04): "suppress AntiAliasing for pure horizontal or vertical lines". For another, this fixes the TileCacheTests::testTileWireIDHandling() testcase in online.git, which assumes that the indicators at the corners of the Writer body frame (paragraph marks hidden / default case) can be painted multiple times, producing pixel-by-pixel matching results. But in reality AA breaks that assumption, and we know these indicators are never diagonal lines. Change-Id: Ib74f823165799991296b64cee58ec106dbdcedcf Reviewed-on: https://gerrit.libreoffice.org/72000 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
2019-05-08Fix typoAndrea Gelmini
Change-Id: Iea5bd392f82e26e3c60ca332ae4bea942888e236 Reviewed-on: https://gerrit.libreoffice.org/71928 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2019-03-16Simplify containers iterations in basctl, basegfx, basic, bridgesArkadiy Illarionov
Use range-based loop or replace with STL functions Change-Id: I8594740103bdc2091c2d03d4b92bbe8393f5378c Reviewed-on: https://gerrit.libreoffice.org/69223 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-03-08new loplugin constvarsNoel Grandin
detect static variables that can be made const. Thanks to mike kaganski for suggesting this. Here I introduce a new plugin feature - using markers in nearby comments to disable the plugin for specific vars. Some of this stuff was old debugging code. I removed the stuff that was older than 5 years. Change-Id: I6ec7742a7fdadf28fd128b592fcdf6da8257585c Reviewed-on: https://gerrit.libreoffice.org/68807 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-02-18tdf#42949 Fix IWYU warnings in basegfx/Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Ic8476ddc7805546f2f6f253f282ac976bb3b7bd6 Reviewed-on: https://gerrit.libreoffice.org/67699 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-01-28split basegfx 2d tests to separate files (one per tested class)Tomaž Vajngerl
Change-Id: Icb2f745851ba3de31f6a672d1bc20659de687d2e Reviewed-on: https://gerrit.libreoffice.org/67031 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2018-11-25Fix typoAndrea Gelmini
Change-Id: I994a7a6c98d2e6ba32d5e005e204e9ec1f8be44b Reviewed-on: https://gerrit.libreoffice.org/63999 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2018-10-19clang-tidy readability-container-size-emptyNoel Grandin
Change-Id: I1df70b7dff5ebb6048f7fc618789faa15ca5d422 Reviewed-on: https://gerrit.libreoffice.org/61967 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-15tdf#42949 Fix IWYU warnings in include/basegfx/*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Ifd59a5d93cfe7dc232891a681002014cd825035a Reviewed-on: https://gerrit.libreoffice.org/61546 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2018-10-09Extend loplugin:redundantinline to catch inline functions w/o external linkageStephan Bergmann
...where "inline" (in its meaning of "this function can be defined in multiple translation units") thus doesn't make much sense. (As discussed in compilerplugins/clang/redundantinline.cxx, exempt such "static inline" functions in include files for now.) All the rewriting has been done automatically by the plugin, except for one instance in sw/source/ui/frmdlg/column.cxx that used to involve an #if), plus some subsequent solenv/clang-format/reformat-formatted-files. Change-Id: Ib8b996b651aeafc03bbdc8890faa05ed50517224 Reviewed-on: https://gerrit.libreoffice.org/61573 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-09-17New loplugin:externalStephan Bergmann
...warning about (for now only) functions and variables with external linkage that likely don't need it. The problems with moving entities into unnamed namespacs and breaking ADL (as alluded to in comments in compilerplugins/clang/external.cxx) are illustrated by the fact that while struct S1 { int f() { return 0; } }; int f(S1 s) { return s.f(); } namespace N { struct S2: S1 { int f() { return 1; } }; int f(S2 s) { return s.f(); } } int main() { return f(N::S2()); } returns 1, both moving just the struct S2 into an nunnamed namespace, struct S1 { int f() { return 0; } }; int f(S1 s) { return s.f(); } namespace N { namespace { struct S2: S1 { int f() { return 1; } }; } int f(S2 s) { return s.f(); } } int main() { return f(N::S2()); } as well as moving just the function f overload into an unnamed namespace, struct S1 { int f() { return 0; } }; int f(S1 s) { return s.f(); } namespace N { struct S2: S1 { int f() { return 1; } }; namespace { int f(S2 s) { return s.f(); } } } int main() { return f(N::S2()); } would each change the program to return 0 instead. Change-Id: I4d09f7ac5e8f9bcd6e6bde4712608444b642265c Reviewed-on: https://gerrit.libreoffice.org/60539 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-04Use more basegfx deg<->rad functions, instead of direct formulasMike Kaganski
Also make the functions constexpr. Due to slight changes in floating-point arithmetics (90.0 instead of 180.0, M_PI2 instead of M_PI resp.), results might differ in last digits (usually 17th decimal digit). This has lead to need to tweak char2dump's PieChartTest unit test. Change-Id: I20323dd7dab27e4deb408ea4181e390cc05e7cd3 Reviewed-on: https://gerrit.libreoffice.org/58583 Tested-by: Jenkins Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-05-20coverity#1435682 Unchecked return valueCaolán McNamara
and coverity#1435683 Unchecked return value coverity#1435685 Unchecked return value Change-Id: I089d6bdfc80f18c38402b61177d85505fc4c4b36 Reviewed-on: https://gerrit.libreoffice.org/54589 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2018-04-05fix bug in b2dpolypolygon::testTrapezoidHelperNoel Grandin
ever since commit 82b56544a7a53528970632d086c3cfd8ef879335 Date: Wed Jan 1 10:29:40 2014 +0000 basegfx: accelerate Trapezoid subdivision by avoiding allocations. found by my new unusedvariablemore plugin Change-Id: Ie02f4cf576094fb1cd814efed452ae0985814065 Reviewed-on: https://gerrit.libreoffice.org/52386 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-01-04basegfx: extract svg path import/export test to own fileTomaž Vajngerl
Change-Id: If9925540feb54e5a101c76f8d4cebaa305ac4c75 Reviewed-on: https://gerrit.libreoffice.org/47299 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2017-10-26loplugin:constmethod in basegfx,sotNoel Grandin
Change-Id: I05d2cdefb7faf489ec29ba28dc5e3c28d08b9780 Reviewed-on: https://gerrit.libreoffice.org/43863 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-23loplugin:includeform: basegfxStephan Bergmann
Change-Id: I554ca3b84cc9f02cae88f876332a9fb50dd1c7c7
2017-09-26Rename the basegfx::tools namespace to basegfx::utilsTor Lillqvist
Reduce potential confusion with the global tools namespace. Will hopefully make it possible to remove the annoying initial :: when referring to the global tools namespace. Unless we have even more tools subnamespaces somewhere. Thorsten said it was OK. Change-Id: Id088dfe8f4244cb79df9aa988995b31a1758c996 Reviewed-on: https://gerrit.libreoffice.org/42644 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2017-07-02loplugin:casttovoid: basegfxStephan Bergmann
Change-Id: I5a7723a9b0ce64969a96a3bccb47b380a138b69c
2017-05-18loplugin:comparisonwithconstant in basegfxNoel Grandin
Change-Id: I6953640a1aa2e58fe2ea6555291c4f4a5271770f Reviewed-on: https://gerrit.libreoffice.org/37680 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-28loplugin:cppunitassertequals: basegfxStephan Bergmann
Change-Id: I942634a688d7728bb21c3ce9bd530e07467cb7c5
2017-02-15Drop :: prefix from std in [a-b]*/Tor Lillqvist
Change-Id: I0422aaf39bbce889c95ed9a81a0784cb03a1badd Reviewed-on: https://gerrit.libreoffice.org/34320 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2017-01-10New loplugin:conststringvar: basegfxStephan Bergmann
Change-Id: Ia298e6a3515de9bde212dfd6159032859a965df1
2017-01-07coverity#1398371 Useless callCaolán McNamara
Change-Id: I3614bb162cec889ee102e0284b6a3a33a98df470
2016-10-06CPPUNIT_ASSERT[_DOUBLES]_EQUALStephan Bergmann
Change-Id: I417cea926abcc511e74a090ee90a851c138ac0c0
2016-07-25basegfx: use polygon initializer_list in some placesTomaž Vajngerl
Change-Id: Ibb83476376e1c46aedf67c9455292405219a45c1 Reviewed-on: https://gerrit.libreoffice.org/27476 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2016-03-08tdf#97703 Removed empty setUp/tearDown methodsChirag Manwani
Change-Id: Ia62de30ae94bdae87cd5109c44eab40af4d020e5 Reviewed-on: https://gerrit.libreoffice.org/22985 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-02-19tdf#97703 Removed a few redundant calls to setUp and tearDownJaskaran
Calls to CppUnit::TextFixture::setUp and CppUnit::TextFixture::tearDown have been removed. I hope that saves a few milliseconds of build time :) Change-Id: I611db2f5c5673ab86bf8f92beb4f6e8a70443b34 Reviewed-on: https://gerrit.libreoffice.org/22496 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-01-31boost::tuple -> std::tupleCaolán McNamara
Change-Id: Ia08c184b792ff73d3ed49d6a5d54dec1a35943e9 Reviewed-on: https://gerrit.libreoffice.org/21955 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-01-22loplugin:fpcomparison in basegfxNoel Grandin
fix comparing of floating point values Change-Id: I54db66968cb999514747171eed82082612e0cac8 Reviewed-on: https://gerrit.libreoffice.org/21708 Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de> Tested-by: Jenkins <ci@libreoffice.org>
2015-11-10loplugin:nullptr (automatic rewrite)Stephan Bergmann
Change-Id: Ib64fc63905cf44a0d32393d52ee587d0aa2d9dfa
2015-10-30basegfx tree cleanupMario J. Rugiero
- Eliminated an unnecessary boost/bind.hxx include. - Replaced simple old-style for loops that iterated over a container by ranged based for loops. - Replaced for_each by ranged based for loops wherever valid. Change-Id: Ib5c8291cf6d417047b350560f0428723efeccd1c Reviewed-on: https://gerrit.libreoffice.org/19679 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-26WaE: loplugin:defaultparamsTor Lillqvist
Change-Id: Ibb93059d4adab6b672cb9122b2dc8fe8af5bbbd6
2015-10-26Replace boost::bind by lambdas in basegfx tree.Mario J. Rugiero
Change-Id: I8f72bec11b5dfd71cc60a18b980629c176d43f49 Reviewed-on: https://gerrit.libreoffice.org/19595 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-10-12Replace "SAL_OVERRIDE" with "override" in LIBO_INTERNAL_ONLY codeStephan Bergmann
Change-Id: I2ea407acd763ef2d7dae2d3b8f32525523ac8274
2015-09-30Fix typosAndrea Gelmini
Change-Id: Ie0e941d48457d758525353d6c5cf858652f86fd3 Reviewed-on: https://gerrit.libreoffice.org/18938 Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de> Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2015-06-04convert B2VectorContinuity to scoped enumNoel Grandin
Change-Id: Ifa401dd0d2d1bef8c0ae2987d2aee86100b59816
2015-06-04convert B2VectorOrientation to scoped enumNoel Grandin
Change-Id: Id7e444bc896ae5d52e5a0bd1b471679c4945afa4
2015-06-02Replaced boost::tuple with std::tupleZsolt Bölöny
Change-Id: Ia001c8e1e00df85d2be93e330811a1081179785d Reviewed-on: https://gerrit.libreoffice.org/15816 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-06-01Remove B1IRange, it's not used anywhereZsolt Bölöny
Change-Id: I2eeded849b9b36611407e8ecc545d7801939e4c9 Reviewed-on: https://gerrit.libreoffice.org/15815 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>