X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=ft2.c;h=b7421b218c3f79abe5ebd11039c51510ea868ade;hb=0b02091d9a19d2a37744309eea401cf7663742a2;hp=d4f9e07ac27bb24d764d933e14712ce159376ab2;hpb=d1c3f1065fde02ed39b7eecc2d9b9a637388d091;p=xonotic%2Fdarkplaces.git diff --git a/ft2.c b/ft2.c index d4f9e07a..b7421b21 100644 --- a/ft2.c +++ b/ft2.c @@ -33,14 +33,14 @@ CVars introduced with the freetype extension ================================================================================ */ -cvar_t r_font_disable_freetype = {CVAR_CLIENT | CVAR_SAVE, "r_font_disable_freetype", "0", "disable freetype support for fonts entirely"}; -cvar_t r_font_use_alpha_textures = {CVAR_CLIENT | CVAR_SAVE, "r_font_use_alpha_textures", "0", "use alpha-textures for font rendering, this should safe memory"}; -cvar_t r_font_size_snapping = {CVAR_CLIENT | CVAR_SAVE, "r_font_size_snapping", "1", "stick to good looking font sizes whenever possible - bad when the mod doesn't support it!"}; -cvar_t r_font_kerning = {CVAR_CLIENT | CVAR_SAVE, "r_font_kerning", "1", "Use kerning if available"}; -cvar_t r_font_diskcache = {CVAR_CLIENT | CVAR_SAVE, "r_font_diskcache", "0", "save font textures to disk for future loading rather than generating them every time"}; -cvar_t r_font_compress = {CVAR_CLIENT | CVAR_SAVE, "r_font_compress", "0", "use texture compression on font textures to save video memory"}; -cvar_t r_font_nonpoweroftwo = {CVAR_CLIENT | CVAR_SAVE, "r_font_nonpoweroftwo", "1", "use nonpoweroftwo textures for font (saves memory, potentially slower)"}; -cvar_t developer_font = {CVAR_CLIENT | CVAR_SAVE, "developer_font", "0", "prints debug messages about fonts"}; +cvar_t r_font_disable_freetype = {CF_CLIENT | CF_ARCHIVE, "r_font_disable_freetype", "0", "disable freetype support for fonts entirely"}; +cvar_t r_font_use_alpha_textures = {CF_CLIENT | CF_ARCHIVE, "r_font_use_alpha_textures", "0", "use alpha-textures for font rendering, this should safe memory"}; +cvar_t r_font_size_snapping = {CF_CLIENT | CF_ARCHIVE, "r_font_size_snapping", "1", "stick to good looking font sizes whenever possible - bad when the mod doesn't support it!"}; +cvar_t r_font_kerning = {CF_CLIENT | CF_ARCHIVE, "r_font_kerning", "1", "Use kerning if available"}; +cvar_t r_font_diskcache = {CF_CLIENT | CF_ARCHIVE, "r_font_diskcache", "0", "save font textures to disk for future loading rather than generating them every time"}; +cvar_t r_font_compress = {CF_CLIENT | CF_ARCHIVE, "r_font_compress", "0", "use texture compression on font textures to save video memory"}; +cvar_t r_font_nonpoweroftwo = {CF_CLIENT | CF_ARCHIVE, "r_font_nonpoweroftwo", "1", "use nonpoweroftwo textures for font (saves memory, potentially slower)"}; +cvar_t developer_font = {CF_CLIENT | CF_ARCHIVE, "developer_font", "0", "prints debug messages about fonts"}; #ifndef DP_FREETYPE_STATIC @@ -246,7 +246,7 @@ typedef struct fontfilecache_s fontfilecache_t; #define MAX_FONTFILES 8 static fontfilecache_t fontfiles[MAX_FONTFILES]; -static const unsigned char *fontfilecache_LoadFile(const char *path, qboolean quiet, fs_offset_t *filesizepointer) +static const unsigned char *fontfilecache_LoadFile(const char *path, qbool quiet, fs_offset_t *filesizepointer) { int i; unsigned char *buf; @@ -327,7 +327,7 @@ void Font_CloseLibrary (void) font_ft2lib = NULL; } #ifndef DP_FREETYPE_STATIC - Sys_UnloadLibrary (&ft2_dll); + Sys_FreeLibrary (&ft2_dll); #endif pp.buf = NULL; } @@ -339,7 +339,7 @@ Font_OpenLibrary Try to load the FreeType2 DLL ==================== */ -qboolean Font_OpenLibrary (void) +qbool Font_OpenLibrary (void) { #ifndef DP_FREETYPE_STATIC const char* dllnames [] = @@ -367,7 +367,7 @@ qboolean Font_OpenLibrary (void) return true; // Load the DLL - if (!Sys_LoadLibrary (dllnames, &ft2_dll, ft2funcs)) + if (!Sys_LoadDependency (dllnames, &ft2_dll, ft2funcs)) return false; #endif return true; @@ -454,7 +454,7 @@ ft2_font_t *Font_Alloc(void) return (ft2_font_t *)Mem_Alloc(font_mempool, sizeof(ft2_font_t)); } -static qboolean Font_Attach(ft2_font_t *font, ft2_attachment_t *attachment) +static qbool Font_Attach(ft2_font_t *font, ft2_attachment_t *attachment) { ft2_attachment_t *na; @@ -495,9 +495,9 @@ float Font_SnapTo(float val, float snapwidth) return floor(val / snapwidth + 0.5f) * snapwidth; } -static qboolean Font_LoadFile(const char *name, int _face, ft2_settings_t *settings, ft2_font_t *font); -static qboolean Font_LoadSize(ft2_font_t *font, float size, qboolean check_only); -qboolean Font_LoadFont(const char *name, dp_font_t *dpfnt) +static qbool Font_LoadFile(const char *name, int _face, ft2_settings_t *settings, ft2_font_t *font); +static qbool Font_LoadSize(ft2_font_t *font, float size, qbool check_only); +qbool Font_LoadFont(const char *name, dp_font_t *dpfnt) { int s, count, i; ft2_font_t *ft2, *fbfont, *fb; @@ -604,7 +604,7 @@ qboolean Font_LoadFont(const char *name, dp_font_t *dpfnt) return true; } -static qboolean Font_LoadFile(const char *name, int _face, ft2_settings_t *settings, ft2_font_t *font) +static qbool Font_LoadFile(const char *name, int _face, ft2_settings_t *settings, ft2_font_t *font) { size_t namelen; char filename[MAX_QPATH]; @@ -713,8 +713,8 @@ static void Font_Postprocess_Update(ft2_font_t *fnt, int bpp, int w, int h) { int needed, x, y; float gausstable[2*POSTPROCESS_MAXRADIUS+1]; - qboolean need_gauss = (!pp.buf || pp.blur != fnt->settings->blur || pp.shadowz != fnt->settings->shadowz); - qboolean need_circle = (!pp.buf || pp.outline != fnt->settings->outline || pp.shadowx != fnt->settings->shadowx || pp.shadowy != fnt->settings->shadowy); + qbool need_gauss = (!pp.buf || pp.blur != fnt->settings->blur || pp.shadowz != fnt->settings->shadowz); + qbool need_circle = (!pp.buf || pp.outline != fnt->settings->outline || pp.shadowx != fnt->settings->shadowx || pp.shadowy != fnt->settings->shadowy); pp.blur = fnt->settings->blur; pp.outline = fnt->settings->outline; pp.shadowx = fnt->settings->shadowx; @@ -886,8 +886,8 @@ static void Font_Postprocess(ft2_font_t *fnt, unsigned char *imagedata, int pitc } static float Font_SearchSize(ft2_font_t *font, FT_Face fontface, float size); -static qboolean Font_LoadMap(ft2_font_t *font, ft2_font_map_t *mapstart, Uchar _ch, ft2_font_map_t **outmap); -static qboolean Font_LoadSize(ft2_font_t *font, float size, qboolean check_only) +static qbool Font_LoadMap(ft2_font_t *font, ft2_font_map_t *mapstart, Uchar _ch, ft2_font_map_t **outmap); +static qbool Font_LoadSize(ft2_font_t *font, float size, qbool check_only) { int map_index; ft2_font_map_t *fmap, temp; @@ -1034,7 +1034,7 @@ ft2_font_map_t *Font_MapForIndex(ft2_font_t *font, int index) return font->font_maps[index]; } -static qboolean Font_SetSize(ft2_font_t *font, float w, float h) +static qbool Font_SetSize(ft2_font_t *font, float w, float h) { if (font->currenth == h && ((!w && (!font->currentw || font->currentw == font->currenth)) || // check if w==h when w is not set @@ -1060,7 +1060,7 @@ static qboolean Font_SetSize(ft2_font_t *font, float w, float h) return true; } -qboolean Font_GetKerningForMap(ft2_font_t *font, int map_index, float w, float h, Uchar left, Uchar right, float *outx, float *outy) +qbool Font_GetKerningForMap(ft2_font_t *font, int map_index, float w, float h, Uchar left, Uchar right, float *outx, float *outy) { ft2_font_map_t *fmap; if (!font->has_kerning || !r_font_kerning.integer) @@ -1118,7 +1118,7 @@ qboolean Font_GetKerningForMap(ft2_font_t *font, int map_index, float w, float h } } -qboolean Font_GetKerningForSize(ft2_font_t *font, float w, float h, Uchar left, Uchar right, float *outx, float *outy) +qbool Font_GetKerningForSize(ft2_font_t *font, float w, float h, Uchar left, Uchar right, float *outx, float *outy) { return Font_GetKerningForMap(font, Font_IndexForSize(font, h, NULL, NULL), w, h, left, right, outx, outy); } @@ -1200,7 +1200,7 @@ static float Font_SearchSize(ft2_font_t *font, FT_Face fontface, float size) } } -static qboolean Font_LoadMap(ft2_font_t *font, ft2_font_map_t *mapstart, Uchar _ch, ft2_font_map_t **outmap) +static qbool Font_LoadMap(ft2_font_t *font, ft2_font_map_t *mapstart, Uchar _ch, ft2_font_map_t **outmap) { char map_identifier[MAX_QPATH]; unsigned long mapidx = _ch / FONT_CHARS_PER_MAP; @@ -1659,7 +1659,7 @@ static qboolean Font_LoadMap(ft2_font_t *font, ft2_font_map_t *mapstart, Uchar _ return true; } -qboolean Font_LoadMapForIndex(ft2_font_t *font, int map_index, Uchar _ch, ft2_font_map_t **outmap) +qbool Font_LoadMapForIndex(ft2_font_t *font, int map_index, Uchar _ch, ft2_font_map_t **outmap) { if (map_index < 0 || map_index >= MAX_FONT_SIZES) return false;