Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

ui_team.c File Reference

#include "ui_local.h"

Include dependency graph for ui_team.c:

Include dependency graph

Go to the source code of this file.

Data Structures

struct  teammain_t

Defines

#define ID_JOINBLUE   101
#define ID_JOINGAME   102
#define ID_JOINRED   100
#define ID_SPECTATE   103
#define TEAMMAIN_FRAME   "menu/art/cut_frame"

Functions

void TeamMain_Cache (void)
void TeamMain_MenuEvent (void *ptr, int event)
void TeamMain_MenuInit (void)
void UI_TeamMainMenu (void)

Variables

teammain_t s_teammain


Define Documentation

#define ID_JOINBLUE   101
 

Definition at line 33 of file ui_team.c.

Referenced by TeamMain_MenuEvent().

#define ID_JOINGAME   102
 

Definition at line 34 of file ui_team.c.

Referenced by TeamMain_MenuEvent().

#define ID_JOINRED   100
 

Definition at line 32 of file ui_team.c.

Referenced by TeamMain_MenuEvent().

#define ID_SPECTATE   103
 

Definition at line 35 of file ui_team.c.

#define TEAMMAIN_FRAME   "menu/art/cut_frame"
 

Definition at line 30 of file ui_team.c.

Referenced by TeamMain_Cache().


Function Documentation

void TeamMain_Cache void   ) 
 

Definition at line 197 of file ui_team.c.

References TEAMMAIN_FRAME, and trap_R_RegisterShaderNoMip().

00197                             {
00198     trap_R_RegisterShaderNoMip( TEAMMAIN_FRAME );
00199 }

Here is the call graph for this function:

void TeamMain_MenuEvent void *  ptr,
int  event
[static]
 

Definition at line 65 of file ui_team.c.

References EXEC_APPEND, ID_JOINBLUE, ID_JOINGAME, ID_JOINRED, ID_SPECTATE, trap_Cmd_ExecuteText(), and UI_ForceMenuOff().

00065                                                        {
00066     if( event != QM_ACTIVATED ) {
00067         return;
00068     }
00069 
00070     switch( ((menucommon_s*)ptr)->id ) {
00071     case ID_JOINRED:
00072         trap_Cmd_ExecuteText( EXEC_APPEND, "cmd team red\n" );
00073         UI_ForceMenuOff();
00074         break;
00075 
00076     case ID_JOINBLUE:
00077         trap_Cmd_ExecuteText( EXEC_APPEND, "cmd team blue\n" );
00078         UI_ForceMenuOff();
00079         break;
00080 
00081     case ID_JOINGAME:
00082         trap_Cmd_ExecuteText( EXEC_APPEND, "cmd team free\n" );
00083         UI_ForceMenuOff();
00084         break;
00085 
00086     case ID_SPECTATE:
00087         trap_Cmd_ExecuteText( EXEC_APPEND, "cmd team spectator\n" );
00088         UI_ForceMenuOff();
00089         break;
00090     }
00091 }

Here is the call graph for this function:

void TeamMain_MenuInit void   ) 
 

Definition at line 99 of file ui_team.c.

References atoi, menucommon_s::callback, menutext_s::color, CS_SERVERINFO, menucommon_s::flags, teammain_t::frame, _tag_menuframework::fullscreen, gametype, menutext_s::generic, menubitmap_s::generic, GT_CTF, GT_FFA, GT_SINGLE_PLAYER, GT_TEAM, GT_TOURNAMENT, menubitmap_s::height, menucommon_s::id, Info_ValueForKey(), teammain_t::joinblue, teammain_t::joingame, teammain_t::joinred, MAX_INFO_STRING, memset(), teammain_t::menu, Menu_AddItem(), menucommon_s::name, QMF_CENTER_JUSTIFY, s_teammain, teammain_t::spectate, menutext_s::string, menutext_s::style, TeamMain_Cache(), trap_GetConfigString(), menucommon_s::type, UI_CENTER, menubitmap_s::width, _tag_menuframework::wrapAround, menucommon_s::x, y, and menucommon_s::y.

Referenced by UI_TeamMainMenu().

