ScummVM API documentation
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/gui/gui_menu_items.h"
27
28namespace M4 {
29namespace GUI {
30
32public:
33 static void init();
34
35 static int16 SL_THUMBNAIL_W;
36 static int16 SL_THUMBNAIL_H;
37
38 static int16 SL_DIALOG_BOX;
39 static int16 SL_EMPTY_THUMB_25;
40 static int16 SL_SAVE_BTN_GREY;
41 static int16 SL_SAVE_BTN_NORM;
42 static int16 SL_SAVE_BTN_OVER;
43 static int16 SL_SAVE_BTN_PRESS;
44 static int16 SL_LOAD_BTN_GREY;
45 static int16 SL_LOAD_BTN_NORM;
46 static int16 SL_LOAD_BTN_OVER;
47 static int16 SL_LOAD_BTN_PRESS;
48 static int16 SL_CANCEL_BTN_NORM;
49 static int16 SL_CANCEL_BTN_OVER;
50 static int16 SL_CANCEL_BTN_PRESS;
51 static int16 SL_UP_BTN_GREY_19;
52 static int16 SL_UP_BTN_NORM_13;
53 static int16 SL_UP_BTN_OVER_15;
54 static int16 SL_UP_BTN_PRESS_17;
55 static int16 SL_DOWN_BTN_GREY_20;
56 static int16 SL_DOWN_BTN_NORM_14;
57 static int16 SL_DOWN_BTN_OVER_16;
58 static int16 SL_DOWN_BTN_PRESS_18;
59 static int16 SL_SAVE_LABEL_7;
60 static int16 SL_LOAD_LABEL_9;
61 static int16 SL_SLIDER_BTN_NORM_21;
62 static int16 SL_SLIDER_BTN_OVER_22;
63 static int16 SL_SLIDER_BTN_PRESS_23;
64 static int16 SL_LINE_NORM;
65 static int16 SL_LINE_OVER;
66 static int16 SL_LINE_PRESS;
67 static int16 SL_SCROLL_BAR_24;
68 static int16 SL_TOTAL_SPRITES;
69
70 static constexpr int16 SL_SAVE_TITLE = 11;
71 static constexpr int16 SL_LOAD_TITLE = 12;
72 static constexpr int16 SL_SAVE_LABEL_GREY = 8;
73 static constexpr int16 SL_LOAD_LABEL_GREY = 10;
74
75protected:
76 static void initializeSlotTables();
77 static Sprite *menu_CreateThumbnail(int32 *spriteSize);
78 static bool loadThumbnail(int32 slotNum);
79 static void unloadThumbnail(int32 slotNum);
80 static void setFirstSlot(int32 firstSlot, guiMenu *myMenu);
81
82public:
83 static void updateThumbnails(int32 firstSlot, guiMenu *myMenu);
84};
85
86} // namespace GUI
87} // namespace M4
88
89#endif
Definition: game_menu.h:31
Definition: database.h:28
Definition: gui_menu_items.h:300
Definition: gui.h:31