|
 |
a9add1 |
From eafd3ee3f01bceef0eb3327be3139a8eee2a2b2e Mon Sep 17 00:00:00 2001
|
|
 |
a9add1 |
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
 |
a9add1 |
Date: Thu, 5 Nov 2015 13:42:13 +0000
|
|
 |
a9add1 |
Subject: [PATCH] tdf#95210 SetHandleControllerPosition is busted wrt
|
|
 |
a9add1 |
HandleFlags::REFX
|
|
 |
a9add1 |
|
|
 |
a9add1 |
so instead of saving the initial pos and trying to restore the pos, instead use
|
|
 |
a9add1 |
a bigger hammer and save the entire geometry and restore that instead.
|
|
 |
a9add1 |
|
|
 |
a9add1 |
Change-Id: Id06ea8f205f30771987089c5dc949bb52adc7a27
|
|
 |
a9add1 |
---
|
|
 |
a9add1 |
cui/source/tabpages/transfrm.cxx | 16 ++++++++++------
|
|
 |
a9add1 |
1 file changed, 10 insertions(+), 6 deletions(-)
|
|
 |
a9add1 |
|
|
 |
a9add1 |
diff --git a/cui/source/tabpages/transfrm.cxx b/cui/source/tabpages/transfrm.cxx
|
|
 |
a9add1 |
index f6b1f26..0db63db 100644
|
|
 |
a9add1 |
--- a/cui/source/tabpages/transfrm.cxx
|
|
 |
a9add1 |
+++ b/cui/source/tabpages/transfrm.cxx
|
|
 |
a9add1 |
@@ -633,10 +633,15 @@ void SvxSlantTabPage::Reset(const SfxItemSet* rAttrs)
|
|
 |
a9add1 |
SdrObjKind eKind = (SdrObjKind) pObj->GetObjIdentifier();
|
|
 |
a9add1 |
if (eKind == OBJ_CUSTOMSHAPE)
|
|
 |
a9add1 |
{
|
|
 |
a9add1 |
+ //save geometry
|
|
 |
a9add1 |
+ SdrCustomShapeGeometryItem aInitialGeometry =
|
|
 |
a9add1 |
+ static_cast<const SdrCustomShapeGeometryItem&>(pObj->GetMergedItem(SDRATTR_CUSTOMSHAPE_GEOMETRY));
|
|
 |
a9add1 |
+
|
|
 |
a9add1 |
EnhancedCustomShape2d aShape(pObj);
|
|
 |
a9add1 |
- Point aInitialPosition;
|
|
 |
a9add1 |
+
|
|
 |
a9add1 |
for (int i = 0; i < 2; ++i)
|
|
 |
a9add1 |
{
|
|
 |
a9add1 |
+ Point aInitialPosition;
|
|
 |
a9add1 |
if (!aShape.GetHandlePosition(i, aInitialPosition))
|
|
 |
a9add1 |
break;
|
|
 |
a9add1 |
m_aControlGroups[i]->Enable();
|
|
 |
a9add1 |
@@ -655,14 +660,10 @@ void SvxSlantTabPage::Reset(const SfxItemSet* rAttrs)
|
|
 |
a9add1 |
aShape.GetHandlePosition(i, aMinPosition);
|
|
 |
a9add1 |
|
|
 |
a9add1 |
Rectangle aLogicRect = aShape.GetLogicRect();
|
|
 |
a9add1 |
+ aInitialPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
|
 |
a9add1 |
aMaxPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
|
 |
a9add1 |
aMinPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
|
 |
a9add1 |
|
|
 |
a9add1 |
- aPosition.X = aInitialPosition.X();
|
|
 |
a9add1 |
- aPosition.Y = aInitialPosition.Y();
|
|
 |
a9add1 |
- aInitialPosition.Move(-aLogicRect.Left(), -aLogicRect.Top());
|
|
 |
a9add1 |
- aShape.SetHandleControllerPosition(i, aPosition);
|
|
 |
a9add1 |
-
|
|
 |
a9add1 |
SetMetricValue(*m_aControlX[i], aInitialPosition.X(), ePoolUnit);
|
|
 |
a9add1 |
SetMetricValue(*m_aControlY[i], aInitialPosition.Y(), ePoolUnit);
|
|
 |
a9add1 |
|
|
 |
a9add1 |
@@ -681,6 +682,9 @@ void SvxSlantTabPage::Reset(const SfxItemSet* rAttrs)
|
|
 |
a9add1 |
m_aControlY[i]->SetMax(aMaxPosition.Y(), FUNIT_MM);
|
|
 |
a9add1 |
}
|
|
 |
a9add1 |
}
|
|
 |
a9add1 |
+
|
|
 |
a9add1 |
+ //restore geometry
|
|
 |
a9add1 |
+ pObj->SetMergedItem(aInitialGeometry);
|
|
 |
a9add1 |
}
|
|
 |
a9add1 |
}
|
|
 |
a9add1 |
for (int i = 0; i < 2; ++i)
|
|
 |
a9add1 |
--
|
|
 |
a9add1 |
2.5.0
|
|
 |
a9add1 |
|