ScummVM API documentation
display.h
1/* ScummVM - Graphic Adventure Engine
2 *
3 * ScummVM is the legal property of its developers, whose names
4 * are too numerous to list here. Please refer to the COPYRIGHT
5 * file distributed with this source distribution.
6 *
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *
20 *
21 * Based on the original sources
22 * Faery Tale II -- The Halls of the Dead
23 * (c) 1993-1996 The Wyrmkeep Entertainment Co.
24 */
25
26#ifndef SAGA2_DISPLAY_H
27#define SAGA2_DISPLAY_H
28
29namespace Saga2 {
30
31/* ===================================================================== *
32 Types
33 * ===================================================================== */
34
35enum DisplayDisabledBecause {
36 kDisGameNotInitialized = 1 << 0,
37 kDisPlayingVideo = 1 << 1,
38 kDisGraphicsInit = 1 << 2,
39 kDisGameSuspended = 1 << 3,
40 kDisGameEnded = 1 << 4
41};
42
43/* ===================================================================== *
44 Prototypes
45 * ===================================================================== */
46void endGame();
47
48// ------------------------------------------------------------------------
49// Display initialization
50
51void niceScreenStartup();
52void initBackPanel();
53
54// ------------------------------------------------------------------------
55// Display disable flags
56
57void displayEnable(DisplayDisabledBecause reason, bool onOff = true);
58bool displayEnabled(uint32 mask = 0xFFFFFFFF);
59bool displayOkay();
60void mainEnable();
61void mainDisable();
62
63inline void displayDisable(DisplayDisabledBecause reason, bool onOff = false) {
64 displayEnable(reason, onOff);
65}
66
67// ------------------------------------------------------------------------
68// palette changes can be disabled
69
70void enablePaletteChanges();
71void disablePaletteChanges();
72bool paletteChangesEnabled();
73
74// ------------------------------------------------------------------------
75// Screen refreshes
76void delayedDisplayEnable();
77void externalPaletteIntrusion();
78void reDrawScreen();
79void showLoadMessage();
80
81// ------------------------------------------------------------------------
82// Video mode save and restore for videos
83
84void pushVidState();
85void popVidState();
86
87// ------------------------------------------------------------------------
88// The display may be disabled for several reasons these track them
89void blackOut();
90
91} // end of namespace Saga2
92
93#endif //DISPLAY_H