#!/usr/bin/python3 from PyQt6.QtCore import Qt, QPoint from PyQt6.QtGui import QIcon, QContextMenuEvent from PyQt6.QtWidgets import QMainWindow, QMenu from .track_control import TrackControl from .settings import Settings from .process.process_dock import ProcessDock from .track_info import TrackInfo class MainWindow(QMainWindow): def __init__(self, app, gui, parent=None): super().__init__(parent) self.app = app self.gui = gui self.icon = QIcon(f"{self.app.utils.wobuzz_location}/icon.svg") self.setWindowTitle("Wobuzz") self.setWindowIcon(self.icon) self.menu_bar = self.menuBar() self.file_menu = QMenu("&File", self.menu_bar) self.menu_bar.addMenu(self.file_menu) self.open_track_action = self.file_menu.addAction("&Open Tracks") self.import_track_action = self.file_menu.addAction("&Import Tracks") self.playlist_menu = QMenu("&Playlist", self.menu_bar) self.menu_bar.addMenu(self.playlist_menu) self.import_playlist_action = self.playlist_menu.addAction("&Import Playlists") self.edit_menu = QMenu("&Edit", self.menu_bar) self.menu_bar.addMenu(self.edit_menu) self.view_menu = QMenu("&View", self.menu_bar) self.menu_bar.addMenu(self.view_menu) self.track_control = TrackControl(app) self.addToolBar(self.track_control) self.settings = Settings(app) self.settings.hide() self.addDockWidget(Qt.DockWidgetArea.LeftDockWidgetArea, self.settings) self.process_dock = ProcessDock(app) self.process_dock.hide() self.addDockWidget(Qt.DockWidgetArea.RightDockWidgetArea, self.process_dock) self.track_info = TrackInfo(app) self.addToolBar(Qt.ToolBarArea.BottomToolBarArea, self.track_info) dock_menu = self.createPopupMenu() dock_menu.setTitle("Docks And Toolbars") self.view_menu.addMenu(dock_menu)