mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-06-27 15:39:32 +01:00
- A proper ./configure, so everything needs to be configured only once, not for every make. - Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies. - A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC. - Proper support for OSX universal binaries. - Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files. - Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files. Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.
57 lines
1.3 KiB
C
57 lines
1.3 KiB
C
/* $Id$ */
|
|
|
|
#ifndef FONTCACHE_H
|
|
#define FONTCACHE_H
|
|
|
|
/** Get the SpriteID mapped to the given font size and key */
|
|
SpriteID GetUnicodeGlyph(FontSize size, uint32 key);
|
|
|
|
/** Map a SpriteID to the font size and key */
|
|
void SetUnicodeGlyph(FontSize size, uint32 key, SpriteID sprite);
|
|
|
|
/** Initialize the glyph map */
|
|
void InitializeUnicodeGlyphMap(void);
|
|
|
|
#ifdef WITH_FREETYPE
|
|
|
|
typedef struct FreeTypeSettings {
|
|
char small_font[260];
|
|
char medium_font[260];
|
|
char large_font[260];
|
|
uint small_size;
|
|
uint medium_size;
|
|
uint large_size;
|
|
} FreeTypeSettings;
|
|
|
|
extern FreeTypeSettings _freetype;
|
|
|
|
void InitFreeType(void);
|
|
const struct Sprite *GetGlyph(FontSize size, uint32 key);
|
|
uint GetGlyphWidth(FontSize size, uint32 key);
|
|
|
|
#else
|
|
|
|
/* Stub for initializiation */
|
|
static inline void InitFreeType(void) {}
|
|
|
|
/** Get the Sprite for a glyph */
|
|
static inline const Sprite *GetGlyph(FontSize size, uint32 key)
|
|
{
|
|
SpriteID sprite = GetUnicodeGlyph(size, key);
|
|
if (sprite == 0) sprite = GetUnicodeGlyph(size, '?');
|
|
return GetSprite(sprite);
|
|
}
|
|
|
|
|
|
/** Get the width of a glyph */
|
|
static inline uint GetGlyphWidth(FontSize size, uint32 key)
|
|
{
|
|
SpriteID sprite = GetUnicodeGlyph(size, key);
|
|
if (sprite == 0) sprite = GetUnicodeGlyph(size, '?');
|
|
return SpriteExists(sprite) ? GetSprite(sprite)->width + (size != FS_NORMAL) : 0;
|
|
}
|
|
|
|
#endif /* WITH_FREETYPE */
|
|
|
|
#endif /* FONTCACHE_H */
|