@@ -89,52 +89,53 @@ def _get_main_process():
8989def compile_all (gui_instance ) -> bool :
9090 """
9191 Compile tous les fichiers sélectionnés en utilisant l'instance GUI.
92-
92+
9393 Args:
9494 gui_instance: Instance de l'interface graphique PyCompilerArkGui
95-
95+
9696 Returns:
9797 True si la compilation a démarrer, False sinon
9898 """
9999 mp = _get_main_process ()
100-
100+
101101 # Synchroniser le workspace
102- if hasattr (gui_instance , ' workspace_dir' ) and gui_instance .workspace_dir :
102+ if hasattr (gui_instance , " workspace_dir" ) and gui_instance .workspace_dir :
103103 mp .set_workspace (gui_instance .workspace_dir )
104-
104+
105105 # Récupérer les fichiers à compiler
106106 files = []
107- if hasattr (gui_instance , ' python_files' ):
107+ if hasattr (gui_instance , " python_files" ):
108108 files = gui_instance .python_files
109-
109+
110110 if not files :
111- if hasattr (gui_instance , ' log' ) and gui_instance .log :
111+ if hasattr (gui_instance , " log" ) and gui_instance .log :
112112 gui_instance .log .append ("⚠️ Aucun fichier à compiler" )
113113 return False
114-
114+
115115 # Vérifier qu'un moteur est sélectionné
116- if not hasattr (gui_instance , ' compiler_tabs' ) or not gui_instance .compiler_tabs :
117- if hasattr (gui_instance , ' log' ) and gui_instance .log :
116+ if not hasattr (gui_instance , " compiler_tabs" ) or not gui_instance .compiler_tabs :
117+ if hasattr (gui_instance , " log" ) and gui_instance .log :
118118 gui_instance .log .append ("⚠️ Aucun moteur de compilation disponible" )
119119 return False
120-
120+
121121 try :
122122 import EngineLoader as engines_loader
123+
123124 idx = gui_instance .compiler_tabs .currentIndex ()
124125 engine_id = engines_loader .registry .get_engine_for_tab (idx )
125-
126+
126127 if not engine_id :
127- if hasattr (gui_instance , ' log' ) and gui_instance .log :
128+ if hasattr (gui_instance , " log" ) and gui_instance .log :
128129 gui_instance .log .append ("⚠️ Aucun moteur sélectionné" )
129130 return False
130-
131+
131132 mp .set_engine (engine_id )
132-
133+
133134 except Exception as e :
134- if hasattr (gui_instance , ' log' ) and gui_instance .log :
135+ if hasattr (gui_instance , " log" ) and gui_instance .log :
135136 gui_instance .log .append (f"⚠️ Erreur lors de la sélection du moteur: { e } " )
136137 return False
137-
138+
138139 # Démarrer la compilation pour chaque fichier
139140 success_count = 0
140141 for file_path in files :
@@ -143,21 +144,23 @@ def compile_all(gui_instance) -> bool:
143144 # La commande sera générée par le moteur
144145 # Pour l'instant, on retourne True si le MainProcess est prêt
145146 success_count += 1
146-
147+
147148 except Exception as e :
148- if hasattr (gui_instance , ' log' ) and gui_instance .log :
149+ if hasattr (gui_instance , " log" ) and gui_instance .log :
149150 gui_instance .log .append (f"❌ Erreur pour { file_path } : { e } " )
150-
151- if hasattr (gui_instance , 'log' ) and gui_instance .log :
152- gui_instance .log .append (f"✅ { success_count } fichier(s) prêt(s) pour compilation" )
153-
151+
152+ if hasattr (gui_instance , "log" ) and gui_instance .log :
153+ gui_instance .log .append (
154+ f"✅ { success_count } fichier(s) prêt(s) pour compilation"
155+ )
156+
154157 return success_count > 0
155158
156159
157160def cancel_all_compilations () -> bool :
158161 """
159162 Annule toutes les compilations en cours.
160-
163+
161164 Returns:
162165 True si l'annulation a été demandée, False sinon
163166 """
@@ -168,7 +171,7 @@ def cancel_all_compilations() -> bool:
168171def handle_finished (return_code : int ) -> None :
169172 """
170173 Gère la fin d'une compilation.
171-
174+
172175 Args:
173176 return_code: Code de retour du processus
174177 """
@@ -178,7 +181,7 @@ def handle_finished(return_code: int) -> None:
178181def handle_stderr (error : str ) -> None :
179182 """
180183 Gère les erreurs stderr.
181-
184+
182185 Args:
183186 error: Message d'erreur
184187 """
@@ -188,7 +191,7 @@ def handle_stderr(error: str) -> None:
188191def handle_stdout (output : str ) -> None :
189192 """
190193 Gère la sortie stdout.
191-
194+
192195 Args:
193196 output: Sortie standard
194197 """
@@ -198,24 +201,25 @@ def handle_stdout(output: str) -> None:
198201def show_error_dialog (parent , title : str , message : str ) -> None :
199202 """
200203 Affiche une boîte de dialogue d'erreur.
201-
204+
202205 Args:
203206 parent: Widget parent
204207 title: Titre de la boîte de dialogue
205208 message: Message d'erreur
206209 """
207210 from PySide6 .QtWidgets import QMessageBox
211+
208212 QMessageBox .critical (parent , title , message )
209213
210214
211215def try_install_missing_modules (parent , missing : list ) -> bool :
212216 """
213217 Tente d'installer les modules manquants.
214-
218+
215219 Args:
216220 parent: Widget parent
217221 missing: Liste des modules manquants
218-
222+
219223 Returns:
220224 True si l'installation a réussi, False sinon
221225 """
@@ -226,10 +230,10 @@ def try_install_missing_modules(parent, missing: list) -> bool:
226230def try_start_processes (gui_instance ) -> bool :
227231 """
228232 Tente de démarrer les processus de compilation.
229-
233+
230234 Args:
231235 gui_instance: Instance de l'interface graphique
232-
236+
233237 Returns:
234238 True si les processus ont démarrer, False sinon
235239 """
@@ -239,10 +243,10 @@ def try_start_processes(gui_instance) -> bool:
239243def start_compilation_process (gui_instance ) -> bool :
240244 """
241245 Démarre un processus de compilation.
242-
246+
243247 Args:
244248 gui_instance: Instance de l'interface graphique
245-
249+
246250 Returns:
247251 True si le processus a démarrer, False sinon
248252 """
@@ -252,10 +256,10 @@ def start_compilation_process(gui_instance) -> bool:
252256def _continue_compile_all (gui_instance ) -> bool :
253257 """
254258 Continue la compilation de tous les fichiers.
255-
259+
256260 Args:
257261 gui_instance: Instance de l'interface graphique
258-
262+
259263 Returns:
260264 True si la compilation continue, False sinon
261265 """
@@ -268,12 +272,10 @@ def _continue_compile_all(gui_instance) -> bool:
268272 "CompilationSignals" ,
269273 "CompilationThread" ,
270274 "CompilerCore" ,
271-
272275 # Classes de mainprocess.py
273276 "ProcessState" ,
274277 "MainProcessSignals" ,
275278 "MainProcess" ,
276-
277279 # Fonctions de command_helpers.py
278280 "build_command" ,
279281 "validate_command" ,
@@ -283,14 +285,12 @@ def _continue_compile_all(gui_instance) -> bool:
283285 "detect_python_executable" ,
284286 "get_interpreter_version" ,
285287 "check_module_available" ,
286-
287288 # Classes et fonctions de process_killer.py
288289 "ProcessInfo" ,
289290 "ProcessKiller" ,
290291 "kill_process" ,
291292 "kill_process_tree" ,
292293 "get_process_info" ,
293-
294294 # Fonctions de compatibilité UI
295295 "compile_all" ,
296296 "cancel_all_compilations" ,
@@ -306,4 +306,3 @@ def _continue_compile_all(gui_instance) -> bool:
306306
307307__version__ = "1.0.0"
308308__author__ = "Ague Samuel Amen"
309-
0 commit comments