aboutsummaryrefslogtreecommitdiff
path: root/scumm/dialogs.cpp
diff options
context:
space:
mode:
authorJames Brown2002-12-14 10:46:00 +0000
committerJames Brown2002-12-14 10:46:00 +0000
commit7a0a05a49a45f7b2076c5edaf3cf0872ae3de514 (patch)
treee02b532b30e34bca35e6222082e0c73fdf8bae73 /scumm/dialogs.cpp
parente2cb8112e50d4a88e85d9b08ab4e38ddf48d398e (diff)
downloadscummvm-rg350-7a0a05a49a45f7b2076c5edaf3cf0872ae3de514.tar.gz
scummvm-rg350-7a0a05a49a45f7b2076c5edaf3cf0872ae3de514.tar.bz2
scummvm-rg350-7a0a05a49a45f7b2076c5edaf3cf0872ae3de514.zip
Commit some junk in-case I don't get time to finish this tonight and Fingolfin starts working on it :)
svn-id: r5949
Diffstat (limited to 'scumm/dialogs.cpp')
-rw-r--r--scumm/dialogs.cpp47
1 files changed, 45 insertions, 2 deletions
diff --git a/scumm/dialogs.cpp b/scumm/dialogs.cpp
index eae5d22305..16b8cc21ba 100644
--- a/scumm/dialogs.cpp
+++ b/scumm/dialogs.cpp
@@ -665,12 +665,55 @@ void InfoDialog::setInfoText(const String& message)
#pragma mark -
+PauseDialog::PauseDialog(NewGui *gui, Scumm *scumm)
+ : InfoDialog(gui, scumm, 10)
+{
+}
#pragma mark -
-PauseDialog::PauseDialog(NewGui *gui, Scumm *scumm)
- : InfoDialog(gui, scumm, 10)
+DebuggerDialog::DebuggerDialog(NewGui *gui, Scumm *scumm, int width, int height)
+ : ScummDialog(gui, scumm, 0, 0, width, height)
+{
+ draw();
+}
+
+void DebuggerDialog::drawDialog()
{
+ //int history_len = cmd_history.size();
+
+ // Draw box and border
+ _gui->blendRect(_x, _y, _w, _h, _gui->_bgcolor);
+ /*_gui->line(_x, _y, _x, _h, _gui->_color);
+ _gui->line(_w, _y, _w, _y, _gui->_color);
+ _gui->line(_x, _h, _w, _h, _gui->_shadowcolor);*/
+
+ _gui->addDirtyRect(_x, _y, _w, _h);
+
+ // Draw items
+ // ... history_len - ((_h / kLineHeight) * _page)
+}
+
+void DebuggerDialog::handleKeyDown(uint16 ascii, int keycode, int modifiers) {
+ if ((ascii == '~') || (keycode == 27)) { // Total abort on tilde or escape
+ close();
+ return;
+ } else if (ascii == '\r' || ascii == '\n') { // Run command on enter/newline
+ // TODO: Add some kind of pop() method to StringList,
+ // so we can remove old obsolete entries and not waste memory
+ cmd_history.push_back(cmd_current);
+ // _scumm.debugger.parseCommand(cmd_current, (void*)this.printCallback);
+ cmd_current.clear();
+ draw();
+ } else if (keycode == 8) { // Backspace
+ cmd_current.deleteLastChar();
+ draw();
+ } else if ((keycode >= 31) && (keycode <= 122)) { // Printable ASCII, add to string
+ cmd_current+=(char)ascii;
+ draw();
+ } else {
+ debug(2, "Unhandled keycode from DebuggerDialog: %d\n", keycode);
+ }
}
#ifdef _WIN32_WCE