ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
game_menu.h
1 
2 /* ScummVM - Graphic Adventure Engine
3  *
4  * ScummVM is the legal property of its developers, whose names
5  * are too numerous to list here. Please refer to the COPYRIGHT
6  * file distributed with this source distribution.
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22 
23 #ifndef M4_GUI_GUI_GAME_MENU_H
24 #define M4_GUI_GUI_GAME_MENU_H
25 
26 #include "m4/m4_types.h"
27 #include "m4/gui/gui_menu_items.h"
28 
29 namespace M4 {
30 namespace GUI {
31 
33 public:
34  static void init();
35 
36  static int16 SL_THUMBNAIL_W;
37  static int16 SL_THUMBNAIL_H;
38 
39  static int16 SL_DIALOG_BOX;
40  static int16 SL_EMPTY_THUMB_25;
41  static int16 SL_SAVE_BTN_GREY;
42  static int16 SL_SAVE_BTN_NORM;
43  static int16 SL_SAVE_BTN_OVER;
44  static int16 SL_SAVE_BTN_PRESS;
45  static int16 SL_LOAD_BTN_GREY;
46  static int16 SL_LOAD_BTN_NORM;
47  static int16 SL_LOAD_BTN_OVER;
48  static int16 SL_LOAD_BTN_PRESS;
49  static int16 SL_CANCEL_BTN_NORM;
50  static int16 SL_CANCEL_BTN_OVER;
51  static int16 SL_CANCEL_BTN_PRESS;
52  static int16 SL_UP_BTN_GREY_19;
53  static int16 SL_UP_BTN_NORM_13;
54  static int16 SL_UP_BTN_OVER_15;
55  static int16 SL_UP_BTN_PRESS_17;
56  static int16 SL_DOWN_BTN_GREY_20;
57  static int16 SL_DOWN_BTN_NORM_14;
58  static int16 SL_DOWN_BTN_OVER_16;
59  static int16 SL_DOWN_BTN_PRESS_18;
60  static int16 SL_SAVE_LABEL_7;
61  static int16 SL_LOAD_LABEL_9;
62  static int16 SL_SLIDER_BTN_NORM_21;
63  static int16 SL_SLIDER_BTN_OVER_22;
64  static int16 SL_SLIDER_BTN_PRESS_23;
65  static int16 SL_LINE_NORM;
66  static int16 SL_LINE_OVER;
67  static int16 SL_LINE_PRESS;
68  static int16 SL_SCROLL_BAR_24;
69  static int16 SL_TOTAL_SPRITES;
70 
71  static constexpr int16 SL_SAVE_TITLE = 11;
72  static constexpr int16 SL_LOAD_TITLE = 12;
73  static constexpr int16 SL_SAVE_LABEL_GREY = 8;
74  static constexpr int16 SL_LOAD_LABEL_GREY = 10;
75 
76 protected:
77  static void initializeSlotTables();
78  static Sprite *menu_CreateThumbnail(int32 *spriteSize);
79  static bool loadThumbnail(int32 slotNum);
80  static void unloadThumbnail(int32 slotNum);
81  static void setFirstSlot(int32 firstSlot, guiMenu *myMenu);
82 
83 public:
84  static void updateThumbnails(int32 firstSlot, guiMenu *myMenu);
85 };
86 
87 } // namespace GUI
88 } // namespace M4
89 
90 #endif
Definition: gui_menu_items.h:301
Definition: system.h:46
Definition: database.h:28
Definition: gui.h:31
Definition: game_menu.h:32