LibreOffice Module sw (master)  1
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
SwTextPainter Class Reference

#include <itrpaint.hxx>

Inheritance diagram for SwTextPainter:
[legend]
Collaboration diagram for SwTextPainter:
[legend]

Public Member Functions

 SwTextPainter (SwTextFrame *pTextFrame, SwTextPaintInfo *pTextPaintInf)
 
void DrawTextLine (const SwRect &rPaint, SwSaveClip &rClip, const bool bUnderSz)
 
void PaintDropPortion ()
 
void PaintMultiPortion (const SwRect &rPaint, SwMultiPortion &rMulti, const SwMultiPortion *pEnvPor=nullptr)
 
void SetPaintDrop (const bool bNew)
 
bool IsPaintDrop () const
 
SwTextPaintInfoGetInfo ()
 
const SwTextPaintInfoGetInfo () const
 
- Public Member Functions inherited from SwTextCursor
 SwTextCursor (SwTextFrame *pTextFrame, SwTextSizeInfo *pTextSizeInf)
 
void GetCharRect (SwRect *, TextFrameIndex, SwCursorMoveState *=nullptr, const long nMax=0)
 
void GetEndCharRect (SwRect *, TextFrameIndex, SwCursorMoveState *=nullptr, const long nMax=0)
 
TextFrameIndex GetCursorOfst (SwPosition *pPos, const Point &rPoint, bool bChgNode, SwCursorMoveState *=nullptr) const
 
const SwLineLayoutCharCursorToLine (TextFrameIndex const nPos)
 
sal_uInt16 AdjustBaseLine (const SwLineLayout &rLine, const SwLinePortion *pPor, sal_uInt16 nPorHeight=0, sal_uInt16 nAscent=0, const bool bAutoToCentered=false) const
 
- Public Member Functions inherited from SwTextAdjuster
void CalcAdjLine (SwLineLayout *pCurr)
 
void GetAdjusted () const
 
void CalcDropAdjust ()
 
void CalcDropRepaint ()
 
- Public Member Functions inherited from SwTextMargin
 SwTextMargin (SwTextFrame *pTextFrame, SwTextSizeInfo *pTextSizeInf)
 
SwTwips GetLeftMargin () const
 
SwTwips Left () const
 
SwTwips Right () const
 
SwTwips FirstLeft () const
 
SwTwips CurrWidth () const
 
SwTwips GetLineStart () const
 
SwTwips GetLineEnd () const
 
Point GetTopLeft () const
 
bool IsOneBlock () const
 
bool IsLastBlock () const
 
bool IsLastCenter () const
 
SvxAdjust GetAdjust () const
 
sal_uInt16 GetLineWidth () const
 
SwTwips GetLeftMin () const
 
bool HasNegFirst () const
 
SwTwips GetTabLeft () const
 
sal_uInt16 GetDropLines () const
 
void SetDropLines (const sal_uInt16 nNew)
 
sal_uInt16 GetDropLeft () const
 
sal_uInt16 GetDropHeight () const
 
void SetDropHeight (const sal_uInt16 nNew)
 
sal_uInt16 GetDropDescent () const
 
void SetDropDescent (const sal_uInt16 nNew)
 
void DropInit ()
 
TextFrameIndex GetTextStart () const
 
TextFrameIndex GetTextEnd () const
 
SwTextSizeInfoGetInfo ()
 
const SwTextSizeInfoGetInfo () const
 
- Public Member Functions inherited from SwTextIter
 SwTextIter (SwTextFrame *pTextFrame, SwTextInfo *pTextInf)
 
const SwLineLayoutGetCurr () const
 
const SwLineLayoutGetNext () const
 
const SwLineLayoutGetPrev ()
 
TextFrameIndex GetLength () const
 
sal_uInt16 GetLineNr () const
 
TextFrameIndex GetStart () const
 
TextFrameIndex GetEnd () const
 
SwTwips Y () const
 
SwTwips RegStart () const
 
sal_uInt16 RegDiff () const
 
bool IsRegisterOn () const
 
SwTextInfoGetInfo ()
 
const SwTextInfoGetInfo () const
 
void Top ()
 
void Bottom ()
 
const SwLineLayoutNext ()
 
const SwLineLayoutPrev ()
 
const SwLineLayoutNextLine ()
 
