You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
946 B
37 lines
946 B
/** |
|
* @file gmenu.h |
|
* |
|
* Interface of the in-game navigation and interaction. |
|
*/ |
|
#pragma once |
|
|
|
#include "engine.h" |
|
|
|
namespace devilution { |
|
|
|
#define GMENU_SLIDER 0x40000000 |
|
#define GMENU_ENABLED 0x80000000 |
|
|
|
struct TMenuItem { |
|
Uint32 dwFlags; |
|
const char *pszStr; |
|
void (*fnMenu)(bool); |
|
}; |
|
|
|
extern TMenuItem *sgpCurrentMenu; |
|
|
|
void gmenu_draw_pause(const CelOutputBuffer &out); |
|
void FreeGMenu(); |
|
void gmenu_init_menu(); |
|
bool gmenu_is_active(); |
|
void gmenu_set_items(TMenuItem *pItem, void (*gmFunc)()); |
|
void gmenu_draw(const CelOutputBuffer &out); |
|
bool gmenu_presskeys(int vkey); |
|
bool gmenu_on_mouse_move(); |
|
bool gmenu_left_mouse(bool isDown); |
|
void gmenu_enable(TMenuItem *pMenuItem, bool enable); |
|
void gmenu_slider_set(TMenuItem *pItem, int min, int max, int gamma); |
|
int gmenu_slider_get(TMenuItem *pItem, int min, int max); |
|
void gmenu_slider_steps(TMenuItem *pItem, int dwTicks); |
|
|
|
} // namespace devilution
|
|
|