LibreOffice Module canvas (master)  1
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
cairocanvas::TextLayout Class Reference

#include <cairo_textlayout.hxx>

Inheritance diagram for cairocanvas::TextLayout:
[legend]
Collaboration diagram for cairocanvas::TextLayout:
[legend]

Public Member Functions

 TextLayout (const TextLayout &)=delete
 make noncopyable More...
 
const TextLayoutoperator= (const TextLayout &)=delete
 
 TextLayout (const css::rendering::StringContext &aText, sal_Int8 nDirection, sal_Int64 nRandomSeed, const CanvasFont::Reference &rFont, const SurfaceProviderRef &rRefDevice)
 
virtual void SAL_CALL disposing () override
 Dispose all internal references. More...
 
virtual css::uno::Sequence< css::uno::Reference< css::rendering::XPolyPolygon2D > > SAL_CALL queryTextShapes () override
 
virtual css::uno::Sequence< css::geometry::RealRectangle2D > SAL_CALL queryInkMeasures () override
 
virtual css::uno::Sequence< css::geometry::RealRectangle2D > SAL_CALL queryMeasures () override
 
virtual css::uno::Sequence< double > SAL_CALL queryLogicalAdvancements () override
 
virtual void SAL_CALL applyLogicalAdvancements (const css::uno::Sequence< double > &aAdvancements) override
 
virtual css::geometry::RealRectangle2D SAL_CALL queryTextBounds () override
 
virtual double SAL_CALL justify (double nSize) override
 
virtual double SAL_CALL combinedJustify (const css::uno::Sequence< css::uno::Reference< css::rendering::XTextLayout > > &aNextLayouts, double nSize) override
 
virtual css::rendering::TextHit SAL_CALL getTextHit (const css::geometry::RealPoint2D &aHitPoint) override
 
virtual css::rendering::Caret SAL_CALL getCaret (sal_Int32 nInsertionIndex, sal_Bool bExcludeLigatures) override
 
virtual sal_Int32 SAL_CALL getNextInsertionIndex (sal_Int32 nStartIndex, sal_Int32 nCaretAdvancement, sal_Bool bExcludeLigatures) override
 
virtual css::uno::Reference< css::rendering::XPolyPolygon2D > SAL_CALL queryVisualHighlighting (sal_Int32 nStartIndex, sal_Int32 nEndIndex) override
 
virtual css::uno::Reference< css::rendering::XPolyPolygon2D > SAL_CALL queryLogicalHighlighting (sal_Int32 nStartIndex, sal_Int32 nEndIndex) override
 
virtual double SAL_CALL getBaselineOffset () override
 
virtual sal_Int8 SAL_CALL getMainTextDirection () override
 
virtual css::uno::Reference< css::rendering::XCanvasFont > SAL_CALL getFont () override
 
