LibreOffice Module vcl (master)  1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
MultiSalLayout Class Referencefinal

#include <sallayout.hxx>

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

Public Member Functions

void DrawText (SalGraphics &) const override
 
sal_Int32 GetTextBreak (DeviceCoordinate nMaxWidth, DeviceCoordinate nCharExtra, int nFactor) const override
 
DeviceCoordinate FillDXArray (DeviceCoordinate *pDXArray) const override
 
void GetCaretPositions (int nArraySize, long *pCaretXArray) const override
 
bool GetNextGlyph (const GlyphItem **pGlyph, Point &rPos, int &nStart, const PhysicalFontFace **pFallbackFont=nullptr, int *const pFallbackLevel=nullptr) const override
 
bool GetOutline (basegfx::B2DPolyPolygonVector &) const override
 
bool IsKashidaPosValid (int nCharPos) const override
 
 MultiSalLayout (std::unique_ptr< SalLayout > pBaseLayout)
 
void AddFallback (std::unique_ptr< SalLayout > pFallbackLayout, ImplLayoutRuns const &)
 
bool LayoutText (ImplLayoutArgs &, const SalLayoutGlyphs *) override
 
void AdjustLayout (ImplLayoutArgs &) override
 
void InitFont () const override
 
void SetIncomplete (bool bIncomplete)
 
virtual ~MultiSalLayout () override
 
- Public Member Functions inherited from SalLayout
virtual ~SalLayout ()
 
PointDrawBase ()
 
const PointDrawBase () const
 
PointDrawOffset ()
 
const PointDrawOffset () const
 
Point GetDrawPosition (const Point &rRelative=Point(0, 0)) const
 
int GetUnitsPerPixel () const
 
int GetOrientation () const
 
virtual DeviceCoordinate GetTextWidth () const
 
bool GetBoundRect (tools::Rectangle &) const
 
virtual const SalLayoutGlyphsGetGlyphs () const
 

Private Member Functions

 MultiSalLayout (const MultiSalLayout &)=delete
 
MultiSalLayoutoperator= (const MultiSalLayout &)=delete
 

Private Attributes

std::unique_ptr< GenericSalLayoutmpLayouts [MAX_FALLBACK]
 
ImplLayoutRuns maFallbackRuns [MAX_FALLBACK]
 
int mnLevel
 
bool mbIncomplete
 

Additional Inherited Members

- Protected Member Functions inherited from SalLayout
 SalLayout ()
 
- Protected Attributes inherited from SalLayout
int mnMinCharPos
 
int mnEndCharPos
 
int mnUnitsPerPixel
 
int mnOrientation
 
Point maDrawOffset
 
Point maDrawBase
 

Detailed Description

Definition at line 125 of file sallayout.hxx.

Constructor & Destructor Documentation

MultiSalLayout::MultiSalLayout ( std::unique_ptr< SalLayout pBaseLayout)
explicit

Definition at line 990 of file sallayout.cxx.

References SalLayout::mnUnitsPerPixel, and mpLayouts.

MultiSalLayout::~MultiSalLayout ( )
overridevirtual

Definition at line 1007 of file sallayout.cxx.

MultiSalLayout::MultiSalLayout ( const MultiSalLayout )
privatedelete

Member Function Documentation

void MultiSalLayout::AddFallback ( std::unique_ptr< SalLayout pFallbackLayout,
ImplLayoutRuns const &  rFallbackRuns 
)

Definition at line 1011 of file sallayout.cxx.

References maFallbackRuns, MAX_FALLBACK, mnLevel, and mpLayouts.

void MultiSalLayout::AdjustLayout ( ImplLayoutArgs rArgs)
overridevirtual
void MultiSalLayout::DrawText ( SalGraphics rGraphics) const
overridevirtual
DeviceCoordinate MultiSalLayout::FillDXArray ( DeviceCoordinate pDXArray) const
overridevirtual

Implements SalLayout.

Definition at line 1437 of file sallayout.cxx.

References i, SalLayout::mnEndCharPos, mnLevel, SalLayout::mnMinCharPos, SalLayout::mnUnitsPerPixel, and mpLayouts.

Referenced by AdjustLayout().

void MultiSalLayout::GetCaretPositions ( int  nArraySize,
long *  pCaretXArray 
) const
overridevirtual

Implements SalLayout.

Definition at line 1483 of file sallayout.cxx.

References SalLayout::GetCaretPositions(), i, mnLevel, SalLayout::mnUnitsPerPixel, mpLayouts, and w.

bool MultiSalLayout::GetNextGlyph ( const GlyphItem **  pGlyph,
Point rPos,
int nStart,
const PhysicalFontFace **  pFallbackFont = nullptr,
int *const  pFallbackLevel = nullptr 
) const
overridevirtual
bool MultiSalLayout::GetOutline ( basegfx::B2DPolyPolygonVector rPPV) const
overridevirtual
sal_Int32 MultiSalLayout::GetTextBreak ( DeviceCoordinate  nMaxWidth,
DeviceCoordinate  nCharExtra,
int  nFactor 
) const
overridevirtual
void MultiSalLayout::InitFont ( ) const
overridevirtual

Reimplemented from SalLayout.

Definition at line 1375 of file sallayout.cxx.

References mnLevel, and mpLayouts.

bool MultiSalLayout::IsKashidaPosValid ( int  nCharPos) const
overridevirtual

Reimplemented from SalLayout.

Definition at line 1556 of file sallayout.cxx.

References i, maFallbackRuns, mnLevel, and mpLayouts.

bool MultiSalLayout::LayoutText ( ImplLayoutArgs rArgs,
const SalLayoutGlyphs  
)
overridevirtual

Implements SalLayout.

Definition at line 1023 of file sallayout.cxx.

References maFallbackRuns, ImplLayoutArgs::maRuns, mbIncomplete, and mnLevel.

MultiSalLayout& MultiSalLayout::operator= ( const MultiSalLayout )
privatedelete
void MultiSalLayout::SetIncomplete ( bool  bIncomplete)

Definition at line 1001 of file sallayout.cxx.

References maFallbackRuns, mbIncomplete, and mnLevel.

Member Data Documentation

ImplLayoutRuns MultiSalLayout::maFallbackRuns[MAX_FALLBACK]
private
bool MultiSalLayout::mbIncomplete
private

Definition at line 157 of file sallayout.hxx.

Referenced by AdjustLayout(), LayoutText(), and SetIncomplete().

int MultiSalLayout::mnLevel
private
std::unique_ptr<GenericSalLayout> MultiSalLayout::mpLayouts[MAX_FALLBACK]
private

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