LibreOffice Module vcl (master)
1
|
#include <impfontcache.hxx>
Classes | |
struct | IFSD_Equal |
struct | IFSD_Hash |
Public Member Functions | |
ImplFontCache () | |
~ImplFontCache () | |
rtl::Reference< LogicalFontInstance > | GetFontInstance (PhysicalFontCollection const *, const vcl::Font &, const Size &rPixelSize, float fExactHeight, bool bNonAntialias=false) |
rtl::Reference< LogicalFontInstance > | GetGlyphFallbackFont (PhysicalFontCollection const *, FontSelectPattern &, LogicalFontInstance *pLogicalFont, int nFallbackLevel, OUString &rMissingCodes) |
bool | GetCachedGlyphBoundRect (const LogicalFontInstance *, sal_GlyphId, tools::Rectangle &) |
void | CacheGlyphBoundRect (const LogicalFontInstance *, sal_GlyphId, tools::Rectangle &) |
void | Invalidate () |
Private Types | |
typedef o3tl::lru_map< FontSelectPattern, rtl::Reference< LogicalFontInstance >, IFSD_Hash, IFSD_Equal > | FontInstanceList |
Private Member Functions | |
rtl::Reference< LogicalFontInstance > | GetFontInstance (PhysicalFontCollection const *, FontSelectPattern &) |
Private Attributes | |
LogicalFontInstance * | mpLastHitCacheEntry |
keeps the last hit cache entry More... | |
FontInstanceList | maFontInstanceList |
GlyphBoundRectCache | m_aBoundRectCache |
Definition at line 65 of file impfontcache.hxx.
|
private |
Definition at line 71 of file impfontcache.hxx.
ImplFontCache::ImplFontCache | ( | ) |
Definition at line 88 of file fontcache.cxx.
ImplFontCache::~ImplFontCache | ( | ) |
Definition at line 95 of file fontcache.cxx.
References maFontInstanceList.
void ImplFontCache::CacheGlyphBoundRect | ( | const LogicalFontInstance * | pFont, |
sal_GlyphId | nID, | ||
tools::Rectangle & | rRect | ||
) |
Definition at line 267 of file fontcache.cxx.
References assert(), LogicalFontInstance::GetFontCache(), o3tl::lru_map< class, class, class, class >::insert(), and m_aBoundRectCache.
Referenced by LogicalFontInstance::GetGlyphBoundRect().
bool ImplFontCache::GetCachedGlyphBoundRect | ( | const LogicalFontInstance * | pFont, |
sal_GlyphId | nID, | ||
tools::Rectangle & | rRect | ||
) |
Definition at line 250 of file fontcache.cxx.
References assert(), o3tl::lru_map< class, class, class, class >::end(), o3tl::lru_map< class, class, class, class >::find(), LogicalFontInstance::GetFontCache(), and m_aBoundRectCache.
Referenced by LogicalFontInstance::GetGlyphBoundRect().
|
private |
Definition at line 111 of file fontcache.cxx.
References assert(), PhysicalFontFace::CreateFontInstance(), o3tl::lru_map< class, class, class, class >::end(), o3tl::lru_map< class, class, class, class >::find(), PhysicalFontFamily::FindBestFontFace(), PhysicalFontCollection::FindFontFamily(), LogicalFontInstance::GetFontSelectPattern(), PhysicalFontFamily::GetSearchName(), o3tl::lru_map< class, class, class, class >::insert(), FontAttributes::IsSymbolFont(), m_aBoundRectCache, salhelper::SimpleReferenceObject::m_nCount, maFontInstanceList, FontSelectPattern::maSearchName, FontSelectPattern::maTargetName, mpLastHitCacheEntry, o3tl::lru_map< class, class, class, class >::remove_if(), SAL_WARN_IF, and o3tl::lru_map< class, class, class, class >::size().
Referenced by GetFontInstance(), and GetGlyphFallbackFont().
rtl::Reference< LogicalFontInstance > ImplFontCache::GetFontInstance | ( | PhysicalFontCollection const * | pFontList, |
const vcl::Font & | rFont, | ||
const Size & | rPixelSize, | ||
float | fExactHeight, | ||
bool | bNonAntialias = false |
||
) |
Definition at line 103 of file fontcache.cxx.
References vcl::Font::GetFamilyName(), and GetFontInstance().
rtl::Reference< LogicalFontInstance > ImplFontCache::GetGlyphFallbackFont | ( | PhysicalFontCollection const * | pFontCollection, |
FontSelectPattern & | rFontSelData, | ||
LogicalFontInstance * | pLogicalFont, | ||
int | nFallbackLevel, | ||
OUString & | rMissingCodes | ||
) |
Definition at line 205 of file fontcache.cxx.
References PhysicalFontCollection::FindFontFamily(), PhysicalFontFamily::GetFamilyName(), GetFontInstance(), PhysicalFontCollection::GetGlyphFallbackFont(), FontSelectPattern::maSearchName, and FontAttributes::SetFamilyName().
void ImplFontCache::Invalidate | ( | ) |
Definition at line 240 of file fontcache.cxx.
References o3tl::lru_map< class, class, class, class >::clear(), m_aBoundRectCache, maFontInstanceList, LogicalFontInstance::mpFontCache, and mpLastHitCacheEntry.
|
private |
Definition at line 75 of file impfontcache.hxx.
Referenced by CacheGlyphBoundRect(), GetCachedGlyphBoundRect(), GetFontInstance(), and Invalidate().
|
private |
Definition at line 74 of file impfontcache.hxx.
Referenced by GetFontInstance(), Invalidate(), and ~ImplFontCache().
|
private |
keeps the last hit cache entry
Definition at line 73 of file impfontcache.hxx.
Referenced by GetFontInstance(), and Invalidate().