menus.h 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. ////////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright 2016 RWS Inc, All Rights Reserved
  4. //
  5. // This program is free software; you can redistribute it and/or modify
  6. // it under the terms of version 2 of the GNU General Public License as published by
  7. // the Free Software Foundation
  8. //
  9. // This program is distributed in the hope that it will be useful,
  10. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. // GNU General Public License for more details.
  13. //
  14. // You should have received a copy of the GNU General Public License along
  15. // with this program; if not, write to the Free Software Foundation, Inc.,
  16. // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  17. //
  18. // menus.h
  19. // Project: Nostril (aka Postal)
  20. //
  21. // History:
  22. // 12/05/96 MJR Started.
  23. //
  24. // 04/18/97 JMI Added extern for menuEditor.
  25. //
  26. // 07/05/97 JMI Moved menu IDs and menu externs into here.
  27. //
  28. // 07/13/97 JMI Added declaration of menuChallenge.
  29. //
  30. // 07/16/97 JMI Added menuVolumes and path from menuOptions.
  31. //
  32. // 07/20/97 JMI Added menuVideoOptions, menuAudioOptions, and
  33. // menuPlayOptions.
  34. //
  35. // 08/04/97 JMI Added menuRotation.
  36. //
  37. // 08/15/97 JRD Added separate postal organ menu,
  38. //
  39. // 08/20/97 MJR Added separate multi-join and multi-host menus.
  40. //
  41. ////////////////////////////////////////////////////////////////////////////////
  42. #ifndef MENUS_H
  43. #define MENUS_H
  44. #ifdef PATHS_IN_INCLUDES
  45. #include "WishPiX/Menu/menu.h"
  46. #else
  47. #include "menu.h"
  48. #endif
  49. ////////////////////////////////////////////////////////////////////////////////
  50. // Macros.
  51. ////////////////////////////////////////////////////////////////////////////////
  52. #define MAIN_MENU_ID 1
  53. #define VERIFY_EXIT_MENU_ID 2
  54. #define CLIENT_GAME_MENU_ID 3
  55. #define HIGH_SCORES_MENU_ID 4
  56. #define OPTIONS_MENU_ID 5
  57. #define START_MENU_ID 6
  58. #define VERIFY_QUIT_GAME_MENU_ID 7
  59. #define MULTIPLAYER_OPTIONS_MENU_ID 8
  60. #define EDITOR_MENU_ID 9
  61. #define KEYBOARD_MENU_ID 10
  62. #define MOUSE_MENU_ID 11
  63. #define JOYSTICK_MENU_ID 12
  64. #define CONTROLS_MENU_ID 13
  65. #define START_SINGLE_MENU_ID 14
  66. #define START_MULTI_MENU_ID 15
  67. #define START_DEMO_MENU_ID 16
  68. #define FEATURES_MENU_ID 17
  69. #define CHALLENGE_MENU_ID 18
  70. #define VOLUME_MENU_ID 19
  71. #define VIDEO_MENU_ID 20
  72. #define AUDIO_MENU_ID 21
  73. #define PLAYOPTIONS_MENU_ID 22
  74. #define ROTATION_MENU_ID 23
  75. #define ORGAN_MENU_ID 24
  76. #define JOIN_MULTI_MENU_ID 25
  77. #define HOST_MULTI_MENU_ID 26
  78. #define PICK_FILE_MENU_ID 27
  79. ////////////////////////////////////////////////////////////////////////////////
  80. // Externs.
  81. ////////////////////////////////////////////////////////////////////////////////
  82. // Forward declarations.
  83. extern Menu menuStart;
  84. extern Menu menuStartSingle;
  85. extern Menu menuStartMulti;
  86. extern Menu menuStartDemo;
  87. extern Menu menuOptions;
  88. extern Menu menuControls;
  89. extern Menu menuKeyboard;
  90. extern Menu menuMouse;
  91. extern Menu menuJoystick;
  92. extern Menu menuHighScores;
  93. extern Menu menuVerifyExit;
  94. extern Menu menuMultiOptions;
  95. extern Menu menuFeatures;
  96. extern Menu menuChallenge;
  97. extern Menu menuVolumes;
  98. extern Menu menuVideoOptions;
  99. extern Menu menuAudioOptions;
  100. extern Menu menuPlayOptions;
  101. extern Menu menuRotation;
  102. extern Menu menuJoinMulti;
  103. extern Menu menuHostMulti;
  104. // Main menu
  105. extern Menu menuMain;
  106. // Client-game menu
  107. extern Menu menuClientGame;
  108. // Editor menu.
  109. extern Menu menuEditor;
  110. // Verify Quit Game.
  111. extern Menu g_menuVerifyQuitGame;
  112. #if 1 //PLATFORM_UNIX
  113. #ifdef MOBILE
  114. #define MAX_SAVE_SLOTS 5
  115. #else
  116. #define MAX_SAVE_SLOTS 9
  117. #endif
  118. short PickFile(const char *title, void (*enumer)(Menu *), char *buf, size_t bufsize);
  119. #endif
  120. #endif //MENUS_H
  121. ////////////////////////////////////////////////////////////////////////////////
  122. // EOF
  123. ////////////////////////////////////////////////////////////////////////////////