@@ -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. \n For 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 )
0 commit comments