40 lines
921 B
C
40 lines
921 B
C
// Copyright © 2017 Project Golan, all rights reserved.
|
|
#ifndef i_gui_h
|
|
#define i_gui_h
|
|
|
|
#include "m_types.h"
|
|
#include "i_ui.h"
|
|
|
|
#include <Doominati.h>
|
|
|
|
#define I_GUI_button(g, ...) I_GUI_ButtonFId(g, I_lineHash, __VA_ARGS__)
|
|
|
|
// Extern Functions ----------------------------------------------------------|
|
|
|
|
void I_GUI_Begin(struct I_gictx *g);
|
|
void I_GUI_End (struct I_gictx *g);
|
|
|
|
// Types ---------------------------------------------------------------------|
|
|
|
|
typedef struct I_gictx
|
|
{
|
|
__prop begin {call: I_GUI_Begin(this)}
|
|
__prop end {call: I_GUI_End (this)}
|
|
|
|
I_objid hot, act;
|
|
|
|
DGE_Point2I cr;
|
|
|
|
// TODO: make these a bitfield when david adds Bget_W translation
|
|
bool lc, llc;
|
|
bool rc, lrc;
|
|
|
|
bool open;
|
|
} I_gictx;
|
|
|
|
// Types ---------------------------------------------------------------------|
|
|
|
|
bool I_GUI_ButtonFId(struct I_gictx *g, I_objid id, int x, int y, char const *text);
|
|
|
|
#endif
|