diff options
author | Miklos Vajna <vmiklos@collabora.com> | 2021-02-08 16:49:45 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2021-02-10 12:12:17 +0100 |
commit | 3010ee15889a52b23aef278300e29f06739882d6 (patch) | |
tree | 466e2b315afa1b8938a02328f16d2ace770074c4 /editeng | |
parent | 9dc25ec68f3342f257ac0b0a6ed2f7165473ed3d (diff) |
tdf#91920 sw page gutter margin: handle mirrored margins
- SwPageDesc::Mirror: generate "right gutter margin" from gutter margin
for mirrored pages, we just lost the gutter margin here previously
- SwBorderAttrs::CalcRight: handle right gutter margin, so gutter
increases the right margin, not the left margin on mirrored pages
- lcl_CalcBorderRect: similar to left and top margins, compensate for
right margin gutter as well, so borders are independent from the gutter
margin (Word compat)
(cherry picked from commit ffe7fd5c3f3de474b201fbb1e25b8251cb13574d)
Conflicts:
editeng/source/items/frmitems.cxx
include/editeng/lrspitem.hxx
sw/source/core/layout/paintfrm.cxx
Change-Id: Ie4d3459ab6edcc60b20c2fed08dbf45060ca9828
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110692
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'editeng')
-rw-r--r-- | editeng/source/items/frmitems.cxx | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/editeng/source/items/frmitems.cxx b/editeng/source/items/frmitems.cxx index 0de646470ecb..36b32996c0db 100644 --- a/editeng/source/items/frmitems.cxx +++ b/editeng/source/items/frmitems.cxx @@ -309,6 +309,7 @@ SvxLRSpaceItem::SvxLRSpaceItem( const sal_uInt16 nId ) : nLeftMargin ( 0 ), nRightMargin ( 0 ), m_nGutterMargin(0), + m_nRightGutterMargin(0), nPropFirstLineOfst( 100 ), nPropLeftMargin( 100 ), nPropRightMargin( 100 ), @@ -329,6 +330,7 @@ SvxLRSpaceItem::SvxLRSpaceItem( const long nLeft, const long nRight, nLeftMargin ( nLeft ), nRightMargin ( nRight ), m_nGutterMargin(0), + m_nRightGutterMargin(0), nPropFirstLineOfst( 100 ), nPropLeftMargin( 100 ), nPropRightMargin( 100 ), @@ -503,6 +505,7 @@ bool SvxLRSpaceItem::operator==( const SfxPoolItem& rAttr ) const nFirstLineOfst == rOther.GetTextFirstLineOfst() && nTxtLeft == rOther.GetTextLeft() && m_nGutterMargin == rOther.GetGutterMargin() && + m_nRightGutterMargin == rOther.GetRightGutterMargin() && nLeftMargin == rOther.GetLeft() && nRightMargin == rOther.GetRight() && nPropFirstLineOfst == rOther.GetPropTextFirstLineOfst() && @@ -629,6 +632,8 @@ void SvxLRSpaceItem::dumpAsXml(xmlTextWriterPtr pWriter) const xmlTextWriterWriteAttribute(pWriter, BAD_CAST("nRightMargin"), BAD_CAST(OString::number(nRightMargin).getStr())); xmlTextWriterWriteAttribute(pWriter, BAD_CAST("m_nGutterMargin"), BAD_CAST(OString::number(m_nGutterMargin).getStr())); + xmlTextWriterWriteAttribute(pWriter, BAD_CAST("m_nRightGutterMargin"), + BAD_CAST(OString::number(m_nRightGutterMargin).getStr())); xmlTextWriterWriteAttribute(pWriter, BAD_CAST("nPropFirstLineOfst"), BAD_CAST(OString::number(nPropFirstLineOfst).getStr())); xmlTextWriterWriteAttribute(pWriter, BAD_CAST("nPropLeftMargin"), BAD_CAST(OString::number(nPropLeftMargin).getStr())); xmlTextWriterWriteAttribute(pWriter, BAD_CAST("nPropRightMargin"), BAD_CAST(OString::number(nPropRightMargin).getStr())); |