diff options
Diffstat (limited to 'engines/wage/macwindow.h')
-rw-r--r-- | engines/wage/macwindow.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/engines/wage/macwindow.h b/engines/wage/macwindow.h index 797e2f9c2a..4c6e9efeff 100644 --- a/engines/wage/macwindow.h +++ b/engines/wage/macwindow.h @@ -52,6 +52,8 @@ namespace Wage { +class MacWindowManager; + enum WindowType { kWindowUnknown, kWindowWindow, @@ -74,12 +76,13 @@ enum WindowClick { class BaseMacWindow { public: - BaseMacWindow(int id); + BaseMacWindow(int id, bool editable, MacWindowManager *wm); virtual ~BaseMacWindow() {} const Common::Rect &getDimensions() { return _dims; } int getId() { return _id; } WindowType getType() { return _type; } + bool isEditable() { return _editable; } Graphics::ManagedSurface *getSurface() { return &_surface; } virtual void setActive(bool active) = 0; void setDirty(bool dirty) { _contentIsDirty = dirty; } @@ -95,6 +98,8 @@ protected: int _id; WindowType _type; + bool _editable; + Graphics::ManagedSurface _surface; bool _contentIsDirty; @@ -102,11 +107,13 @@ protected: bool (*_callback)(WindowClick, Common::Event &, void *); void *_dataPtr; + + MacWindowManager *_wm; }; class MacWindow : public BaseMacWindow { public: - MacWindow(int id, bool scrollable, bool resizable); + MacWindow(int id, bool scrollable, bool resizable, bool editable, MacWindowManager *wm); virtual ~MacWindow(); void move(int x, int y); void resize(int w, int h); @@ -125,9 +132,8 @@ public: private: void drawBorder(); void drawBox(Graphics::ManagedSurface *g, int x, int y, int w, int h); - void fillRect(Graphics::ManagedSurface *g, int x, int y, int w, int h, int color = kColorBlack); + void fillRect(Graphics::ManagedSurface *g, int x, int y, int w, int h, int color); const Graphics::Font *getTitleFont(); - bool builtInFonts(); void updateInnerDims(); WindowClick isInBorder(int x, int y); |