const SwLineLayoutPrevLine ()
 
const SwLineLayoutGetNextLine () const
 
const SwLineLayoutGetPrevLine ()
 
void CharToLine (TextFrameIndex)
 
void TwipsToLine (const SwTwips)
 
void TruncLines (bool bNoteFollow=false)
 
sal_uInt16 GetLineHeight () const
 
void CalcAscentAndHeight (sal_uInt16 &rAscent, sal_uInt16 &rHeight) const
 
bool IsFirstTextLine () const
 
bool IsParaLine () const
 
const SwLineInfoGetLineInfo () const
 
SwTwips GetFirstPos () const
 
bool SeekAndChg (SwTextSizeInfo &rInf)
 
bool SeekAndChgBefore (SwTextSizeInfo &rInf)
 
bool SeekStartAndChg (SwTextSizeInfo &rInf, const bool bPara=false)
 
SwTextFrameGetTextFrame ()
 
const SwTextFrameGetTextFrame () const
 
void CntHyphens (sal_uInt8 &nEndCnt, sal_uInt8 &nMidCnt) const
 
- Public Member Functions inherited from SwAttrIter
 SwAttrIter (SwTextNode &rTextNode, SwScriptInfo &rScrInf, SwTextFrame const *const pFrame=nullptr)
 All subclasses of this always have a SwTextFrame passed to the constructor, but SwAttrIter itself may be created without a SwTextFrame in certain special cases via this ctor here. More...
 
virtual ~SwAttrIter ()
 
SwRedlineItrGetRedln ()
 
TextFrameIndex GetNextAttr () const
 
bool Seek (TextFrameIndex nPos)
 Enables the attributes used at char pos nPos in the logical font. More...
 
bool IsSymbol (TextFrameIndex nPos)
 
bool SeekAndChgAttrIter (TextFrameIndex nPos, OutputDevice *pOut)
 Executes ChgPhysFnt if Seek() returns true and change font to merge character border with neighbours. More...
 
bool SeekStartAndChgAttrIter (OutputDevice *pOut, const bool bParaFont)
 
bool MaybeHasHints () const
 
SwTextAttrGetAttr (TextFrameIndex nPos) const
 Returns the attribute for a position. More...
 
SwFontGetFnt ()
 
const SwFontGetFnt () const
 
sal_uInt8 GetPropFont () const
 
void SetPropFont (const sal_uInt8 nNew)
 
SwAttrHandlerGetAttrHandler ()
 

Protected Member Functions

void CtorInitTextPainter (SwTextFrame *pFrame, SwTextPaintInfo *pInf)
 
 SwTextPainter (SwTextNode const *pTextNode)
 
- Protected Member Functions inherited from SwTextCursor
void CtorInitTextCursor (SwTextFrame *pFrame, SwTextSizeInfo *pInf)
 
 SwTextCursor (SwTextNode const *pTextNode)
 
- Protected Member Functions inherited from SwTextAdjuster
 SwTextAdjuster (SwTextNode const *pTextNode)
 
void CalcNewBlock (SwLineLayout *pCurr, const SwLinePortion *pStopAt, SwTwips nReal=0, bool bSkipKashida=false)
 
SwTwips CalcKanaAdj (SwLineLayout *pCurr)
 
- Protected Member Functions inherited from SwTextMargin
void Right (const SwTwips nNew)
 
void CtorInitTextMargin (SwTextFrame *pFrame, SwTextSizeInfo *pInf)
 
 SwTextMargin (SwTextNode const *pTextNode)
 
- Protected Member Functions inherited from SwTextIter
SwLineLayoutGetPrev_ ()
 
void Init ()
 
void CtorInitTextIter (SwTextFrame *pFrame, SwTextInfo *pInf)
 
 SwTextIter (SwTextNode const *pTextNode)
 
- Protected Member Functions inherited from SwAttrIter
void Chg (SwTextAttr const *pHt)
 
void Rst (SwTextAttr const *pHt)
 
void CtorInitAttrIter (SwTextNode &rTextNode, SwScriptInfo &rScrInf, SwTextFrame const *pFrame=nullptr)
 
 SwAttrIter (SwTextNode const *pTextNode)
 

Private Member Functions

SwLinePortionCalcPaintOfst (const SwRect &rPaint)
 
