From 39ede6eb44afa2367e529663d5f2163b4001c53f Mon Sep 17 00:00:00 2001 From: 283375 Date: Mon, 18 Sep 2023 01:03:08 +0800 Subject: [PATCH] wip: `TabTools_StepCalculator` --- .../tabs/tabTools/tabTools_StepCalculator.ui | 341 ++++++++++++++++++ .../tabTools/tabTools_StepCalculator_ui.py | 297 +++++++++++++++ ui/designer/tabs/tabToolsEntry.ui | 11 + ui/designer/tabs/tabToolsEntry_ui.py | 109 +++--- .../tabs/tabTools/tabTools_StepCalculator.py | 113 ++++++ .../stepCalculator/legacy-play-plus.png | Bin 0 -> 25913 bytes .../images/stepCalculator/legacy-play.png | Bin 0 -> 25831 bytes .../images/stepCalculator/memory-boost.png | Bin 0 -> 18180 bytes ui/resources/images/stepCalculator/play.png | Bin 0 -> 30220 bytes .../images/stepCalculator/stamina.png | Bin 0 -> 3069 bytes ui/resources/resources.qrc | 5 + 11 files changed, 824 insertions(+), 52 deletions(-) create mode 100644 ui/designer/tabs/tabTools/tabTools_StepCalculator.ui create mode 100644 ui/designer/tabs/tabTools/tabTools_StepCalculator_ui.py create mode 100644 ui/implements/tabs/tabTools/tabTools_StepCalculator.py create mode 100644 ui/resources/images/stepCalculator/legacy-play-plus.png create mode 100644 ui/resources/images/stepCalculator/legacy-play.png create mode 100644 ui/resources/images/stepCalculator/memory-boost.png create mode 100644 ui/resources/images/stepCalculator/play.png create mode 100644 ui/resources/images/stepCalculator/stamina.png diff --git a/ui/designer/tabs/tabTools/tabTools_StepCalculator.ui b/ui/designer/tabs/tabTools/tabTools_StepCalculator.ui new file mode 100644 index 0000000..828df10 --- /dev/null +++ b/ui/designer/tabs/tabTools/tabTools_StepCalculator.ui @@ -0,0 +1,341 @@ + + + TabTools_StepCalculator + + + + 0 + 0 + 615 + 549 + + + + TabTools_StepCalculator + + + + + + + + + partnerStepValueLabel + + + + + + + + 0 + 0 + + + + 1000.000000000000000 + + + 1.000000000000000 + + + QAbstractSpinBox::DefaultStepType + + + + + + + + + + + + + + + + QPushButton{background-color: transparent} + + + + + + true + + + true + + + + + + + QPushButton{background-color: transparent} + + + + + + true + + + true + + + + + + + QPushButton{background-color: transparent} + + + + + + true + + + true + + + + + + + false + + + QPushButton{background-color: transparent} + + + Beyond placeholder + + + false + + + true + + + + + + + + + + + 0 + 0 + + + + 1 + + + + + + + legacyPlay.noOptions + + + + + + + + + + + + 0 + 0 + + + + + + + x2 + + + + + + + x4 + + + + + + + x6 + + + + + + + + + + + 0 + 0 + + + + legacyPlayPlus.useFragments + + + true + + + false + + + + + + x1.1 +100 + + + + + + + x1.25 +125 + + + + + + + x1.5 +500 + + + + + + + + + + + + + + play.memoryBoost + + + + + + + + + + + + + + + 0 + 0 + + + + + + + calculation + + + + + + + + + playResultLabel + + + + + + + + 0 + 0 + + + + 3 + + + 100.000000000000000 + + + 0.100000000000000 + + + + + + + + + + calculatePlayResultFromScoreButton + + + + + + + + + + inverseCalculation + + + + + + + + + targetStep + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + diff --git a/ui/designer/tabs/tabTools/tabTools_StepCalculator_ui.py b/ui/designer/tabs/tabTools/tabTools_StepCalculator_ui.py new file mode 100644 index 0000000..2965be7 --- /dev/null +++ b/ui/designer/tabs/tabTools/tabTools_StepCalculator_ui.py @@ -0,0 +1,297 @@ +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file 'tabTools_StepCalculator.ui' +## +## Created by: Qt User Interface Compiler version 6.5.2 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale, + QMetaObject, QObject, QPoint, QRect, + QSize, QTime, QUrl, Qt) +from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor, + QFont, QFontDatabase, QGradient, QIcon, + QImage, QKeySequence, QLinearGradient, QPainter, + QPalette, QPixmap, QRadialGradient, QTransform) +from PySide6.QtWidgets import (QAbstractSpinBox, QApplication, QCheckBox, QDoubleSpinBox, + QGridLayout, QGroupBox, QHBoxLayout, QLabel, + QPushButton, QRadioButton, QSizePolicy, QStackedWidget, + QVBoxLayout, QWidget) + +class Ui_TabTools_StepCalculator(object): + def setupUi(self, TabTools_StepCalculator): + if not TabTools_StepCalculator.objectName(): + TabTools_StepCalculator.setObjectName(u"TabTools_StepCalculator") + TabTools_StepCalculator.resize(615, 549) + TabTools_StepCalculator.setWindowTitle(u"TabTools_StepCalculator") + self.verticalLayout_3 = QVBoxLayout(TabTools_StepCalculator) + self.verticalLayout_3.setObjectName(u"verticalLayout_3") + self.widget_3 = QWidget(TabTools_StepCalculator) + self.widget_3.setObjectName(u"widget_3") + self.gridLayout = QGridLayout(self.widget_3) + self.gridLayout.setObjectName(u"gridLayout") + self.label = QLabel(self.widget_3) + self.label.setObjectName(u"label") + + self.gridLayout.addWidget(self.label, 0, 0, 1, 1) + + self.partnerStepValueSpinBox = QDoubleSpinBox(self.widget_3) + self.partnerStepValueSpinBox.setObjectName(u"partnerStepValueSpinBox") + sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.partnerStepValueSpinBox.sizePolicy().hasHeightForWidth()) + self.partnerStepValueSpinBox.setSizePolicy(sizePolicy) + self.partnerStepValueSpinBox.setMaximum(1000.000000000000000) + self.partnerStepValueSpinBox.setSingleStep(1.000000000000000) + self.partnerStepValueSpinBox.setStepType(QAbstractSpinBox.DefaultStepType) + + self.gridLayout.addWidget(self.partnerStepValueSpinBox, 0, 1, 1, 1) + + + self.verticalLayout_3.addWidget(self.widget_3) + + self.mapTypeWidget = QWidget(TabTools_StepCalculator) + self.mapTypeWidget.setObjectName(u"mapTypeWidget") + self.horizontalLayout = QHBoxLayout(self.mapTypeWidget) + self.horizontalLayout.setObjectName(u"horizontalLayout") + self.mapTypeSelectorWidget = QWidget(self.mapTypeWidget) + self.mapTypeSelectorWidget.setObjectName(u"mapTypeSelectorWidget") + self.gridLayout_2 = QGridLayout(self.mapTypeSelectorWidget) + self.gridLayout_2.setObjectName(u"gridLayout_2") + self.mapTypeLegacyPlayRadioButton = QPushButton(self.mapTypeSelectorWidget) + self.mapTypeLegacyPlayRadioButton.setObjectName(u"mapTypeLegacyPlayRadioButton") + self.mapTypeLegacyPlayRadioButton.setStyleSheet(u"QPushButton{background-color: transparent}") + self.mapTypeLegacyPlayRadioButton.setCheckable(True) + self.mapTypeLegacyPlayRadioButton.setAutoExclusive(True) + + self.gridLayout_2.addWidget(self.mapTypeLegacyPlayRadioButton, 0, 0, 1, 1) + + self.mapTypePlayRadioButton = QPushButton(self.mapTypeSelectorWidget) + self.mapTypePlayRadioButton.setObjectName(u"mapTypePlayRadioButton") + self.mapTypePlayRadioButton.setStyleSheet(u"QPushButton{background-color: transparent}") + self.mapTypePlayRadioButton.setCheckable(True) + self.mapTypePlayRadioButton.setAutoExclusive(True) + + self.gridLayout_2.addWidget(self.mapTypePlayRadioButton, 1, 0, 1, 1) + + self.mapTypeLegacyPlayPlusRadioButton = QPushButton(self.mapTypeSelectorWidget) + self.mapTypeLegacyPlayPlusRadioButton.setObjectName(u"mapTypeLegacyPlayPlusRadioButton") + self.mapTypeLegacyPlayPlusRadioButton.setStyleSheet(u"QPushButton{background-color: transparent}") + self.mapTypeLegacyPlayPlusRadioButton.setCheckable(True) + self.mapTypeLegacyPlayPlusRadioButton.setAutoExclusive(True) + + self.gridLayout_2.addWidget(self.mapTypeLegacyPlayPlusRadioButton, 0, 1, 1, 1) + + self.pushButton_4 = QPushButton(self.mapTypeSelectorWidget) + self.pushButton_4.setObjectName(u"pushButton_4") + self.pushButton_4.setEnabled(False) + self.pushButton_4.setStyleSheet(u"QPushButton{background-color: transparent}") + self.pushButton_4.setText(u"Beyond placeholder") + self.pushButton_4.setCheckable(False) + self.pushButton_4.setAutoExclusive(True) + + self.gridLayout_2.addWidget(self.pushButton_4, 1, 1, 1, 1) + + + self.horizontalLayout.addWidget(self.mapTypeSelectorWidget) + + self.stackedWidget = QStackedWidget(self.mapTypeWidget) + self.stackedWidget.setObjectName(u"stackedWidget") + sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) + sizePolicy1.setHorizontalStretch(0) + sizePolicy1.setVerticalStretch(0) + sizePolicy1.setHeightForWidth(self.stackedWidget.sizePolicy().hasHeightForWidth()) + self.stackedWidget.setSizePolicy(sizePolicy1) + self.legacyPlay = QWidget() + self.legacyPlay.setObjectName(u"legacyPlay") + self.verticalLayout = QVBoxLayout(self.legacyPlay) + self.verticalLayout.setObjectName(u"verticalLayout") + self.label_3 = QLabel(self.legacyPlay) + self.label_3.setObjectName(u"label_3") + + self.verticalLayout.addWidget(self.label_3) + + self.stackedWidget.addWidget(self.legacyPlay) + self.legacyPlayPlus = QWidget() + self.legacyPlayPlus.setObjectName(u"legacyPlayPlus") + self.verticalLayout_2 = QVBoxLayout(self.legacyPlayPlus) + self.verticalLayout_2.setObjectName(u"verticalLayout_2") + self.widget = QWidget(self.legacyPlayPlus) + self.widget.setObjectName(u"widget") + sizePolicy2 = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Preferred) + sizePolicy2.setHorizontalStretch(0) + sizePolicy2.setVerticalStretch(0) + sizePolicy2.setHeightForWidth(self.widget.sizePolicy().hasHeightForWidth()) + self.widget.setSizePolicy(sizePolicy2) + self.horizontalLayout_2 = QHBoxLayout(self.widget) + self.horizontalLayout_2.setObjectName(u"horizontalLayout_2") + self.legacyPlayPlus_x2StaminaRadioButton = QRadioButton(self.widget) + self.legacyPlayPlus_x2StaminaRadioButton.setObjectName(u"legacyPlayPlus_x2StaminaRadioButton") + self.legacyPlayPlus_x2StaminaRadioButton.setText(u"x2") + + self.horizontalLayout_2.addWidget(self.legacyPlayPlus_x2StaminaRadioButton) + + self.legacyPlayPlus_x4StaminaRadioButton = QRadioButton(self.widget) + self.legacyPlayPlus_x4StaminaRadioButton.setObjectName(u"legacyPlayPlus_x4StaminaRadioButton") + self.legacyPlayPlus_x4StaminaRadioButton.setText(u"x4") + + self.horizontalLayout_2.addWidget(self.legacyPlayPlus_x4StaminaRadioButton) + + self.legacyPlayPlus_x6StaminaRadioButton = QRadioButton(self.widget) + self.legacyPlayPlus_x6StaminaRadioButton.setObjectName(u"legacyPlayPlus_x6StaminaRadioButton") + self.legacyPlayPlus_x6StaminaRadioButton.setText(u"x6") + + self.horizontalLayout_2.addWidget(self.legacyPlayPlus_x6StaminaRadioButton) + + + self.verticalLayout_2.addWidget(self.widget) + + self.legacyPlayPlus_useFragmentsGroupBox = QGroupBox(self.legacyPlayPlus) + self.legacyPlayPlus_useFragmentsGroupBox.setObjectName(u"legacyPlayPlus_useFragmentsGroupBox") + sizePolicy2.setHeightForWidth(self.legacyPlayPlus_useFragmentsGroupBox.sizePolicy().hasHeightForWidth()) + self.legacyPlayPlus_useFragmentsGroupBox.setSizePolicy(sizePolicy2) + self.legacyPlayPlus_useFragmentsGroupBox.setCheckable(True) + self.legacyPlayPlus_useFragmentsGroupBox.setChecked(False) + self.horizontalLayout_3 = QHBoxLayout(self.legacyPlayPlus_useFragmentsGroupBox) + self.horizontalLayout_3.setObjectName(u"horizontalLayout_3") + self.legacyPlayPlus_x11fragRadioButton = QRadioButton(self.legacyPlayPlus_useFragmentsGroupBox) + self.legacyPlayPlus_x11fragRadioButton.setObjectName(u"legacyPlayPlus_x11fragRadioButton") + self.legacyPlayPlus_x11fragRadioButton.setText(u"x1.1\n" +"100") + + self.horizontalLayout_3.addWidget(self.legacyPlayPlus_x11fragRadioButton) + + self.legacyPlayPlus_x125fragRadioButton = QRadioButton(self.legacyPlayPlus_useFragmentsGroupBox) + self.legacyPlayPlus_x125fragRadioButton.setObjectName(u"legacyPlayPlus_x125fragRadioButton") + self.legacyPlayPlus_x125fragRadioButton.setText(u"x1.25\n" +"125") + + self.horizontalLayout_3.addWidget(self.legacyPlayPlus_x125fragRadioButton) + + self.legacyPlayPlus_x15fragRadioButton = QRadioButton(self.legacyPlayPlus_useFragmentsGroupBox) + self.legacyPlayPlus_x15fragRadioButton.setObjectName(u"legacyPlayPlus_x15fragRadioButton") + self.legacyPlayPlus_x15fragRadioButton.setText(u"x1.5\n" +"500") + + self.horizontalLayout_3.addWidget(self.legacyPlayPlus_x15fragRadioButton) + + + self.verticalLayout_2.addWidget(self.legacyPlayPlus_useFragmentsGroupBox) + + self.stackedWidget.addWidget(self.legacyPlayPlus) + self.play = QWidget() + self.play.setObjectName(u"play") + self.verticalLayout_4 = QVBoxLayout(self.play) + self.verticalLayout_4.setObjectName(u"verticalLayout_4") + self.play_memoryBoostCheckBox = QCheckBox(self.play) + self.play_memoryBoostCheckBox.setObjectName(u"play_memoryBoostCheckBox") + + self.verticalLayout_4.addWidget(self.play_memoryBoostCheckBox) + + self.stackedWidget.addWidget(self.play) + + self.horizontalLayout.addWidget(self.stackedWidget) + + + self.verticalLayout_3.addWidget(self.mapTypeWidget) + + self.widget_2 = QWidget(TabTools_StepCalculator) + self.widget_2.setObjectName(u"widget_2") + sizePolicy3 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding) + sizePolicy3.setHorizontalStretch(0) + sizePolicy3.setVerticalStretch(0) + sizePolicy3.setHeightForWidth(self.widget_2.sizePolicy().hasHeightForWidth()) + self.widget_2.setSizePolicy(sizePolicy3) + self.horizontalLayout_4 = QHBoxLayout(self.widget_2) + self.horizontalLayout_4.setObjectName(u"horizontalLayout_4") + self.groupBox = QGroupBox(self.widget_2) + self.groupBox.setObjectName(u"groupBox") + self.verticalLayout_5 = QVBoxLayout(self.groupBox) + self.verticalLayout_5.setObjectName(u"verticalLayout_5") + self.horizontalWidget = QWidget(self.groupBox) + self.horizontalWidget.setObjectName(u"horizontalWidget") + self.horizontalLayout_5 = QHBoxLayout(self.horizontalWidget) + self.horizontalLayout_5.setObjectName(u"horizontalLayout_5") + self.label_2 = QLabel(self.horizontalWidget) + self.label_2.setObjectName(u"label_2") + + self.horizontalLayout_5.addWidget(self.label_2) + + self.playResultSpinBox = QDoubleSpinBox(self.horizontalWidget) + self.playResultSpinBox.setObjectName(u"playResultSpinBox") + sizePolicy.setHeightForWidth(self.playResultSpinBox.sizePolicy().hasHeightForWidth()) + self.playResultSpinBox.setSizePolicy(sizePolicy) + self.playResultSpinBox.setDecimals(3) + self.playResultSpinBox.setMaximum(100.000000000000000) + self.playResultSpinBox.setSingleStep(0.100000000000000) + + self.horizontalLayout_5.addWidget(self.playResultSpinBox) + + + self.verticalLayout_5.addWidget(self.horizontalWidget) + + self.calculatePlayResultFromScoreButton = QPushButton(self.groupBox) + self.calculatePlayResultFromScoreButton.setObjectName(u"calculatePlayResultFromScoreButton") + + self.verticalLayout_5.addWidget(self.calculatePlayResultFromScoreButton) + + + self.horizontalLayout_4.addWidget(self.groupBox) + + self.groupBox_2 = QGroupBox(self.widget_2) + self.groupBox_2.setObjectName(u"groupBox_2") + self.verticalLayout_6 = QVBoxLayout(self.groupBox_2) + self.verticalLayout_6.setObjectName(u"verticalLayout_6") + self.horizontalWidget_2 = QWidget(self.groupBox_2) + self.horizontalWidget_2.setObjectName(u"horizontalWidget_2") + self.horizontalLayout_6 = QHBoxLayout(self.horizontalWidget_2) + self.horizontalLayout_6.setObjectName(u"horizontalLayout_6") + self.label_4 = QLabel(self.horizontalWidget_2) + self.label_4.setObjectName(u"label_4") + + self.horizontalLayout_6.addWidget(self.label_4) + + self.doubleSpinBox = QDoubleSpinBox(self.horizontalWidget_2) + self.doubleSpinBox.setObjectName(u"doubleSpinBox") + sizePolicy.setHeightForWidth(self.doubleSpinBox.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox.setSizePolicy(sizePolicy) + + self.horizontalLayout_6.addWidget(self.doubleSpinBox) + + + self.verticalLayout_6.addWidget(self.horizontalWidget_2) + + + self.horizontalLayout_4.addWidget(self.groupBox_2) + + + self.verticalLayout_3.addWidget(self.widget_2) + + + self.retranslateUi(TabTools_StepCalculator) + + self.stackedWidget.setCurrentIndex(1) + + + QMetaObject.connectSlotsByName(TabTools_StepCalculator) + # setupUi + + def retranslateUi(self, TabTools_StepCalculator): + self.label.setText(QCoreApplication.translate("TabTools_StepCalculator", u"partnerStepValueLabel", None)) + self.mapTypeLegacyPlayRadioButton.setText("") + self.mapTypePlayRadioButton.setText("") + self.mapTypeLegacyPlayPlusRadioButton.setText("") + self.label_3.setText(QCoreApplication.translate("TabTools_StepCalculator", u"legacyPlay.noOptions", None)) + self.legacyPlayPlus_useFragmentsGroupBox.setTitle(QCoreApplication.translate("TabTools_StepCalculator", u"legacyPlayPlus.useFragments", None)) + self.play_memoryBoostCheckBox.setText(QCoreApplication.translate("TabTools_StepCalculator", u"play.memoryBoost", None)) + self.groupBox.setTitle(QCoreApplication.translate("TabTools_StepCalculator", u"calculation", None)) + self.label_2.setText(QCoreApplication.translate("TabTools_StepCalculator", u"playResultLabel", None)) + self.calculatePlayResultFromScoreButton.setText(QCoreApplication.translate("TabTools_StepCalculator", u"calculatePlayResultFromScoreButton", None)) + self.groupBox_2.setTitle(QCoreApplication.translate("TabTools_StepCalculator", u"inverseCalculation", None)) + self.label_4.setText(QCoreApplication.translate("TabTools_StepCalculator", u"targetStep", None)) + pass + # retranslateUi + diff --git a/ui/designer/tabs/tabToolsEntry.ui b/ui/designer/tabs/tabToolsEntry.ui index 11c0bbf..1378563 100644 --- a/ui/designer/tabs/tabToolsEntry.ui +++ b/ui/designer/tabs/tabToolsEntry.ui @@ -24,6 +24,11 @@ tab.infoLookup + + + tab.stepCalculator + + @@ -35,6 +40,12 @@
ui.implements.tabs.tabTools.tabTools_InfoLookup
1 + + TabTools_StepCalculator + QWidget +
ui.implements.tabs.tabTools.tabTools_StepCalculator
+ 1 +
diff --git a/ui/designer/tabs/tabToolsEntry_ui.py b/ui/designer/tabs/tabToolsEntry_ui.py index 29b6bc5..b0a30e0 100644 --- a/ui/designer/tabs/tabToolsEntry_ui.py +++ b/ui/designer/tabs/tabToolsEntry_ui.py @@ -1,52 +1,57 @@ -# -*- coding: utf-8 -*- - -################################################################################ -## Form generated from reading UI file 'tabToolsEntry.ui' -## -## Created by: Qt User Interface Compiler version 6.5.2 -## -## WARNING! All changes made in this file will be lost when recompiling UI file! -################################################################################ - -from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale, - QMetaObject, QObject, QPoint, QRect, - QSize, QTime, QUrl, Qt) -from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor, - QFont, QFontDatabase, QGradient, QIcon, - QImage, QKeySequence, QLinearGradient, QPainter, - QPalette, QPixmap, QRadialGradient, QTransform) -from PySide6.QtWidgets import (QApplication, QSizePolicy, QTabWidget, QVBoxLayout, - QWidget) - -from ui.implements.tabs.tabTools.tabTools_InfoLookup import TabTools_InfoLookup - -class Ui_TabToolsEntry(object): - def setupUi(self, TabToolsEntry): - if not TabToolsEntry.objectName(): - TabToolsEntry.setObjectName(u"TabToolsEntry") - TabToolsEntry.resize(500, 400) - TabToolsEntry.setWindowTitle(u"TabToolsEntry") - self.verticalLayout = QVBoxLayout(TabToolsEntry) - self.verticalLayout.setObjectName(u"verticalLayout") - self.tabWidget = QTabWidget(TabToolsEntry) - self.tabWidget.setObjectName(u"tabWidget") - self.tab = TabTools_InfoLookup() - self.tab.setObjectName(u"tab") - self.tabWidget.addTab(self.tab, "") - - self.verticalLayout.addWidget(self.tabWidget) - - - self.retranslateUi(TabToolsEntry) - - self.tabWidget.setCurrentIndex(0) - - - QMetaObject.connectSlotsByName(TabToolsEntry) - # setupUi - - def retranslateUi(self, TabToolsEntry): - self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), QCoreApplication.translate("TabToolsEntry", u"tab.infoLookup", None)) - pass - # retranslateUi - +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file 'tabToolsEntry.ui' +## +## Created by: Qt User Interface Compiler version 6.5.2 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale, + QMetaObject, QObject, QPoint, QRect, + QSize, QTime, QUrl, Qt) +from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor, + QFont, QFontDatabase, QGradient, QIcon, + QImage, QKeySequence, QLinearGradient, QPainter, + QPalette, QPixmap, QRadialGradient, QTransform) +from PySide6.QtWidgets import (QApplication, QSizePolicy, QTabWidget, QVBoxLayout, + QWidget) + +from ui.implements.tabs.tabTools.tabTools_InfoLookup import TabTools_InfoLookup +from ui.implements.tabs.tabTools.tabTools_StepCalculator import TabTools_StepCalculator + +class Ui_TabToolsEntry(object): + def setupUi(self, TabToolsEntry): + if not TabToolsEntry.objectName(): + TabToolsEntry.setObjectName(u"TabToolsEntry") + TabToolsEntry.resize(500, 400) + TabToolsEntry.setWindowTitle(u"TabToolsEntry") + self.verticalLayout = QVBoxLayout(TabToolsEntry) + self.verticalLayout.setObjectName(u"verticalLayout") + self.tabWidget = QTabWidget(TabToolsEntry) + self.tabWidget.setObjectName(u"tabWidget") + self.tab = TabTools_InfoLookup() + self.tab.setObjectName(u"tab") + self.tabWidget.addTab(self.tab, "") + self.tab_2 = TabTools_StepCalculator() + self.tab_2.setObjectName(u"tab_2") + self.tabWidget.addTab(self.tab_2, "") + + self.verticalLayout.addWidget(self.tabWidget) + + + self.retranslateUi(TabToolsEntry) + + self.tabWidget.setCurrentIndex(0) + + + QMetaObject.connectSlotsByName(TabToolsEntry) + # setupUi + + def retranslateUi(self, TabToolsEntry): + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), QCoreApplication.translate("TabToolsEntry", u"tab.infoLookup", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), QCoreApplication.translate("TabToolsEntry", u"tab.stepCalculator", None)) + pass + # retranslateUi + diff --git a/ui/implements/tabs/tabTools/tabTools_StepCalculator.py b/ui/implements/tabs/tabTools/tabTools_StepCalculator.py new file mode 100644 index 0000000..0af9e49 --- /dev/null +++ b/ui/implements/tabs/tabTools/tabTools_StepCalculator.py @@ -0,0 +1,113 @@ +from PySide6.QtCore import QEasingCurve, QObject, QSize, Qt, QTimeLine +from PySide6.QtGui import QIcon, QPainter, QPaintEvent, QPixmap +from PySide6.QtWidgets import ( + QAbstractButton, + QButtonGroup, + QGraphicsColorizeEffect, + QLabel, + QWidget, +) + +from ui.designer.tabs.tabTools.tabTools_StepCalculator_ui import ( + Ui_TabTools_StepCalculator, +) + + +class MapTypeListWidgetWidget(QLabel): + def paintEvent(self, e: QPaintEvent) -> None: + size = self.size() + painter = QPainter(self) + scaledPixmap = self.pixmap().scaled( + size, + Qt.AspectRatioMode.KeepAspectRatio, + Qt.TransformationMode.SmoothTransformation, + ) + x = (size.width() - scaledPixmap.width()) / 2 + y = (size.height() - scaledPixmap.height()) / 2 + painter.drawPixmap(x, y, scaledPixmap) + + +class ButtonGrayscaleEffectApplier(QObject): + def __init__(self, parent: QAbstractButton): + super().__init__(parent) + self.timeline = QTimeLine(500, self) + self.timeline.setEasingCurve(QEasingCurve.Type.OutCubic) + self.timeline.frameChanged.connect(self.applyGrayscaleEffect) + + parent.toggled.connect(self.triggerEffectAnimation) + self.triggerEffectAnimation(parent.isChecked()) + + def triggerEffectAnimation(self, buttonEnabled: bool): + if self.timeline.state() == QTimeLine.State.Running: + self.timeline.stop() + startFrame = self.timeline.currentFrame() + stopFrame = 0 if buttonEnabled else 100 + + self.timeline.setFrameRange(startFrame, stopFrame) + self.timeline.start() + + def applyGrayscaleEffect(self, frame: int): + target: QAbstractButton = self.parent() + value = frame / 100 + + effect = QGraphicsColorizeEffect(target) + effect.setColor("#000000") + effect.setStrength(value) + target.setGraphicsEffect(effect) + + +class TabTools_StepCalculator(Ui_TabTools_StepCalculator, QWidget): + def __init__(self, parent=None): + super().__init__(parent) + self.setupUi(self) + + staminaIcon = QIcon(":/images/stepCalculator/stamina.png") + for radioButton in [ + self.legacyPlayPlus_x2StaminaRadioButton, + self.legacyPlayPlus_x4StaminaRadioButton, + self.legacyPlayPlus_x6StaminaRadioButton, + ]: + radioButton.setIcon(staminaIcon) + radioButton.setIconSize(QSize(25, 15)) + + memoryBoostIcon = QIcon(":/images/stepCalculator/memory-boost.png") + self.play_memoryBoostCheckBox.setIcon(memoryBoostIcon) + self.play_memoryBoostCheckBox.setIconSize(QSize(75, 100)) + + mapTypeIconSize = QSize(150, 50) + + for button, pixmap in zip( + [ + self.mapTypeLegacyPlayRadioButton, + self.mapTypeLegacyPlayPlusRadioButton, + self.mapTypePlayRadioButton, + ], + [ + QPixmap(":/images/stepCalculator/legacy-play.png"), + QPixmap(":/images/stepCalculator/legacy-play-plus.png"), + QPixmap(":/images/stepCalculator/play.png"), + ], + ): + button.setIconSize(mapTypeIconSize) + button.setIcon(pixmap) + + self.buttonGrayscaleEffectAppliers = [] + for button in [ + self.mapTypeLegacyPlayRadioButton, + self.mapTypeLegacyPlayPlusRadioButton, + self.mapTypePlayRadioButton, + self.legacyPlayPlus_x2StaminaRadioButton, + self.legacyPlayPlus_x4StaminaRadioButton, + self.legacyPlayPlus_x6StaminaRadioButton, + self.play_memoryBoostCheckBox, + ]: + applier = ButtonGrayscaleEffectApplier(button) + self.buttonGrayscaleEffectAppliers.append(applier) + + self.mapTypeButtonGroup = QButtonGroup(self) + self.mapTypeButtonGroup.addButton(self.mapTypeLegacyPlayRadioButton, 0) + self.mapTypeButtonGroup.addButton(self.mapTypeLegacyPlayPlusRadioButton, 1) + self.mapTypeButtonGroup.addButton(self.mapTypePlayRadioButton, 2) + + self.mapTypeButtonGroup.idToggled.connect(self.stackedWidget.setCurrentIndex) + self.mapTypePlayRadioButton.setChecked(True) diff --git a/ui/resources/images/stepCalculator/legacy-play-plus.png b/ui/resources/images/stepCalculator/legacy-play-plus.png new file mode 100644 index 0000000000000000000000000000000000000000..bf9e926de3345a59c74b555eb463dfa27255007c GIT binary patch literal 25913 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Ξ+^iLMzwo>3n& z|J5+`W1Ifgb)~?!G$SGxK`0(#K+246>Q-NBQ*9djq5`e;#%EG!h>VAcD!u6ETnGi5 z!OWV7dJWc(Z!F>yw#Y>gijM@*%Zwdc(9X<<3A7Ff6k1r}0iUh_5jxM)j04j@O-DRC zdDn@odt5<3S!^XKauI~$BX1yO#K|u{bH6h1JP3FCgF#(Eu+@UU8Ey6Hd2u?I5U^n1W`4UY1aJ z-gIMyBFIXb<{FH@SUKyF_ILMB?Qeby5xEFL=@1vz0;ik0Rp%zXRT2FhKr?ZqRR|IL z`LzH5t%5P8Y5gwbK66LXS)J3~a&D(TZ?1omDet;~X6AQv&VHi(Z1I$&$VCuJj~I{z zPUpRoD`H&vEe7WR{wDy}+3tAUU4@8X9D(n|Q=S|;>5nn;YqGsIv5rP0=wP0wX<7U0 zg!cIEXWQD>diFq3-7_K=K`1?9Ko&SEUUkFD*e~V{ngGCn1(+to0szY$_ddO`$b9FR zBlFpv=B*WRYr5zC>$&TgCWAB9aLfD8Ub^W&`hOyF5ronsF%Urz1YusN*{2ACAPB-# z#DEBbAPDn942U2If-o<{fCz#h2=hV=h#&}pFfaZGR|pQaAG7Gi00000NkvXXu0mjf DXVIMz literal 0 HcmV?d00001 diff --git a/ui/resources/images/stepCalculator/legacy-play.png b/ui/resources/images/stepCalculator/legacy-play.png new file mode 100644 index 0000000000000000000000000000000000000000..c8217a03f615d93c242d9c6919766dd24842357c GIT binary patch literal 25831 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 literal 0 HcmV?d00001 diff --git a/ui/resources/images/stepCalculator/play.png b/ui/resources/images/stepCalculator/play.png new file mode 100644 index 0000000000000000000000000000000000000000..2c1a97e304ea0eeb35a7ee55fa95d51d80260e09 GIT binary patch literal 30220 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 IM6N<$f)IHCKmY&$ literal 0 HcmV?d00001 diff --git a/ui/resources/images/stepCalculator/stamina.png b/ui/resources/images/stepCalculator/stamina.png new file mode 100644 index 0000000000000000000000000000000000000000..47e33edbf2fcfb125af094099196762feffa8fb0 GIT binary patch literal 3069 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 images/icon.png images/logo.png + images/stepCalculator/stamina.png + images/stepCalculator/play.png + images/stepCalculator/memory-boost.png + images/stepCalculator/legacy-play.png + images/stepCalculator/legacy-play-plus.png lang/zh_CN.qm lang/en_US.qm