aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/dialogs.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/scumm/dialogs.h')
-rw-r--r--engines/scumm/dialogs.h25
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 {