summaryrefslogtreecommitdiff
path: root/svtools/source/graphic
AgeCommit message (Collapse)Author
2017-07-15emfplus: create a wmf/emf/emf+ primitive based importerArmin Le Grand
First steps to organize an importer that can read/interpret wmf/emf/emf+ and deliver a primitive representation for the content by parsing it. Use the same mechanisms as already applied for Svg, so to reuse abilities to keep original binary data to allow save again and embedding in files and have an implemented replacement bitmap based representation. For this, unify the used helper classes to handle more than just Svg. For 1st try, add test code and static bool switches Change-Id: I6e0a82943541d811a8f8d65a84115569fcd8cee7
2017-07-10teach unnecessaryparen loplugin about identifiersNoel Grandin
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-05new loplugin unnecessaryparenNoel Grandin
Change-Id: Ic883a07b30069ca6342d7521c8ad890f4326f0ec Reviewed-on: https://gerrit.libreoffice.org/39549 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-21loplugin:unusedfields in svtoolsNoel Grandin
Change-Id: Ic8f67d40825d9843fd57535bd61bef51b470a8be Reviewed-on: https://gerrit.libreoffice.org/39016 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-19add more debug names for scheduled eventsLászló Németh
Change-Id: Idb85ffe13fd5e23b9378c03b5f239f29f8008276 Reviewed-on: https://gerrit.libreoffice.org/38788 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-06-18silence some exception warningsCaolán McNamara
Change-Id: I654c57642c639fa07a3f496286cc4e180bb0b241
2017-06-18remove unused osl/mutex.hxx includesJochen Nitschke
Change-Id: I3b50e45fdb99e9cd8bfda07356ee3ddb4dd0f8bb Reviewed-on: https://gerrit.libreoffice.org/38905 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2017-06-12skip copying tile when we don't need toCaolán McNamara
Change-Id: I137c69b7217801a6c86634f7e44e363ef73fd9de Reviewed-on: https://gerrit.libreoffice.org/38667 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-06-12pass comphelper::PropertySetInfo around using rtl::ReferenceNoel Grandin
and remove some manual ref counting Change-Id: Ib78122fbbf914e87e0aef1f8fffe3952639e5b22 Reviewed-on: https://gerrit.libreoffice.org/38607 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-05Improved loplugin:cstylecast to reference types: svtoolsStephan Bergmann
Change-Id: I7ac860cdf68e920834a65573a6f3344855840332
2017-06-02convert GRFILTER constants to ERRCODE_GRFILTER_Noel Grandin
since various code mixes these constants in with ErrCode values from other code, let us just make it into real ErrCode values. Change-Id: Ifa3d0f7526172609a44e6749bed9f730ab6b1a95 Reviewed-on: https://gerrit.libreoffice.org/38313 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-23vcl GraphicFilter: add ImportGraphics()Miklos Vajna
This is similar to ImportGraphic(), but can handle multiple streams with one function call. Change-Id: I8d5dc8de64321c3c1fb9e1037527b411fd68dca8 Reviewed-on: https://gerrit.libreoffice.org/37953 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-05-23svtools: add GraphicProvider::queryGraphics()Miklos Vajna
This allows moving the for() loop from oox to svtools when importing multiple images. That means in case later we parallelize that loop, then the performance benefit won't be restricted to oox, but also will be available for all clients of the graphic provider. Change-Id: Icd7bd447e7ae623b0a8548e020d8f6ab38da47bb Reviewed-on: https://gerrit.libreoffice.org/37945 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2017-05-19svtools: fix mime type of PDF imagesMiklos Vajna
Otherwise the UNO API user can only see this image has a replacement, but not possible to say if it's an SVG or a PDF image. Change-Id: Ibde7915e02620acecbbb237dc3b333382d9c784a Reviewed-on: https://gerrit.libreoffice.org/37827 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-05-09loplugin:constantparamNoel Grandin
Change-Id: Ia9500b25602c14aadf49fe373682ae9d87a0a1a2 Reviewed-on: https://gerrit.libreoffice.org/37390 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-05-05loplugin:checkunusedparams in svtoolsNoel Grandin
Change-Id: Iea68d7c0683740acaf4f85c14efe2a33e0cf13e7 Reviewed-on: https://gerrit.libreoffice.org/37201 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-04-27last private:resource ... bitmapex user is goneCaolán McNamara
so drop private:resource ... bitmapex example and update docs Change-Id: I244c575573cffda5eb8ca52afd2f4a04a9b18f14
2017-04-26last private:resource ... bitmap user is goneCaolán McNamara
so drop private:resource ... bitmap example and remove bitmap case, bitmapex case persists Change-Id: Iabf7c48517c17e3117f88daa80a258b7303b85dd
2017-04-25tools: svstream.hxx needs only errcode.hxx & not errinf.hxxChris Sherlock
Change-Id: Ia28e35ae5af4f601e9a586a3deffbcd61702b0ca Reviewed-on: https://gerrit.libreoffice.org/36896 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2017-04-17move the exception handlingCaolán McNamara
Change-Id: Ie61a424a78be85c1dc54dd56451319356227f443
2017-03-31tdf#82580 tools: rename Rectangle to tools::RectangleMiklos Vajna
Mostly generated using make check COMPILER_EXTERNAL_TOOL=1 CCACHE_PREFIX=clang-rename-wrapper RENAME_ARGS="-qualified-name=Rectangle -new-name=tools::Rectangle" Except some modules have their own foo::tools namespace, so there have to use ::tools::Rectangle. This commit just moves the class from the global namespace, it does not update pre/postwin.h yet. Change-Id: I42b2de3c6f769fcf28cfe086f98eb31e42a305f2 Reviewed-on: https://gerrit.libreoffice.org/35923 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-03-13convert GraphicDrawMode to scoped enumNoel Grandin
Change-Id: I18eec89c4e1ebb86d64297e7cef4b36bf12df59f Reviewed-on: https://gerrit.libreoffice.org/35004 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-03-08loplugin:loopvartoosmallStephan Bergmann
Change-Id: If76fa042462897735d0d67341a3734b8cfced12c
2017-02-13vcl pdf import: use pdfium instead of draw_pdf_importMiklos Vajna
Replace creating a full Draw component with direct pdfium library calls. This also means that the result is now a bitmap, not a metafile for now. Also decouple HAVE_FEATURE_PDFIMPORT and HAVE_FEATURE_PDFIUM, the first is the "import PDF into Draw" feature, the second is the "insert PDF as image" feature. Change-Id: I72c25642ec84cc831df362e02b1520c6e6d9adcf Reviewed-on: https://gerrit.libreoffice.org/34217 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
2017-02-09convert BmpConversion to scoped enumNoel Grandin
and drop unused 4BIT_TRANS and 1BIT_MATRIX enumerators Also fix a bug in x11::convertBitmapDepth where we were incorrectly passing BmpConversion enumeratirs to ReduceColors Change-Id: I903c6866750e46ee752e10a17c05fcaaf6b11242 Reviewed-on: https://gerrit.libreoffice.org/34062 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-02-02convert BmpCombine to scoped enum and drop unusedNoel Grandin
Change-Id: Ic67474683a25a25e5753777f4bbbeded6ceba414 Reviewed-on: https://gerrit.libreoffice.org/33793 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-27tweak the scoping here a littleCaolán McNamara
Change-Id: Idb257e3aee7d3f0316f34d34866eb2484390a798
2017-01-26Remove dynamic exception specificationsStephan Bergmann
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html> "Dynamic Exception Specifications" for details. Most changes have been done automatically by the rewriting loplugin:dynexcspec (after enabling the rewriting mode, to be committed shortly). The way it only removes exception specs from declarations if it also sees a definition, it identified some dead declarations-w/o-definitions (that have been removed manually) and some cases where a definition appeared in multiple include files (which have also been cleaned up manually). There's also been cases of macro paramters (that were used to abstract over exception specs) that have become unused now (and been removed). Furthermore, some code needed to be cleaned up manually (avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no configurations available that would actually build that code. Missing @throws documentation has not been applied in such manual clean-up. Change-Id: I3408691256c9b0c12bc5332de976743626e13960 Reviewed-on: https://gerrit.libreoffice.org/33574 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-01-25loplugin: unnecessary destructor svl..svtoolsNoel Grandin
Change-Id: Ie96dda7194c83ba88693f8c91899c732d704a4bd Reviewed-on: https://gerrit.libreoffice.org/33515 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-23Change all Idle* LINKs to be Timer*Jan-Marek Glogowski
Seem UBSAN doesn't like my forced reinterpret_cast to set the Idles Link in the Timer class. Now there are two possible solution: 1. convert all (DECL|IMPL).*_LINK call sites to use a Timer* or 2. split the inheritance of Idle from Timer again to maintain different Link<>s and move all common code into a TimerBase. While the 1st is more correct, the 2nd has a better indicator for Idles. This implements the first solution. And while at it, this also converts all call sites of SetTimeoutHdl and SetIdleHdl to SetInvokeHandler and gets rid of some local Link objects, which are just passed to the SetInvokeHandler call. It also introduces ClearInvokeHandler() and replaces the respective call sites of SetInvokeHandler( Link<Timer *, void>() ). Change-Id: I40c4167b1493997b7f136add4dad2f4ff5504b69
2017-01-21move GetXGraphic to its only userCaolán McNamara
Change-Id: I72ec4a7e72ca3355a97f987fab70b3e3a8e45168
2017-01-20don't need an intermediate ImageCaolán McNamara
Change-Id: I2700c30000b440a0646d43bb5712fe683747b34b
2017-01-19drop now unusd private:resource/.../image urlsCaolán McNamara
Change-Id: Ic456113b295c3b90316d2792b630c44892ac20a7
2017-01-19New loplugin:dynexcspec: Add @throws documentation, svtoolsStephan Bergmann
Change-Id: I274142728ea25be094343e3489758314e371a857
2017-01-17tdf#97087 GDB pretty print the Scheduler task listJan-Marek Glogowski
In addition to the GDB pretty printer, this annotates a lot more Timers and Idles. Change-Id: I5b93fab02161b23bb753e65ef92643a04fb0789c
2017-01-13better fix for tdf#101563: Export to PDF creates huge PDF filesNoel Grandin
Change-Id: Idda6a5ac824090e620fc6577fc82d5c5f1234b7e Reviewed-on: https://gerrit.libreoffice.org/33037 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-01-13coverity#1371198 Missing move assignment operatorCaolán McNamara
Change-Id: I89a718a245ea36f33c47f8044280bf7e46c0f66a
2017-01-11fold ImplConstruct into ctors and reduce to necessaryCaolán McNamara
ImplConstruct sets mnAnimationLoopCount, but is always followed by ImplAssignGraphicData which overwrites it so we can omit that ImplConstruct sets mnDataChangeTimeStamp, but is always followed by ImplAssignGraphicData which always calls ImplAfterDataChange which overwrites it so we can omit that Change-Id: I2304dc1ea590071a83ca30768426f721c1bd259c Reviewed-on: https://gerrit.libreoffice.org/32953 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-01-10mpGlobalMgr must already exist if we're copying from another GraphicObjectCaolán McNamara
Change-Id: I7befa3bf8c80ed71d13a1481569bb046036cbd21
2017-01-10post ctor, pre dtor there is always a mpMgr and its mpGlobalMgrCaolán McNamara
move the ImplEnsureGraphicManager calls to be the first thing in the ctor to ensure that its also always available during the ctoring, this is hopefully a good change Change-Id: Iccddee7cac152df66dec0039df207a7575e1fa54
2017-01-10mpGlobalMgr has to exist at GraphicObject dtor timeCaolán McNamara
Change-Id: I75d82c041aa5a01bab3dceecaaa132ce9172862b Reviewed-on: https://gerrit.libreoffice.org/32899 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2017-01-10mpGlobalMgr is the only manager possibleCaolán McNamara
Change-Id: Ic7e20c9c198cfdab73647b009af3e269aabf680f Reviewed-on: https://gerrit.libreoffice.org/32898 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2017-01-10move the ImplRegisterObj outside ImplSetGraphicManager and rename itCaolán McNamara
Change-Id: I1eded3ee41787b9a3339e01cf6e1157724bba1a6
2017-01-10ImplSetGraphicManager only called from ctors now where mpMgr is nullptrCaolán McNamara
Change-Id: Ib275f4c803d74eaf45409e78a6c786dac159af6b
2017-01-10GraphicManagerDestroyed would just set the default manager againCaolán McNamara
which is the only one that could already be set. Seeing as the manager is always there if a Graphic exists then the maObjList must be empty at the dtor time Change-Id: Id447d1e62a4b94b0ef986edf3cc05629c90e511b
2017-01-10unfold and unindent else causeCaolán McNamara
Change-Id: I22131a477547ac08b0c6b762353c9796f80c3666
2017-01-10the only GraphicManager is the mpGlobalMgr, so simplify accordinglyCaolán McNamara
Change-Id: I5b237e27815e138cdcab75b1b9f657882ae8a37b
2017-01-10collapse !mpMgr || mpMgrCaolán McNamara
Change-Id: Id93b2da5665c47b1e8941d2f7428fe078c6227f7
2017-01-10first GraphicManager* arg of ImplSetGraphicManager is thus always nullCaolán McNamara
Change-Id: I3da98280d3c1d95663e6e43ce7a5ca82c001c334
2017-01-09replace C-style casts with const_castJochen Nitschke
Change-Id: Ica6522b4bfe2aa4517469e89cabe5d4d057cb6b7 Reviewed-on: https://gerrit.libreoffice.org/32657 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>