kolibrios/programs/develop/new libGUI_C/SRC/fonts_meneger.h
andrew_programmer d59b725fc3 New libGUI library. Written an pure C.
git-svn-id: svn://kolibrios.org@1157 a494cfbc-eb01-0410-851d-a64ba20cac60
2009-09-11 10:19:20 +00:00

64 lines
1.4 KiB
C
Executable File

/*
font meneger header structure
*/
#define FONT_FLAG_DEFAULT_FONT_ON 0x1
#define FONT_FLAG_DEFAULT_FONT_OFF 0xfe
#define FONT_FLAG_DRAW_BACKGROUND_ON 0x2
#define FONT_FLAG_DRAW_BACKGROUND_OFF 0xfd
#define FONT_FLAG_ORIENTATION_HORIZONTAL_FROM_LEFT_TO_RIGHT_ON 0x4
#define FONT_FLAG_ORIENTATION_HORIZONTAL_FROM_LEFT_TO_RIGHT_OFF 0xfb
#define FONT_CONSTANT_SIZE -1
//some types encoding characters
#define FONT_TYPE_ASCII 0x1
#define FONT_TYPE_UNICODE 0x2
///////////////////////////////////////////////////////////
// some ASCII encodings
///////////////////////////////////////////////////////////
//cyrillic encodings
#define FONT_ENCODING_CYRILLIC_IBM866 0x1
#define FONT_ENCODING_CYRILLIC_IBM437 0x2
#define FONT_ENCODING_CYRILLIC_KOI8R 0x4
#define FONT_ENCODING_CYRILLIC_ISO8859_5 0x8
#define FONT_ENCODING_CYRILLIC_CP1251 0x10
#pragma pack(push,1)
static struct
{
DWORD *fnt_fd;
DWORD *fnt_bk;
DWORD *default_font;
DWORD number_fonts;
}FontsMeneger;
#pragma pack(pop)
#pragma pack(push,1)
struct FONT
{
DWORD *fnt_draw;
DWORD *fnt_unpacker;
DWORD *fnt_fd;
DWORD *fnt_bk;
int sizex;
int sizey;
int size;
int encoding_type;
char *font;
char *fnt_name;
DWORD type;
DWORD flags;
};
#pragma pack(pop)
typedef struct FONT font_t;
static char *default_fonts_path="/sys/fonts/";
void (*DrawFont)(finition_t *fin,int fx,int fy,DWORD color,DWORD background_color,font_t *font,BYTE *s);