ScummVM API documentation
gui.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_H
24 #define M4_GUI_GUI_H
25 
26 #include "m4/m4_types.h"
27 #include "m4/graphics/gr_buff.h"
28 
29 namespace M4 {
30 
31 struct M4sprite {
32  M4sprite *next = nullptr;
33  M4sprite *prev = nullptr;
34  int32 x = 0;
35  int32 y = 0;
36  int32 w = 0;
37  int32 h = 0;
38  int32 xOffset = 0; // the "hotspot" of the sprite, ie: the registration point
39  int32 yOffset = 0;
40  uint8 encoding = 0;
41  uint8 *data = nullptr;
42  MemHandle sourceHandle = nullptr;
43  int32 sourceOffset = 0;
44 };
45 
46 struct transSprite {
47  M4sprite *srcSprite = nullptr;
48  Buffer *scrnBuffer = nullptr;
49 };
50 
51 
52 struct M4Rect {
53  int32 x1, y1, x2, y2;
54 };
55 
56 struct RectList {
57  RectList *next;
58  RectList *prev;
59  int32 x1, y1, x2, y2;
60 };
61 
62 struct matte {
63  matte *nextMatte;
64  void *myScreen;
65  int32 x1;
66  int32 y1;
67  int32 x2;
68  int32 y2;
69  int32 w;
70  int32 h;
71  uint8 *SrcBuffer;
72  uint32 SrcPitch;
73 };
74 
75 } // End of namespace M4
76 
77 #endif
Definition: gui.h:56
Definition: gui.h:46
Definition: gui.h:62
Definition: m4_types.h:67
Definition: database.h:28
Definition: gui.h:31
Definition: gui.h:52