From 9101ad9a3b7345b0fe332a424862f620af617c93 Mon Sep 17 00:00:00 2001 From: Walter Julius Hennecke Date: Thu, 20 Dec 2012 00:35:30 +0100 Subject: [PATCH] Added temporary command sqlmenu to the client ... ... to make designing it easier. --- code/cgame/cg_consolecmds.c | 5 +++ code/ui/ui_atoms.c | 5 +++ code/ui/ui_local.h | 5 +++ code/ui/ui_main.c | 4 +-- code/ui/ui_sql.c | 65 +++++++++++++++++++++++++++++++++++-- 5 files changed, 79 insertions(+), 5 deletions(-) diff --git a/code/cgame/cg_consolecmds.c b/code/cgame/cg_consolecmds.c index 4b56d9f..55e7bc5 100644 --- a/code/cgame/cg_consolecmds.c +++ b/code/cgame/cg_consolecmds.c @@ -661,6 +661,10 @@ void CG_ToggleThirdPerson_f ( void ) { trap_Cvar_Set( "cg_thirdPerson", va( "%i", value ) ); } +void CG_SqlMenu_f(void) { + trap_SendConsoleCommand("ui_sqlmenu"); +} + /*================================================================================*/ typedef struct { @@ -726,6 +730,7 @@ static consoleCommand_t commands[] = { { "classList", CG_ClassList_cmd }, { "emote", CG_Emote_f }, { "locedit", CG_LocEdit_f }, + { "sqlmenu", CG_SqlMenu_f }, }; diff --git a/code/ui/ui_atoms.c b/code/ui/ui_atoms.c index 3eda93f..b9949c9 100644 --- a/code/ui/ui_atoms.c +++ b/code/ui/ui_atoms.c @@ -1334,6 +1334,11 @@ qboolean UI_ConsoleCommand( void ) { return qtrue; } + if ( Q_stricmp( cmd, "ui_sqlmenu") == 0) { + UI_sqlMenu(); + return qtrue; + } + return qfalse; } diff --git a/code/ui/ui_local.h b/code/ui/ui_local.h index aa8d997..097d66f 100644 --- a/code/ui/ui_local.h +++ b/code/ui/ui_local.h @@ -1980,6 +1980,11 @@ extern void UI_VideoDataMenu_Cache(void); extern void UI_VideoData2Menu_Cache(void); extern void UI_VideoDriverMenu_Cache(void); +// +// ui_sql.c +// +extern void UI_sqlMenu(void); + // // ui_players.c // diff --git a/code/ui/ui_main.c b/code/ui/ui_main.c index b47b427..2aaed5e 100644 --- a/code/ui/ui_main.c +++ b/code/ui/ui_main.c @@ -49,14 +49,14 @@ int vmMain( int command, int arg0, int arg1, int arg2, int arg3, int arg4, int a return UI_IsFullscreen(); case UI_SET_ACTIVE_MENU: - UI_SetActiveMenu( arg0 ); + UI_SetActiveMenu( (uiMenuCommand_t)arg0 ); return 0; case UI_CONSOLE_COMMAND: return UI_ConsoleCommand(); case UI_DRAW_CONNECT_SCREEN: - UI_DrawConnectScreen( arg0 ); + UI_DrawConnectScreen( (qboolean)arg0 ); return 0; } diff --git a/code/ui/ui_sql.c b/code/ui/ui_sql.c index 95195e3..a6ae898 100644 --- a/code/ui/ui_sql.c +++ b/code/ui/ui_sql.c @@ -8,6 +8,8 @@ typedef struct { menuframework_s menu; + menubitmap_s quitmenu; + menubitmap_s login; char *username; char *password; @@ -82,6 +84,19 @@ void UI_sqlMenu_Cache (void) corner_ll_12_60 = trap_R_RegisterShaderNoMip("menu/common/corner_ll_12_60.tga"); } +/* +=============== +sqlMenu_Draw +=============== +*/ +static void sqlMenu_Draw(void) +{ + // Draw graphics particular to Main Menu + M_sqlMenu_Graphics(); + + Menu_Draw( &s_sql.menu ); +} + /* =============== msdMenu_Init @@ -89,7 +104,7 @@ msdMenu_Init */ void sqlMenu_Init(void) { - /*s_sql.menu.nitems = 0; + s_sql.menu.nitems = 0; s_sql.menu.draw = sqlMenu_Draw; s_sql.menu.key = sqlMenu_Key; s_sql.menu.wrapAround = qtrue; @@ -97,6 +112,8 @@ void sqlMenu_Init(void) s_sql.menu.descY = MENU_DESC_Y; s_sql.menu.titleX = MENU_TITLE_X; s_sql.menu.titleY = MENU_TITLE_Y; + s_sql.menu.fullscreen = qfalse; + s_sql.menu.nobackground = qtrue; s_sql.quitmenu.generic.type = MTYPE_BITMAP; s_sql.quitmenu.generic.flags = QMF_HIGHLIGHT_IF_FOCUS; @@ -111,10 +128,52 @@ void sqlMenu_Init(void) s_sql.quitmenu.color2 = CT_LTPURPLE1; s_sql.quitmenu.textX = MENU_BUTTON_TEXT_X; s_sql.quitmenu.textY = 12; - s_sql.quitmenu.textEnum = MBT_RETURNMENU; + s_sql.quitmenu.textEnum = MBT_QUIT; s_sql.quitmenu.textcolor = CT_BLACK; s_sql.quitmenu.textcolor2 = CT_WHITE; s_sql.quitmenu.textStyle = UI_TINYFONT; - Menu_AddItem( &s_sql.menu, &s_sql.quitmenu );*/ + s_sql.login.generic.type = MTYPE_BITMAP; + s_sql.login.generic.flags = QMF_HIGHLIGHT_IF_FOCUS; + s_sql.login.generic.x = 350; + s_sql.login.generic.y = 380; + s_sql.login.generic.name = GRAPHIC_BUTTONRIGHT; + s_sql.login.generic.id = ID_LOGIN; + s_sql.login.generic.callback = M_sql_Event; + s_sql.login.width = MENU_BUTTON_MED_WIDTH-20; + s_sql.login.height = PROP_BIG_HEIGHT; + s_sql.login.color = CT_DKPURPLE1; + s_sql.login.color2 = CT_LTPURPLE1; + s_sql.login.textX = MENU_BUTTON_TEXT_X; + s_sql.login.textY = 12; + s_sql.login.textEnum = MBT_ACCEPT; + s_sql.login.textcolor = CT_BLACK; + s_sql.login.textcolor2 = CT_WHITE; + s_sql.login.textStyle = UI_TINYFONT; + + Menu_AddItem( &s_sql.menu, &s_sql.quitmenu ); + Menu_AddItem( &s_sql.menu, &s_sql.login ); } + +/* +=============== +UI_sqlMenu +=============== +*/ +void UI_sqlMenu(void) { + memset( &s_sql, 0, sizeof( s_sql ) ); + + uis.menusp = 0; + + ingameFlag = qtrue; // true when in game menu is in use + + Mouse_Show(); + + UI_sqlMenu_Cache(); + + sqlMenu_Init(); + + UI_PushMenu( &s_sql.menu ); + + Menu_AdjustCursor( &s_sql.menu, 1 ); +} \ No newline at end of file