#!/usr/bin/python3 from PyQt6.QtCore import QPoint from PyQt6.QtGui import QAction from PyQt6.QtWidgets import QMenu, QTabBar class PlaylistContextMenu(QMenu): def __init__(self, parent=None): super().__init__(parent) self.tab_bar: QTabBar = parent self.playlist_title = None self.title = self.addSection("Playlist Actions") self.rename_action = QAction("Rename") self.addAction(self.rename_action) self.delete_action = QAction("Delete") self.addAction(self.delete_action) self.rename_action.triggered.connect(self.rename) self.delete_action.triggered.connect(self.delete) def exec(self, pos: QPoint, title): self.playlist_title = title self.title.setText(title.text()) # set section title super().exec(pos) def rename(self): self.playlist_title.setFocus() def delete(self): self.playlist_title.playlist_view.playlist.delete() self.playlist_title.playlist_view.deleteLater()