diff options
author | 2016-03-18 22:41:17 +0100 | |
---|---|---|
committer | 2016-03-18 22:41:17 +0100 | |
commit | e39daaf5bdcf21d64abf239e1133963643dc6df1 (patch) | |
tree | 1f1b5f333e84bf056ce82c27bebdbad933f26c0d /src/emu/ui/menu.cpp | |
parent | 421656e108e7091ee9e1b14c84f0a3f6efc2ad2e (diff) | |
parent | b79020559ea3617b2d6bd4c92041d314045e2938 (diff) |
Merge remote-tracking branch 'refs/remotes/mamedev/master'
Diffstat (limited to 'src/emu/ui/menu.cpp')
-rw-r--r-- | src/emu/ui/menu.cpp | 65 |
1 files changed, 46 insertions, 19 deletions
diff --git a/src/emu/ui/menu.cpp b/src/emu/ui/menu.cpp index 4682a4fc203..cee5d132eb1 100644 --- a/src/emu/ui/menu.cpp +++ b/src/emu/ui/menu.cpp @@ -35,27 +35,28 @@ struct ui_arts_info { - const char *title, *path, *addpath; + const char *title, *path; }; static const ui_arts_info arts_info[] = { - { __("Snapshots"), OPTION_SNAPSHOT_DIRECTORY, "snap" }, - { __("Cabinets"), OPTION_CABINETS_PATH, "cabinets;cabdevs" }, - { __("Control Panels"), OPTION_CPANELS_PATH, "cpanel" }, - { __("PCBs"), OPTION_PCBS_PATH, "pcb" }, - { __("Flyers"), OPTION_FLYERS_PATH, "flyers" }, - { __("Titles"), OPTION_TITLES_PATH, "titles" }, - { __("Ends"), OPTION_ENDS_PATH, "ends" }, - { __("Artwork Preview"), OPTION_ARTPREV_PATH, "artwork preview" }, - { __("Bosses"), OPTION_BOSSES_PATH, "bosses" }, - { __("Logos"), OPTION_LOGOS_PATH, "logo" }, - { __("Versus"), OPTION_VERSUS_PATH, "versus" }, - { __("Game Over"), OPTION_GAMEOVER_PATH, "gameover" }, - { __("HowTo"), OPTION_HOWTO_PATH, "howto" }, - { __("Scores"), OPTION_SCORES_PATH, "scores" }, - { __("Select"), OPTION_SELECT_PATH, "select" }, - { __("Marquees"), OPTION_MARQUEES_PATH, "marquees" }, + { __("Snapshots"), OPTION_SNAPSHOT_DIRECTORY }, + { __("Cabinets"), OPTION_CABINETS_PATH }, + { __("Control Panels"), OPTION_CPANELS_PATH }, + { __("PCBs"), OPTION_PCBS_PATH }, + { __("Flyers"), OPTION_FLYERS_PATH }, + { __("Titles"), OPTION_TITLES_PATH }, + { __("Ends"), OPTION_ENDS_PATH }, + { __("Artwork Preview"), OPTION_ARTPREV_PATH }, + { __("Bosses"), OPTION_BOSSES_PATH }, + { __("Logos"), OPTION_LOGOS_PATH }, + { __("Versus"), OPTION_VERSUS_PATH }, + { __("Game Over"), OPTION_GAMEOVER_PATH }, + { __("HowTo"), OPTION_HOWTO_PATH }, + { __("Scores"), OPTION_SCORES_PATH }, + { __("Select"), OPTION_SELECT_PATH }, + { __("Marquees"), OPTION_MARQUEES_PATH }, + { __("Covers"), OPTION_COVER_PATH }, { nullptr } }; @@ -1653,9 +1654,35 @@ void ui_menu::get_title_search(std::string &snaptext, std::string &searchstr) std::string tmp(searchstr); path_iterator path(tmp.c_str()); - std::string curpath; + std::string curpath, addpath; - path_iterator path_iter(arts_info[ui_globals::curimage_view].addpath); + if (ui_globals::curimage_view != SNAPSHOT_VIEW) + { + ui_options moptions; + for (ui_options::entry *f_entry = moptions.first(); f_entry != nullptr; f_entry = f_entry->next()) + { + const char *name = f_entry->name(); + if (name && strlen(name) && !strcmp(arts_info[ui_globals::curimage_view].path, f_entry->name())) + { + addpath = f_entry->default_value(); + break; + } + } + } + else + { + emu_options moptions; + for (emu_options::entry *f_entry = moptions.first(); f_entry != nullptr; f_entry = f_entry->next()) + { + const char *name = f_entry->name(); + if (name && strlen(name) && !strcmp(arts_info[ui_globals::curimage_view].path, f_entry->name())) + { + addpath = f_entry->default_value(); + break; + } + } + } + path_iterator path_iter(addpath.c_str()); std::string c_path; // iterate over path and add path for zipped formats |