LibreOffice Module sw (master)  1
Classes | Macros | Typedefs | Functions | Variables
fntcache.cxx File Reference
#include <memory>
#include <sal/config.h>
#include <cstdint>
#include <cstdlib>
#include <i18nlangtag/mslangid.hxx>
#include <vcl/outdev.hxx>
#include <vcl/print.hxx>
#include <vcl/lineinfo.hxx>
#include <vcl/metric.hxx>
#include <vcl/svapp.hxx>
#include <vcl/lazydelete.hxx>
#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
#include <com/sun/star/i18n/WordType.hpp>
#include <com/sun/star/i18n/XBreakIterator.hpp>
#include <breakit.hxx>
#include <paintfrm.hxx>
#include <viewsh.hxx>
#include <viewopt.hxx>
#include <fntcache.hxx>
#include <IDocumentSettingAccess.hxx>
#include <swfont.hxx>
#include <wrong.hxx>
#include <dbg_lay.hxx>
#include <txtfrm.hxx>
#include <pagefrm.hxx>
#include <pagedesc.hxx>
#include <tgrditem.hxx>
#include <scriptinfo.hxx>
#include <editeng/brushitem.hxx>
#include <swmodule.hxx>
#include <accessibilityoptions.hxx>
#include <svtools/accessibilityoptions.hxx>
#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
#include <doc.hxx>
#include <editeng/fhgtitem.hxx>
#include <vcl/glyphitem.hxx>
#include <vcl/vcllayout.hxx>
#include <docsh.hxx>
#include <strings.hrc>
#include <fntcap.hxx>
#include <vcl/outdev/ScopedStates.hxx>
Include dependency graph for fntcache.cxx:

Go to the source code of this file.

Classes

struct  CalcLinePosData
 

Macros

#define WRONG_SHOW_MIN   5
 

Typedefs

typedef std::vector< std::pair< TextFrameIndex, TextFrameIndex > > SwForbidden
 

Functions

static constexpr Color gWaveCol (COL_GRAY)
 
bool operator< (const SwTextGlyphsKey &l, const SwTextGlyphsKey &r)
 
static bool lcl_IsFontAdjustNecessary (const vcl::RenderContext &rOutDev, const vcl::RenderContext &rRefDev)
 
static void lcl_calcLinePos (const CalcLinePosData &rData, Point &rStart, Point &rEnd, TextFrameIndex const nStart, TextFrameIndex const nWrLen)
 
static sal_uInt8 lcl_WhichPunctuation (sal_Unicode cChar)
 
static bool lcl_IsMonoSpaceFont (const vcl::RenderContext &rOut)
 
static bool lcl_IsFullstopCentered (const vcl::RenderContext &rOut)
 
static void lcl_DrawLineForWrongListData (SwForbidden &rForbidden, const SwDrawTextInfo &rInf, sw::WrongListIterator *pWList, const CalcLinePosData &rCalcLinePosData, const Size &rPrtFontSize)
 
void SwClearFntCacheTextGlyphs ()
 Clears the pre-calculated text glyphs in all SwFntObj instances. More...
 

Variables

SwFntCachepFntCache = nullptr
 
SwFntObjpLastFont = nullptr
 
static vcl::DeleteOnDeinit< VclPtr< OutputDevice > > s_pFntObjPixOut (new VclPtr< OutputDevice >)
 

Macro Definition Documentation

#define WRONG_SHOW_MIN   5

Definition at line 666 of file fntcache.cxx.

Referenced by SwFntObj::DrawText(), and lcl_DrawLineForWrongListData().

Typedef Documentation

typedef std::vector<std::pair<TextFrameIndex, TextFrameIndex> > SwForbidden

Definition at line 711 of file fntcache.cxx.

Function Documentation

static constexpr Color gWaveCol ( COL_GRAY  )
static

Referenced by SwFntObj::DrawText().

static void lcl_calcLinePos ( const CalcLinePosData rData,
Point rStart,
Point rEnd,
TextFrameIndex const  nStart,
TextFrameIndex const  nWrLen 
)
static
static void lcl_DrawLineForWrongListData ( SwForbidden rForbidden,
const SwDrawTextInfo rInf,
sw::WrongListIterator pWList,
const CalcLinePosData rCalcLinePosData,
const Size rPrtFontSize 
)
static
static bool lcl_IsFontAdjustNecessary ( const vcl::RenderContext rOutDev,
const vcl::RenderContext rRefDev 
)
static
static bool lcl_IsFullstopCentered ( const vcl::RenderContext rOut)
static
static bool lcl_IsMonoSpaceFont ( const vcl::RenderContext rOut)
static
static sal_uInt8 lcl_WhichPunctuation ( sal_Unicode  cChar)
static
bool operator< ( const SwTextGlyphsKey l,
const SwTextGlyphsKey r 
)
void SwClearFntCacheTextGlyphs ( )

Clears the pre-calculated text glyphs in all SwFntObj instances.

Definition at line 2706 of file fntcache.cxx.

References SwFntCache::First(), and SwFntCache::Next().

Referenced by SwDoc::SetTabCols(), and SwLayIdle::SwLayIdle().

Variable Documentation

SwFntCache* pFntCache = nullptr
SwFntObj* pLastFont = nullptr
vcl::DeleteOnDeinit< VclPtr<OutputDevice> > s_pFntObjPixOut(new VclPtr< OutputDevice >)
static

Referenced by SwFntObj::DrawText().