Location:
GDI.H
Link against: gdi.lib
class CFontCache : public CBase;
Font cache.
When a CFont* needs to be found for a particular TFontSpec
, the cache can be searched to see if the TFontSpec
is already in the cache. If the TFontSpec
is in the cache, its corresponding CFont* can be returned. Otherwise GetNearestFontInTwips() must be used to search all of
the available fonts for the nearest CFont- a procedure which takes much longer than a simple cache search.
The current font cache should be destroyed and a new cache created whenever the zoom factor or device map changes, as these
changes break the relation between CFont
and TFontSpec
.
CBase
- Base class for all classes to be instantiated on the heap
CFontCache
- Font cache
Defined in CFontCache
:
AddEntryL()
, CFontCache()
, CFontCache()
, RemoveFirstEntry()
, Search()
, iNumHits
, iNumMisses
, ~CFontCache()
Inherited from CBase
:
Delete()
,
Extension_()
,
operator new()
IMPORT_C CFontCache();
Default constructor.
This constructs a CFontCache of size KMaxFontCacheEntries.
IMPORT_C CFontCache(TInt aMaxEntries);
Constructor specifying the number of cache entries.
|
IMPORT_C ~CFontCache();
Destructor.
This destroys the cashe and releases its allocated memory.
IMPORT_C CFont *Search(const TFontSpec &aFontSpec);
Searches the cache for a specified font.
The CFont
returned is that which corresponds to the font specification aFontSpec.
|
|
IMPORT_C CFont *AddEntryL(CFont *aFont, const TFontSpec &aFontSpec);
Adds a font entry to the cache.
The font, and the font specification required to extract it from the cache, are both specified. If the cache is already full, the font replaces the oldest entry already in the cache, which is returned.
|
|
IMPORT_C CFont *RemoveFirstEntry();
Removes the first entry from the font cache and returns it.
|
TInt iNumHits;
The number of cache hits since the font cache was created i.e. successful results from CFontCache::Search()
.
TInt iNumMisses;
The number of cache misses since the font cache was created i.e. unsuccessful results from CFontCache::Search()
.