12#ifndef ROOT_TGLFontManager
13#define ROOT_TGLFontManager
82 const char* txt=
"Xj")
const;
84 void BBox(
const char* txt,
87 void BBox(
const wchar_t* txt,
#define ClassDef(name, id)
A FreeType GL font manager.
virtual ~TGLFontManager()
Destructor.
std::list< constTGLFont * >::const_iterator FontList_ci
static TObjArray fgFontFileArray
TGLFontManager & operator=(const TGLFontManager &)
void RegisterFont(Int_t size, Int_t file, TGLFont::EMode mode, TGLFont &out)
Provide font with given size, file and FTGL class.
static Int_t GetFontSize(Int_t ds)
Get availabe font size.
static void InitStatics()
Create a list of available font files and allowed font sizes.
static Int_t GetExtendedFontStartIndex()
static Bool_t fgStaticInitDone
static FontSizeVec_t fgFontSizeArray
std::map< TGLFont, Int_t > FontMap_t
TGLFontManager(const TGLFontManager &)
static Int_t fgExtendedFontStart
static FontSizeVec_t * GetFontSizeArray()
Get valid font size vector.
std::list< constTGLFont * >::iterator FontList_i
void ClearFontTrash()
Delete FTFFont objects registered for destruction.
std::map< TGLFont, Int_t >::iterator FontMap_i
std::list< const TGLFont * > FontList_t
std::vector< Int_t > FontSizeVec_t
static const char * GetFontNameFromId(Int_t)
Get font name from TAttAxis font id.
static TObjArray * GetFontFileArray()
Get id to file name map.
void ReleaseFont(TGLFont &font)
Release font with given attributes.
A wrapper class for FTFont.
void MeasureBaseLineParams(Float_t &ascent, Float_t &descent, Float_t &line_height, const char *txt="Xj") const
Measure font's base-line parameters from the passed text.
Float_t GetDescent() const
Get font's descent. The returned value is positive.
virtual ~TGLFont()
Destructor.
Int_t IncTrashCount() const
Float_t GetAscent() const
Get font's ascent.
void SetManager(TGLFontManager *mng)
void SetTrashCount(Int_t c) const
Float_t GetLineHeight() const
Get font's line-height.
Int_t GetTrashCount() const
const FTFont * GetFont() const
TGLFont & operator=(const TGLFont &o)
void RenderHelper(const Char *txt, Double_t x, Double_t y, Double_t angle, Double_t) const
mgn is simply ignored, because ROOT's TVirtualX TGX11 are complete mess with painting attributes.
TGLFontManager * fManager
Bool_t operator<(const TGLFont &o) const
void BBox(const char *txt, Float_t &llx, Float_t &lly, Float_t &llz, Float_t &urx, Float_t &ury, Float_t &urz) const
Get bounding box.
const TGLFontManager * GetManager() const
void Render(const char *txt, Double_t x, Double_t y, Double_t angle, Double_t mgn) const
virtual void PostRender() const
Reset GL state after FTFont rendering.
virtual void PreRender(Bool_t autoLight=kTRUE, Bool_t lightOn=kFALSE) const
Set-up GL state before FTFont rendering.
void CopyAttributes(const TGLFont &o)
Assignment operator.