diff options
-rw-r--r-- | gui/launcher.cpp | 13 | ||||
-rw-r--r-- | gui/launcher.h | 1 |
2 files changed, 13 insertions, 1 deletions
diff --git a/gui/launcher.cpp b/gui/launcher.cpp index 33b4aa17ab..1e4d36fdef 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -494,7 +494,8 @@ LauncherDialog::LauncherDialog() new ButtonWidget(this, "launcher_start_button", "Start", kStartCmd, 'S'); // Above the lowest button rows: two more buttons (directly below the list box) - new ButtonWidget(this, "launcher_addGame_button", "Add Game...", kAddGameCmd, 'A'); + _addButton = + new ButtonWidget(this, "launcher_addGame_button", "Add Game...", kAddGameCmd, 'A'); _editButton = new ButtonWidget(this, "launcher_editGame_button", "Edit Game...", kEditGameCmd, 'E'); _removeButton = @@ -806,11 +807,21 @@ void LauncherDialog::editGame(int item) { void LauncherDialog::handleKeyDown(uint16 ascii, int keycode, int modifiers) { _modifiers = modifiers; Dialog::handleKeyDown(ascii, keycode, modifiers); + + if ((modifiers & OSystem::KBD_SHIFT) != 0) { + _addButton->setLabel("Mass Add..."); + _addButton->draw(); + } } void LauncherDialog::handleKeyUp(uint16 ascii, int keycode, int modifiers) { _modifiers = modifiers; Dialog::handleKeyUp(ascii, keycode, modifiers); + + if ((modifiers & OSystem::KBD_SHIFT) == 0) { + _addButton->setLabel("Add Game..."); + _addButton->draw(); + } } void LauncherDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 data) { diff --git a/gui/launcher.h b/gui/launcher.h index 73cf8f4186..1730fea622 100644 --- a/gui/launcher.h +++ b/gui/launcher.h @@ -45,6 +45,7 @@ public: protected: ListWidget *_list; + ButtonWidget *_addButton; Widget *_startButton; Widget *_editButton; Widget *_removeButton; |