]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - menu.h
Add a cvar to change menu progs filename
[xonotic/darkplaces.git] / menu.h
diff --git a/menu.h b/menu.h
index 6cb0425635c77efd591b7604afe01bde95a82a2b..f8094596d3c26076c620b83b5e029c391385c922 100644 (file)
--- a/menu.h
+++ b/menu.h
@@ -21,15 +21,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #ifndef MENU_H
 #define MENU_H
 
-#define M_PROG_FILENAME "menu.dat"
-#define M_NAME "menu"
-#define M_MAX_EDICTS   (1 << 11) // should be enough for a menu
-
 enum m_state_e {
        m_none,
        m_main,
        m_demo,
        m_singleplayer,
+       m_transfusion_episode,
+       m_transfusion_skill,
        m_load,
        m_save,
        m_multiplayer,
@@ -38,43 +36,63 @@ enum m_state_e {
        m_video,
        m_keys,
        m_help,
+       m_credits,
        m_quit,
        m_lanconfig,
        m_gameoptions,
        m_slist,
        m_options_effects,
-       m_options_colorcontrol
+       m_options_graphics,
+       m_options_colorcontrol,
+       m_reset,
+       m_modlist
 };
 
-extern int  m_serverlist;
 extern enum m_state_e m_state;
-extern char m_return_reason[32];
+extern char m_return_reason[128];
+void M_Update_Return_Reason(const char *s);
 
 /*
 // hard-coded menus
 //
 void M_Init (void);
-void M_Keydown (int key);
+void M_KeyEvent (int key);
 void M_Draw (void);
-void M_ToggleMenu_f (void);
+void M_ToggleMenu (int mode);
 
 //
 // menu prog menu
 //
 void MP_Init (void);
-void MP_Keydown (int key);
+void MP_KeyEvent (int key);
 void MP_Draw (void);
-void MP_ToggleMenu_f (void);
+void MP_ToggleMenu (int mode);
 void MP_Shutdown (void);*/
 
 //
 // menu router
 //
+
+void MR_Init_Commands (void);
 void MR_Init (void);
 void MR_Restart (void);
-void (*MR_Keydown) (int key, char ascii);
-void (*MR_Draw) (void);
-void (*MR_ToggleMenu_f) (void);
-void (*MR_Shutdown) (void);
+extern void (*MR_KeyEvent) (int key, int ascii, qboolean downevent);
+extern void (*MR_Draw) (void);
+extern void (*MR_ToggleMenu) (int mode);
+extern void (*MR_Shutdown) (void);
+extern void (*MR_NewMap) (void);
+
+typedef struct video_resolution_s
+{
+       const char *type;
+       int width, height;
+       int conwidth, conheight;
+       double pixelheight; ///< pixel aspect
+}
+video_resolution_t;
+extern video_resolution_t *video_resolutions;
+extern int video_resolutions_count;
+extern video_resolution_t video_resolutions_hardcoded[];
+extern int video_resolutions_hardcoded_count;
 #endif