Wobuzz/wobuzz/ui/main_window.py

59 lines
1.9 KiB
Python

#!/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)