diff --git a/prebuild.py b/prebuild.py index daac526..2d24de7 100644 --- a/prebuild.py +++ b/prebuild.py @@ -6,6 +6,23 @@ from pathlib import Path versionFile = Path("ui/resources/VERSION") assert versionFile.exists() +versionTexts = [] + +projectVersionText = "arcaea-offline-pyside-ui\n" +gitDescribe = os.popen("git describe --tags --long") +gitDescribeContent = gitDescribe.read().replace("\n", "") +if gitDescribe.close() is None: + projectVersionText += f"{gitDescribeContent}" +else: + gitRevParse = os.popen("git rev-parse --short HEAD") + gitRevParseContent = gitRevParse.read().replace("\n", "") + projectVersionText += f"commit {gitRevParseContent}" + gitRevParse.close() +projectVersionText += "\n" + +versionTexts.append(projectVersionText) + + # detect pip pipName = None possiblePipNames = ["pip3", "pip"] @@ -19,7 +36,6 @@ for possiblePipName in possiblePipNames: pipName = possiblePipName break -versionTexts = [] # if possiblePipName: # pipFreezeLines = os.popen(f"{possiblePipName} freeze").read().split("\n") diff --git a/ui/implements/tabs/tabAbout.py b/ui/implements/tabs/tabAbout.py index e3659f7..9a52be8 100644 --- a/ui/implements/tabs/tabAbout.py +++ b/ui/implements/tabs/tabAbout.py @@ -1,6 +1,6 @@ from PySide6.QtCore import QFile, Qt, Slot from PySide6.QtGui import QPixmap -from PySide6.QtWidgets import QMessageBox, QWidget +from PySide6.QtWidgets import QMessageBox, QTextBrowser, QWidget from ui.designer.tabs.tabAbout_ui import Ui_TabAbout from ui.extends.shared.language import LanguageChangeEventFilter @@ -28,8 +28,12 @@ class TabAbout(Ui_TabAbout, QWidget): @Slot() def on_versionInfoButton_clicked(self): + textBrowser = QTextBrowser(self) + textBrowser.setWindowFlag(Qt.WindowType.Dialog, True) + textBrowser.setWindowTitle("version") versionFile = QFile(":/VERSION") versionFile.open(QFile.OpenModeFlag.ReadOnly) versionText = str(versionFile.readAll(), encoding="utf-8") versionFile.close() - QMessageBox.information(self, None, versionText) + textBrowser.setText(versionText) + textBrowser.show() diff --git a/ui/implements/tabs/tabTools/tabTools_Andreal.py b/ui/implements/tabs/tabTools/tabTools_Andreal.py index d2cfe5b..2e54b0d 100644 --- a/ui/implements/tabs/tabTools/tabTools_Andreal.py +++ b/ui/implements/tabs/tabTools/tabTools_Andreal.py @@ -9,16 +9,7 @@ from arcaea_offline.external.andreal.api_data import ( from arcaea_offline.models import Chart from PySide6.QtCore import QCoreApplication, QDir, QFileInfo, Qt, Slot from PySide6.QtGui import QGuiApplication, QImage, QPainter, QPaintEvent, QPixmap -from PySide6.QtWidgets import ( - QButtonGroup, - QDialog, - QDialogButtonBox, - QFileDialog, - QLabel, - QMessageBox, - QVBoxLayout, - QWidget, -) +from PySide6.QtWidgets import QButtonGroup, QFileDialog, QLabel, QMessageBox, QWidget from ui.designer.tabs.tabTools.tabTools_Andreal_ui import Ui_TabTools_Andreal from ui.extends.shared.language import LanguageChangeEventFilter @@ -70,27 +61,6 @@ class ChartSelectorDialog(ChartSelector): self.setSongIdSelectorMode(SongIdSelectorMode.Chart) -class ImageTypeWhatIsThisDialog(QDialog): - def __init__(self, parent=None): - super().__init__(parent) - self.verticalLayout = QVBoxLayout(self) - - self.label = QLabel( - # fmt: off - QCoreApplication.translate('TabTools_Andreal', 'imageWhatIsThisDialog.description') - # fmt: on - ) - - self.verticalLayout.addWidget(self.label) - - self.buttonBox = QDialogButtonBox(Qt.Orientation.Horizontal) - self.buttonBox.addButton(QDialogButtonBox.StandardButton.Ok) - self.buttonBox.accepted.connect(self.close) - self.buttonBox.rejected.connect(self.close) - - self.verticalLayout.addWidget(self.buttonBox) - - class TabTools_Andreal(Ui_TabTools_Andreal, QWidget): def __init__(self, parent=None): super().__init__(parent) @@ -129,10 +99,6 @@ class TabTools_Andreal(Ui_TabTools_Andreal, QWidget): self.andrealHelper.ready.connect(self.generateReady) self.andrealHelper.finished.connect(self.generateFinished) - self.imageTypeWhatIsThisButton.clicked.connect( - lambda: ImageTypeWhatIsThisDialog(self).show() - ) - self.imageTypeButtonGroup = QButtonGroup(self) self.imageTypeButtonGroup.addButton(self.imageType_infoRadioButton, 0) self.imageTypeButtonGroup.addButton(self.imageType_bestRadioButton, 1) @@ -163,6 +129,16 @@ class TabTools_Andreal(Ui_TabTools_Andreal, QWidget): f"{chart.title}({chart.song_id}), {chart.rating_class}" ) + @Slot() + def on_imageTypeWhatIsThisButton_clicked(self): + QMessageBox.information( + self, + None, + # fmt: off + QCoreApplication.translate("TabTools_Andreal", "imageWhatIsThisDialog.description"), + # fmt: on + ) + def imageFormat(self): buttonId = self.imageFormatButtonGroup.checkedId() return ["jpg", "png"][buttonId] if buttonId > -1 else None