-
Notifications
You must be signed in to change notification settings - Fork 0
/
menuitems.h
52 lines (37 loc) · 1.46 KB
/
menuitems.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/* file created on Wed Aug 28 13:32:02 CEST 2002 by doom */
#ifndef _menuitems_H
#define _menuitems_H
/// MENU ITEMS
#include "sofont.h"
/// gestion des items du menu
/// ne jamais utiliser cette structure :
/// y'a des MACRO et des fonctions pour ca */
typedef struct _MENU_ITEM
{
const char *name;
char *value;
SDL_Surface *bitmap; // NULL si c'est un separateur.
SoFont *font; // NULL si c'est un separateur.
float priv_vx;
float priv_x;
int priv_must_anim;
int inactive;
}
MenuItem;
typedef MenuItem *MenuItems;
typedef MenuItem MenuItemsTab[];
#define MENUITEM_BLANKLINE {"---",NULL,NULL,NULL,0,0,0,1}
#define MENUITEM_END {NULL,NULL,NULL,NULL,0,0,0,1}
#define MENUITEM(x) {x,NULL,NULL,NULL,0,0,0,0}
#define MENUITEM_INACTIVE(x) {x,NULL,NULL,NULL,0,0,0,1}
void menu_items_set_bitmap_for (MenuItems mi,
const char *name, SDL_Surface * bitmap);
SDL_Surface *menu_items_get_bitmap (MenuItems mi, const char *name);
void menu_items_set_font_for (MenuItems mi,
const char *name, SoFont * font);
SoFont *menu_items_get_font (MenuItems mi, const char *name);
/// !!! une copie interne de value est créée !!!
void menu_items_set_value_for (MenuItems mi, const char *name, const char *value);
const char *menu_items_get_value (MenuItems mi, const char *name);
#define menu_items_is_delimiter(mi,index) (mi[index].inactive)
#endif /* _menuitems_H */