Project

General

Profile

Statistics
| Revision:

root / proj / libs / graph / include / font.h @ 312

History | View | Annotate | Download (1.02 KB)

1 182 up20180642
#ifndef FONT_H_INCLUDED
2
#define FONT_H_INCLUDED
3
4 188 up20180642
enum text_valign{
5
    text_valign_top    = -1,
6
    text_valign_center =  0,
7
    text_valign_bottom =  1
8
};
9
10
enum text_halign{
11
    text_halign_left   = -1,
12
    text_halign_center =  0,
13
    text_halign_right  =  1
14
};
15
16 183 up20180642
struct font;
17
typedef struct font font_t;
18
font_t* (font_ctor)(const char *s);
19
void    (font_dtor)(font_t *p);
20 182 up20180642
21 307 up20180642
font_t *consolas;
22
23 183 up20180642
struct text;
24
typedef struct text text_t;
25
text_t* (text_ctor)(const font_t *fnt, const char *txt);
26
void    (text_dtor)(text_t *p);
27 250 up20180655
char* (text_get_string)(const text_t *p);
28 188 up20180642
void (text_set_text)  (text_t *p, const char *txt);
29
void (text_set_pos)   (text_t *p, int16_t x, int16_t y);
30
void (text_set_size)  (text_t *p, unsigned size);
31
void (text_set_color) (text_t *p, uint32_t color);
32
void (text_set_valign)(text_t *p, enum text_valign valign);
33
void (text_set_halign)(text_t *p, enum text_halign halign);
34 297 up20180642
int16_t (text_get_x)  (const text_t *p);
35
int16_t (text_get_y)  (const text_t *p);
36 188 up20180642
int (text_draw)     (const text_t *p);
37 182 up20180642
38
#endif //FONT_H_INCLUDED