void CheckSpecialUnderline (const SwLinePortion *pPor, long nAdjustBaseLine=0)
 

Private Attributes

bool bPaintDrop
 

Additional Inherited Members

- Static Public Member Functions inherited from SwTextCursor
static void SetRightMargin (const bool bNew)
 
static bool IsRightMargin ()
 
- Protected Attributes inherited from SwTextIter
SwLineInfo m_aLineInf
 
SwTextFramem_pFrame
 
SwTextInfom_pInf
 
SwLineLayoutm_pCurr
 
SwLineLayoutm_pPrev
 
SwTwips m_nFrameStart
 
SwTwips m_nY
 
SwTwips m_nRegStart
 
TextFrameIndex m_nStart
 
sal_uInt16 m_nRegDiff
 
sal_uInt16 m_nLineNr
 
bool m_bPrev: 1
 
bool m_bRegisterOn: 1
 
bool m_bOneBlock: 1
 
bool m_bLastBlock: 1
 
bool m_bLastCenter: 1
 
- Protected Attributes inherited from SwAttrIter
SwAttrHandler m_aAttrHandler
 
SwViewShellm_pViewShell
 
SwFontm_pFont
 
SwScriptInfom_pScriptInfo
 

Detailed Description

Definition at line 27 of file itrpaint.hxx.

Constructor & Destructor Documentation

SwTextPainter::SwTextPainter ( SwTextNode const *  pTextNode)
inlineexplicitprotected

Definition at line 36 of file itrpaint.hxx.

SwTextPainter::SwTextPainter ( SwTextFrame pTextFrame,
SwTextPaintInfo pTextPaintInf 
)
inline

Definition at line 43 of file itrpaint.hxx.

References CtorInitTextPainter().

Member Function Documentation

SwLinePortion * SwTextPainter::CalcPaintOfst ( const SwRect rPaint)
private
void SwTextPainter::CheckSpecialUnderline ( const SwLinePortion pPor,
long  nAdjustBaseLine = 0 
)
private

Definition at line 490 of file itrpaint.cxx.

References SwTextCursor::AdjustBaseLine(), SwRedlineItr::ChkSpecialUnderline(), COL_AUTO(), COL_TRANSPARENT(), SwFont::GetActual(), SwAttrIter::GetAttrHandler(), SwFont::GetCaseMap(), SwTextIter::GetEnd(), SwUnderlineFont::GetEnd(), SwFont::GetEscapement(), SwAttrIter::GetFnt(), SwAttrHandler::GetFont(), SwUnderlineFont::GetFont(), SwFont::GetHeight(), SwTextSizeInfo::GetIdx(), GetInfo(), CharFormat::GetItem(), GetLen(), SwLinePortion::GetLen(), getLength(), SvxTextLineItem::GetLineStyle(), SwLinePortion::GetNextPortion(), SwTextInfo::GetParaPortion(), MultiSelection::GetRange(), MultiSelection::GetRangeCount(), SwAttrIter::GetRedln(), SwParaPortion::GetScriptInfo(), SwFont::GetSize(), SwTextIter::GetTextFrame(), GetUnderColor(), SwTextSizeInfo::GetUnderFnt(), SwFont::GetUnderline(), SwFont::GetWeight(), i, SwLinePortion::IsBreakPortion(), SwLinePortion::IsFlyCntPortion(), SwLinePortion::IsFlyPortion(), SwLinePortion::IsHolePortion(), SwLinePortion::IsMarginPortion(), SwLinePortion::IsMultiPortion(), IsUnderlineBreak(), SwFont::IsWordLineMode(), LINESTYLE_NONE, SwTextIter::m_pCurr, SwAttrIter::m_pFont, sw::MapModelToView(), Range::Max(), Range::Min(), sw::MergedAttrIter::NextAttr(), RES_CHRATR_UNDERLINE, SwAttrIter::Seek(), MultiSelection::Select(), MultiSelection::SelectAll(), SwFont::SetColor(), SwFont::SetEscapement(), SwFont::SetFillColor(), SwFont::SetOverline(), SwFont::SetProportion(), SwFont::SetSize(), SwFont::SetStrikeout(), SwTextSizeInfo::SetUnderFnt(), SwFont::SetWeight(), Point::setY(), STRIKEOUT_NONE, WEIGHT_BOLD, WEIGHT_NORMAL, Size::Width(), and SwPosSize::Width().

