Clean up code: remove duplicates, unused variables, and improve error handling
Co-authored-by: RetroGameSets <102905084+RetroGameSets@users.noreply.github.com>
This commit is contained in:
@@ -12,7 +12,7 @@ from language import handle_language_menu_events, _
|
||||
from network import test_internet, download_rom, is_1fichier_url, download_from_1fichier, check_for_updates
|
||||
from controls import handle_controls, validate_menu_state, process_key_repeats
|
||||
from controls_mapper import load_controls_config, map_controls, draw_controls_mapping, ACTIONS
|
||||
from utils import detect_non_pc, load_sources, check_extension_before_download, extract_zip_data, play_random_music
|
||||
from utils import detect_non_pc, load_sources, check_extension_before_download, extract_zip_data, play_random_music, load_accessibility_settings, load_music_config
|
||||
from history import load_history, save_history
|
||||
import config
|
||||
from config import OTA_data_ZIP
|
||||
@@ -34,9 +34,8 @@ except Exception as e:
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
# Initialisation de Pygame et des polices
|
||||
# Initialisation de Pygame
|
||||
pygame.init()
|
||||
config.init_font()
|
||||
pygame.joystick.init()
|
||||
logger.debug("--------------------------------------------------------------------")
|
||||
logger.debug("---------------------------DEBUT LOG--------------------------------")
|
||||
@@ -44,7 +43,6 @@ logger.debug("------------------------------------------------------------------
|
||||
|
||||
|
||||
# Chargement des paramètres d'accessibilité
|
||||
from utils import load_accessibility_settings
|
||||
config.accessibility_settings = load_accessibility_settings()
|
||||
for i, scale in enumerate(config.font_scale_options):
|
||||
if scale == config.accessibility_settings.get("font_scale", 1.0):
|
||||
@@ -138,7 +136,6 @@ if pygame.joystick.get_count() > 0:
|
||||
# Initialisation du mixer Pygame
|
||||
pygame.mixer.pre_init(44100, -16, 2, 4096)
|
||||
pygame.mixer.init()
|
||||
from utils import load_music_config
|
||||
load_music_config()
|
||||
|
||||
|
||||
|
||||
@@ -17,10 +17,6 @@ from language import _ # Import de la fonction de traduction
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
# Délais spécifiques pour les contrôles
|
||||
JOYHAT_DEBOUNCE = 150 # Délai anti-rebond pour JOYHATMOTION (ms)
|
||||
JOYAXIS_DEBOUNCE = 150 # Délai anti-rebond pour JOYAXISMOTION (ms)
|
||||
|
||||
# Variables globales pour la répétition
|
||||
key_states = {} # Dictionnaire pour suivre l'état des touches
|
||||
|
||||
@@ -33,7 +29,6 @@ VALID_STATES = [
|
||||
]
|
||||
|
||||
def validate_menu_state(state):
|
||||
valid_states = ["platform", "game", "download_progress", "download_result", "confirm_exit", "extension_warning", "pause_menu", "controls_help", "controls_mapping", "redownload_game_cache", "restart_popup", "confirm_clear_history", "language_select"]
|
||||
if state not in VALID_STATES:
|
||||
logger.debug(f"État invalide {state}, retour à platform")
|
||||
return "platform"
|
||||
|
||||
@@ -1251,56 +1251,15 @@ def draw_pause_menu(screen, selected_option):
|
||||
def draw_controls_help(screen, previous_state):
|
||||
"""Affiche la liste des contrôles avec un style moderne."""
|
||||
# Définir les noms d'actions traduits en dehors des f-strings pour éviter les problèmes de syntaxe
|
||||
confirm_text = _("controls_action_confirm")
|
||||
cancel_text = _("controls_action_cancel")
|
||||
start_text = _("controls_action_start")
|
||||
progress_text = _("controls_action_progress")
|
||||
up_text = _("controls_action_up")
|
||||
down_text = _("controls_action_down")
|
||||
page_up_text = _("controls_action_page_up")
|
||||
page_down_text = _("controls_action_page_down")
|
||||
filter_text = _("controls_action_filter")
|
||||
history_text = _("controls_action_history")
|
||||
delete_text = _("controls_action_delete")
|
||||
space_text = _("controls_action_space")
|
||||
|
||||
common_controls = {
|
||||
"confirm": lambda action: f"{get_control_display('confirm', 'A')} : {action}",
|
||||
"cancel": lambda action: f"{get_control_display('cancel', 'B')} : {action}",
|
||||
"start": lambda: f"{get_control_display('start', 'Start')} : {start_text}",
|
||||
"progress": lambda action: f"{get_control_display('progress', 'X')} : {action}",
|
||||
"up": lambda action: f"{get_control_display('up', '↑')} : {action}",
|
||||
"down": lambda action: f"{get_control_display('down', '↓')} : {action}",
|
||||
"left": lambda action: f"{get_control_display('left', '←')} : {action}",
|
||||
"right": lambda action: f"{get_control_display('right', '→')} : {action}",
|
||||
"page_up": lambda action: f"{get_control_display('page_up', 'LB')} : {action}",
|
||||
"page_down": lambda action: f"{get_control_display('page_down', 'RB')} : {action}",
|
||||
"filter": lambda action: f"{get_control_display('filter', 'Select')} : {action}",
|
||||
"history": lambda action: f"{get_control_display('history', 'Y')} : {action}",
|
||||
"delete": lambda: f"{get_control_display('delete', 'Suppr')} : {delete_text}",
|
||||
"space": lambda: f"{get_control_display('space', 'Espace')} : {space_text}"
|
||||
}
|
||||
|
||||
# Utiliser des variables pour les traductions d'actions
|
||||
action_translations = {
|
||||
"retry": _("action_retry"),
|
||||
"quit": _("action_quit"),
|
||||
"select": _("action_select"),
|
||||
"history": _("action_history"),
|
||||
"progress": _("action_progress"),
|
||||
"download": _("action_download"),
|
||||
"filter": _("action_filter"),
|
||||
"cancel": _("action_cancel"),
|
||||
"back": _("action_back"),
|
||||
"navigate": _("action_navigate"),
|
||||
"page": _("action_page"),
|
||||
"cancel_download": _("action_cancel_download"),
|
||||
"background": _("action_background"),
|
||||
"confirm": _("action_confirm"),
|
||||
"redownload": _("action_redownload"),
|
||||
"clear_history": _("action_clear_history")
|
||||
}
|
||||
|
||||
# Catégories de contrôles
|
||||
nav_text = _("controls_navigation")
|
||||
pages_text = _("controls_pages")
|
||||
|
||||
@@ -8,7 +8,7 @@ import zipfile
|
||||
import asyncio
|
||||
import config
|
||||
from config import OTA_VERSION_ENDPOINT,APP_FOLDER, UPDATE_FOLDER, OTA_UPDATE_ZIP
|
||||
from utils import sanitize_filename, extract_zip, extract_rar, load_api_key_1fichier
|
||||
from utils import sanitize_filename, extract_zip, extract_rar, load_api_key_1fichier, normalize_platform_name
|
||||
from history import save_history
|
||||
import logging
|
||||
import datetime
|
||||
@@ -179,11 +179,11 @@ async def download_rom(url, platform, game_name, is_zip_non_supported=False, tas
|
||||
dest_dir = None
|
||||
for platform_dict in config.platform_dicts:
|
||||
if platform_dict["platform"] == platform:
|
||||
dest_dir = os.path.join(config.ROMS_FOLDER, platform_dict.get("folder", platform.lower().replace(" ", "")))
|
||||
dest_dir = os.path.join(config.ROMS_FOLDER, platform_dict.get("folder", normalize_platform_name(platform)))
|
||||
logger.debug(f"Répertoire de destination trouvé pour {platform}: {dest_dir}")
|
||||
break
|
||||
if not dest_dir:
|
||||
dest_dir = os.path.join(os.path.dirname(os.path.dirname(config.APP_FOLDER)), platform.lower().replace(" ", ""))
|
||||
dest_dir = os.path.join(os.path.dirname(os.path.dirname(config.APP_FOLDER)), normalize_platform_name(platform))
|
||||
|
||||
os.makedirs(dest_dir, exist_ok=True)
|
||||
if not os.access(dest_dir, os.W_OK):
|
||||
@@ -380,7 +380,7 @@ async def download_from_1fichier(url, platform, game_name, is_zip_non_supported=
|
||||
dest_dir = None
|
||||
for platform_dict in config.platform_dicts:
|
||||
if platform_dict["platform"] == platform:
|
||||
dest_dir = os.path.join(config.ROMS_FOLDER, platform_dict.get("folder", platform.lower().replace(" ", "")))
|
||||
dest_dir = os.path.join(config.ROMS_FOLDER, platform_dict.get("folder", normalize_platform_name(platform)))
|
||||
break
|
||||
if not dest_dir:
|
||||
logger.warning(f"Aucun dossier 'folder' trouvé pour la plateforme {platform}")
|
||||
|
||||
@@ -11,7 +11,6 @@ import threading
|
||||
import zipfile
|
||||
import time
|
||||
import random
|
||||
import random
|
||||
from config import JSON_EXTENSIONS, SAVE_FOLDER
|
||||
|
||||
def load_accessibility_settings():
|
||||
@@ -39,8 +38,6 @@ from history import save_history
|
||||
from language import _ # Import de la fonction de traduction
|
||||
from datetime import datetime
|
||||
|
||||
from datetime import datetime
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
# Désactiver les logs DEBUG de urllib3 e requests pour supprimer les messages de connexion HTTP
|
||||
@@ -642,12 +639,12 @@ def handle_ps3(dest_dir):
|
||||
for f in files:
|
||||
try:
|
||||
os.chmod(os.path.join(root, f), 0o644)
|
||||
except:
|
||||
except (OSError, PermissionError):
|
||||
pass
|
||||
for d in dirs:
|
||||
try:
|
||||
os.chmod(os.path.join(root, d), 0o755)
|
||||
except:
|
||||
except (OSError, PermissionError):
|
||||
pass
|
||||
|
||||
if os.path.exists(new_path):
|
||||
@@ -873,3 +870,7 @@ def save_music_config():
|
||||
except Exception as e:
|
||||
logger.error(f"Erreur lors de la sauvegarde de music_config.json: {str(e)}")
|
||||
|
||||
|
||||
def normalize_platform_name(platform):
|
||||
"""Normalise un nom de plateforme en supprimant espaces et convertissant en minuscules."""
|
||||
return platform.lower().replace(" ", "")
|
||||
|
||||
Reference in New Issue
Block a user