Source code for RWESharp.widgets.LevelTabs

import traceback

from PySide6.QtWidgets import QTabWidget
from PySide6.QtCore import Qt

[docs] class LevelTabs(QTabWidget):
[docs] def __init__(self, parent=None): super().__init__(parent) self.setAcceptDrops(True) self.setMovable(True) self.manager = None
[docs] def dragEnterEvent(self, event): if event.mimeData().hasUrls: event.accept() else: event.ignore()
[docs] def dragMoveEvent(self, event): if event.mimeData().hasUrls: event.setDropAction(Qt.DropAction.CopyAction) event.accept() else: event.ignore()
[docs] def dropEvent(self, event, /): if event.mimeData().hasUrls: event.setDropAction(Qt.DropAction.CopyAction) event.accept() links = [] for url in event.mimeData().urls(): links.append(str(url.toLocalFile())) from RWESharp.Level.RWELevel import RWELevel for i in links: try: level = RWELevel(self.manager, i) self.manager.open_level(level) except: traceback.print_exc() else: event.ignore()