diff options
author | Miklos Vajna <vmiklos@collabora.com> | 2019-02-12 17:50:59 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2019-02-13 09:02:37 +0100 |
commit | cb9f393a5293c0f39d76b703154f8392c45f8047 (patch) | |
tree | c772c9afd86d11aefabcb2e36b9fe62bbe8cd65e /sw/source/core/inc/swfont.hxx | |
parent | 16780939141031632d04603a148859dc8a1ef3e1 (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.hxx | 26 |
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; |