00099                                {
00100     int     y;
00101     int     gametype;
00102     char    info[MAX_INFO_STRING];
00103 
00104     memset( &s_teammain, 0, sizeof(s_teammain) );
00105 
00106     TeamMain_Cache();
00107 
00108     s_teammain.menu.wrapAround = qtrue;
00109     s_teammain.menu.fullscreen = qfalse;
00110 
00111     s_teammain.frame.generic.type   = MTYPE_BITMAP;
00112     s_teammain.frame.generic.flags  = QMF_INACTIVE;
00113     s_teammain.frame.generic.name   = TEAMMAIN_FRAME;
00114     s_teammain.frame.generic.x      = 142;
00115     s_teammain.frame.generic.y      = 118;
00116     s_teammain.frame.width          = 359;
00117     s_teammain.frame.height         = 256;
00118 
00119     y = 194;
00120 
00121     s_teammain.joinred.generic.type     = MTYPE_PTEXT;
00122     s_teammain.joinred.generic.flags    = QMF_CENTER_JUSTIFY|QMF_PULSEIFFOCUS;
00123     s_teammain.joinred.generic.id       = ID_JOINRED;
00124     s_teammain.joinred.generic.callback = TeamMain_MenuEvent;
00125     s_teammain.joinred.generic.x        = 320;
00126     s_teammain.joinred.generic.y        = y;
00127     s_teammain.joinred.string           = "JOIN RED";
00128     s_teammain.joinred.style            = UI_CENTER|UI_SMALLFONT;
00129     s_teammain.joinred.color            = colorRed;
00130     y += 20;
00131 
00132     s_teammain.joinblue.generic.type     = MTYPE_PTEXT;
00133     s_teammain.joinblue.generic.flags    = QMF_CENTER_JUSTIFY|QMF_PULSEIFFOCUS;
00134     s_teammain.joinblue.generic.id       = ID_JOINBLUE;
00135     s_teammain.joinblue.generic.callback = TeamMain_MenuEvent;
00136     s_teammain.joinblue.generic.x        = 320;
00137     s_teammain.joinblue.generic.y        = y;
00138     s_teammain.joinblue.string           = "JOIN BLUE";
00139     s_teammain.joinblue.style            = UI_CENTER|UI_SMALLFONT;
00140     s_teammain.joinblue.color            = colorRed;
00141     y += 20;
00142 
00143     s_teammain.joingame.generic.type     = MTYPE_PTEXT;
00144     s_teammain.joingame.generic.flags    = QMF_CENTER_JUSTIFY|QMF_PULSEIFFOCUS;
00145     s_teammain.joingame.generic.id       = ID_JOINGAME;
00146     s_teammain.joingame.generic.callback = TeamMain_MenuEvent;
00147     s_teammain.joingame.generic.x        = 320;
00148     s_teammain.joingame.generic.y        = y;
00149     s_teammain.joingame.string           = "JOIN GAME";
00150     s_teammain.joingame.style            = UI_CENTER|UI_SMALLFONT;
00151     s_teammain.joingame.color            = colorRed;
00152     y += 20;
00153 
00154     s_teammain.spectate.generic.type     = MTYPE_PTEXT;
00155     s_teammain.spectate.generic.flags    = QMF_CENTER_JUSTIFY|QMF_PULSEIFFOCUS;
00156     s_teammain.spectate.generic.id       = ID_SPECTATE;
00157     s_teammain.spectate.generic.callback = TeamMain_MenuEvent;
00158     s_teammain.spectate.generic.x        = 320;
00159     s_teammain.spectate.generic.y        = y;
00160     s_teammain.spectate.string           = "SPECTATE";
00161     s_teammain.spectate.style            = UI_CENTER|UI_SMALLFONT;
00162     s_teammain.spectate.color            = colorRed;
00163     y += 20;
00164 
00165     trap_GetConfigString(CS_SERVERINFO, info, MAX_INFO_STRING);   
00166     gametype = atoi( Info_ValueForKey( info,"g_gametype" ) );
00167                   
00168     // set initial states
00169     switch( gametype ) {
00170     case GT_SINGLE_PLAYER:
00171     case GT_FFA:
00172     case GT_TOURNAMENT:
00173         s_teammain.joinred.generic.flags  |= QMF_GRAYED;
00174         s_teammain.joinblue.generic.flags |= QMF_GRAYED;
00175         break;
00176 
00177     default:
00178     case GT_TEAM:
00179     case GT_CTF:
00180         s_teammain.joingame.generic.flags |= QMF_GRAYED;
00181         break;
00182     }
00183 
00184     Menu_AddItem( &s_teammain.menu, (void*) &s_teammain.frame );
00185     Menu_AddItem( &s_teammain.menu, (void*) &s_teammain.joinred );
00186     Menu_AddItem( &s_teammain.menu, (void*) &s_teammain.joinblue );
00187     Menu_AddItem( &s_teammain.menu, (void*) &s_teammain.joingame );
00188     Menu_AddItem( &s_teammain.menu, (void*) &s_teammain.spectate );
00189 }

Here is the call graph for this function:

void UI_TeamMainMenu void   ) 
 

Definition at line 207 of file ui_team.c.

References teammain_t::menu, s_teammain, TeamMain_MenuInit(), and UI_PushMenu().

00207                              {
00208     TeamMain_MenuInit();
00209     UI_PushMenu ( &s_teammain.menu );
00210 }

Here is the call graph for this function:


Variable Documentation

teammain_t s_teammain [static]
 

Definition at line 48 of file ui_team.c.

Referenced by TeamMain_MenuInit(), and UI_TeamMainMenu().


Generated on Thu Aug 25 14:35:48 2005 for Quake III Arena by  doxygen 1.3.9.1