diff options
Diffstat (limited to 'engines/scumm/dialogs.h')
-rw-r--r-- | engines/scumm/dialogs.h | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/engines/scumm/dialogs.h b/engines/scumm/dialogs.h index d3ee9dbc18..b69e989f8a 100644 --- a/engines/scumm/dialogs.h +++ b/engines/scumm/dialogs.h @@ -142,8 +142,6 @@ public: ConfigDialog(); ~ConfigDialog(); - virtual void open(); - virtual void close(); virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data); }; @@ -165,6 +163,8 @@ public: // from resources InfoDialog(ScummEngine *scumm, int res); + void setInfoText(const String& message); + virtual void handleMouseDown(int x, int y, int button, int clickCount) { setResult(0); close(); @@ -177,7 +177,6 @@ public: virtual void reflowLayout(); protected: - void setInfoText (const String& message); // Query a string from the resources const String queryResString(int stringno); @@ -235,6 +234,26 @@ protected: uint32 _timer; }; +/** + * A dialog used to display and cycle subtitle settings. + * Automatically closes after a brief time has passed. + */ +class SubtitleSettingsDialog : public InfoDialog { +public: + SubtitleSettingsDialog(ScummEngine *scumm, int value); + + virtual void open(); + virtual void handleTickle(); + virtual void handleMouseDown(int x, int y, int button, int clickCount) { + close(); + } + virtual void handleKeyDown(uint16 ascii, int keycode, int modifiers); +protected: + int _value; + uint32 _timer; + + void cycleValue(); +}; //The Indy IQ dialog class Indy3IQPointsDialog : public InfoDialog { |