Skip to content
This repository was archived by the owner on Aug 22, 2023. It is now read-only.

Commit 256fef3

Browse files
authored
Add version help (#93)
1 parent 00bd620 commit 256fef3

5 files changed

Lines changed: 40 additions & 8 deletions

File tree

.vscode/settings.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,10 @@
1616
},
1717
"hide-files.files": [
1818
"vanilla_installer/__pycache__"
19+
],
20+
// this is for the font RCC
21+
"qtForPython.rcc.options": [
22+
"-o",
23+
"${workspaceFolder}${pathSeparator}vanilla_installer${pathSeparator}${resourceBasenameNoExtension}.py"
1924
]
2025
}

vanilla_installer/assets/help.svg

Lines changed: 1 addition & 0 deletions
Loading

vanilla_installer/cli.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55

66
import asyncio
77
import logging
8-
import webbrowser
98
import sys
9+
import webbrowser
1010

1111
# External
1212
import asyncclick as click
@@ -77,8 +77,10 @@ async def version():
7777
@vanilla_installer.command("gui", help="Launch the GUI.", deprecated=True)
7878
async def gui():
7979
try:
80-
if external_gui: pass
81-
else: pass
80+
if external_gui:
81+
pass
82+
else:
83+
pass
8284
except NameError:
8385
click.echo("The GUI is not installed, so this command will not function.")
8486
sys.exit(1)

vanilla_installer/gui.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,19 @@ def setupUi(self, MainWindow: QMainWindow) -> None:
112112
self.versionLabel.setObjectName("versionLabel")
113113
self.versionLabel.setGeometry(QRect(130, 240, 195, 25))
114114
self.versionLabel.setAlignment(Qt.AlignLeft)
115+
self.versionHelp = QPushButton(self.centralwidget)
116+
self.versionHelp.setObjectName("versionHelp")
117+
self.versionHelp.setGeometry(480, 240, 20, 20)
118+
self.versionHelp.setFlat(True)
119+
self.versionHelp.clicked.connect(
120+
lambda: webbrowser.open(
121+
"https://fabulously-optimized.gitbook.io/modpack/readme/version-support"
122+
)
123+
)
124+
self.versionHelpIcon = QSvgWidget(
125+
Ui_MainWindow.getAsset("help.svg"), self.versionHelp
126+
)
127+
self.versionHelpIcon.setGeometry(QRect(0, 0, 20, 20))
115128
self.locationLabel = QLabel(self.centralwidget)
116129
self.locationLabel.setObjectName("locationLabel")
117130
self.locationLabel.setGeometry(QRect(130, 300, 100, 25))
@@ -228,6 +241,10 @@ def retranslateUi(self, MainWindow: QMainWindow) -> None:
228241
self.themeToggle.setText(
229242
QCoreApplication.translate("MainWindow", "Toggle theme", None)
230243
)
244+
self.versionHelpString = "Vanilla Installer allows easy installation of all supported versions of Fabulously Optimized. \nFor legacy versions, download the respective MultiMC version from CurseForge and unpack it manually."
245+
self.versionHelp.setToolTip(
246+
QCoreApplication.translate("MainWindow", self.versionHelpString, None)
247+
)
231248
self.settingsButton.setText(
232249
QCoreApplication.translate("MainWindow", "Settings", None)
233250
)
@@ -271,6 +288,10 @@ def reloadTheme(self) -> None:
271288
f'QPushButton{{ color: #00000000; font-family: "{global_font}"}}'
272289
f'QPushButton:hover {{ color: {loaded_theme.get("label")}; text-align: right; padding-right: 30px}}'
273290
)
291+
self.versionHelp.setStyleSheet(
292+
f'QPushButton{{ color: #00000000; font-family: "{global_font}"}}'
293+
f'QPushButton:hover {{ color: {loaded_theme.get("label")}; text-align: right; padding-right: 30px}}'
294+
)
274295

275296
self.versionLabel.setStyleSheet(
276297
f'color: {loaded_theme.get("label")}; font: 12pt "{global_font}"'
@@ -301,6 +322,9 @@ def reloadTheme(self) -> None:
301322
effect5 = QGraphicsColorizeEffect(self.centralwidget)
302323
effect5.setColor(loaded_theme.get("icon"))
303324
self.settingsButtonIcon.setGraphicsEffect(effect5)
325+
effect6 = QGraphicsColorizeEffect(self.centralwidget)
326+
effect6.setColor(loaded_theme.get("icon"))
327+
self.versionHelpIcon.setGraphicsEffect(effect6)
304328

305329
def addVersions(self) -> None:
306330
"""Adds the versions to the version selector."""
@@ -360,6 +384,8 @@ def startInstall(self) -> None:
360384
self.installButton.setDisabled(True)
361385
self.installButton.setStyleSheet(
362386
f'QPushButton {{ border: none; background: {loaded_theme.get("installbuttonpressed")}; color: {loaded_theme.get("base")}; border-radius: 5px; font: 15pt "{global_font}"}}'
387+
f'QPushButton:hover {{ background: {loaded_theme.get("installbuttonpressed")};}}'
388+
f'QPushButton:pressed {{ background: {loaded_theme.get("installbuttonpressed")};}}'
363389
)
364390
version = self.versionSelector.itemText(self.versionSelector.currentIndex())
365391
location = self.selectedLocation.toPlainText()
@@ -375,6 +401,8 @@ def startInstall(self) -> None:
375401
self.installButton.setDisabled(False)
376402
self.installButton.setStyleSheet(
377403
f'QPushButton {{ border: none; background: {loaded_theme.get("blue")}; color: {loaded_theme.get("base")}; border-radius: 5px; font: 15pt "{global_font}"}}'
404+
f'QPushButton:hover {{ background: {loaded_theme.get("lavender")};}}'
405+
f'QPushButton:pressed {{ background: {loaded_theme.get("installbuttonpressed")};}}'
378406
)
379407
sleep(3.5)
380408
main.text_update("Vanilla Installer", self.subtitle)

vanilla_installer/main.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,6 @@ def text_update(
208208
interface (str, optional): The interface to display to. Defaults to "GUI", possible values are "GUI" and "CLI".
209209
"""
210210
if interface != "CLI":
211-
212211
if widget:
213212
widget.setText(text)
214213

@@ -418,7 +417,6 @@ def run(
418417
interface: str = "GUI",
419418
widget=None,
420419
) -> None:
421-
422420
"""Runs Fabric's installer and then installs Fabulously Optimized.
423421
424422
Args:
@@ -451,9 +449,7 @@ def run(
451449
)
452450
packwiz_bootstrap = download_pack(widget, interface)
453451
logger.info("Installing FO, Packwiz will run.")
454-
text_update(
455-
"Installing Fabulously Optimized...", widget, "info", interface
456-
)
452+
text_update("Installing Fabulously Optimized...", widget, "info", interface)
457453
install_pack(
458454
packwiz_bootstrap,
459455
version,

0 commit comments

Comments
 (0)