diff --git a/gui/launcher.cpp b/gui/launcher.cpp index aebe3d4aa9c..da49c1ccfdf 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -66,6 +66,7 @@ enum { kQuitCmd = 'QUIT', kSearchCmd = 'SRCH', kListSearchCmd = 'LSSR', + kSearchClearCmd = 'SRCL', kCmdGlobalGraphicsOverride = 'OGFX', kCmdGlobalAudioOverride = 'OSFX', @@ -524,6 +525,7 @@ LauncherDialog::LauncherDialog() _searchDesc = new StaticTextWidget(this, "Launcher.SearchDesc", "Search:"); _searchWidget = new EditTextWidget(this, "Launcher.Search", _search, kSearchCmd); + _searchClearButton = new ButtonWidget(this, "Launcher.SearchClearButton", "C", kSearchClearCmd, 0); // Add list with game titles _list = new ListWidget(this, "Launcher.GameList", kListSearchCmd); @@ -936,6 +938,10 @@ void LauncherDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 dat case kSearchCmd: _list->setFilter(_searchWidget->getEditString()); break; + case kSearchClearCmd: + _searchWidget->setEditString(""); + _list->setFilter(""); + break; default: Dialog::handleCommand(sender, cmd, data); } diff --git a/gui/launcher.h b/gui/launcher.h index ea50d679c12..d482f26fafa 100644 --- a/gui/launcher.h +++ b/gui/launcher.h @@ -63,6 +63,7 @@ protected: GraphicsWidget *_searchPic; #endif StaticTextWidget *_searchDesc; + ButtonWidget *_searchClearButton; StringList _domains; BrowserDialog *_browser; SaveLoadChooser *_loadDialog; diff --git a/gui/themes/default.inc b/gui/themes/default.inc index ebdc7b89e42..d23c7ff0606 100644 --- a/gui/themes/default.inc +++ b/gui/themes/default.inc @@ -334,6 +334,9 @@ " " " " " " +" " +" " +" " " " +" " " " " " " " @@ -1048,6 +1055,27 @@ " " " " " " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " " " " " " " @@ -1059,6 +1087,9 @@ " " " " " " +" " +" " +" " " " @@ -1117,6 +1148,10 @@ "width='150' " "height='Globals.Line.Height' " "/> " +" " " " " " " " @@ -1777,4 +1812,25 @@ " " " " " " +" " +" " +" " +" " +" " +" " +" " +" " +" " +" " " " diff --git a/gui/themes/scummclassic.zip b/gui/themes/scummclassic.zip index 3b50cd19549..9f2701fcd0c 100644 Binary files a/gui/themes/scummclassic.zip and b/gui/themes/scummclassic.zip differ diff --git a/gui/themes/scummclassic/classic_layout.stx b/gui/themes/scummclassic/classic_layout.stx index 969788cea0b..567b0f0d9e7 100644 --- a/gui/themes/scummclassic/classic_layout.stx +++ b/gui/themes/scummclassic/classic_layout.stx @@ -106,6 +106,10 @@ width = '150' height = 'Globals.Line.Height' /> + diff --git a/gui/themes/scummclassic/classic_layout_lowres.stx b/gui/themes/scummclassic/classic_layout_lowres.stx index 932ee163898..809ceccf9f2 100644 --- a/gui/themes/scummclassic/classic_layout_lowres.stx +++ b/gui/themes/scummclassic/classic_layout_lowres.stx @@ -103,6 +103,10 @@ width = '150' height = 'Globals.Line.Height' /> + diff --git a/gui/themes/scummmodern.zip b/gui/themes/scummmodern.zip index c84ff72b552..8a1739adb5d 100644 Binary files a/gui/themes/scummmodern.zip and b/gui/themes/scummmodern.zip differ diff --git a/gui/themes/scummmodern/scummmodern_layout.stx b/gui/themes/scummmodern/scummmodern_layout.stx index d30e4a805ba..d3cd048f1d7 100644 --- a/gui/themes/scummmodern/scummmodern_layout.stx +++ b/gui/themes/scummmodern/scummmodern_layout.stx @@ -114,6 +114,10 @@ width = '150' height = 'Globals.Line.Height' /> + diff --git a/gui/themes/scummmodern/scummmodern_layout_lowres.stx b/gui/themes/scummmodern/scummmodern_layout_lowres.stx index 5d15d2efc77..6f7f25db204 100644 --- a/gui/themes/scummmodern/scummmodern_layout_lowres.stx +++ b/gui/themes/scummmodern/scummmodern_layout_lowres.stx @@ -101,6 +101,10 @@ width = '150' height = 'Globals.Line.Height' /> +