1
0
Fork 0
mirror of synced 2024-06-26 18:20:50 +12:00

add button to open epic games store in web browser

This commit is contained in:
ChemicalXandco 2021-04-08 20:00:18 +01:00
parent 11cc122157
commit 74d04a2a7b
3 changed files with 20 additions and 13 deletions

View file

@ -1,10 +1,8 @@
from PyQt5.QtCore import QSize from PyQt5.QtCore import QSize
from PyQt5.QtGui import QFont from PyQt5.QtGui import QFont
from PyQt5.QtWidgets import QTabBar, QToolButton, QMenu, QWidgetAction from PyQt5.QtWidgets import QTabBar, QToolButton
from qtawesome import icon from qtawesome import icon
from rare.components.tabs.account import MiniWidget
class TabBar(QTabBar): class TabBar(QTabBar):
def __init__(self, expanded): def __init__(self, expanded):
@ -25,14 +23,10 @@ class TabBar(QTabBar):
class TabButtonWidget(QToolButton): class TabButtonWidget(QToolButton):
def __init__(self, core): def __init__(self, core, button_icon: str, tool_tip: str):
super(TabButtonWidget, self).__init__() super(TabButtonWidget, self).__init__()
self.setText("Icon") self.setText("Icon")
self.setPopupMode(QToolButton.InstantPopup) self.setPopupMode(QToolButton.InstantPopup)
self.setIcon(icon("mdi.account-circle", color="white", scale_factor=1.25)) self.setIcon(icon(button_icon, color="white", scale_factor=1.25))
self.setToolTip("Account") self.setToolTip(tool_tip)
self.setIconSize(QSize(25, 25)) self.setIconSize(QSize(25, 25))
self.setMenu(QMenu())
action = QWidgetAction(self)
action.setDefaultWidget(MiniWidget(core))
self.menu().addAction(action)

View file

@ -1,8 +1,11 @@
import webbrowser
from PyQt5.QtCore import QSize from PyQt5.QtCore import QSize
from PyQt5.QtWidgets import QTabWidget, QWidget from PyQt5.QtWidgets import QMenu, QTabWidget, QWidget, QWidgetAction
from qtawesome import icon from qtawesome import icon
from rare.components.tab_utils import TabBar, TabButtonWidget from rare.components.tab_utils import TabBar, TabButtonWidget
from rare.components.tabs.account import MiniWidget
from rare.components.tabs.cloud_saves import SyncSaves from rare.components.tabs.cloud_saves import SyncSaves
from rare.components.tabs.downloads.__init__ import DownloadTab from rare.components.tabs.downloads.__init__ import DownloadTab
from rare.components.tabs.games import GameTab from rare.components.tabs.games import GameTab
@ -45,7 +48,17 @@ class TabWidget(QTabWidget):
self.addTab(self.settings, icon("fa.gear", color='white'), "(!)" if self.settings.about.update_available else "") self.addTab(self.settings, icon("fa.gear", color='white'), "(!)" if self.settings.about.update_available else "")
self.setIconSize(QSize(25, 25)) self.setIconSize(QSize(25, 25))
self.tabBar().setTabButton(3, self.tabBar().RightSide, TabButtonWidget(core))
store_button = TabButtonWidget(core, 'mdi.tag', 'Epic Games Store')
store_button.pressed.connect(lambda: webbrowser.open("https://www.epicgames.com/store"))
self.tabBar().setTabButton(3, self.tabBar().RightSide, store_button)
account_action = QWidgetAction(self)
account_action.setDefaultWidget(MiniWidget(core))
account_button = TabButtonWidget(core, 'mdi.account-circle', 'Account')
account_button.setMenu(QMenu())
account_button.menu().addAction(account_action)
self.tabBar().setTabButton(4, self.tabBar().RightSide, account_button)
def dl_finished(self): def dl_finished(self):
self.game_list.default_widget.game_list.update_list() self.game_list.default_widget.game_list.update_list()

View file

@ -1,2 +1,2 @@
export PYTHONPATH=$PWD export PYTHONPATH=$PWD
python3 Rare python3 rare