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:
Collaboration diagram for MultiSalLayout:

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, tools::Long *pCaretXArray) const override
bool GetNextGlyph (const GlyphItem **pGlyph, Point &rPos, int &nStart, const PhysicalFontFace **pFallbackFont=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 &)
std::unique_ptr< SalLayoutReleaseBaseLayout ()
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
Degree10 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
Degree10 mnOrientation
Point maDrawOffset
Point maDrawBase

Detailed Description

Definition at line 126 of file sallayout.hxx.

Constructor & Destructor Documentation

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

Definition at line 988 of file sallayout.cxx.

References assert(), mnLevel, SalLayout::mnUnitsPerPixel, and mpLayouts.

MultiSalLayout::~MultiSalLayout ( )

Definition at line 1010 of file sallayout.cxx.

MultiSalLayout::MultiSalLayout ( const MultiSalLayout )

Member Function Documentation

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

Definition at line 1014 of file sallayout.cxx.

References assert(), maFallbackRuns, MAX_FALLBACK, mnLevel, and mpLayouts.

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

Implements SalLayout.

Definition at line 1440 of file sallayout.cxx.

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

Referenced by AdjustLayout().

void MultiSalLayout::GetCaretPositions ( int  nArraySize,
tools::Long pCaretXArray 
) const

Implements SalLayout.

Definition at line 1486 of file sallayout.cxx.

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

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

Reimplemented from SalLayout.

Definition at line 1378 of file sallayout.cxx.

References mnLevel, and mpLayouts.

bool MultiSalLayout::IsKashidaPosValid ( int  nCharPos) const

Reimplemented from SalLayout.

Definition at line 1556 of file sallayout.cxx.

References i, maFallbackRuns, mnLevel, and mpLayouts.

bool MultiSalLayout::LayoutText ( ImplLayoutArgs rArgs,
const SalLayoutGlyphs  

Implements SalLayout.

Definition at line 1026 of file sallayout.cxx.

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

MultiSalLayout& MultiSalLayout::operator= ( const MultiSalLayout )
std::unique_ptr< SalLayout > MultiSalLayout::ReleaseBaseLayout ( )

Definition at line 999 of file sallayout.cxx.

References mpLayouts.

void MultiSalLayout::SetIncomplete ( bool  bIncomplete)

Definition at line 1004 of file sallayout.cxx.

References maFallbackRuns, mbIncomplete, and mnLevel.

Member Data Documentation

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

Definition at line 159 of file sallayout.hxx.

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

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

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