summaryrefslogtreecommitdiff
path: root/sw/source/core/inc/swfont.hxx
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2019-02-12 17:50:59 +0100
committerMiklos Vajna <vmiklos@collabora.com>2019-02-13 09:02:37 +0100
commitcb9f393a5293c0f39d76b703154f8392c45f8047 (patch)
treec772c9afd86d11aefabcb2e36b9fe62bbe8cd65e /sw/source/core/inc/swfont.hxx
parent16780939141031632d04603a148859dc8a1ef3e1 (diff)
sw btlr writing mode layout: implement unmapping of this direction
Fix various cases which trigger this warning: warn:legacy.osl:10975:10975:sw/source/core/txtnode/swfont.cxx:427: Unsupported direction Which means that we tried to work with a VCL direction of 900, without passing around the btlr flag accordingly. Change-Id: I96374fc949f60e8324c5a84de48b710b6461bafb Reviewed-on: https://gerrit.libreoffice.org/67746 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'sw/source/core/inc/swfont.hxx')
-rw-r--r--sw/source/core/inc/swfont.hxx26
1 files changed, 18 insertions, 8 deletions
diff --git a/sw/source/core/inc/swfont.hxx b/sw/source/core/inc/swfont.hxx
index cc299a1d3fba..2e1369450c89 100644
--- a/sw/source/core/inc/swfont.hxx
+++ b/sw/source/core/inc/swfont.hxx
@@ -46,7 +46,7 @@ const sal_Unicode CH_TAB = '\t'; // \t
const sal_Unicode CH_PAR = 0xB6; // paragraph
const sal_Unicode CH_BULLET = 0xB7; // centered dot
-sal_uInt16 UnMapDirection( sal_uInt16 nDir, const bool bVertFormat );
+sal_uInt16 UnMapDirection( sal_uInt16 nDir, const bool bVertFormat, const bool bVertFormatLRBT );
class SwSubFont : public SvxFont
{
@@ -282,7 +282,8 @@ public:
FontWeight GetWeight() const { return m_aSub[m_nActual].GetWeight(); }
FontEmphasisMark GetEmphasisMark() const
{ return m_aSub[m_nActual].GetEmphasisMark(); }
- sal_uInt16 GetOrientation( const bool bVertLayout = false ) const;
+ sal_uInt16 GetOrientation(const bool bVertLayout = false,
+ const bool bVertFormatLRBT = false) const;
const OUString& GetName( const SwFontScript nWhich ) const
{ return m_aSub[nWhich].GetFamilyName(); }
@@ -339,10 +340,14 @@ public:
const boost::optional<editeng::SvxBorderLine>& GetLeftBorder() const { return m_aLeftBorder; }
// Get absolute border correspond to the layout verticality and orientation.
- const boost::optional<editeng::SvxBorderLine>& GetAbsTopBorder( const bool bVertLayout ) const;
- const boost::optional<editeng::SvxBorderLine>& GetAbsBottomBorder( const bool bVertLayout ) const;
- const boost::optional<editeng::SvxBorderLine>& GetAbsRightBorder( const bool bVertLayout ) const;
- const boost::optional<editeng::SvxBorderLine>& GetAbsLeftBorder( const bool bVertLayout ) const;
+ const boost::optional<editeng::SvxBorderLine>&
+ GetAbsTopBorder(const bool bVertLayout, const bool bVertLayoutLRBT) const;
+ const boost::optional<editeng::SvxBorderLine>&
+ GetAbsBottomBorder(const bool bVertLayout, const bool bVertLayoutLRBT) const;
+ const boost::optional<editeng::SvxBorderLine>&
+ GetAbsRightBorder(const bool bVertLayout, const bool bVertLayoutLRBT) const;
+ const boost::optional<editeng::SvxBorderLine>&
+ GetAbsLeftBorder(const bool bVertLayout, const bool bVertLayoutLRBT) const;
void SetTopBorderDist( const sal_uInt16 nTopDist );
void SetBottomBorderDist( const sal_uInt16 nBottomDist );
@@ -376,9 +381,12 @@ public:
*
* @param[in] bVertLayout true, if the container layout is vertical
* false, otherwise
+ * @param[in] bVertLayoutLRBT true if the container layout is vertical
+ * (bottom to top, left to right), false otherwise
* @return absolute location
**/
- SvxShadowLocation GetAbsShadowLocation( const bool bVertLayout ) const;
+ SvxShadowLocation GetAbsShadowLocation(const bool bVertLayout,
+ const bool bVertLayoutLRBT) const;
/**
* Calculate the shadow space on the specified side dependent from
@@ -388,12 +396,14 @@ public:
* @param[in] nShadow specify the side
* @param[in] bVertLayout true, if the container layout is vertical
* false, otherwise
+ * @param[in] bVertLayoutLRBT true if the container layout is vertical
+ * (bottom to top, left to right), false otherwise
* @param[in] bSkipLeft relative left shadow space is skipped
* @param[in] bSkipRight relative right shadow space is skipped
* @return the shadow space
**/
sal_uInt16 CalcShadowSpace(
- const SvxShadowItemSide nShadow, const bool bVertLayout,
+ const SvxShadowItemSide nShadow, const bool bVertLayout, const bool bVertLayoutLRBT,
const bool bSkipLeft, const bool bSkipRight ) const;
void dumpAsXml( xmlTextWriterPtr writer ) const;