Dokumentace k souboru b_menu.c

Popis souboru | Konstanty | Proměnné | Funkce

Popis souboru (1)

veskere GUI (ruzna menu) a HUD (head up display) funkce

Konstanty (1)

JménoHodnotaDokumentace
advanced_menu_size(elements(advanced_menu_command))pocet advanced prikazu nastavitelnych v menu

Proměnné (14)

JménoTypPočáteční hodnotaDokumentace
activemenuactive_menu?aktivni menu (na obrazovce) [EXT]
activetabint?aktivni zalozka v menu
bind_applykeys*properties?ulozene klice, po zmacknuti Ok se aplikuji
bind_caption_sizeuint?delka maximalne dlouheho popisku (ve znacich)
bindmenu_page_sizebfloat5velikost stranky v bindmenu
intermis*intermission?aktualni intermission [EXT]
menu_warning*char?varovani ktere se zobrazuje v menu (napr. ze klavesa byla prirazena jinde) NULL = zadne varovani
menulenint?pocet polozek menu
menuposint?pozice kurzoru v menu
menutabs*tabs?zalozky v menu - pripadne naalokovane (zero-terminated)
menuwidthint?sirka menu (ve znacich)
msys0*menusystem?system menu - ke kazdemu menu je prirazeno jmeno a menu jsou ve spojaku
msys9*menusystem?system menu - ke kazdemu menu je prirazeno jmeno a menu jsou ve spojaku
press_a_key_modeint?zdali to chce novou klavesu

Funkce (27)

ModifikátorJménoParametryDokumentace
voidcmd_addmenu(const char *param)prida menu, prvni parametr nazev, zbytek definice
voidcmd_bindmenu(const char *param)vyvola bindmenu
voidcmd_delmenu(const char *param)smaze menui s nazvem v param
voidcmd_listmenu(const char *param)vypoise na konzoli seznam definovanych menu
voidcmd_menu(const char *param)vyvola menu s danym nazvem (pokud existuje, jinak neudela nic)
voidhud_show(client *c,hud_position hp,char *btext,bfloat sizex,bfloat sizey,byte r,byte g,byte b,byte a,byte br,byte bg,byte bb,byte ba)na dane misto na HUD vypise dany text danou velikosti fontu (+ je absolutni v pixelech, - je relativni v obrazovkach, 0=stejne jako druha souradnice) a barvou pisma (prvni 4 RGBA pipsma, druhe 4 RGBA pozadi)
voidinit_menus(void)vytvori system menu. Zatim pouze 1 menu - main
voidintermission_disp()pokud je stav intermission, zobrazi finalni screen
voidintermission_end()ukonci intermission (pokud nejaka byla)
voidintermission_start(const char *title, const char *text)zapocne intermission. Behem intermission se neupdatuje fyzika
voidmenu_addmenu(const char *name,const char *def)prida menu s nazvem v name a definici v param
voidmenu_bind_key_add(int c,int player,int action,const char *command)prida keybind do seznamu k aplikovani na aktualni tab v menu a pozici v menu. Zaroven odstrani v menu stary zaznam (je-li)
voidmenu_bind_save_setting()aplikuje zmeny, ktere byly nastavene v bindmenu
voidmenu_destroy()vyskoci z menu a pripadne odalokuje struktury, ktere byly naalokovany
voidmenu_displaybindeditor()zobrazi menu na editaci keybindings
voidmenu_displaysimple(menuitem *m)zobrazi jednoduche menu na obrazovce
voidmenu_displaytabs(int mposx,int mposy,int mwidth)vykresli zalozky na dane pozici menu v prostoru danem jeho sirkou. Na vysku zalozky zaberou 2*fontsizex pixelu, na sirku maximalne mwidth
menuitem *menu_from_def(const char *def)z definice typu caption;prikaz [ | caption;prikaz ....] vytvori menu
menuitem *menu_getbyname(const char *menu)ze seznamu menu vybere menu s danym nazvem a vrati ho
voidmenu_item_addkey(menu_bind *b,int key)prida do aktualni radky v bindmenu klavesu
voidmenu_rectangle(bfloat mposx, bfloat mposy,bfloat menux,bfloat menuy,int tex)vykresli pozadi menu - obdelnik na zadanych souradnicich a zadane velikosti a nastavi orezavani na jeho hranice, pouzije vybranou texturu z menu
voidmenu_scrollbar_h(bfloat x,bfloat y,bfloat xw,bfloat yw,bfloat i,bfloat max,bfloat pct)zobrazi horizontalni scrollbar
(x,y) souradnice praveho horniho rohu
(xw,yw) velikost
i - aktualni hodnota posunuti scrollbaru
max - maximalni posuv scrollbaru (i je mezi 0 a max)
pct - sirka scrollbaru relativni (0..1)
voidmenu_setitem(menuitem *m,char **def)nastavi jeden menuitem dle definice a z posune ukazatel na retezec s definicci na dalsi cast (dalsi polozku menu)
tabs *menu_tabs_create(const char *def,int mult,vp_fn *destr)vytvori system zalozek.
Definice tvaru "Popis1|Popis2|..."
mult - pokud je zalozka se znakem #, tak se zopakuje mult-krat, znak # nahrazen cislem 1..mult, znak # se nesmi vyskytovat vice nez jednou. 0=tahle feature je vypnuta
destr - destruktor na data
voidmenu_tabs_destroy(tabs *t)odalokuje zalozky (tabs) z pameti
voidmenukey_bind(int c)osetri zmacknutou klavesu v bindmenu
voidmenukey_simple(int c)osetri zmacknutou klavesu v menu

Dokumentace z 12.09.2003 18:06:39