Age | Commit message (Collapse) | Author | Files | Lines |
|
there may have been changes not caught by undo to the object's
ordinal, so on use of RemoveObject (or ReplaceObject) call GetOrdNum
on the object to get its current position within its parent.
We can keep nOrdNum for the desired dest position within the parent
for InsertObject
Change-Id: I3bdabf387dd630fc1fadaaa1f3d8c05e93865e4f
Reviewed-on: https://gerrit.libreoffice.org/70409
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Jenkins
|
|
Added a fallback to allow correct SvxShape construction
when SdrObject is not yet inserted - or has no SdrPage yet.
This is needed ue to the paradigm change that a SdrObject
only has a SdrPage when it is inserted.
For more info and a discussion, see added comments.
Change-Id: I2c1a4b1bbb531501ee73ab1c98c13321c5c0b050
Reviewed-on: https://gerrit.libreoffice.org/62710
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
(cherry picked from commit 52bbb04f1e39b2d778275c91f77b6c0714ecd0d0)
Reviewed-on: https://gerrit.libreoffice.org/62738
Tested-by: Xisco Faulí <xiscofauli@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: Ic312190616044f37fd92464ad605c6e0cdd5cc4d
Reviewed-on: https://gerrit.libreoffice.org/57547
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
(cherry picked from commit ee71c3def71508d1fc3e110659c7ed7aa0ba2238)
Reviewed-on: https://gerrit.libreoffice.org/61207
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Also simplify parent/child relationships, get rid
of double data (SdrPage/Parent infos in SdrObjects,
also in SdrObjList). This is all not needed - when a
SdrObject is inserted to a SdrPage, get SdrPage by
traveling over parents (no double info, member as soon
as inserted, ...).
More cleanups/reworks included, will need some more
cleanups, too.
Stabilizing: SetRectsDirty/DefaultStyleSheet
Had to correct the SetRectsDirty stuff for 3D due to
going down the hierarchy while the 2D implementation
goes the other direction -> endless loops. Added special
handling for 3D stuff for now (will be chnaged again when
SnapRect is no longer needed at SdrObject level).
Also had to adapt how the DefaultStyleSheet is set at
incarnated SdrObjects - better: their properties. Since
we now always have a SdrModel, it is possible to correctly
initialize with the correct default StyleSheet from that
SdrModel.
This needs to be done after ForceDefaultAttributes and in a
way that again deletes Items that are set in the StyleSheet.
This leads to an error in CppunitTest_sd_import_tests where
I checked tdf100491 - it is okay and thus I change the control
instance of the imported, XML-dumped file.
The less hard attributes, the better for Styles in general.
Cleanup of comments for last two commits
Corrected SvxShape::getParent()
Needed to get the direct parent, so test for SdrObject
first (to get SdrObjGroup/E3DScene), for SdrPage second
Fixed CppunitTest_sc_subsequent_export_test
Several problems arose. The used SdrCaptionObj was
Cloned, but the clone not inserted to a SdrPage. This
leads to not being able to access a UNO API imlementation
of the SdrPage (SvxPage) on lower levels.
It worked before due to SdrObject having a SdrPage*
additionally to being added to a SdrPage - this is exactly
the main cleanup this change does.
Looked for why it is cloned, could see no reasons. The
SdrCaptionObj exists during all im/export, not difference
to other SdrObjects (that do not get cloned). It is not
changed in any way. It *might* be to suppress a crash that
happened due to UNO API Service emfio/emfio not being
available in the UnitTest scenario. Interestingly it
did not crash with the cloned SdrCaptionObj, but the
Graphic exported was probably wrong.
Fixed by no longer Cloning the SdrCaptionObj and adding
emfio/emfio UNO API Service.
d139f821a5b39535a3e7b9c6261df7e18f8ae8ac
910e7f4bc628a715fda7545dffaf3369d5e76ea0
ca1de01b723051e09ac37d7ec7bba978beea41c5
3a76da1471dfe75e69847f64a6a3519ad21c8c9c
Change-Id: I986586e326b563acebf00d931a7084c6eb09e5f8
Reviewed-on: https://gerrit.libreoffice.org/54689
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
Reviewed-on: https://gerrit.libreoffice.org/60535
Tested-by: Jenkins
|
|
refactor and reuse fdo#35779 solution for this case
Change-Id: I0631cd2560aa2acc2310f95b5c4dea36a2845a58
Reviewed-on: https://gerrit.libreoffice.org/59167
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
with document ooo47086-1.xls
Change-Id: Ia43b6b3e3951875280892138c7068348f1b56a7c
Reviewed-on: https://gerrit.libreoffice.org/58921
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
The bugdoc has 2 slides. When switching to the second slide, the graphic
is loaded in the background, but OpenGLSalBitmap::Create() can't work
correctly if the caller doesn't own the solar mutex.
This already asserts in OpenGLContext::prepareForYield() in a less
obvious way.
Focus on the correctness, so just hold the solar mutex during the whole
ImportGrpahic() call. If it turns out that the purpose of running this
on a thread is to avoid synchronous network traffic, then the data could
be first copied to a memory stream, and only then take the lock + import
the graphic.
(cherry picked from commit 919ccaba419531d689231b76a43ab29c6a9ec65a)
Change-Id: I88203c12b4e7a5f2b689928c01e2ba953c5b13c5
Reviewed-on: https://gerrit.libreoffice.org/58038
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Tested-by: Jenkins
|
|
Change-Id: Id2c6d629692a365f96f3f81c5686930668389a6a
Reviewed-on: https://gerrit.libreoffice.org/57549
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
Instead just copy the "unsigned" graphic
Change-Id: I5183b0b33be0469dceaace142d73aa403cc32ef2
Reviewed-on: https://gerrit.libreoffice.org/56472
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
(cherry picked from commit 79e434948d65dd9eba150bc986e968bcb3754631)
Reviewed-on: https://gerrit.libreoffice.org/56510
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
and fix potential leak on early return in SdrDragView::BegDragObj
Change-Id: I707be6e2c7dc2c251f37447fe3cd98c4b50b59d1
Reviewed-on: https://gerrit.libreoffice.org/53751
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I81483a4d23523650cd9098794dd6101253b88e1c
Reviewed-on: https://gerrit.libreoffice.org/54546
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Target of this change is to get rid of the SVGFilter
in current LO which is based on the standard-ODF importer
using it's functionality by passing in/handing over
temporary created XML-Stream-Data.
First step is to alternatively import the given SVG
file to a newly created Document and to strip the
existing Filter-Code.
Adding the first prototype of the changed import. It
is capable of importing the given SVG to the created
Draw/Impress document. It adds the SVG which gets imported
by SVGIO as GraphicObject. It adapts sizes and positions of
Page and GraphicObject to have a smooth import.
Adding stripping of SVGFilter and used ressources. Done
as deep as possible, hopefully all places found.
Adapted now to create an Impress document. Also added needed
adaptions to PageSize(s), including layout and PresObj stuff
to make all MasterPages/LayoutPages work correctly.
Added reaction on empty SVG. This is needed since the
PageSize is adapted to the Graphic. With empty Graphic
a Size(0,0) results and this goes wrong.
Change-Id: Ia364a5783bee7dadcbe91e700efbabc121cf98f9
Reviewed-on: https://gerrit.libreoffice.org/54096
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Change-Id: I2e34b3819c576072beaacb87cb99d73457667dc3
Reviewed-on: https://gerrit.libreoffice.org/54449
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I10c291788061ec8467126a0dc719e20fb3cf47ec
Reviewed-on: https://gerrit.libreoffice.org/54386
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: If4af5991be51cdb035c0bc0fb7668844df703073
Reviewed-on: https://gerrit.libreoffice.org/54022
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
The new central CloneSdrObject in the case of SdrTableObj
has to do some more stuff due to the UNO API TableModel in-
volved and stuff. This is done in ::operator= now and thus
will work uniformly now (multi-select and copy).
At the same time there is functionality to clone/copy only
a partial Table in Draw/Impress when e.g some Cells are
selected. To reflect this code is needed to 'crop' the
just cloned SdrTableObj to the current selection. This again
was pretty hard due to side-effects in the implementation
using a mix of UNO API and SdrModel-stuff.
Change-Id: I9816e1caf34e29021d46d6dd9bb935c634f5ba2e
Reviewed-on: https://gerrit.libreoffice.org/53975
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Renamed SdrPage::Clone -> SdrPage::CloneSdrPage
Renamed SdrObject::Clone -> SdrObject::CloneSdrObject
Giving SdrModel is no longer an option, but a must (as
reference). This makes future changes more safe by force
usage to think about it. Also equals the constructors
which already require a target SdrModel.
Done the same for ::CloneSdrPage.
Change-Id: I06f0129e15140bd8693db27a445037d7e2f7f652
Reviewed-on: https://gerrit.libreoffice.org/53933
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Change-Id: Ie980c0f50483235663e9560fbcf61cf284663228
Reviewed-on: https://gerrit.libreoffice.org/53878
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
SdrObjList::Clear() does broadcast the SdrObject
removals and deletions and a SetChanged() to SdrModel.
The old version avoided this in the destructor (with
a comment to not call virtual methods in destructor,
but the problem is more that the ::Notify triggered
works on the SdrPage already in destruction). To allow
calls to Clear() without broadcasting I splitted this
to a impClearSdrObjList(bool bBrodacast) and rename
of ::Clear to ::ClearSdrObjList to get all places.
Adapted all places in the code as needed, already pre-
checked on Linux that this fixes the problem.
Change-Id: Iea46758fb6b57f2b3d9896959a35260c6f6d52d5
Reviewed-on: https://gerrit.libreoffice.org/53839
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Change-Id: I36e7af3b1b74a78103c079da58ae1a820b164720
Reviewed-on: https://gerrit.libreoffice.org/53753
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I9da160c4d20109ef539e1877968044a168b3e7e2
Reviewed-on: https://gerrit.libreoffice.org/53757
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I10c9db25dfb0cce7d0815cdc8aff290b3d0c0026
Reviewed-on: https://gerrit.libreoffice.org/53755
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ie3a471e67b7596c967a38b26c250f82f16b80e61
Reviewed-on: https://gerrit.libreoffice.org/53754
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I73411368b55d53e83f45e0347663036f1f72c066
Reviewed-on: https://gerrit.libreoffice.org/53752
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I41f3441593afa1884d5e8cda4126e97b545fd0a8
Reviewed-on: https://gerrit.libreoffice.org/53750
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
In current versions MapMode handling is done in ::TRSet/Get-
BaseGeometry methods. These belong to SdrModel level and
should not do any MapMode conversions (else all geometry
and Rectangle setters/getters should have to do these, too).
Instead, the UNO API implementation should do these, there
are already some done there and this is the level which offers
pure 100ThMM handling to the caller, independent from the
used application.
Change-Id: I3d7781440fc0fc6a20b5d4e79c747c988677483d
Reviewed-on: https://gerrit.libreoffice.org/53748
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
and some of its callers
Change-Id: I121a7810e3e35e76da4ffe5fc5405a7bf86cb66d
Reviewed-on: https://gerrit.libreoffice.org/53728
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia5a57913b607c0c055a525094ac03c5c3022abb4
Reviewed-on: https://gerrit.libreoffice.org/53713
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I56bd1a7ac204f4302261e46d0b8c5dd62c4b6df9
Reviewed-on: https://gerrit.libreoffice.org/53624
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Contained only a l10n wrapper method above SvxResId
Change-Id: I9ea7537773b40c38835b8fe975e303cc3dc433c1
Reviewed-on: https://gerrit.libreoffice.org/53547
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This is a wrapper above SvxResId without added value
Change-Id: I1b0cdad3c01e741df1032d6a13aea74d66502144
Reviewed-on: https://gerrit.libreoffice.org/53489
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
A l10n wrapper method above another wrapper method above SvxResId.
Just use plain SvxResId instead.
Change-Id: I85276caa193c9a20f285e832764cd920df4af3fb
Reviewed-on: https://gerrit.libreoffice.org/53273
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Found by searching for the header names and the localization functions:
git grep -l -e \<svx/dialmgr.hxx\> -e \<svx/strings.hrc\> -e svdglob.hxx |
xargs grep -c -e SvxResId -e SvxResLocale -e ImpGetResStr | grep :0$ | grep -v /pch
Change-Id: I45c979589165086288030031e713d536005a9833
Reviewed-on: https://gerrit.libreoffice.org/53241
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
when we see a unaryoperator, unless it's one of a small set, we can
know (mostly) that the field will not be written.
there is still a small risk of false+ with code taking references
via conditional expressions.
Change-Id: I96fa808067576a50e5eaf425338e225b4e0bdd4e
Reviewed-on: https://gerrit.libreoffice.org/53263
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
renamed temporary list in EnhancedCustomShape2d.cxx to avoid shadow
of a local variable
Change-Id: I17a2261dafd2067480fcc5314af4f48765d6b690
Reviewed-on: https://gerrit.libreoffice.org/53244
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
|
|
Change-Id: I9dc6e81149eae3ba2284fa7fe608dd9252503dce
Reviewed-on: https://gerrit.libreoffice.org/53197
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
When a document is loaded it takes a lot of time and memory to
load the graphic that are in the documet, so avoid that and just
store the compressed graphic into a temporary file (handeled by
GfxLink) and load when we really need to show the graphic.
GraphicObject cached some attributes from Graphic, but this
attributes now aren't available immediately so this attributes
are removed form GraphicObject and now delegate to the Graphic
itself. GetSizeBytes attribute however was removed as it is
only used in some tests.
GfxLink initial values were moved to the constructor and are
not set in the header file anymore (as it is the recommended
way to do it).
The SdImportTest::testDocumentLayout failed as it looks like the
dump sometimes didn't include the width and height of the null
bitmap (which is set to 32x32) of the FillBitmap in some
situations, but then in other situations it did include this
attributes. With this change the width and height are always
included for the FillBitmap which looks like it is more correct.
Change-Id: Ia1218f93b1735402b7828404f65660e2d4acf32f
Reviewed-on: https://gerrit.libreoffice.org/53016
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
with
commit dfefe448c41921f2f1e54d3f69b8b9e89031d055
Date: Thu Mar 1 15:54:32 2018 +0100
SOSAW080: Added first bunch of basic changes to helpers
Change-Id: Ib0dc816a62f36966f0d61b16916a49f11007b413
Reviewed-on: https://gerrit.libreoffice.org/53169
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Change-Id: I8f3bad622daa3ce118d20c5be12294a3fab85c2a
Reviewed-on: https://gerrit.libreoffice.org/53166
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I77a49d55dd49b0fd41f5335ac30a5484ac130250
Reviewed-on: https://gerrit.libreoffice.org/53050
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I3d1b88dbd0ff73fddc08d52f50e0efb42daab89b
Reviewed-on: https://gerrit.libreoffice.org/52756
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
E3DObjList is not needed, remove. Remove memeber from
E3DObject, derive E3DScene directly from SdrObjList, some
cleanups in SdrObject, too
Change-Id: Ifa4620a800c14faf21f8b80fd4dc1d39f71be804
Reviewed-on: https://gerrit.libreoffice.org/52740
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
|
|
Change-Id: I16b162f86d6221d120f6355f9a52c1abfcd0ac73
Reviewed-on: https://gerrit.libreoffice.org/52911
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Iffe047b081fde0bb582d8730a8e96d2597c7567a
Reviewed-on: https://gerrit.libreoffice.org/52780
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I0c9d917b8673680dbd0729f7f9a4cf5a6e686908
Reviewed-on: https://gerrit.libreoffice.org/52543
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Akt -> Current
Anf -> Start
in svdmodel
Change-Id: I67b255bfcf67769d4baa11986acbcc3a7e919a8f
Reviewed-on: https://gerrit.libreoffice.org/52189
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
Akt -> Current in svdraw
Change-Id: I8df687a5e78ad3e5e5e89b7013f782aa665529cf
Reviewed-on: https://gerrit.libreoffice.org/52190
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
Change-Id: Iab4fb31c975bc19ccd895df9de79c0ad055027c0
Reviewed-on: https://gerrit.libreoffice.org/52746
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
collection of heuristics to look for local variables that are never read
from i.e. do not contribute to the surrounding logic
This is an expensive plugin, since it walks up the parent tree,
so it is off by default.
Change-Id: Ib8ba292241bd16adf299e8bba4502cb473513a06
Reviewed-on: https://gerrit.libreoffice.org/52450
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
ever since
commit e0bc1ab9d8fd9247c60324f596faafd7e42540f4
Date: Mon Oct 4 16:54:47 2004 +0000
INTEGRATION: CWS mav09 (1.42.58); FILE MERGED
SdrOle2Obj::SetObjRef calls mpImpl->mxObjRef.Clear();
so SdrOle2Obj::Disconnect_Impl cannot removeobj the
object from the olecache, i.e.
if ( mpImpl->mxObjRef.is() && mpImpl->mxLightClient.is() )
...
GetSdrGlobalData().GetOLEObjCache().RemoveObj(this);
...
so the object remains in the cache and later on is dereferenced
with the usual sad results.
So, this band-aid ensures that if we get to the dtor and are still in the cache
we get removed.
Change-Id: Icf519e4db3eadf1c0d9acb7751dbea9cc04ca382
Reviewed-on: https://gerrit.libreoffice.org/52667
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|