virtual css::rendering::StringContext SAL_CALL getText () override
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual sal_Bool SAL_CALL supportsService (const OUString &ServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
void draw (::cairo::CairoSharedPtr const &pSCairo, OutputDevice &rOutDev, const Point &rOutpos, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) const
 
void setupTextOffsets (long *outputOffsets, const css::uno::Sequence< double > &inputOffsets, const css::rendering::ViewState &viewState, const css::rendering::RenderState &renderState) const
 

Protected Member Functions

virtual ~TextLayout () override
 

Private Member Functions

bool isCairoRenderable (SystemFontData aSysFontData) const
 TextLayout::isCairoRenderable. More...
 

Private Attributes

css::rendering::StringContext maText
 
css::uno::Sequence< double > maLogicalAdvancements
 
CanvasFont::Reference mpFont
 
SurfaceProviderRef mpRefDevice
 
sal_Int8 mnTextDirection
 

Additional Inherited Members

- Protected Attributes inherited from cppu::BaseMutex
mutable::osl::Mutex m_aMutex
 

Detailed Description

Definition at line 44 of file cairo_textlayout.hxx.

Constructor & Destructor Documentation

cairocanvas::TextLayout::TextLayout ( const TextLayout )
delete

make noncopyable

cairocanvas::TextLayout::TextLayout ( const css::rendering::StringContext &  aText,
sal_Int8  nDirection,
sal_Int64  nRandomSeed,
const CanvasFont::Reference rFont,
const SurfaceProviderRef rRefDevice 
)
cairocanvas::TextLayout::~TextLayout ( )
overrideprotectedvirtual

Definition at line 98 of file cairo_textlayout.cxx.

Member Function Documentation

virtual void SAL_CALL cairocanvas::TextLayout::applyLogicalAdvancements ( const css::uno::Sequence< double > &  aAdvancements)
overridevirtual
virtual double SAL_CALL cairocanvas::TextLayout::combinedJustify ( const css::uno::Sequence< css::uno::Reference< css::rendering::XTextLayout > > &  aNextLayouts,
double  nSize 
)
overridevirtual
void SAL_CALL cairocanvas::TextLayout::disposing ( )
overridevirtual

Dispose all internal references.

Definition at line 102 of file cairo_textlayout.cxx.

References m_aMutex, and mpFont.

void cairocanvas::TextLayout::draw ( ::cairo::CairoSharedPtr const &  pSCairo,
OutputDevice rOutDev,
const Point rOutpos,
const css::rendering::ViewState viewState,
const css::rendering::RenderState &  renderState 
) const
double SAL_CALL cairocanvas::TextLayout::getBaselineOffset ( )
overridevirtual

Definition at line 234 of file cairo_textlayout.cxx.

rendering::Caret SAL_CALL cairocanvas::TextLayout::getCaret ( sal_Int32  nInsertionIndex,
sal_Bool  bExcludeLigatures 
)
overridevirtual

Definition at line 205 of file cairo_textlayout.cxx.

uno::Reference< rendering::XCanvasFont > SAL_CALL cairocanvas::TextLayout::getFont ( )
overridevirtual

Definition at line 247 of file cairo_textlayout.cxx.

References m_aMutex, and mpFont.

OUString SAL_CALL cairocanvas::TextLayout::getImplementationName ( )
overridevirtual

Definition at line 554 of file cairo_textlayout.cxx.

sal_Int8 SAL_CALL cairocanvas::TextLayout::getMainTextDirection ( )
overridevirtual

Definition at line 240 of file cairo_textlayout.cxx.

References m_aMutex.

sal_Int32 SAL_CALL cairocanvas::TextLayout::getNextInsertionIndex ( sal_Int32  nStartIndex,
sal_Int32  nCaretAdvancement,
sal_Bool  bExcludeLigatures 
)
overridevirtual

Definition at line 212 of file cairo_textlayout.cxx.

uno::Sequence< OUString > SAL_CALL cairocanvas::TextLayout::getSupportedServiceNames ( )
overridevirtual

Definition at line 564 of file cairo_textlayout.cxx.

rendering::StringContext SAL_CALL cairocanvas::TextLayout::getText ( )
overridevirtual

Definition at line 254 of file cairo_textlayout.cxx.

References m_aMutex, and maText.

virtual css::rendering::TextHit SAL_CALL cairocanvas::TextLayout::getTextHit ( const css::geometry::RealPoint2D &  aHitPoint)
overridevirtual
bool cairocanvas::TextLayout::isCairoRenderable ( SystemFontData  aSysFontData) const
private

TextLayout::isCairoRenderable.

Features currently not supported by Cairo (VCL rendering is used as fallback):

  • vertical glyphs
Returns
true, if text/font can be rendered with cairo

Definition at line 269 of file cairo_textlayout.cxx.

References SAL_WARN.

double SAL_CALL cairocanvas::TextLayout::justify ( double  nSize)
overridevirtual

Definition at line 186 of file cairo_textlayout.cxx.

const TextLayout& cairocanvas::TextLayout::operator= ( const TextLayout )
delete
uno::Sequence< geometry::RealRectangle2D > SAL_CALL cairocanvas::TextLayout::queryInkMeasures ( )
overridevirtual

Definition at line 117 of file cairo_textlayout.cxx.

uno::Sequence< double > SAL_CALL cairocanvas::TextLayout::queryLogicalAdvancements ( )
overridevirtual

Definition at line 129 of file cairo_textlayout.cxx.

References m_aMutex.

uno::Reference< rendering::XPolyPolygon2D > SAL_CALL cairocanvas::TextLayout::queryLogicalHighlighting ( sal_Int32  nStartIndex,
sal_Int32  nEndIndex 
)
overridevirtual

Definition at line 227 of file cairo_textlayout.cxx.

uno::Sequence< geometry::RealRectangle2D > SAL_CALL cairocanvas::TextLayout::queryMeasures ( )
overridevirtual

Definition at line 123 of file cairo_textlayout.cxx.

geometry::RealRectangle2D SAL_CALL cairocanvas::TextLayout::queryTextBounds ( )
overridevirtual

Definition at line 149 of file cairo_textlayout.cxx.

References m_aMutex, maText, and mpFont.

uno::Sequence< uno::Reference< rendering::XPolyPolygon2D > > SAL_CALL cairocanvas::TextLayout::queryTextShapes ( )
overridevirtual

Definition at line 111 of file cairo_textlayout.cxx.

uno::Reference< rendering::XPolyPolygon2D > SAL_CALL cairocanvas::TextLayout::queryVisualHighlighting ( sal_Int32  nStartIndex,
sal_Int32  nEndIndex 
)
overridevirtual

Definition at line 220 of file cairo_textlayout.cxx.

void cairocanvas::TextLayout::setupTextOffsets ( long *  outputOffsets,
const css::uno::Sequence< double > &  inputOffsets,
const css::rendering::ViewState viewState,
const css::rendering::RenderState &  renderState 
) const
sal_Bool SAL_CALL cairocanvas::TextLayout::supportsService ( const OUString &  ServiceName)
overridevirtual

Definition at line 559 of file cairo_textlayout.cxx.

References cppu::supportsService().

Member Data Documentation

css::uno::Sequence< double > cairocanvas::TextLayout::maLogicalAdvancements
private

Definition at line 101 of file cairo_textlayout.hxx.

css::rendering::StringContext cairocanvas::TextLayout::maText
private

Definition at line 100 of file cairo_textlayout.hxx.

sal_Int8 cairocanvas::TextLayout::mnTextDirection
private

Definition at line 104 of file cairo_textlayout.hxx.

CanvasFont::Reference cairocanvas::TextLayout::mpFont
private

Definition at line 102 of file cairo_textlayout.hxx.

SurfaceProviderRef cairocanvas::TextLayout::mpRefDevice
private

Definition at line 103 of file cairo_textlayout.hxx.


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