Enable / Disable game specific functions if no game is loaded

- Disable Save, Settings, Stats and Notes if game is none

fixes #1854
This commit is contained in:
RndName 2021-12-20 13:43:24 +01:00
parent 61015b127e
commit f9ed61d199
No known key found for this signature in database
GPG Key ID: 5EF516FD9537F7C0
2 changed files with 16 additions and 0 deletions

View File

@ -14,6 +14,7 @@ Saves from 5.x are not compatible with 6.0.
* **[Mission Generator]** Fixed incorrect radio specification for the AN/ARC-222.
* **[Mission Generator]** Fixed mission scripting error when using a dedicated server.
* **[Mission Generator]** Fixed an issue where empty convoys lead to an index error when a point capture made a pending transfer of units not completable anymore.
* **[UI]** Enable / Disable the settings, save and stats actions if no game is loaded to prevent an error as these functions can only be used on a valid game.
# 5.0.0

View File

@ -172,6 +172,19 @@ class QLiberationWindow(QMainWindow):
self.openNotesAction.setIcon(CONST.ICONS["Notes"])
self.openNotesAction.triggered.connect(self.showNotesDialog)
self.enable_game_actions(False)
def enable_game_actions(self, enabled: bool):
self.openSettingsAction.setVisible(enabled)
self.openStatsAction.setVisible(enabled)
self.openNotesAction.setVisible(enabled)
# Also Disable SaveAction to prevent Keyboard Shortcut
self.saveGameAction.setEnabled(enabled)
self.saveGameAction.setVisible(enabled)
self.saveAsAction.setEnabled(enabled)
self.saveAsAction.setVisible(enabled)
def initToolbar(self):
self.tool_bar = self.addToolBar("File")
self.tool_bar.addAction(self.newGameAction)
@ -331,6 +344,8 @@ class QLiberationWindow(QMainWindow):
QMessageBox.Ok,
)
GameUpdateSignal.get_instance().updateGame(None)
finally:
self.enable_game_actions(self.game is not None)
def showAboutDialog(self):
text = (