summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2022-02-21 14:00:09 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2022-02-21 15:12:29 +0100
commitd39f886ea541f71a09d1d7140c77852b01c847f0 (patch)
tree506dfb5867bec821456e09593e38d9d7ac88859d /include
parente4aaf59f4801431d5bdd1aa6e18d2aa8eba39f1c (diff)
speed up SvxShape::_setPropertyValue
by using the Properties related code to create an SfxItemSet with the correct ranges, instead of creating an empty SfxItemSet and updating it. Shaves 2% off the load time of a large chart. Change-Id: Ia1f8527fa52ab5b8c70e13e1e2ab8c8f25739b2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130270 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'include')
-rw-r--r--include/svx/sdr/properties/defaultproperties.hxx2
-rw-r--r--include/svx/sdr/properties/properties.hxx2
2 files changed, 3 insertions, 1 deletions
diff --git a/include/svx/sdr/properties/defaultproperties.hxx b/include/svx/sdr/properties/defaultproperties.hxx
index 09999c0ad66b..bae37df2753a 100644
--- a/include/svx/sdr/properties/defaultproperties.hxx
+++ b/include/svx/sdr/properties/defaultproperties.hxx
@@ -41,7 +41,7 @@ namespace sdr::properties
mutable std::optional<SfxItemSet> mxItemSet;
// create a new object specific itemset with object specific ranges.
- virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool);
+ virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
// Test changeability for a single item. If an implementation wants to prevent
// changing an item it should override this method.
diff --git a/include/svx/sdr/properties/properties.hxx b/include/svx/sdr/properties/properties.hxx
index e100e8e778c3..d793753c6a39 100644
--- a/include/svx/sdr/properties/properties.hxx
+++ b/include/svx/sdr/properties/properties.hxx
@@ -92,6 +92,8 @@ namespace sdr::properties
// destructor
virtual ~BaseProperties();
+ virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) = 0;
+
// Clone() operator, normally just calls the local copy constructor,
// see above.
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const = 0;