X11: add new player selection dialog

The dialog shows the player's name, race, role, gender, and
alignment in a single window, similar to the Qt4 dialog.
Also allows randomizing the character selection.

Use the dialog by setting OPTIONS=player_selection:dialog
This commit is contained in:
Pasi Kallinen
2017-10-13 22:41:33 +03:00
parent 20d8cb4238
commit 7b156bf704
7 changed files with 980 additions and 5 deletions

View File

@@ -2484,6 +2484,7 @@ E void NDECL(port_help);
E void FDECL(sethanguphandler, (void (*)(int)));
E boolean NDECL(authorize_wizard_mode);
E boolean FDECL(check_user_string, (char *));
E char *NDECL(get_login_name);
#endif /* UNIX */
/* ### unixtty.c ### */

View File

@@ -242,6 +242,7 @@ E boolean exit_x_event; /* exit condition for event loop */
#define EXIT_ON_EXIT 2
#define EXIT_ON_SENT_EVENT 3
E int click_x, click_y, click_button, updated_inventory;
E boolean plsel_ask_name;
typedef struct {
Boolean slow; /* issue prompts between map and message wins */
@@ -334,6 +335,12 @@ E void FDECL(algn_key,
E void FDECL(ec_delete, (Widget, XEvent *, String *, Cardinal *));
E void FDECL(ec_key, (Widget, XEvent *, String *,
Cardinal *)); /* extended command action */
E void FDECL(plsel_quit, (Widget, XEvent *, String *,
Cardinal *)); /* player selection dialog */
E void FDECL(plsel_play, (Widget, XEvent *, String *,
Cardinal *)); /* player selection dialog */
E void FDECL(plsel_randomize, (Widget, XEvent *, String *,
Cardinal *)); /* player selection dialog */
E void NDECL(release_extended_cmds);
/* ### winstatus.c ### */