]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - menu.h
fix a number of char types that should be int, to make them immune to
[xonotic/darkplaces.git] / menu.h
diff --git a/menu.h b/menu.h
index 4e3d334625abbd65d205c688093162641fad5172..4cb3e85764b9d8ca8b52c26c4ca4e9f98e89b798 100644 (file)
--- a/menu.h
+++ b/menu.h
@@ -8,7 +8,7 @@ of the License, or (at your option) any later version.
 
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 See the GNU General Public License for more details.
 
@@ -18,46 +18,81 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
 */
 
-//
-// the net drivers should just set the apropriate bits in m_activenet,
-// instead of having the menu code look through their internal tables
-//
-#define        MNET_IPX                1
-#define        MNET_TCP                2
+#ifndef MENU_H
+#define MENU_H
+
+#define M_PROG_FILENAME "menu.dat"
+#define M_NAME "menu"
+#define M_MAX_EDICTS   32768 // hopefully won't have to increase this again anytime soon...
 
 enum m_state_e {
        m_none,
        m_main,
        m_demo,
        m_singleplayer,
+       m_transfusion_episode,
+       m_transfusion_skill,
        m_load,
        m_save,
        m_multiplayer,
        m_setup,
-       m_net,
        m_options,
        m_video,
        m_keys,
        m_help,
+       m_credits,
        m_quit,
        m_lanconfig,
        m_gameoptions,
-       m_search,
-       m_slist
+       m_slist,
+       m_options_effects,
+       m_options_graphics,
+       m_options_colorcontrol,
+       m_reset,
+       m_modlist
 };
 
-extern int m_activenet;
-extern int m_return_state;
 extern enum m_state_e m_state;
-extern qboolean m_return_onerror;
 extern char m_return_reason[32];
+void M_Update_Return_Reason(char *s);
 
-//
-// menus
+/*
+// 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);
 
+//
+// menu prog menu
+//
+void MP_Init (void);
+void MP_KeyEvent (int key);
+void MP_Draw (void);
+void MP_ToggleMenu_f (void);
+void MP_Shutdown (void);*/
+
+//
+// menu router
+//
+
+void MR_Init_Commands (void);
+void MR_Init (void);
+void MR_Restart (void);
+extern void (*MR_KeyEvent) (int key, int ascii, qboolean downevent);
+extern void (*MR_Draw) (void);
+extern void (*MR_ToggleMenu_f) (void);
+extern void (*MR_Shutdown) (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[];
+#endif