Skip to content

Commit 250a5f8

Browse files
committed
refactor(ui): simplify IDE layout by moving static configs to .ui file and streamline connections
1 parent f2390d5 commit 250a5f8

3 files changed

Lines changed: 121 additions & 137 deletions

File tree

Ui/Forms/ide_main_window.ui

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -307,13 +307,19 @@ QProgressBar::chunk { background: #0e639c; }</string>
307307
<layout class="QHBoxLayout" name="workspaceSelectLayout">
308308
<item>
309309
<widget class="QPushButton" name="btn_select_folder">
310+
<property name="visible">
311+
<bool>false</bool>
312+
</property>
310313
<property name="text">
311314
<string>Select Folder</string>
312315
</property>
313316
</widget>
314317
</item>
315318
<item>
316319
<widget class="QPushButton" name="venv_button">
320+
<property name="visible">
321+
<bool>false</bool>
322+
</property>
317323
<property name="text">
318324
<string>Venv</string>
319325
</property>
@@ -360,20 +366,29 @@ QProgressBar::chunk { background: #0e639c; }</string>
360366
<layout class="QHBoxLayout" name="fileButtonsLayout">
361367
<item>
362368
<widget class="QPushButton" name="btn_select_files">
369+
<property name="visible">
370+
<bool>false</bool>
371+
</property>
363372
<property name="text">
364373
<string>Add</string>
365374
</property>
366375
</widget>
367376
</item>
368377
<item>
369378
<widget class="QPushButton" name="btn_remove_file">
379+
<property name="visible">
380+
<bool>false</bool>
381+
</property>
370382
<property name="text">
371383
<string>Supprimer</string>
372384
</property>
373385
</widget>
374386
</item>
375387
<item>
376388
<widget class="QPushButton" name="btn_clear_workspace">
389+
<property name="visible">
390+
<bool>false</bool>
391+
</property>
377392
<property name="text">
378393
<string>Clear</string>
379394
</property>
@@ -449,69 +464,99 @@ QProgressBar::chunk { background: #0e639c; }</string>
449464
</item>
450465
<item>
451466
<widget class="QPushButton" name="btn_suggest_deps">
467+
<property name="visible">
468+
<bool>false</bool>
469+
</property>
452470
<property name="text">
453471
<string>Suggest Deps</string>
454472
</property>
455473
</widget>
456474
</item>
457475
<item>
458476
<widget class="QPushButton" name="btn_bc_loader">
477+
<property name="visible">
478+
<bool>false</bool>
479+
</property>
459480
<property name="text">
460481
<string>BC Loader</string>
461482
</property>
462483
</widget>
463484
</item>
464485
<item>
465486
<widget class="QPushButton" name="advanced_cfg_btn">
487+
<property name="visible">
488+
<bool>false</bool>
489+
</property>
466490
<property name="text">
467491
<string>Advanced Config</string>
468492
</property>
469493
</widget>
470494
</item>
471495
<item>
472496
<widget class="QPushButton" name="btn_help">
497+
<property name="visible">
498+
<bool>false</bool>
499+
</property>
473500
<property name="text">
474501
<string>Help</string>
475502
</property>
476503
</widget>
477504
</item>
478505
<item>
479506
<widget class="QPushButton" name="btn_show_stats">
507+
<property name="visible">
508+
<bool>false</bool>
509+
</property>
480510
<property name="text">
481511
<string>Stats</string>
482512
</property>
483513
</widget>
484514
</item>
485515
<item>
486516
<widget class="QPushButton" name="btn_export_config">
517+
<property name="visible">
518+
<bool>false</bool>
519+
</property>
487520
<property name="text">
488521
<string>Export</string>
489522
</property>
490523
</widget>
491524
</item>
492525
<item>
493526
<widget class="QPushButton" name="btn_import_config">
527+
<property name="visible">
528+
<bool>false</bool>
529+
</property>
494530
<property name="text">
495531
<string>Import</string>
496532
</property>
497533
</widget>
498534
</item>
499535
<item>
500536
<widget class="QPushButton" name="select_lang">
537+
<property name="visible">
538+
<bool>false</bool>
539+
</property>
501540
<property name="text">
502541
<string>Language</string>
503542
</property>
504543
</widget>
505544
</item>
506545
<item>
507546
<widget class="QPushButton" name="select_theme">
547+
<property name="visible">
548+
<bool>false</bool>
549+
</property>
508550
<property name="text">
509551
<string>Theme</string>
510552
</property>
511553
</widget>
512554
</item>
513555
<item>
514556
<widget class="QPushButton" name="btn_acasl_loader">
557+
<property name="visible">
558+
<bool>false</bool>
559+
</property>
515560
<property name="text">
516561
<string>ACASL</string>
517562
</property>
@@ -614,6 +659,11 @@ QProgressBar::chunk { background: #0e639c; }</string>
614659
<property name="sizeGripEnabled">
615660
<bool>true</bool>
616661
</property>
662+
<widget class="QLabel" name="status_hint">
663+
<property name="text">
664+
<string>Ready</string>
665+
</property>
666+
</widget>
617667
</widget>
618668
</widget>
619669
<resources/>

Ui/Gui/Gui.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,33 @@ def __init__(self):
117117
return
118118

119119
self.setWindowTitle("PyCompiler ARK")
120+
self.setGeometry(100, 100, 1280, 720)
121+
self.setAcceptDrops(True)
122+
123+
# Étape 1: initialiser les managers.
124+
self.venv_manager = VenvManagerUI(self)
125+
try:
126+
from Ui.Gui.Dialogs.SysDependencyUI import SysDependencyUI
127+
self.sys_deps_manager = SysDependencyUI(self)
128+
except Exception:
129+
self.sys_deps_manager = None
130+
131+
# Étape 2: choisir la variante UI.
132+
ui_variant = str(os.environ.get("PYCOMPILER_UI_VARIANT", "")).strip().lower()
133+
if not ui_variant:
134+
ui_variant = "ide2"
135+
if ui_variant in {"classic", "classic-gui", "legacy"}:
136+
ui_variant = "classic"
137+
if ui_variant in {"ide2", "design2", "ide-like", "idelike", "vscode"}:
138+
try:
139+
self.init_ide_like_ui()
140+
self._ui_variant_active = "ide2"
141+
except Exception:
142+
self._ui_variant_active = "classic"
143+
self.init_ui()
144+
else:
145+
self._ui_variant_active = "classic"
146+
self.init_ui()
120147

121148
# Étape 4: résoudre la langue effective et appliquer l'i18n.
122149
import locale

0 commit comments

Comments
 (0)