@@ -423,55 +423,33 @@ def _apply_activity_buttons_theme(self) -> None:
423423
424424
425425def _connect_ide_like_signals (self ) -> None :
426- """Connect UI signals to existing methods implemented in Core."""
426+ """Connect UI signals by reusing classic Core wiring, then add IDE extras."""
427+ try :
428+ from ..UiConnection import _connect_signals as _connect_classic_signals
427429
428- def _connect_clicked (widget , handler ) -> None :
429- if widget is None or handler is None :
430- return
431- try :
432- widget .clicked .connect (handler )
433- except Exception :
434- pass
430+ _connect_classic_signals (self )
431+ except Exception :
432+ pass
435433
436- def _connect_text (widget , handler ) -> None :
437- if widget is None or handler is None :
438- return
439- try :
440- widget .textChanged .connect (handler )
441- except Exception :
442- pass
434+ # IDE activity-bar shortcut for dependency analysis.
435+ try :
436+ if getattr (self , "activity_btn_deps" , None ):
437+ self .activity_btn_deps .clicked .connect (self .suggest_missing_dependencies )
438+ except Exception :
439+ pass
443440
444- _connect_clicked (getattr (self , "btn_select_folder" , None ), getattr (self , "select_workspace" , None ))
445- _connect_clicked (getattr (self , "venv_button" , None ), getattr (self , "select_venv_manually" , None ))
446- _connect_clicked (getattr (self , "btn_select_files" , None ), getattr (self , "select_files_manually" , None ))
447- _connect_clicked (getattr (self , "btn_remove_file" , None ), getattr (self , "remove_selected_file" , None ))
448- _connect_clicked (getattr (self , "btn_clear_workspace" , None ), getattr (self , "clear_workspace" , None ))
449- _connect_clicked (getattr (self , "compile_btn" , None ), getattr (self , "compile_all" , None ))
450- _connect_clicked (
451- getattr (self , "cancel_btn" , None ),
452- getattr (self , "cancel_all_compilations" , None ),
453- )
454- _connect_clicked (getattr (self , "advanced_cfg_btn" , None ), getattr (self , "open_advanced_config_editor" , None ))
455- _connect_clicked (getattr (self , "btn_help" , None ), getattr (self , "show_help_dialog" , None ))
456- _connect_clicked (getattr (self , "btn_suggest_deps" , None ), getattr (self , "suggest_missing_dependencies" , None ))
457- _connect_clicked (
458- getattr (self , "activity_btn_deps" , None ),
459- getattr (self , "suggest_missing_dependencies" , None ),
460- )
461- _connect_clicked (getattr (self , "btn_show_stats" , None ), getattr (self , "show_statistics" , None ))
462- _connect_clicked (getattr (self , "btn_export_config" , None ), getattr (self , "export_config" , None ))
463- _connect_clicked (getattr (self , "btn_import_config" , None ), getattr (self , "import_config" , None ))
464- _connect_clicked (getattr (self , "select_lang" , None ), getattr (self , "show_language_dialog" , None ))
465- _connect_clicked (getattr (self , "select_theme" , None ), lambda : _open_theme_dialog (self ))
466- _connect_text (getattr (self , "file_filter_input" , None ), getattr (self , "apply_file_filter" , None ))
467-
468- if getattr (self , "btn_bc_loader" , None ):
469- try :
470- from bcasl import open_bc_loader_dialog
441+ # Ensure icon picker buttons are wired in IDE layout as well.
442+ try :
443+ if getattr (self , "btn_select_icon" , None ):
444+ self .btn_select_icon .clicked .connect (self .select_icon )
445+ except Exception :
446+ pass
447+ try :
448+ if getattr (self , "btn_nuitka_icon" , None ):
449+ self .btn_nuitka_icon .clicked .connect (self .select_nuitka_icon )
450+ except Exception :
451+ pass
471452
472- self .btn_bc_loader .clicked .connect (lambda : open_bc_loader_dialog (self ))
473- except Exception :
474- pass
475453 _bind_status_updates (self )
476454
477455def init_ide_like_ui (self ) -> None :
@@ -481,6 +459,11 @@ def init_ide_like_ui(self) -> None:
481459 _apply_classic_policies (self )
482460 _setup_more_tools_menu (self )
483461 _connect_ide_like_signals (self )
462+ try :
463+ if hasattr (self , "setup_entrypoint_selector" ):
464+ self .setup_entrypoint_selector ()
465+ except Exception :
466+ pass
484467 _schedule_ide_like_async_init (self )
485468
486469
0 commit comments