Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes

gfxPangoFontGroup Class Reference

#include <gfxPangoFonts.h>

Inheritance diagram for gfxPangoFontGroup:
Collaboration diagram for gfxPangoFontGroup:

List of all members.

Classes

class  FontSetByLangEntry

Public Member Functions

 gfxPangoFontGroup (const nsAString &families, const gfxFontStyle *aStyle, gfxUserFontSet *aUserFontSet)
virtual ~gfxPangoFontGroup ()
virtual gfxFontGroupCopy (const gfxFontStyle *aStyle)
virtual gfxTextRunMakeTextRun (const PRUnichar *aString, PRUint32 aLength, const Parameters *aParams, PRUint32 aFlags)
 Make a textrun for a given string.
virtual gfxTextRunMakeTextRun (const PRUint8 *aString, PRUint32 aLength, const Parameters *aParams, PRUint32 aFlags)
 Make a textrun for a given string.
virtual gfxFontGetFontAt (PRInt32 i)
virtual void UpdateFontList ()
PangoFont * GetBasePangoFont ()
PangoLanguage * GetPangoLanguage ()
gfxFcPangoFontSet * GetFontSet (PangoLanguage *aLang=NULL)

Static Public Member Functions

static void Shutdown ()
static gfxFontEntryNewFontEntry (const gfxProxyFontEntry &aProxyEntry, const nsAString &aFullname)
static gfxFontEntryNewFontEntry (const gfxProxyFontEntry &aProxyEntry, const PRUint8 *aFontData, PRUint32 aLength)

Protected Member Functions

void InitTextRun (gfxTextRun *aTextRun, const gchar *aUTF8Text, PRUint32 aUTF8Length, PRUint32 aUTF8HeaderLength, PRBool aTake8BitPath)
 Fill in the glyph-runs for the textrun.
nsresult SetGlyphs (gfxTextRun *aTextRun, const gchar *aUTF8, PRUint32 aUTF8Length, PRUint32 *aUTF16Offset, PangoGlyphString *aGlyphs, PangoGlyphUnit aOverrideSpaceWidth, PRBool aAbortOnMissingGlyph)
nsresult SetMissingGlyphs (gfxTextRun *aTextRun, const gchar *aUTF8, PRUint32 aUTF8Length, PRUint32 *aUTF16Offset)
void CreateGlyphRunsItemizing (gfxTextRun *aTextRun, const gchar *aUTF8, PRUint32 aUTF8Length, PRUint32 aUTF8HeaderLength)
PRBool CanTakeFastPath (PRUint32 aFlags)
nsresult CreateGlyphRunsFast (gfxTextRun *aTextRun, const gchar *aUTF8, PRUint32 aUTF8Length)
void GetFcFamilies (nsTArray< nsString_external > *aFcFamilyList, const nsACString &aLangGroup)
already_AddRefed
< gfxFcPangoFontSet > 
MakeFontSet (PangoLanguage *aLang, gfxFloat aSizeAdjustFactor, nsAutoRef< FcPattern > *aMatchPattern=NULL)
gfxFcPangoFontSet * GetBaseFontSet ()
gfxFloat GetSizeAdjustFactor ()

Protected Attributes

nsAutoTArray
< FontSetByLangEntry, 1 > 
mFontSets
gfxFloat mSizeAdjustFactor
PangoLanguage * mPangoLanguage

Constructor & Destructor Documentation

gfxPangoFontGroup::gfxPangoFontGroup ( const nsAString families,
const gfxFontStyle aStyle,
gfxUserFontSet aUserFontSet 
)
virtual gfxPangoFontGroup::~gfxPangoFontGroup (  )  [virtual]

Member Function Documentation

PRBool gfxPangoFontGroup::CanTakeFastPath ( PRUint32  aFlags  )  [protected]
virtual gfxFontGroup* gfxPangoFontGroup::Copy ( const gfxFontStyle aStyle  )  [virtual]

Reimplemented from gfxFontGroup.

