summaryrefslogtreecommitdiff
path: root/editeng
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2021-02-08 16:49:45 +0100
committerMiklos Vajna <vmiklos@collabora.com>2021-02-10 12:12:17 +0100
commit3010ee15889a52b23aef278300e29f06739882d6 (patch)
tree466e2b315afa1b8938a02328f16d2ace770074c4 /editeng
parent9dc25ec68f3342f257ac0b0a6ed2f7165473ed3d (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.cxx5
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()));