23 #ifndef M4_GUI_GUI_DIALOG_H 24 #define M4_GUI_GUI_DIALOG_H 26 #include "m4/m4_types.h" 27 #include "m4/graphics/gr_buff.h" 28 #include "m4/gui/gui.h" 29 #include "m4/gui/gui_item.h" 30 #include "m4/gui/gui_univ.h" 35 TS_GIVEN = 0, TS_JUST_LEFT, TS_JUST_RIGHT, TS_CENTRE
43 Item *cancel_item, *return_item, *default_item;
48 void configure(int32 defaultTag, int32 returnTag, int32 cancelTag);
52 bool addMessage(int32 x, int32 y,
const char *prompt, int32 tag);
53 bool addButton(int32 x, int32 y,
const char *prompt, M4CALLBACK cb, int32 tag);
56 Item *getItem(int32 tag);
59 bool addTextField(int32 x1, int32 y1, int32 x2,
const char *defaultPrompt, M4CALLBACK cb, int32 tag, int32 fieldLength);
68 int32 hiliteColor_alt1;
69 int32 hiliteColor_alt2;
78 bool okButton =
false;
80 bool movingScreen =
false;
81 Item *clickItem =
nullptr;
82 Item *doubleClickItem =
nullptr;
83 char listboxSearchStr[80] = { 0 };
86 bool gui_dialog_init();
87 void gui_dialog_shutdown();
90 Dialog *DialogCreateAbsolute(int32 x1, int32 y1, int32 x2, int32 y2, uint32 scrnFlags);
91 void vmng_Dialog_Destroy(
Dialog *d);
93 void Dialog_Refresh(
Dialog *d);
94 void Dialog_Refresh_All();
95 void Dialog_Configure(
Dialog *d, int32 defaultTag, int32 returnTag, int32 cancelTag);
96 void Dialog_SetDefault(
Dialog *d, int32 tag);
97 bool Dialog_SetPressed(
Dialog *d, int32 tag);
100 bool Dialog_Add_Message(
Dialog *d, int32 x, int32 y,
const char *prompt, int32 tag);
103 bool Dialog_Add_Button(
Dialog *d, int32 x, int32 y,
const char *prompt, M4CALLBACK cb, int32 tag);
106 void Dialog_GetPrevListItem(
Dialog *d);
107 void Dialog_GetNextListItem(
Dialog *d);
110 bool Dialog_Add_TextField(
Dialog *d, int32 x1, int32 y1, int32 x2,
const char *defaultPrompt, M4CALLBACK cb, int32 tag, int32 fieldLength);
114 void Dialog_Change_Item_Prompt(
Dialog *d,
const char *newPrompt,
Item *myItem, int32 tag);
115 void Dialog_Refresh_Item(
Dialog *d,
Item *myItem, int32 tag);
116 void Dialog_KeyMouseCollision();
118 bool sizeofGUIelement_border(int16 el_type, int32 *w, int32 *h);
124 TextScrn *TextScrn_Create(int32 x1, int32 y1, int32 x2, int32 y2, int32 luminance, uint32 scrnFlags,
125 int32 textColor, int32 hiliteColor,
126 int32 textColor_alt1 = 0, int32 hiliteColor_alt1 = 0,
127 int32 textColor_alt2 = 0, int32 hiliteColor_alt2 = 0);
128 void vmng_TextScrn_Destroy(
TextScrn *myTextScrn);
129 void TextScrn_Destroy(
TextScrn *myTextScrn);
130 void TextScrn_Activate(
TextScrn *myTextScrn);
131 bool TextScrn_Add_TextItem(
TextScrn *myTextScrn, int32 x, int32 y, int32 tag,
132 int32 justification,
const char *prompt, M4CALLBACK callback);
133 bool TextScrn_Add_Message(
TextScrn *myTextScrn, int32 x, int32 y, int32 tag,
134 int32 justification,
const char *prompt);
Definition: gui_dialog.h:62
Definition: gui_dialog.h:77
Definition: gui_item.h:69
Definition: gui_item.h:82
Definition: database.h:28
Definition: gui_dialog.h:38