1
0
Fork 0
mirror of synced 2024-05-23 22:10:04 +12:00

RareGame: Move sdl_name to RareGameBase

InstallDialog uses that property so RareEosOverlay should have it too.
Also calculate the base_path for the overlay case instead of passing it as
argument
This commit is contained in:
loathingKernel 2024-01-19 12:09:57 +02:00
parent 7ae06ff5d8
commit a605bddffa
3 changed files with 9 additions and 11 deletions

View file

@ -235,7 +235,8 @@ class InstallDialog(ActionDialog):
self.error_box()
def get_options(self):
self.__options.base_path = "" if self.rgame.is_installed else self.install_dir_edit.text()
base_path = os.path.join(self.install_dir_edit.text(), ".overlay" if self.__options.overlay else "")
self.__options.base_path = "" if self.rgame.is_installed else base_path
self.__options.platform = self.ui.platform_combo.currentText()
self.__options.create_shortcut = self.ui.shortcut_check.isChecked()
self.__options.max_workers = self.advanced.ui.max_workers_spin.value()

View file

@ -8,6 +8,7 @@ from typing import Optional, List, Tuple
from PyQt5.QtCore import QObject, pyqtSignal, QRunnable, QThreadPool, QSettings
from legendary.lfs import eos
from legendary.models.game import SaveGameFile, SaveGameStatus, Game, InstalledGame
from legendary.utils.selective_dl import get_sdl_appname
from rare.lgndr.core import LegendaryCore
from rare.models.install import UninstallOptionsModel, InstallOptionsModel
@ -178,6 +179,10 @@ class RareGameBase(QObject):
except AttributeError:
return False
@property
def sdl_name(self) -> Optional[str]:
return get_sdl_appname(self.app_name)
@property
def version(self) -> str:
"""!

View file

@ -11,7 +11,6 @@ from PyQt5.QtCore import QRunnable, pyqtSlot, QProcess, QThreadPool
from PyQt5.QtGui import QPixmap
from legendary.lfs import eos
from legendary.models.game import Game, InstalledGame
from legendary.utils.selective_dl import get_sdl_appname
from rare.lgndr.core import LegendaryCore
from rare.models.base_game import RareGameBase, RareGameSlim
@ -413,10 +412,6 @@ class RareGame(RareGameSlim):
else self.app_title
)
@property
def sdl_name(self) -> Optional[str]:
return get_sdl_appname(self.app_name)
@property
def save_path(self) -> Optional[str]:
return super(RareGame, self).save_path
@ -628,7 +623,7 @@ class RareEosOverlay(RareGameBase):
try:
eos.add_registry_entries(path, prefix)
except PermissionError as e:
logger.error("Exception while writing registry to enable the overlay .")
logger.error("Exception while writing registry to enable the overlay.")
logger.error(e)
return False
logger.info(f"Enabled overlay at: {path} for prefix: {prefix}")
@ -652,10 +647,7 @@ class RareEosOverlay(RareGameBase):
if self.is_installed:
base_path = self.igame.install_path
else:
base_path = os.path.join(
self.core.lgd.config.get("Legendary", "install_dir", fallback=os.path.expanduser("~/legendary")),
".overlay"
)
base_path = self.core.get_default_install_dir()
self.signals.game.install.emit(
InstallOptionsModel(
app_name=self.app_name, base_path=base_path, platform="Windows", overlay=True