From 6e3b605504dae43254cda1f46554030ee07be46a Mon Sep 17 00:00:00 2001 From: Frodo45127 Date: Thu, 11 Jul 2024 03:17:13 +0200 Subject: [PATCH] Hide the icons for games you don't have configured. --- runcher/src/app_ui/mod.rs | 60 +++++++++++++++++++++++++++++++-------- 1 file changed, 48 insertions(+), 12 deletions(-) diff --git a/runcher/src/app_ui/mod.rs b/runcher/src/app_ui/mod.rs index e282ee6..d53e05a 100644 --- a/runcher/src/app_ui/mod.rs +++ b/runcher/src/app_ui/mod.rs @@ -436,18 +436,54 @@ impl AppUI { for game in SUPPORTED_GAMES.games_sorted().iter() { let has_exe = game.executable_path(&setting_path(game.key())).filter(|path| path.is_file()).is_some(); match game.key() { - KEY_PHARAOH => app_ui.game_selected_pharaoh().set_enabled(has_exe), - KEY_WARHAMMER_3 => app_ui.game_selected_warhammer_3().set_enabled(has_exe), - KEY_TROY => app_ui.game_selected_troy().set_enabled(has_exe), - KEY_THREE_KINGDOMS => app_ui.game_selected_three_kingdoms().set_enabled(has_exe), - KEY_WARHAMMER_2 => app_ui.game_selected_warhammer_2().set_enabled(has_exe), - KEY_WARHAMMER => app_ui.game_selected_warhammer().set_enabled(has_exe), - KEY_THRONES_OF_BRITANNIA => app_ui.game_selected_thrones_of_britannia().set_enabled(has_exe), - KEY_ATTILA => app_ui.game_selected_attila().set_enabled(has_exe), - KEY_ROME_2 => app_ui.game_selected_rome_2().set_enabled(has_exe), - KEY_SHOGUN_2 => app_ui.game_selected_shogun_2().set_enabled(has_exe), - KEY_NAPOLEON => app_ui.game_selected_napoleon().set_enabled(has_exe), - KEY_EMPIRE => app_ui.game_selected_empire().set_enabled(has_exe), + KEY_PHARAOH => { + app_ui.game_selected_pharaoh().set_enabled(has_exe); + app_ui.game_selected_pharaoh().set_visible(has_exe); + } + KEY_WARHAMMER_3 => { + app_ui.game_selected_warhammer_3().set_enabled(has_exe); + app_ui.game_selected_warhammer_3().set_visible(has_exe); + } + KEY_TROY => { + app_ui.game_selected_troy().set_enabled(has_exe); + app_ui.game_selected_troy().set_visible(has_exe); + } + KEY_THREE_KINGDOMS => { + app_ui.game_selected_three_kingdoms().set_enabled(has_exe); + app_ui.game_selected_three_kingdoms().set_visible(has_exe); + } + KEY_WARHAMMER_2 => { + app_ui.game_selected_warhammer_2().set_enabled(has_exe); + app_ui.game_selected_warhammer_2().set_visible(has_exe); + } + KEY_WARHAMMER => { + app_ui.game_selected_warhammer().set_enabled(has_exe); + app_ui.game_selected_warhammer().set_visible(has_exe); + } + KEY_THRONES_OF_BRITANNIA => { + app_ui.game_selected_thrones_of_britannia().set_enabled(has_exe); + app_ui.game_selected_thrones_of_britannia().set_visible(has_exe); + } + KEY_ATTILA => { + app_ui.game_selected_attila().set_enabled(has_exe); + app_ui.game_selected_attila().set_visible(has_exe); + } + KEY_ROME_2 => { + app_ui.game_selected_rome_2().set_enabled(has_exe); + app_ui.game_selected_rome_2().set_visible(has_exe); + } + KEY_SHOGUN_2 => { + app_ui.game_selected_shogun_2().set_enabled(has_exe); + app_ui.game_selected_shogun_2().set_visible(has_exe); + } + KEY_NAPOLEON => { + app_ui.game_selected_napoleon().set_enabled(has_exe); + app_ui.game_selected_napoleon().set_visible(has_exe); + } + KEY_EMPIRE => { + app_ui.game_selected_empire().set_enabled(has_exe); + app_ui.game_selected_empire().set_visible(has_exe); + } _ => {}, } }