Mappehåndtering
This commit is contained in:
@@ -125,6 +125,12 @@ class LibraryPanel(QWidget):
|
||||
header.addWidget(lbl)
|
||||
header.addStretch()
|
||||
|
||||
btn_refresh = QPushButton("↻ Opdater")
|
||||
btn_refresh.setFixedHeight(28)
|
||||
btn_refresh.setToolTip("Opdater bibliotek fra database")
|
||||
btn_refresh.clicked.connect(self._refresh_library)
|
||||
header.addWidget(btn_refresh)
|
||||
|
||||
btn_manage = QPushButton("⚙ Mapper")
|
||||
btn_manage.setFixedHeight(28)
|
||||
btn_manage.setToolTip("Tilføj, fjern og scan musikbiblioteker")
|
||||
@@ -376,19 +382,31 @@ class LibraryPanel(QWidget):
|
||||
self._bpm_worker.done.connect(on_bpm_done)
|
||||
self._bpm_worker.start()
|
||||
|
||||
def _refresh_library(self):
|
||||
"""Genindlæs bibliotek fra database."""
|
||||
mw = self.window()
|
||||
if hasattr(mw, "_reload_library"):
|
||||
mw._reload_library()
|
||||
|
||||
def _manage_libraries(self):
|
||||
from ui.library_manager import LibraryManagerDialog
|
||||
from local.local_db import DB_PATH
|
||||
dialog = LibraryManagerDialog(db_path=str(DB_PATH), parent=self.window())
|
||||
dialog.libraries_changed.connect(self._on_libraries_changed)
|
||||
dialog.exec()
|
||||
|
||||
def _on_libraries_changed(self):
|
||||
"""Kald reload på main_window når biblioteker ændres."""
|
||||
# Reload øjeblikkeligt når dialog lukkes
|
||||
mw = self.window()
|
||||
if hasattr(mw, "_reload_library"):
|
||||
from PyQt6.QtCore import QTimer
|
||||
QTimer.singleShot(500, mw._reload_library)
|
||||
mw._reload_library()
|
||||
# Start scanning
|
||||
if hasattr(mw, "start_background_scan"):
|
||||
QTimer.singleShot(1000, mw.start_background_scan)
|
||||
|
||||
def _on_libraries_changed(self):
|
||||
"""Kaldes ved tilføj/fjern — reload øjeblikkeligt."""
|
||||
mw = self.window()
|
||||
if hasattr(mw, "_reload_library"):
|
||||
mw._reload_library()
|
||||
|
||||
def _add_folder(self):
|
||||
from PyQt6.QtWidgets import QFileDialog
|
||||
|
||||
Reference in New Issue
Block a user