Referenced by DrawTextLine(), and PaintMultiPortion().

void SwTextPainter::CtorInitTextPainter ( SwTextFrame pFrame,
SwTextPaintInfo pInf 
)
protected
void SwTextPainter::DrawTextLine ( const SwRect rPaint,
SwSaveClip rClip,
const bool  bUnderSz 
)

Definition at line 136 of file itrpaint.cxx.

References SwTextCursor::AdjustBaseLine(), SwRect::Bottom(), bPaintDrop, SwTextIter::CalcAscentAndHeight(), CalcPaintOfst(), CheckSpecialUnderline(), SwSaveClip::ChgClip(), SwFont::ChgPhysFnt(), SwTextPaintInfo::DrawRedArrow(), SwTextAdjuster::GetAdjusted(), SwLinePortion::GetAscent(), SwTextIter::GetCurr(), SwTextMargin::GetDropLines(), SwTextIter::GetEnd(), SwLineLayout::GetFirstPortion(), SwAttrIter::GetFnt(), SwFrameAreaDefinition::getFrameArea(), SwFrameAreaDefinition::getFramePrintArea(), GetGridItem(), SwTextSizeInfo::GetIdx(), GetInfo(), SwLinePortion::GetLen(), getLength(), SwTextIter::GetLineInfo(), SwTextIter::GetLineNr(), SwFrame::GetNext(), SwTextIter::GetNextLine(), SwLinePortion::GetNextPortion(), SwTextSizeInfo::GetOpt(), SwTextSizeInfo::GetOut(), SwLineLayout::GetpKanaComp(), SwLineLayout::GetpLLSpaceAdd(), SwTextPaintInfo::GetPos(), SwUnderlineFont::GetPos(), SwTextIter::GetPrevLine(), SwAttrIter::GetRedln(), SwTextIter::GetStart(), SwTabPortion::GetTabPos(), SwTextSizeInfo::GetText(), SwTextIter::GetTextFrame(), SwTextMargin::GetTopLeft(), SwTextSizeInfo::GetUnderFnt(), SwViewShell::GetViewOptions(), SwTextSizeInfo::GetVsh(), SwLineLayout::HasRedline(), SwLineInfo::HasSpecialAlign(), SwLineLayout::HasUnderscore(), SwPosSize::Height(), SwRect::Height(), SwLinePortion::InFieldGrp(), SwLinePortion::InTabGrp(), SwLinePortion::InTextGrp(), SwLinePortion::IsArrowPortion(), SwLinePortion::IsBreakPortion(), SwSaveClip::IsChg(), SwLineLayout::IsClipping(), SwLinePortion::IsHolePortion(), SwLinePortion::IsMarginPortion(), SwLinePortion::IsMultiPortion(), SwViewOption::IsParagraph(), SwViewOption::IsPDFExport(), SwLinePortion::IsQuoVadisPortion(), SwLineLayout::IsRest(), SwFrame::IsTextFrame(), SwRect::Left(), SwTextIter::m_pCurr, SwAttrIter::m_pFont, SwTextIter::m_pFrame, sw::MapViewToModel(), SwLinePortion::Move(), SwTextSizeInfo::OnWin(), SwTmpEndPortion::Paint(), SwLinePortion::Paint(), PaintMultiPortion(), SwLinePortion::PrePaint(), SwTextSizeInfo::ResetKanaIdx(), SwTextPaintInfo::ResetSpaceIdx(), SwRect::Right(), SwTextMargin::Right(), SwRedlineItr::Seek(), SwTextIter::SeekAndChg(), SwTextIter::SeekAndChgBefore(), SwTextIter::SeekStartAndChg(), SwTextSizeInfo::SetIdx(), SwTextSizeInfo::SetKanaComp(), SwTextSizeInfo::SetLen(), SwTextPaintInfo::SetPos(), SwUnderlineFont::SetPos(), SwTextPaintInfo::SetpSpaceAdd(), SwTextSizeInfo::SetUnderFnt(), Point::setX(), Point::setY(), TAB_OVER_MARGIN, SwRect::Top(), SwPosSize::Width(), Point::X(), X, SwTextPaintInfo::X(), Point::Y(), SwTextIter::Y(), and SwTextPaintInfo::Y().