nsresult gfxPangoFontGroup::CreateGlyphRunsFast ( gfxTextRun aTextRun,
const gchar *  aUTF8,
PRUint32  aUTF8Length 
) [protected]
void gfxPangoFontGroup::CreateGlyphRunsItemizing ( gfxTextRun aTextRun,
const gchar *  aUTF8,
PRUint32  aUTF8Length,
PRUint32  aUTF8HeaderLength 
) [protected]
gfxFcPangoFontSet* gfxPangoFontGroup::GetBaseFontSet (  )  [protected]
PangoFont* gfxPangoFontGroup::GetBasePangoFont (  ) 
void gfxPangoFontGroup::GetFcFamilies ( nsTArray< nsString_external > *  aFcFamilyList,
const nsACString aLangGroup 
) [protected]
virtual gfxFont* gfxPangoFontGroup::GetFontAt ( PRInt32  i  )  [virtual]

Reimplemented from gfxFontGroup.

gfxFcPangoFontSet* gfxPangoFontGroup::GetFontSet ( PangoLanguage *  aLang = NULL  ) 
PangoLanguage* gfxPangoFontGroup::GetPangoLanguage (  )  [inline]
gfxFloat gfxPangoFontGroup::GetSizeAdjustFactor (  )  [inline, protected]
void gfxPangoFontGroup::InitTextRun ( gfxTextRun aTextRun,
const gchar *  aUTF8Text,
PRUint32  aUTF8Length,
PRUint32  aUTF8HeaderLength,
PRBool  aTake8BitPath 
) [protected]

Fill in the glyph-runs for the textrun.

Parameters:
aTake8BitPath the text contains only characters below 0x100 (TEXT_IS_8BIT can return false when the characters are all below 0x100 but stored in UTF16 format)
already_AddRefed<gfxFcPangoFontSet> gfxPangoFontGroup::MakeFontSet ( PangoLanguage *  aLang,
gfxFloat  aSizeAdjustFactor,
nsAutoRef< FcPattern > *  aMatchPattern = NULL 
) [protected]
virtual gfxTextRun* gfxPangoFontGroup::MakeTextRun ( const PRUnichar aString,
PRUint32  aLength,
const Parameters aParams,
PRUint32  aFlags 
) [virtual]

Make a textrun for a given string.

If aText is not persistent (aFlags & TEXT_IS_PERSISTENT), the textrun will copy it. This calls FetchGlyphExtents on the textrun.

Reimplemented from gfxFontGroup.

virtual gfxTextRun* gfxPangoFontGroup::MakeTextRun ( const PRUint8 *  aString,
PRUint32  aLength,
const Parameters aParams,
PRUint32  aFlags 
) [virtual]

Make a textrun for a given string.

If aText is not persistent (aFlags & TEXT_IS_PERSISTENT), the textrun will copy it. This calls FetchGlyphExtents on the textrun.

Reimplemented from gfxFontGroup.

static gfxFontEntry* gfxPangoFontGroup::NewFontEntry ( const gfxProxyFontEntry aProxyEntry,
const PRUint8 *  aFontData,
PRUint32  aLength 
) [static]
static gfxFontEntry* gfxPangoFontGroup::NewFontEntry ( const gfxProxyFontEntry aProxyEntry,
const nsAString aFullname 
) [static]
nsresult gfxPangoFontGroup::SetGlyphs ( gfxTextRun aTextRun,
const gchar *  aUTF8,
PRUint32  aUTF8Length,
PRUint32 *  aUTF16Offset,
PangoGlyphString *  aGlyphs,
PangoGlyphUnit  aOverrideSpaceWidth,
PRBool  aAbortOnMissingGlyph 
) [protected]
nsresult gfxPangoFontGroup::SetMissingGlyphs ( gfxTextRun aTextRun,
const gchar *  aUTF8,
PRUint32  aUTF8Length,
PRUint32 *  aUTF16Offset 
) [protected]
static void gfxPangoFontGroup::Shutdown (  )  [static]
virtual void gfxPangoFontGroup::UpdateFontList (  )  [virtual]

Reimplemented from gfxFontGroup.


Member Data Documentation

PangoLanguage* gfxPangoFontGroup::mPangoLanguage [protected]

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