aboutsummaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorMax Horn2002-11-21 17:24:42 +0000
committerMax Horn2002-11-21 17:24:42 +0000
commit3ceee2fc42898d2920db8218e1c62e729f0cb48a (patch)
treec320b7fb84ed0ce693cac4f99cfedfb03182e08c /gui
parentdd5e27f2c7098ae339a4d5c3b81184e6c56300b6 (diff)
downloadscummvm-rg350-3ceee2fc42898d2920db8218e1c62e729f0cb48a.tar.gz
scummvm-rg350-3ceee2fc42898d2920db8218e1c62e729f0cb48a.tar.bz2
scummvm-rg350-3ceee2fc42898d2920db8218e1c62e729f0cb48a.zip
allow some more chars as input
svn-id: r5672
Diffstat (limited to 'gui')
-rw-r--r--gui/EditTextWidget.cpp2
-rw-r--r--gui/ListWidget.cpp51
2 files changed, 27 insertions, 26 deletions
diff --git a/gui/EditTextWidget.cpp b/gui/EditTextWidget.cpp
index 0c65b604d8..b10b44ce4d 100644
--- a/gui/EditTextWidget.cpp
+++ b/gui/EditTextWidget.cpp
@@ -87,7 +87,7 @@ bool EditTextWidget::handleKeyDown(char key, int modifiers)
case 23: // end
break;
default:
- if (isalnum(key) || key == ' ') {
+ if (isalnum(key) || key == ' ' || key == '-' || key == '_') {
_label += key;
dirty = true;
} else {
diff --git a/gui/ListWidget.cpp b/gui/ListWidget.cpp
index db999d5d8e..9a81800b19 100644
--- a/gui/ListWidget.cpp
+++ b/gui/ListWidget.cpp
@@ -147,31 +147,32 @@ bool ListWidget::handleKeyDown(char key, int modifiers)
if (_caretVisible)
drawCaret(true);
- if (key == '\n' || key == '\r') {
- // enter, confirm edit and exit editmode
- _editMode = false;
- dirty = true;
- sendCommand(kListItemActivatedCmd, _selectedItem);
- } else if (key == 27) {
- // ESC, abort edit and exit editmode
- _editMode = false;
- dirty = true;
- _list[_selectedItem] = _backupString;
- } else if (key == 8) { // backspace
- _list[_selectedItem].deleteLastChar();
- dirty = true;
- } else if (// filter keystrokes
- ( ( key >= 'a' && key <= 'z' )
- || ( key >= 'A' && key <= 'Z' )
- || ( key >= '0' && key <= '9' )
- || ( key == ' ')
- ) )
- {
-
- _list[_selectedItem] += key;
- dirty = true;
- } else
- handled = false;
+ switch (key) {
+ case '\n': // enter/return
+ case '\r':
+ // enter, confirm edit and exit editmode
+ _editMode = false;
+ dirty = true;
+ sendCommand(kListItemActivatedCmd, _selectedItem);
+ break;
+ case 27: // escape
+ // ESC, abort edit and exit editmode
+ _editMode = false;
+ dirty = true;
+ _list[_selectedItem] = _backupString;
+ break;
+ case 8: // backspace
+ _list[_selectedItem].deleteLastChar();
+ dirty = true;
+ break;
+ default:
+ if (isalnum(key) || key == ' ' || key == '-' || key == '_') {
+ _list[_selectedItem] += key;
+ dirty = true;
+ } else {
+ handled = false;
+ }
+ }
} else {
// not editmode