diff options
author | Simon Howard | 2006-06-02 19:32:48 +0000 |
---|---|---|
committer | Simon Howard | 2006-06-02 19:32:48 +0000 |
commit | f03d7bd78f86dbe824c7048e19a031ac4f612ac9 (patch) | |
tree | 6cc69ef9d820431f1562b9acd4efcc149228701e /setup/mainmenu.c | |
parent | 8a357066f760771c1f5ca5fc3676b45c95a692d4 (diff) | |
download | chocolate-doom-f03d7bd78f86dbe824c7048e19a031ac4f612ac9.tar.gz chocolate-doom-f03d7bd78f86dbe824c7048e19a031ac4f612ac9.tar.bz2 chocolate-doom-f03d7bd78f86dbe824c7048e19a031ac4f612ac9.zip |
Add initial code for a setup utility.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 549
Diffstat (limited to 'setup/mainmenu.c')
-rw-r--r-- | setup/mainmenu.c | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/setup/mainmenu.c b/setup/mainmenu.c new file mode 100644 index 00000000..73c83dde --- /dev/null +++ b/setup/mainmenu.c @@ -0,0 +1,73 @@ +#include <stdlib.h> + +#include "config.h" +#include "textscreen.h" + +void DoQuit(void *widget, void *dosave) +{ + if (dosave != NULL) + { + printf("Saving config\n"); + } + + exit(0); +} + +void QuitConfirm(void *unused1, void *unused2) +{ + txt_window_t *window; + txt_label_t *label; + txt_button_t *button; + + window = TXT_NewWindow(NULL); + + label = TXT_NewLabel("Save settings and\n" + "quit setup?"); + TXT_AddWidget(window, label); + TXT_SetWidgetAlign(label, TXT_HORIZ_CENTER); + + button = TXT_NewButton(" Yes "); + TXT_SetWidgetAlign(button, TXT_HORIZ_CENTER); + TXT_AddWidget(window, button); + TXT_SignalConnect(button, "pressed", DoQuit, DoQuit); + + button = TXT_NewButton(" No "); + TXT_SetWidgetAlign(button, TXT_HORIZ_CENTER); + TXT_AddWidget(window, button); + TXT_SignalConnect(button, "pressed", DoQuit, NULL); +} + +extern void ConfigKeyboard(); + +void MainMenu(void) +{ + txt_window_t *window; + txt_window_action_t *quit_action; + txt_button_t *button; + + window = TXT_NewWindow("Main Menu"); + TXT_AddWidget(window, TXT_NewButton("Configure display")); + button = TXT_NewButton("Configure keyboard"); + TXT_AddWidget(window, button); + TXT_SignalConnect(button, "pressed", ConfigKeyboard, NULL); + TXT_AddWidget(window, TXT_NewButton("Configure mouse")); + TXT_AddWidget(window, TXT_NewButton("Save parameters and launch DOOM")); + TXT_AddWidget(window, TXT_NewStrut(0, 1)); + TXT_AddWidget(window, TXT_NewButton("Start a Network game")); + TXT_AddWidget(window, TXT_NewButton("Join a Network game")); + + quit_action = TXT_NewWindowAction(KEY_ESCAPE, "Abort"); + TXT_SignalConnect(quit_action, "pressed", QuitConfirm, NULL); + TXT_SetWindowAction(window, TXT_HORIZ_LEFT, quit_action); +} + +int main(int argc, char *argv[]) +{ + TXT_Init(); + TXT_SetDesktopTitle(PACKAGE_NAME " Setup ver " PACKAGE_VERSION); + + MainMenu(); + + TXT_GUIMainLoop(); +} + |