2021-04-08 00:46:27 +12:00
from PyQt5 . QtCore import QSettings
2021-04-07 22:11:31 +12:00
from PyQt5 . QtGui import QCloseEvent
from PyQt5 . QtWidgets import QMainWindow , QMessageBox
2021-02-10 23:48:25 +13:00
2021-04-08 08:39:23 +12:00
from rare . components . tab_widget import TabWidget
2021-02-10 23:48:25 +13:00
class MainWindow ( QMainWindow ) :
def __init__ ( self , core ) :
super ( MainWindow , self ) . __init__ ( )
2021-03-10 04:52:51 +13:00
self . setGeometry ( 0 , 0 , 1200 , 800 )
2021-02-10 23:48:25 +13:00
self . setWindowTitle ( " Rare - GUI for legendary " )
2021-04-07 22:11:31 +12:00
self . tab_widget = TabWidget ( core )
self . setCentralWidget ( self . tab_widget )
2021-02-10 23:48:25 +13:00
self . show ( )
2021-04-07 22:11:31 +12:00
def closeEvent ( self , e : QCloseEvent ) :
2021-04-08 00:46:27 +12:00
if QSettings ( ) . value ( " sys_tray " , True , bool ) :
self . hide ( )
e . ignore ( )
elif self . tab_widget . downloadTab . active_game is not None and QMessageBox . question ( self , " Close " , self . tr ( " There is a download active. Do you really want to exit app? " ) , QMessageBox . Yes , QMessageBox . No ) == QMessageBox . Yes :
2021-04-07 22:11:31 +12:00
e . accept ( )
else :
2021-04-08 00:46:27 +12:00
e . accept ( )