diff options
Diffstat (limited to 'engines/xeen/screen.h')
-rw-r--r-- | engines/xeen/screen.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/engines/xeen/screen.h b/engines/xeen/screen.h index 157d0bc178..cd4608cf9c 100644 --- a/engines/xeen/screen.h +++ b/engines/xeen/screen.h @@ -37,21 +37,27 @@ namespace Xeen { #define PALETTE_SIZE (256 * 3) class XeenEngine; +class Screen; class Window { private: + Screen *_screen; Common::Rect _bounds; int _a; int _border; int _xLo, _xHi; int _ycL, _ycH; public: - Window(const Common::Rect &bounds, int a, int border, int xLo, int ycL, int xHi, int ycH); + Window(); + + Window(Screen *screen, const Common::Rect &bounds, int a, int border, + int xLo, int ycL, int xHi, int ycH); }; class Screen: public XSurface { private: XeenEngine *_vm; + Common::Array<Window> _windows; Common::List<Common::Rect> _dirtyRects; byte _mainPalette[PALETTE_SIZE]; byte _tempPaltte[PALETTE_SIZE]; @@ -59,6 +65,8 @@ private: XSurface _savedScreens[10]; bool _fadeIn; + void setupWindows(); + void mergeDirtyRects(); bool unionRectangle(Common::Rect &destRect, const Common::Rect &src1, const Common::Rect &src2); |