diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2017-12-21 20:08:33 +0900 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2017-12-21 16:32:36 +0100 |
commit | 394e869234cb27d5526716f7d9a9c1e491735a41 (patch) | |
tree | 500f266b5ad2748980a141047e6c5670fa9cb415 /svx | |
parent | d0f51d571c2e24c647eea7f68085531d251ce812 (diff) |
chart2: suspend/resume setting rects dirty for 3D shapes
Previously we bypassed setting rects as dirty for a scene just
before we are about to create a 3D object. With this change we
do it earlier and suspend for the whole time we are creating the
scene - so we guarantee to o it for all 3D objects in that code
path. Aferwards we resume with setting rects and mark the whole
scene as dirty so we don't miss some update.
Reviewed-on: https://gerrit.libreoffice.org/46901
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
(cherry picked from commit b2c3233e5f267b5d244d722a94424a3b224b3314)
Change-Id: Ie4dec644102140edf282a2f5f6eb7fc9b81dbe48
Reviewed-on: https://gerrit.libreoffice.org/46919
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'svx')
-rw-r--r-- | svx/source/engine3d/scene3d.cxx | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/svx/source/engine3d/scene3d.cxx b/svx/source/engine3d/scene3d.cxx index 6c75e459bc8d..55b39b62aab5 100644 --- a/svx/source/engine3d/scene3d.cxx +++ b/svx/source/engine3d/scene3d.cxx @@ -438,16 +438,21 @@ E3dScene* E3dScene::Clone() const return CloneHelper< E3dScene >(); } -void E3dScene::EnterObjectSetupMode() +void E3dScene::SuspendReportingDirtyRects() { GetScene()->mbSkipSettingDirty = true; } -void E3dScene::ExitObjectSetupMode() +void E3dScene::ResumeReportingDirtyRects() { GetScene()->mbSkipSettingDirty = false; } +void E3dScene::SetAllSceneRectsDirty() +{ + GetScene()->SetRectsDirty(); +} + E3dScene& E3dScene::operator=(const E3dScene& rObj) { if( this == &rObj ) |