diff options
author | Miklos Vajna <vmiklos@suse.cz> | 2012-10-11 10:21:57 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2012-10-11 11:52:48 +0200 |
commit | 3852f56ebc7f7ed26bcaf60474448ca4097c53d6 (patch) | |
tree | 39bcc0609e57655e964b9987eed07a411bd0ab0b /writerfilter/source | |
parent | 997b202528730abc4b47510befa19a44131a37f4 (diff) |
n#783638 DOCX import of wp:inline's distT/B/L/R attributes
Change-Id: I181fcae021eed07608b06744b469628e4d78ccba
(cherry picked from commit 847c5c1339bf0cfd9f3e3c92e8d81ef32bee6c21)
Diffstat (limited to 'writerfilter/source')
-rw-r--r-- | writerfilter/source/dmapper/GraphicImport.cxx | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/writerfilter/source/dmapper/GraphicImport.cxx b/writerfilter/source/dmapper/GraphicImport.cxx index 18f65a448586..90d86365d281 100644 --- a/writerfilter/source/dmapper/GraphicImport.cxx +++ b/writerfilter/source/dmapper/GraphicImport.cxx @@ -342,6 +342,15 @@ public: { return bYSizeValid; } + + void applyMargins(uno::Reference< beans::XPropertySet > xGraphicObjectProperties) const + { + PropertyNameSupplier& rPropNameSupplier = PropertyNameSupplier::GetPropertyNameSupplier(); + xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_LEFT_MARGIN ), uno::makeAny(nLeftMargin)); + xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_RIGHT_MARGIN ), uno::makeAny(nRightMargin)); + xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_TOP_MARGIN ), uno::makeAny(nTopMargin)); + xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_BOTTOM_MARGIN ), uno::makeAny(nBottomMargin)); + } }; @@ -959,10 +968,17 @@ void GraphicImport::lcl_attribute(Id nName, Value & val) } break; case NS_ooxml::LN_CT_Inline_distT: + m_pImpl->nTopMargin = ConversionHelper::convertTwipToMM100(nIntValue); + break; case NS_ooxml::LN_CT_Inline_distB: + m_pImpl->nBottomMargin = ConversionHelper::convertTwipToMM100(nIntValue); + break; case NS_ooxml::LN_CT_Inline_distL: + m_pImpl->nLeftMargin = ConversionHelper::convertTwipToMM100(nIntValue); + break; case NS_ooxml::LN_CT_Inline_distR: - //TODO: need to be handled + m_pImpl->nRightMargin = ConversionHelper::convertTwipToMM100(nIntValue); + break; break; case NS_ooxml::LN_CT_GraphicalObjectData_uri: val.getString(); @@ -1413,14 +1429,7 @@ uno::Reference< text::XTextContent > GraphicImport::createGraphicObject( const b uno::makeAny(m_pImpl->bContour)); xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_CONTOUR_OUTSIDE ), uno::makeAny(m_pImpl->bContourOutside)); - xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_LEFT_MARGIN ), - uno::makeAny(m_pImpl->nLeftMargin)); - xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_RIGHT_MARGIN ), - uno::makeAny(m_pImpl->nRightMargin)); - xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_TOP_MARGIN ), - uno::makeAny(m_pImpl->nTopMargin)); - xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName( PROP_BOTTOM_MARGIN ), - uno::makeAny(m_pImpl->nBottomMargin)); + m_pImpl->applyMargins(xGraphicObjectProperties); if( m_pImpl->eColorMode == drawing::ColorMode_STANDARD && m_pImpl->nContrast == -70 && @@ -1510,6 +1519,7 @@ uno::Reference< text::XTextContent > GraphicImport::createGraphicObject( const b if( m_pImpl->getXSize() && m_pImpl->getYSize() ) xGraphicObjectProperties->setPropertyValue(rPropNameSupplier.GetName(PROP_SIZE), uno::makeAny( awt::Size( m_pImpl->getXSize(), m_pImpl->getYSize() ))); + m_pImpl->applyMargins(xGraphicObjectProperties); try { if( !m_pImpl->sName.isEmpty() ) |