1
0
Fork 0
mirror of synced 2024-06-23 08:40:45 +12:00

GameWidget: Toggle buttons on widget update

ElidedLabel: Use `sizeHint()` for width

Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
This commit is contained in:
loathingKernel 2023-01-25 13:04:21 +02:00
parent fc7e45a43a
commit 1959516b3f
6 changed files with 12 additions and 8 deletions

View file

@ -39,8 +39,8 @@ class InstallDialogAdvanced(CollapsibleFrame):
class InstallDialog(QDialog):
result_ready = pyqtSignal(InstallQueueItemModel)
def __init__(self, rgame: RareGame, options: InstallOptionsModel, parent=None,):
super(InstallDialog, self).__init__(parent)
def __init__(self, rgame: RareGame, options: InstallOptionsModel, parent=None):
super(InstallDialog, self).__init__(parent=parent)
self.setAttribute(Qt.WA_DeleteOnClose, True)
self.setWindowFlags(Qt.Dialog | Qt.CustomizeWindowHint | Qt.WindowTitleHint)
self.ui = Ui_InstallDialog()

View file

@ -63,8 +63,7 @@ class GameInfo(QWidget):
self.steam_worker.signals.rating.connect(self.ui.grade.setText)
self.steam_worker.setAutoDelete(False)
self.ui.game_actions_stack.setCurrentIndex(0)
self.ui.game_actions_stack.resize(self.ui.game_actions_stack.minimumSize())
self.ui.game_actions_stack.setCurrentWidget(self.ui.installed_page)
self.ui.uninstall_button.clicked.connect(self.__on_uninstall)
self.ui.verify_button.clicked.connect(self.__on_verify)

View file

@ -17,7 +17,7 @@ from rare.shared import (
from rare.utils.misc import create_desktop_link
from .library_widget import LibraryWidget
logger = getLogger("BaseGameWidget")
logger = getLogger("GameWidget")
class GameWidget(LibraryWidget):
@ -142,7 +142,9 @@ class GameWidget(LibraryWidget):
@abstractmethod
def update_widget(self, install_btn: QPushButton, launch_btn: QPushButton):
install_btn.setVisible(not self.rgame.is_installed)
install_btn.setEnabled(not self.rgame.is_installed)
launch_btn.setVisible(self.rgame.is_installed)
launch_btn.setEnabled(self.rgame.can_launch)
@property
def enterEventText(self) -> str:
@ -191,7 +193,7 @@ class GameWidget(LibraryWidget):
self.show_info.emit(self.rgame)
# right
elif e.button() == 2:
pass # self.showMenu(e)
super(GameWidget, self).mousePressEvent(e)
@pyqtSlot()
def _on_reload_image(self) -> None:

View file

@ -1,11 +1,14 @@
import os
import subprocess
from logging import getLogger
from PyQt5.QtCore import pyqtSignal, QRunnable, QObject, pyqtSlot
from rare.lgndr.core import LegendaryCore
from rare.models.pathspec import PathSpec
logger = getLogger("WineResolver")
class WineResolver(QRunnable):
class Signals(QObject):

View file

@ -358,4 +358,4 @@ def widget_object_name(widget: QWidget, app_name: str) -> str:
def elide_text(label: QLabel, text: str) -> str:
metrics = QFontMetrics(label.font())
return metrics.elidedText(text, Qt.ElideRight, label.width())
return metrics.elidedText(text, Qt.ElideRight, label.sizeHint().width())

View file

@ -17,7 +17,7 @@ class ElideLabel(QLabel):
def __setElideText(self, a0: str):
metrics = QFontMetrics(self.font())
elided_text = metrics.elidedText(a0, Qt.ElideRight, self.width())
elided_text = metrics.elidedText(a0, Qt.ElideRight, self.sizeHint().width())
super(ElideLabel, self).setText(elided_text)
def paintEvent(self, a0: QPaintEvent) -> None: