From 11e4d49e2bf4d3b83bae272d507644c4372de30f Mon Sep 17 00:00:00 2001 From: Maksim Totmin Date: Sun, 31 May 2026 15:18:08 +0700 Subject: [PATCH] Auto-hide empty library sections in Library tab MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Hide 'Ready to Transfer' header and list when no tracks are ready - Hide 'Source Files — Need Conversion' header and list when no source files exist - Sections appear/disappear automatically on scan, add, convert, delete --- src/main.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main.py b/src/main.py index 233f842..ad18a46 100644 --- a/src/main.py +++ b/src/main.py @@ -323,15 +323,15 @@ class MainWindow(QMainWindow): output_layout.addWidget(refresh_btn) layout.addLayout(output_layout) - ready_label = QLabel("Ready to Transfer:") - layout.addWidget(ready_label) + self.ready_label = QLabel("Ready to Transfer:") + layout.addWidget(self.ready_label) self.library_ready_list = QListWidget() self.library_ready_list.setSelectionMode(QListWidget.SelectionMode.ExtendedSelection) layout.addWidget(self.library_ready_list, stretch=2) - source_label = QLabel("Source Files — Need Conversion:") - layout.addWidget(source_label) + self.source_label = QLabel("Source Files — Need Conversion:") + layout.addWidget(self.source_label) self.library_source_list = QListWidget() self.library_source_list.setSelectionMode(QListWidget.SelectionMode.ExtendedSelection) @@ -553,7 +553,8 @@ class MainWindow(QMainWindow): self.library_ready_list.addItem(item) count = len(self.library_ready) - ready_label = self.findChild(QLabel, "ready_label") + self.ready_label.setVisible(count > 0) + self.library_ready_list.setVisible(count > 0) if count: self.library_status.setText(f"{count} track(s) ready to transfer") self.library_transfer_btn.setEnabled(True) @@ -609,10 +610,9 @@ class MainWindow(QMainWindow): self.library_source_list.addItem(item) count = len(all_sources) - if count: - self.library_convert_btn.setEnabled(True) - else: - self.library_convert_btn.setEnabled(False) + self.source_label.setVisible(count > 0) + self.library_source_list.setVisible(count > 0) + self.library_convert_btn.setEnabled(count > 0) def _get_selected_ready_tracks(self) -> List[Tuple[TrackInfo, str]]: selected = self.library_ready_list.selectedItems()