summaryrefslogtreecommitdiff
path: root/drawinglayer
AgeCommit message (Collapse)Author
2017-09-24tdf#96505 Get rid of cargo cult "long" integer literals66kesara99
Remove unnecessary "Long" literals in multiple locations Change-Id: Icc44546f10fed841683053eee01b788274e0add1 Reviewed-on: https://gerrit.libreoffice.org/42683 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-22Remove include of converters.hxx from precompiled_drawinglayer.hxxMike Kaganski
Commit cf48347e7a56c38c000e657965f25f4c7e7b4803 didn't take into account commit 632edfabe8065cd59a237d975ee03468ce4d868b landed before it. Change-Id: I108027a460943b14194adcff4af2a41b7720f3be Reviewed-on: https://gerrit.libreoffice.org/42677 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-09-22Fresh run of bin/update_pch.shMike Kaganski
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-22Put definition of _CRT_RAND_S into bin/update_pchMike Kaganski
so it doesn't get removed again from sal/inc/pch/precompiled_sal.hxx (see commit 4af9612f2be9e023e762831207cbdb1d5f25906f). Also make necessary changes to some of the files that start to fail building after running bin/update_pch.sh, so that the patch is self-contained and leaves the tree in fully functional state. tools namespace had to be prepended with :: to disambiguate from drawinglayer::tools vcl/inc/window.h includes were amended, because ExtTextInputAttr is from vcl/commandevent.hxx, and enum class ShowTrackFlags is from vcl/window.hxx Change-Id: I47179622350754cba2f95d26a1bafd3dfbbc935b Reviewed-on: https://gerrit.libreoffice.org/42559 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2017-09-22<drawinglayer/tools/converters.hxx> can be internal to drawinglayerTor Lillqvist
And while moving it, get rid of the 'drawinglyer::tools' subnamespace. Less potential confusion with the global 'tools' namespace. Change-Id: Iab3c25be0cec7f3d182228d122837e9f2ac9a529 Reviewed-on: https://gerrit.libreoffice.org/42619 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com>
2017-09-18maPrimitiveColor in Shadow3DExtractingProcessor unusedNoel Grandin
since commit 9927e1ca23c8353c880a3ae0a196caabdf747c4b Date: Wed Aug 9 16:00:16 2006 +0000 #i39532# Change-Id: I1db3db2c4860d6ad71085cc3cfdeb202eec7e24a
2017-09-15Fix typosAndrea Gelmini
Change-Id: I78653129638b25f16e0816b6fff11e02100c85e7 Reviewed-on: https://gerrit.libreoffice.org/42321 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2017-09-15borderline: Extended decomposeArmin Le Grand
Decompose of BorderLinePrimitive2D extended to take care of non-perpendicular line endings for matching. Improved matching, one error in calc fixed Change-Id: I869a75385711b58e6725daba0f22be8a98158ad9
2017-09-15borderline: extended the expand logicArmin Le Grand
Extended and checked the expand logic for creating the line extends. Now creating quite the right lines, will need to check some speccial cases. Also some cleanups. Change-Id: I3a3bd4d23c7017ecd873147df2d93af61de39fa6
2017-09-15borderline: Added merge BorderLinePrimitive2DArmin Le Grand
Added BorderLinePrimitive2D merges for Writer and fixes.
2017-09-15borderline: merge redefined, mirrored StylesArmin Le Grand
Redefined merge of BorderlinePrimitives, removed old Writer stuff for it. Also added support for handling Styles mirrored for extension calculations.
2017-09-15borderline: Adapted BorderLinePrimitive2D and usagesArmin Le Grand
Big changes to BorderLinePrimitive2D and BorderLine, freeing it from one/three entries, going to a free definition using gaps with width but without color. Adapted usages and creation, not yet tested much Change-Id: Ic1255a790401901c3166d200205bc23322b37185
2017-09-15borderline: Abstraction of BorderLinePrimitiveArmin Le Grand
As preparation for more detailed definition of BorderLine primitives I have adapted the BorderLine definition to work with motre possibilities to define the LineStartEnd definitions in a BorderLineExtend class. That one is flexible to hold all kinds of definitions - from none to all four possible extends (Start/End, Left/Right of vector) Cleanup of DiagStyle and others: DiagStyle is not needed anymore due to no longer using angles calculated, but being based on vectors defining the geometry. Also cleaned up quite a bit of no longer needed calculation stuff for the control.
2017-09-15tdf#112012 EMF+ add dashed line supportPatrick Jaap
add support for dashed lines as optional pen attribute. Change-Id: I8c49d178e1b25eb0b8cd15c32c2fc47497efb21b Reviewed-on: https://gerrit.libreoffice.org/41565 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-09-12tdf#111853 Added TextFillColor to operator==Armin Le Grand
TextFillColor was added to TextSimplePortionPrimitive2D, but not added to TextSimplePortionPrimitive2D::operator==, so when this changed it was not detected. Added this. Also added was bFilled and nWidthToFill, all defaulted. This is not accessible for TextDecoratedPortionPrimitive2D and seems to be some special solution just for one special case in DrawPortionInfo, only used from Outliner::DrawingTab, so I am not sure if that change to the central TextSimplePortionPrimitive2D is good and should stay Change-Id: Ief8da74a8b66281e47c4c8a47131125e30b90e7d Reviewed-on: https://gerrit.libreoffice.org/42188 Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de> Tested-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2017-09-11clang-tidy modernize-use-emplace in d*Noel Grandin
Change-Id: I79ac90faf24b4c741545e411dbaea7826c2df531 Reviewed-on: https://gerrit.libreoffice.org/42150 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-03Resolves: tdf#112145 pdf export of editengine highlight color fails sometimesCaolán McNamara
When setting a fill or line color on the outputdevice, put it back to its previous setting when finished with the record, PRIMITIVE2D_ID_POLYPOLYGONCOLORPRIMITIVE2D was the one in this case but protect the other similar ones here too Change-Id: Ifb9b182d72bb6c48a9d9480270fde4384be6291e Reviewed-on: https://gerrit.libreoffice.org/41761 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-08-22emfplus: cut over to new EMF+ rendererThorsten Behrens
We're on par with the old functionality now (modulo a few smaller issues); overall QoS is much better, we get vector output on pdf and print, and the need for large offscreen bitmap rendering goes away. Change-Id: I1fa92c5cad67579c3fcfa78f1bc68696bf1623ec Reviewed-on: https://gerrit.libreoffice.org/41406 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Patrick Jaap <patrick.jaap@tu-dresden.de> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-08-21Fix typosAndrea Gelmini
Change-Id: I3f3abc3c6e12536d4bc38f0c676d5fc20532a1e3 Reviewed-on: https://gerrit.libreoffice.org/41370 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2017-08-18loplugin:unnecessaryparenNoel Grandin
look for statements like return (function()); Change-Id: I906cf2183489f87225b99b987caca67e39b26cc3 Reviewed-on: https://gerrit.libreoffice.org/41260 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-17remove UL/L suffixes from integer constants on the RHS of expressionsNoel Grandin
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-08-17remove UL/L suffixes from integer constants in initialiser/call expressionsNoel Grandin
Change-Id: Iae081567c4fa5b88edbd12cf2fbafd2b8f31b300 Reviewed-on: https://gerrit.libreoffice.org/41214 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-17remove UL/L suffixes from shift-by-constant expressionsNoel Grandin
Change-Id: Ia470f643e3eefeccc14183133603db260460bd53 Reviewed-on: https://gerrit.libreoffice.org/41212 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-17Fixup source layout in emf+ parserThorsten Behrens
Non-functional change, cleaning up dog's breakfast in the grandfathered binary parser. Change-Id: If3592959b1580e869413910460ccf5b6c9f6f25d Reviewed-on: https://gerrit.libreoffice.org/41230 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-08-16new EMF+ Parser: Basic implementation for Graphic StacksPatrick Jaap
Some basic code for push/pop events of the graphic stacks. Each draw/fill action is also transferred to the currend state. The implementation follows the one from the old parser. Change-Id: Ib6411046801023dfa72b16038a9e8ede4c628942 Reviewed-on: https://gerrit.libreoffice.org/40867 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-08-16new EMF+ Parser: Implementation of EmfPlusRecordTypeDrawDriverStringPatrick Jaap
The Implementation follows closely EmfPlusRecordTypeDrawString. For each set of characters with the same PosY a TextSimplePortionPrimitive2D is created. Change-Id: I04e4d11dc3c4e1e5bd16aefa8e7f00556aa5282b Reviewed-on: https://gerrit.libreoffice.org/40716 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2017-08-09new EMF+ Parser: Implementation of drawImagePatrick Jaap
this small patch implements the EMF+ Record darwImage. It generates a BitmapPrimitive2D. Change-Id: I90d9a788ed9f520041c392d11f0d97f8e4233796 Reviewed-on: https://gerrit.libreoffice.org/40866 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2017-08-08Fix typosAndrea Gelmini
Change-Id: I24a1e979afe57d9dd139ac07bafc1ec908893152 Reviewed-on: https://gerrit.libreoffice.org/40875 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-08new EMF+ Parser: Implementation of fillPolygonPatrick Jaap
This implementation replaces hte old one. It uses the workaround hatch blending from the old implentation (basically just copied) It provides correct linear gradients, with correct transformations PathGradients are approximated via RadialGradients. Also, there is a better line width choice, solving problems caused by pictures like tdf#38580. Change-Id: Ida4f36a5de83b6325702a153b642abe5e45982ee Reviewed-on: https://gerrit.libreoffice.org/40831 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
2017-08-07Fix typosAndrea Gelmini
Change-Id: I4969e9e66de602a8c79774460a0215ef9d150372 Reviewed-on: https://gerrit.libreoffice.org/40795 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-06Fix typo in codeAndrea Gelmini
Not sure, show and ask to real devs Change-Id: Iddd457f62105e4bf6260353c64fb3019ab56a4d5 Reviewed-on: https://gerrit.libreoffice.org/40797 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-04new EMF+ Parser: Basic Text Primitives for EmfPlusRecordTypeDrawStringPatrick Jaap
Implementation of basic text primitives. It supports text, textstyle (bold, italic, font, font size, direction, color, locale. The positions are well-transformed. Also a few adjustments and supplements for EMFplus font and stringformat Change-Id: I2670b5d0f6b9ddcaa9ffc8262d8aee13ba224b77 Reviewed-on: https://gerrit.libreoffice.org/40635 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2017-08-04new EMF+ parser: EMFPPlusDrawPolygon: use correct pen widthPatrick Jaap
the current implementation uses PolyPolygonHairlinePrimitive2D for polygons. This patch uses a PolyPolygonStrokePrimitive2D which makes use of the correct (transformed) pen width and some basic join and cap attributes. Change-Id: Ifbd8cbbc41004d9d45f3c48f2c13fe449025a229 Reviewed-on: https://gerrit.libreoffice.org/40638 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2017-08-02remove unnecessary use of 'this->'Noel Grandin
Change-Id: I5c115389af7d24c18ddaf5fbec8c00f35017a5b4 Reviewed-on: https://gerrit.libreoffice.org/40671 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-01loplugin:checkunusedparamsNoel Grandin
the "check for taking address of function" part was generating false+ Change-Id: Iad6203850901229b7b1b2f8938c68ec703cd343f Reviewed-on: https://gerrit.libreoffice.org/40613 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-31Corrected HitTest for layouted textArmin Le Grand
For text layouted using EditEngine the HitTest in SVX is identifying Field like URLs. Thus ist is better to use the anyways more precise primitives for HitTest (rotation/shear/ mirror, ...). This was necessary since the former mechanism which used a combination of primitive-beased HitTest and then using an Outliner to get the position/content of the Field landed on different positions e.g. when the layout needed to use multiple lines for the contained URL, but there could be more cases found. Adapted the text decompositon, the primitive HitTest and the TextHirearchyFieldPrimitive2D accordingly. Change-Id: Ice559e20d02547fdcfcf9783e7cc5481706aab03 Reviewed-on: https://gerrit.libreoffice.org/40591 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
2017-07-28borderline: corrections for calc and writerArmin Le Grand
Made corrections/finetuning for Calc and Writer. Had to remove some former code which tried to do corrections. Change-Id: Id9fc687b9a709d250faaad76c37ecfda8d8feb9b
2017-07-28borderline: Simplified BorderLinePrimitiveArmin Le Grand
Overhauled BorderLinePrimitive to use two constructors offering using one or three edge definitions for construction to better refrlect possibilities. Adapted usages. Better processing, less memory. Preparation for using more decent LineExtend values (four per line needed) Change-Id: Iac9d9ae64874fea38fd6e2a04221698481cc0d0e
2017-07-28borderline: first versionj with line end adaptionsArmin Le Grand
Added usage of defined extensions to the BorderLinePrimitive, also added a first version to detect all cuts with adjacent borders and produce the correct extensions, for single and double lines. Not completely happy with it, but a first version Change-Id: I4b12a6cc0a70278bd5c506e9b3b2c5c126930dad
2017-07-28loplugin:constparams handle constructorsNoel Grandin
had to change the structure of the plugin considerably, was too messy to structure it to do the calculations on a per-function basis Change-Id: I4edee7735f726101105c607368124a08dba21086 Reviewed-on: https://gerrit.libreoffice.org/40516 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-28loplugin:checkunusedparams more part1Noel Grandin
seems I got one of the checks wrong, and was missing a bunch of stuff Change-Id: I2c662fc4e735f8d6cbe56c6f82906a60a580331b Reviewed-on: https://gerrit.libreoffice.org/40481 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-25loplugin:unusedmethodsNoel Grandin
Change-Id: Ia874baf21257e5fe41e104211068a2bcc50446eb Reviewed-on: https://gerrit.libreoffice.org/40391 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-21migrate to boost::gettextCaolán McNamara
* all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-07-20loplugin:constparams in drawinglayerNoel Grandin
Change-Id: I3111210ae77f67301bb319d5364f77c52e2c4d6d Reviewed-on: https://gerrit.libreoffice.org/40220 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-18coverity#1415515 Division or modulo by float zeroCaolán McNamara
and coverity#1415513 Division or modulo by float zero Change-Id: I91ffc794e70f9204a39a5ae1b2a6c59ecbe31adf
2017-07-18Clean up android specific template functions defined in std namespacebrainbreaker
Change-Id: I2094ee8eec00587f166d96723a02eb5957dbf79b Reviewed-on: https://gerrit.libreoffice.org/39890 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-07-17Fix typosAndrea Gelmini
Change-Id: I0fec2abc1bed9c0cfcd78d1b0f6daebc335831be Reviewed-on: https://gerrit.libreoffice.org/39982 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
2017-07-15loplugin:useuniqueptr in basic..cppcanvasNoel Grandin
Porting over b0e05f9ade9e93c569c6a62c59ac1819e615f27b to copies of emfpp*.[ch]xx Change-Id: I059d2cc371f24ce3d43fc2e255b1dc1c227cf555
2017-07-15emfplus: more corrections due to linux buildArmin Le Grand
Change-Id: Ib2c3bff23043638d315405b5a91b2596e92f7ffa
2017-07-15emfplus: UnitTests and gerrit build correctionsArmin Le Grand
Needed to migrate UnitTest for Emf/Wmf import from vcl to emfio. Corrected stuff based on gerrit build feedback Change-Id: I7fd2456f814ea19583072ba09730a07e9b9d4061