summaryrefslogtreecommitdiff
path: root/basegfx
AgeCommit message (Collapse)AuthorFilesLines
2017-11-23Make loplugin:unnecessaryparen look through implicitStephan Bergmann1-1/+1
...similar to how <https://gerrit.libreoffice.org/#/c/45083/2> "Make not warning about !! in loplugin:simplifybool consistent" does for loplugin:simplifybool Change-Id: I23eef400af71c582d380c9bae6546ce06e8a1e18 Reviewed-on: https://gerrit.libreoffice.org/45122 Tested-by: Stephan Bergmann <sbergman@redhat.com> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-22Make loplugin:unnecessaryparen warn about (x) ? ... : ... after allStephan Bergmann2-3/+3
...which had been left out because "lots of our code uses this style, which I'm loathe to bulk-fix as yet", but now in <https://gerrit.libreoffice.org/#/c/45060/1/> "use std::unique_ptr" would have caused an otherwise innocent-looking code change to trigger a loplugin:unnecessaryparen warning for pFormat = (pGrfObj) ? ... (barring a change to ignoreAllImplicit in compilerplugins/clang/unnecessaryparen.cxx similar to that in <https://gerrit.libreoffice.org/#/c/45083/2> "Make not warning about !! in loplugin:simplifybool consistent", which should also have caused the warning to disappear for the modified code, IIUC). Change-Id: I8bff0cc11bbb839ef06d07b8d9237f150804fec2 Reviewed-on: https://gerrit.libreoffice.org/45088 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-18RotateFlyFrame3: Initial support addedArmin Le Grand1-0/+34
First steps to get a rotated FlyFrame and content that only uses layouted sizes/positions and does not change the model data (except rotation). This works with persistence, after reload the rotation can be resetted with going back to the original FrameSize. Lot of stuff not yet working, experimental state. Change-Id: Ie29d501fe2e618a1cb4457d600ce97575ed372d0
2017-11-10loplugin:unusedmethodsNoel Grandin1-8/+0
Change-Id: I543b0943f0bc918d59debc8ee051f88c29d18454 Reviewed-on: https://gerrit.libreoffice.org/44553 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-11-01loplugin:constantparam in basegfxNoel Grandin6-84/+28
Change-Id: Ieabdd6f8d76cfc2ed75f2ec618def6591a9adc93 Reviewed-on: https://gerrit.libreoffice.org/44130 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-27ofz#3826 Divide-by-zeroCaolán McNamara1-1/+1
with fLeftStart == 1.0 (is allowed, see comment at mfCut) the whole BezierSegment is needed and does not need to be cut at all so best would be to add it to 'while' loop, after that the 'rest' will be added anyways so, add 'fLeftStart < 1.0' or 'fLeftStart != 1.0' (since limited to [0.0 .. 1.0]) to the while in line 120 should do it Change-Id: Ida87e06247d169482df26e665985753e634e149e Reviewed-on: https://gerrit.libreoffice.org/43935 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-10-26loplugin:constmethod in basegfx,sotNoel Grandin6-11/+11
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 Bergmann2-2/+2
Change-Id: I554ca3b84cc9f02cae88f876332a9fb50dd1c7c7
2017-10-20RotGrfFlyFrame: Added interactive rotation modeArmin Le Grand1-1/+2
The FlyFrames containing a graphic now support an interactive rotation mode. Added a rotation icon to the Toolbar close to right/left 90degree rotation. When activated, works as similar to draw object mode as possible. Shear and move of the rotation center is deactivated since not supported. It uses as much of the existing interaction stuff as possible. Change-Id: Ia1a4e5c064d8576b114c3fcf3a96ccb42c9372bb
2017-10-20RotGrfFlyFrame: Adapt Crop functionality to rotated GraphicArmin Le Grand1-0/+42
The FlyFrame which may contain a Graphic needs working Crop, interactive and in core. Adapted this to work with now possible rotation, changed common code in svx which has to handle cases for Draw/Impress/Calc and Writer differently. Tried to use as much in common as possible. Additionally furter adaptions to rotation itself. Change-Id: Ia961e9490e2627c74220b186116f5aa4fcabca78
2017-10-10basegfx: consistently use "" and <> in include directivesMike Kaganski2-3/+3
Change-Id: I6e4e11532e634fbdb8c6bfd4ce3577fc2746aca8 Reviewed-on: https://gerrit.libreoffice.org/43300 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-09-26Rename the basegfx::tools namespace to basegfx::utilsTor Lillqvist31-275/+275
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-09-22Fresh run of bin/update_pch.shMike Kaganski1-3/+7
Change-Id: I69d4157aaf6570cecd51ea59df20556914942e06 Reviewed-on: https://gerrit.libreoffice.org/42565 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-09-15borderline: Preparing further to use CellCoordinateSystemArmin Le Grand1-0/+14
Multiple cleanups, made svx::frame::Style a std::shared_ptr class, preparing basing all border stuff on transformations, so it will need a CellCoordinateSystem. Added stuff to get this Coordinate System from the svx::frame::Cell using the Frame and knowledge about ownerships Change-Id: Ic2cb59cc92e648ac2fef72f22f8913479769d3e2
2017-09-08clang-tidy modernize-use-emplace in b*Noel Grandin8-89/+70
Change-Id: I51e0369ba2e1fe0b7c934531f71d3bda95ba09ec Reviewed-on: https://gerrit.libreoffice.org/42109 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-25basegfx: remove global ImplB2DPolyPolygonMichael Stahl1-6/+3
Change-Id: I6035aaf8aabf71062bb63a4d416c253378fb4756
2017-08-25basegfx: remove global ImplB2DPolygonMichael Stahl1-10/+21
Change-Id: Ibd97ba1d7cc4e04203142057c47a74034cc4f70f
2017-08-25basegfx: remove global 3D IdentityMatrix thread safety hazardMichael Stahl1-10/+3
On a tinderbox, CppunitTest_chart2_export crashed in basegfx::B3DHomMatrix::isEqual(), with other threads in other basegfx code. The UnsafeRefCountingPolicy on the global IdentityMatrix is likely the problem. Change-Id: Ib142c6f286453d61bd948fb0c184cd68fd313b0f
2017-08-22loplugin:unnecessaryparenJan-Marek Glogowski1-1/+1
Change-Id: I4f8b76a9f924a476d04aa745837e732b10348ffa
2017-08-17remove UL/L suffixes from integer constants on the RHS of expressionsNoel Grandin1-1/+1
Change-Id: I899a8126c9d971601fea6c77eca165718aea0ac5 Reviewed-on: https://gerrit.libreoffice.org/41237 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-17loplugin:constparams in basegfx,sax,shellNoel Grandin4-21/+21
Change-Id: I90a9d105a6db146ae64cff56983def94b9472a95 Reviewed-on: https://gerrit.libreoffice.org/40043 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-10teach unnecessaryparen loplugin about identifiersNoel Grandin3-10/+10
Change-Id: I5710b51e53779c222cec0bf08cd34bda330fec4b Reviewed-on: https://gerrit.libreoffice.org/39737 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-07C++11 remove std::binary_function bases from functorsJochen Nitschke1-2/+1
std::binary_function is deprecated since C++11 and removed in C++17 90% done with regexp magic. removed obsolete <functional> includes. The std::binary_function base class was used by deprecated std::bind2nd, this was solved in individual commits. The members first_argument_type and second_argument_type were used in chart2/source/controller/dialogs/DataBrowserModel.cxx: DataBrowserModel::implColumnLess and are inlined in this commit. Change-Id: I60ded60a8d4afd59e15ac15a58e18d2498c9be5a Reviewed-on: https://gerrit.libreoffice.org/39659 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-02loplugin:casttovoid: basegfxStephan Bergmann3-15/+2
Change-Id: I5a7723a9b0ce64969a96a3bccb47b380a138b69c
2017-06-27basegfx: remove trivial copy ctorsJochen Nitschke2-28/+0
Change-Id: If6668552ec56d1b6439ead56fb2d77491a84ea13 Reviewed-on: https://gerrit.libreoffice.org/39295 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-06cppcheck: knownConditionTrueFalseJochen Nitschke1-2/+2
Change-Id: I231113eaf3117e13ed18de906e3787643abe9335 Reviewed-on: https://gerrit.libreoffice.org/38423 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-31basegfx: remove global IdentityMatrix thread safety hazardMichael Stahl1-11/+4
ASAN reports this about JunitTest_chart2_unoapi ==27381==ERROR: AddressSanitizer: heap-use-after-free on address 0x6060005bd218 at pc 0x7ff229755271 bp 0x7fffb52c6c30 sp 0x7fffb52c6c28 READ of size 8 at 0x6060005bd218 thread T0 #0 0x7ff229755270 in o3tl::UnsafeRefCountingPolicy::decrementCount(unsigned long&) include/o3tl/cow_wrapper.hxx:41:68 #1 0x7ff2297551bf in o3tl::cow_wrapper<basegfx::Impl2DHomMatrix, o3tl::UnsafeRefCountingPolicy>::release() include/o3tl/cow_wrapper.hxx:203:29 #2 0x7ff2297515f0 in o3tl::cow_wrapper<basegfx::Impl2DHomMatrix, o3tl::UnsafeRefCountingPolicy>::~cow_wrapper() include/o3tl/cow_wrapper.hxx:248:13 #3 0x7ff242ef440f in __run_exit_handlers (/lib64/libc.so.6+0x3a40f) #4 0x7ff242ef4469 in __GI_exit (/lib64/libc.so.6+0x3a469) The reason appears to be the UnsafeRefCountingPolicy on the global IdentityMatrix, so every B2DHomMatrix that is created on any thread will manipulate the refcount of that global without synchronisation. Let's just remove the global and hope the extra allocations don't matter. Change-Id: I4962ab2e622286f29b912a57448f3f1a53eeb592
2017-05-19loplugin:comparisonwithconstant in accessibility..basegfxNoel Grandin9-23/+23
re-running this plugin on these modules now that sberg has improved the plugin. Change-Id: I1818b1fa540cf62b81219a4f3ed2dcae8ff0e838 Reviewed-on: https://gerrit.libreoffice.org/37805 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-18loplugin:comparisonwithconstant in basegfxNoel Grandin18-84/+84
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-05-09cleanup osl/diagnose.h includesJochen Nitschke7-7/+0
with command > git grep -l osl/diagnose.h *.cxx | xargs grep -L -w 'OSL_\w*' | xargs sed -i '/#include *\(<\|\"\)osl\/diagnose.h\(>\|\"\).*/d' headers need more work Change-Id: I906519ebbd47a04703b4fa5943b2f7abea7a97ab Reviewed-on: https://gerrit.libreoffice.org/37350 Tested-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-05-08cppcheck: knownConditionTrueFalseJochen Nitschke1-41/+34
remove bDone and simply 'break' the loop when done. Change-Id: Idf4170083cbda3a783cb52bba9e94d3be512f167 Reviewed-on: https://gerrit.libreoffice.org/37355 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-07revert OSL_ASSERT changesChris Sherlock1-1/+1
Change-Id: I365d140446bd2a62cf8256acbfdd53fe72987380
2017-05-07tdf#43157: convert basegfx from OSL_ASSERT to assertChris Sherlock1-1/+1
Change-Id: Ieabb52d9d0aa3b9c81e1642cd64bddea897ed53a
2017-05-03remove empty namespacesJochen Nitschke3-19/+0
Change-Id: I3eae0ecc1ffc5500d3c55abc6554822f5432a50a Reviewed-on: https://gerrit.libreoffice.org/37173 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-28loplugin:salunicodeliteral: basegfxStephan Bergmann1-4/+4
Change-Id: Ice43bae52ac244815ee62ee843108fd36b9918d7
2017-04-28loplugin:cppunitassertequals: basegfxStephan Bergmann5-203/+209
Change-Id: I942634a688d7728bb21c3ce9bd530e07467cb7c5
2017-04-21gbuild: Remove MSVC 2013 legacy codeDavid Ostrovsky2-2/+0
Uwinapi is discontinued. Change-Id: I063b4d0d8fab2d60de168e960a63b8181158ac01 Reviewed-on: https://gerrit.libreoffice.org/23198 Reviewed-by: David Ostrovsky <david@ostrovsky.org> Tested-by: David Ostrovsky <david@ostrovsky.org>
2017-04-19clang-tidy readability-simplify-boolean-expr in accessibility..cuiNoel Grandin2-14/+2
Change-Id: Iae27da322c6ede592e6b268fb2210d3525ed22cc Reviewed-on: https://gerrit.libreoffice.org/36677 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-06loplugin:useuniqueptr extend to catch more localvar casesNoel Grandin2-12/+8
i.e. where the code looks like { foo * p = new foo; ... delete p; return ...; } Change-Id: Id5f2e55d0363fc62c72535a23faeaaf1f0ac6aee Reviewed-on: https://gerrit.libreoffice.org/36190 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-05loplugin:redundantcast find c-style bool castsNoel Grandin1-1/+1
Change-Id: I3237b93babc67de12c3771aa84766c2141ca93b2 Reviewed-on: https://gerrit.libreoffice.org/36137 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-26Fix typosAndrea Gelmini1-1/+1
Change-Id: Idbf0aa261b829e83d4c08a2e989a4ced871dc6de Reviewed-on: https://gerrit.libreoffice.org/35616 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-03-21Only need an OStringBuffer in number2PolyPolygonStephan Bergmann1-3/+3
...so that later passing the OStringBuffer's aNum[i] to createSevenSegmentPolyPolygon (taking a first parameter of type char) doesn't need to implicitly convert from sal_Unicode to char. Requires addition of some missing OStringBuffer-related function variants in rtl/math.hxx and rtl/strbuf.hxx. Change-Id: I79e6b2a791abc62b6556a6668e4411cced490c11
2017-03-19Fix typosAndrea Gelmini1-1/+1
Change-Id: I5c89a47e658ae4ad2b0cdfcdb4988c4b79353085 Reviewed-on: https://gerrit.libreoffice.org/35413 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-03Remove redundant 'inline' keywordStephan Bergmann1-3/+3
...from function definitions occurring within class definitions. Done with a rewriting Clang plugin (to be pushed later). Change-Id: I9c6f2818a57ccdb361548895a7743107cbacdff8 Reviewed-on: https://gerrit.libreoffice.org/34874 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-03-01ofz: timeout loading emf with move clip recordCaolán McNamara2-0/+25
Change-Id: Id5d60f0037873598e1447b063e66e9c29840587c Reviewed-on: https://gerrit.libreoffice.org/34740 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-02-26loplugin:loopvartoosmallStephan Bergmann1-3/+4
Change-Id: I085d409f3271c5a4d8237fa3e3c4a74bed296acb
2017-02-24vector::data seems more natural than &vector::frontCaolán McNamara2-16/+16
Change-Id: I0ce48075ad186cf1f9bd3e13fa76269fa9819af1
2017-02-23change intervall -> intervalDavid Tardon1-2/+2
Change-Id: Ib211619428f16304603d9c0a9fce0b22dde2a617
2017-02-15Drop :: prefix from std in [a-b]*/Tor Lillqvist24-113/+113
Change-Id: I0422aaf39bbce889c95ed9a81a0784cb03a1badd Reviewed-on: https://gerrit.libreoffice.org/34320 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2017-02-06Add missing #includesStephan Bergmann3-0/+3
...and remove some unncessary using directives/declarations, in preparation of removing now-unnecessary #includes from cppumaker-generated files, post e57ca02849c3d87142ff5ff9099a212e72b8139c "Remove dynamic exception specifications". Change-Id: Iaf1f268871e2ee1d1c76cf90f03557527ebc9067