mirror of
https://github.com/elasota/Aerofoil.git
synced 2025-09-23 06:53:43 +00:00
30 lines
861 B
C++
30 lines
861 B
C++
#pragma once
|
|
|
|
#include "FontHacks.h"
|
|
|
|
struct IGpFont;
|
|
|
|
namespace PortabilityLayer
|
|
{
|
|
class FontFamily;
|
|
class RenderedFont;
|
|
|
|
class FontManager
|
|
{
|
|
public:
|
|
virtual void Init() = 0;
|
|
virtual void Shutdown() = 0;
|
|
|
|
virtual FontFamily *GetSystemFont(int fontSize, int variationFlags) const = 0;
|
|
virtual FontFamily *GetApplicationFont(int fontSize, int variationFlags) const = 0;
|
|
|
|
virtual RenderedFont *GetRenderedFont(IGpFont *font, int size, bool aa, FontHacks fontHacks) = 0;
|
|
virtual RenderedFont *GetRenderedFontFromFamily(FontFamily *fontFamily, int fontSize, bool aa, int flags) = 0;
|
|
|
|
virtual RenderedFont *LoadCachedRenderedFont(int cacheID, int size, bool aa, int flags) const = 0;
|
|
virtual void SaveCachedRenderedFont(const RenderedFont *rfont, int cacheID, int size, bool aa, int flags) const = 0;
|
|
|
|
static FontManager *GetInstance();
|
|
};
|
|
}
|