Wobuzz/wobuzz/gui.py

55 lines
1.6 KiB
Python
Raw Normal View History

2024-12-20 18:02:59 +01:00
#!/usr/bin/python3
from PyQt6.QtCore import Qt
from PyQt6.QtWidgets import QDockWidget
from .ui.main_window import MainWindow
2024-12-20 18:02:59 +01:00
class GUI:
def __init__(self, app):
self.app = app
self.dropped = []
self.window = MainWindow(app)
self.settings = self.window.settings
self.track_control = self.window.track_control
2024-12-20 18:02:59 +01:00
self.window.addDockWidget(Qt.DockWidgetArea.RightDockWidgetArea, self.app.library.main_library_dock)
self.app.library.main_library_dock.setFeatures(
QDockWidget.DockWidgetFeature.DockWidgetMovable |
QDockWidget.DockWidgetFeature.DockWidgetFloatable
)
if self.app.settings.window_maximized:
self.window.showMaximized()
elif not self.app.settings.window_size is None:
self.window.resize(*self.app.settings.window_size)
self.connect()
2024-12-21 19:00:06 +01:00
self.window.show()
self.settings.update_all()
def connect(self):
self.window.closeEvent = self.on_exit
def on_exit(self, event):
self.app.library.on_exit(event)
self.app.settings.window_size = (self.window.width(), self.window.height())
self.app.settings.window_maximized = self.window.isMaximized()
self.app.settings.save(self.app.utils.settings_location)
2024-12-21 19:00:06 +01:00
def on_settings_change(self, key, value):
self.settings.update_settings(key, value)
def on_track_change(self, previous_track, track):
self.track_control.on_track_change(previous_track, track)
self.app.player.current_playlist.view.on_track_change(previous_track, track)