Referenced by SwTextFrame::PaintSwFrame().

SwTextPaintInfo& SwTextPainter::GetInfo ( )
inline
const SwTextPaintInfo& SwTextPainter::GetInfo ( ) const
inline

Definition at line 59 of file itrpaint.hxx.

References SwTextIter::GetInfo().

bool SwTextPainter::IsPaintDrop ( ) const
inline

Definition at line 56 of file itrpaint.hxx.

References bPaintDrop.

Referenced by SwTextFrame::Format_(), and SwTextFrame::PaintSwFrame().

void SwTextPainter::PaintDropPortion ( )
void SwTextPainter::PaintMultiPortion ( const SwRect rPaint,
SwMultiPortion rMulti,
const SwMultiPortion pEnvPor = nullptr 
)

Definition at line 1494 of file pormulti.cxx.

References SwTextCursor::AdjustBaseLine(), SwMultiPortion::CalcSpacing(), CheckSpecialUnderline(), DIR_TOP2BOTTOM, SwTextPaintInfo::DrawViewOpt(), Field, SwFrame::FindPageFrame(), SwLinePortion::GetAscent(), SwLineLayout::GetFirstPortion(), SwTextSizeInfo::GetFont(), SwUnderlineFont::GetFont(), GetGridItem(), SwTextSizeInfo::GetIdx(), GetInfo(), SwLinePortion::GetLen(), SwTextSizeInfo::GetLen(), SwLineLayout::GetNext(), SwLinePortion::GetNextPortion(), SwTextSizeInfo::GetOpt(), SwAttrIter::GetPropFont(), SwAttrIter::GetRedln(), SwMultiPortion::GetRoot(), SwTextGridItem::GetRubyHeight(), SwTextGridItem::GetRubyTextBelow(), SwSpaceManipulator::GetSpaceAdd(), SwTextIter::GetTextFrame(), SwTextSizeInfo::GetTextFrame(), SwTextSizeInfo::GetUnderFnt(), SwMultiPortion::HasBrackets(), SwMultiPortion::HasRotation(), SwPosSize::Height(), SwLinePortion::InFieldGrp(), SwLinePortion::InTabGrp(), SwLinePortion::InTextGrp(), SwMultiPortion::IsBidi(), SwLinePortion::IsBreakPortion(), SwMultiPortion::IsDouble(), SwLinePortion::IsMarginPortion(), SwLinePortion::IsMultiPortion(), SwViewOption::IsParagraph(), SwLineLayout::IsRest(), SwMultiPortion::IsRevers(), SwFrame::IsRightToLeft(), SwMultiPortion::IsRuby(), SwTextSizeInfo::IsRuby(), SwTextGridItem::IsSquaredMode(), SwTextIter::m_pCurr, SwTextIter::m_pFrame, SwLayoutModeModifier::Modify(), SwLinePortion::Move(), SwMultiPortion::OnRight(), SwMultiPortion::OnTop(), SwLinePortion::Paint(), SwLinePortion::PrePaint(), SwSpaceManipulator::SecondLine(), SwTextIter::SeekAndChg(), SwTextIter::SeekAndChgBefore(), SwTextSizeInfo::SetDirection(), SwTextSizeInfo::SetIdx(), SwTextSizeInfo::SetLen(), SwUnderlineFont::SetPos(), SwAttrIter::SetPropFont(), SwFont::SetProportion(), SwTextSizeInfo::SetRuby(), SwTextSizeInfo::SetSnapToGrid(), SwTextSizeInfo::SetUnderFnt(), SwFont::SetVertical(), SwTextSizeInfo::SnapToGrid(), SwAttrIter::SwFontSave, SwPosSize::Width(), X, SwTextPaintInfo::X(), and SwTextPaintInfo::Y().

Referenced by DrawTextLine().

void SwTextPainter::SetPaintDrop ( const bool  bNew)
inline

Definition at line 55 of file itrpaint.hxx.

Referenced by SwTextFrame::Format_(), and SwTextFormatter::NewDropPortion().

Member Data Documentation

bool SwTextPainter::bPaintDrop
private

Definition at line 29 of file itrpaint.hxx.

Referenced by CtorInitTextPainter(), DrawTextLine(), and IsPaintDrop().


The documentation for this class was generated from the following files: