summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2021-04-17 14:46:59 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-04-17 20:29:59 +0200
commitb236b36475ed9a204ac931c34ccc23205296a0a6 (patch)
tree32770e990c8ceadfb5da9e1e1d6b19a482186c97
parent806cc759ef002da5dff1d151ea8485bd871e814c (diff)
remove some caching
if we going to recreate it every time we call this method, there is no point in caching the result. Change-Id: Ie1f7bde86eca5cdd998fa8626303d3dead479ad3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114231 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--include/svx/sdr/contact/viewcontact.hxx8
-rw-r--r--svx/source/sdr/contact/viewcontact.cxx15
2 files changed, 3 insertions, 20 deletions
diff --git a/include/svx/sdr/contact/viewcontact.hxx b/include/svx/sdr/contact/viewcontact.hxx
index c5cc61883a49..c7119fcd93e2 100644
--- a/include/svx/sdr/contact/viewcontact.hxx
+++ b/include/svx/sdr/contact/viewcontact.hxx
@@ -46,11 +46,6 @@ private:
// Registering and de-registering is done in the VOC constructors/destructors.
std::vector<ViewObjectContact*> maViewObjectContactVector;
- // Primitive2DContainer of the ViewContact. This contains all necessary information
- // for the graphical visualisation and needs to be supported by all VCs which
- // can be visualized.
- drawinglayer::primitive2d::Primitive2DContainer mxViewIndependentPrimitive2DSequence;
-
// A new ViewObjectContact was created and shall be remembered.
void AddViewObjectContact(ViewObjectContact& rVOContact);
@@ -123,8 +118,7 @@ public:
// access to the local primitive. This will ensure that the primitive is
// current in comparing the local one with a fresh created incarnation
- drawinglayer::primitive2d::Primitive2DContainer const&
- getViewIndependentPrimitive2DContainer() const;
+ drawinglayer::primitive2d::Primitive2DContainer getViewIndependentPrimitive2DContainer() const;
// add Gluepoints (if available)
virtual drawinglayer::primitive2d::Primitive2DContainer
diff --git a/svx/source/sdr/contact/viewcontact.cxx b/svx/source/sdr/contact/viewcontact.cxx
index 8e8d35db4406..0d1a9f0cb085 100644
--- a/svx/source/sdr/contact/viewcontact.cxx
+++ b/svx/source/sdr/contact/viewcontact.cxx
@@ -38,7 +38,6 @@ ViewObjectContact& ViewContact::CreateObjectSpecificViewObjectContact(ObjectCont
ViewContact::ViewContact()
: maViewObjectContactVector()
- , mxViewIndependentPrimitive2DSequence()
{
}
@@ -105,9 +104,7 @@ void ViewContact::RemoveViewObjectContact(ViewObjectContact& rVOContact)
maViewObjectContactVector.begin(), maViewObjectContactVector.end(), &rVOContact);
if (aFindResult != maViewObjectContactVector.end())
- {
maViewObjectContactVector.erase(aFindResult);
- }
}
// Test if this ViewContact has ViewObjectContacts at all. This can
@@ -226,10 +223,9 @@ ViewContact::createViewIndependentPrimitive2DSequence() const
return drawinglayer::primitive2d::Primitive2DContainer{ xReference };
}
-drawinglayer::primitive2d::Primitive2DContainer const&
+drawinglayer::primitive2d::Primitive2DContainer
ViewContact::getViewIndependentPrimitive2DContainer() const
{
- // local up-to-date checks. Create new list and compare.
drawinglayer::primitive2d::Primitive2DContainer xNew(
createViewIndependentPrimitive2DSequence());
@@ -239,14 +235,7 @@ ViewContact::getViewIndependentPrimitive2DContainer() const
xNew = embedToObjectSpecificInformation(std::move(xNew));
}
- if (mxViewIndependentPrimitive2DSequence != xNew)
- {
- // has changed, copy content
- const_cast<ViewContact*>(this)->mxViewIndependentPrimitive2DSequence = std::move(xNew);
- }
-
- // return current Primitive2DContainer
- return mxViewIndependentPrimitive2DSequence;
+ return xNew;
}
// add Gluepoints (if available)