diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2018-09-10 17:07:47 +0300 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2018-09-11 06:03:24 +0200 |
commit | c3422cd205d8da852f5c310b5f08028d6c4c5eb4 (patch) | |
tree | 0f70099878e33d6b3056c7d36eb8bb01e5d89bc0 /xmloff | |
parent | 9c6c179ee4e71127194c4e50fd96ad21995a85c9 (diff) |
tdf#109229: Set "TextBox" prop before filling textbox-related props
Otherwise those properties aren't set, and defaults are used
Change-Id: Ib6671c019ff652ec5b59d9cbbf02a4e536a17817
Reviewed-on: https://gerrit.libreoffice.org/60267
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'xmloff')
-rw-r--r-- | xmloff/source/draw/ximpshap.cxx | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/xmloff/source/draw/ximpshap.cxx b/xmloff/source/draw/ximpshap.cxx index c68be43fc9c9..21339eb6bbcf 100644 --- a/xmloff/source/draw/ximpshap.cxx +++ b/xmloff/source/draw/ximpshap.cxx @@ -696,6 +696,15 @@ void SdXMLShapeContext::SetStyle( bool bSupportsStyle /* = true */) } } + // Writer shapes: if this one has a TextBox, set it here. We need to do it before + // pDocStyle->FillPropertySet, because setting some properties depend on the format + // having RES_CNTNT attribute (e.g., UNO_NAME_TEXT_(LEFT|RIGHT|UPPER|LOWER)DIST; see + // SwTextBoxHelper::syncProperty, which indirectly calls SwTextBoxHelper::isTextBox) + uno::Reference<beans::XPropertySetInfo> xPropertySetInfo + = xPropSet->getPropertySetInfo(); + if (xPropertySetInfo->hasPropertyByName("TextBox")) + xPropSet->setPropertyValue("TextBox", uno::makeAny(mbTextBox)); + // if this is an auto style, set its properties if(bAutoStyle && pDocStyle) { @@ -703,11 +712,6 @@ void SdXMLShapeContext::SetStyle( bool bSupportsStyle /* = true */) pDocStyle->FillPropertySet(xPropSet); } - // Writer shapes: if this one has a TextBox, set it here. - uno::Reference<beans::XPropertySetInfo> xPropertySetInfo = xPropSet->getPropertySetInfo(); - if (xPropertySetInfo->hasPropertyByName("TextBox")) - xPropSet->setPropertyValue("TextBox", uno::makeAny(mbTextBox)); - } while(false); // try to set text auto style |