55 lines
1.9 KiB
Python
55 lines
1.9 KiB
Python
# coding: utf-8
|
|
|
|
from PyQt6.QtCore import Qt
|
|
from PyQt6.QtWidgets import QVBoxLayout, QWidget
|
|
from qfluentwidgets import PopUpAniStackedWidget, SegmentedWidget, TitleLabel
|
|
|
|
from app.core import lang
|
|
from app.view.widgets.download_widget import DownloadScrollWidget
|
|
from app.view.widgets.upload_widget import UploadScrollWidget
|
|
|
|
|
|
class TaskInterface(QWidget):
|
|
def __init__(self, parent=None):
|
|
super().__init__(parent=parent)
|
|
self.vBoxLayout = QVBoxLayout(self)
|
|
|
|
self.titleLabel = TitleLabel(lang("任务管理"), self)
|
|
self.pivot = SegmentedWidget(self)
|
|
|
|
self.stackedWidget = PopUpAniStackedWidget(self)
|
|
self.uploadScrollWidget = UploadScrollWidget(self)
|
|
self.downloadScrollWidget = DownloadScrollWidget(self)
|
|
self.__initWidget()
|
|
|
|
def __initWidget(self):
|
|
self.setObjectName("taskInterface")
|
|
self.titleLabel.setContentsMargins(10, 5, 5, 5)
|
|
|
|
self.pivot.setMinimumWidth(200)
|
|
self.pivot.addItem("Upload", lang("文件上传"))
|
|
self.pivot.addItem("Download", lang("文件下载"))
|
|
self.pivot.setCurrentItem("Upload")
|
|
self.pivot.currentItemChanged.connect(self._changePivot)
|
|
|
|
self.stackedWidget.addWidget(self.uploadScrollWidget)
|
|
self.stackedWidget.addWidget(self.downloadScrollWidget)
|
|
self.__initLayout()
|
|
|
|
def _changePivot(self, routeKey):
|
|
self.stackedWidget.setCurrentWidget(
|
|
self.stackedWidget.findChild(QWidget, routeKey + "ScrollWidget")
|
|
)
|
|
self.pivot.setCurrentItem(routeKey)
|
|
|
|
def __initLayout(self):
|
|
self.vBoxLayout.addWidget(
|
|
self.titleLabel, 0, Qt.AlignmentFlag.AlignTop | Qt.AlignmentFlag.AlignLeft
|
|
)
|
|
self.vBoxLayout.addSpacing(5)
|
|
self.vBoxLayout.addWidget(
|
|
self.pivot, 0, Qt.AlignmentFlag.AlignTop | Qt.AlignmentFlag.AlignLeft
|
|
)
|
|
self.vBoxLayout.addSpacing(5)
|
|
self.vBoxLayout.addWidget(self.stackedWidget)
|