Fix bug if change filter too fast
This commit is contained in:
parent
c063e9a92a
commit
7cf4f15122
3 changed files with 174 additions and 204 deletions
|
@ -19,6 +19,8 @@ class BrowseGames(QWidget, Ui_browse_games):
|
||||||
show_game = pyqtSignal(dict)
|
show_game = pyqtSignal(dict)
|
||||||
price = ""
|
price = ""
|
||||||
platform = (False, False)
|
platform = (False, False)
|
||||||
|
request_active = False
|
||||||
|
next_request = ()
|
||||||
|
|
||||||
def __init__(self, path):
|
def __init__(self, path):
|
||||||
super(BrowseGames, self).__init__()
|
super(BrowseGames, self).__init__()
|
||||||
|
@ -48,11 +50,16 @@ class BrowseGames(QWidget, Ui_browse_games):
|
||||||
lambda: self.prepare_request(platform=(self.win_cb.isChecked(), self.mac_cb.isChecked())))
|
lambda: self.prepare_request(platform=(self.win_cb.isChecked(), self.mac_cb.isChecked())))
|
||||||
|
|
||||||
def prepare_request(self, price: str = None, platform: tuple = None):
|
def prepare_request(self, price: str = None, platform: tuple = None):
|
||||||
|
|
||||||
if price is not None:
|
if price is not None:
|
||||||
self.price = price
|
self.price = price
|
||||||
if platform is not None:
|
if platform is not None:
|
||||||
self.platform = platform
|
self.platform = platform
|
||||||
|
|
||||||
|
if self.request_active:
|
||||||
|
self.next_request = (self.price, self.platform)
|
||||||
|
return
|
||||||
|
|
||||||
locale = get_lang()
|
locale = get_lang()
|
||||||
self.stack.setCurrentIndex(2)
|
self.stack.setCurrentIndex(2)
|
||||||
date = f"[,{datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%dT%X')}.{str(random.randint(0, 999)).zfill(3)}Z]"
|
date = f"[,{datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%dT%X')}.{str(random.randint(0, 999)).zfill(3)}Z]"
|
||||||
|
@ -80,10 +87,12 @@ class BrowseGames(QWidget, Ui_browse_games):
|
||||||
|
|
||||||
request = QNetworkRequest(QUrl("https://www.epicgames.com/graphql"))
|
request = QNetworkRequest(QUrl("https://www.epicgames.com/graphql"))
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
||||||
|
self.request_active = True
|
||||||
self.game_request = self.manager.post(request, json.dumps(payload).encode("utf-8"))
|
self.game_request = self.manager.post(request, json.dumps(payload).encode("utf-8"))
|
||||||
self.game_request.finished.connect(self.show_games)
|
self.game_request.finished.connect(self.show_games)
|
||||||
|
|
||||||
def show_games(self):
|
def show_games(self):
|
||||||
|
|
||||||
if self.game_request:
|
if self.game_request:
|
||||||
if self.game_request.error() == QNetworkReply.NoError:
|
if self.game_request.error() == QNetworkReply.NoError:
|
||||||
error = QJsonParseError()
|
error = QJsonParseError()
|
||||||
|
@ -105,13 +114,23 @@ class BrowseGames(QWidget, Ui_browse_games):
|
||||||
self.games_widget.layout().addWidget(w)
|
self.games_widget.layout().addWidget(w)
|
||||||
w.show_info.connect(self.show_game.emit)
|
w.show_info.connect(self.show_game.emit)
|
||||||
self.stack.setCurrentIndex(0)
|
self.stack.setCurrentIndex(0)
|
||||||
|
|
||||||
|
self.request_active = False
|
||||||
|
if self.next_request:
|
||||||
|
self.prepare_request(*self.next_request)
|
||||||
|
self.next_request = ()
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
else:
|
else:
|
||||||
logger.info(self.slug, error.errorString())
|
logger.error(error.errorString())
|
||||||
else:
|
else:
|
||||||
print(self.game_request.errorString())
|
logger.error(self.game_request.errorString())
|
||||||
self.stack.setCurrentIndex(1)
|
if self.next_request:
|
||||||
|
self.prepare_request(*self.next_request)
|
||||||
|
self.next_request = ()
|
||||||
|
else:
|
||||||
|
self.stack.setCurrentIndex(1)
|
||||||
|
|
||||||
|
|
||||||
game_query = "query searchStoreQuery($allowCountries: String, $category: String, $count: Int, $country: String!, " \
|
game_query = "query searchStoreQuery($allowCountries: String, $category: String, $count: Int, $country: String!, " \
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
# run again. Do not edit this file unless you know what you are doing.
|
# run again. Do not edit this file unless you know what you are doing.
|
||||||
|
|
||||||
|
|
||||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
from PyQt5 import QtCore, QtWidgets
|
||||||
|
|
||||||
|
|
||||||
class Ui_browse_games(object):
|
class Ui_browse_games(object):
|
||||||
|
@ -17,11 +17,7 @@ class Ui_browse_games(object):
|
||||||
browse_games.resize(706, 541)
|
browse_games.resize(706, 541)
|
||||||
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(browse_games)
|
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(browse_games)
|
||||||
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
||||||
self.games_gb = QtWidgets.QGroupBox(browse_games)
|
self.stack = QtWidgets.QStackedWidget(browse_games)
|
||||||
self.games_gb.setObjectName("games_gb")
|
|
||||||
self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.games_gb)
|
|
||||||
self.verticalLayout_4.setObjectName("verticalLayout_4")
|
|
||||||
self.stack = QtWidgets.QStackedWidget(self.games_gb)
|
|
||||||
self.stack.setObjectName("stack")
|
self.stack.setObjectName("stack")
|
||||||
self.games_page = QtWidgets.QWidget()
|
self.games_page = QtWidgets.QWidget()
|
||||||
self.games_page.setObjectName("games_page")
|
self.games_page.setObjectName("games_page")
|
||||||
|
@ -31,7 +27,7 @@ class Ui_browse_games(object):
|
||||||
self.games.setWidgetResizable(True)
|
self.games.setWidgetResizable(True)
|
||||||
self.games.setObjectName("games")
|
self.games.setObjectName("games")
|
||||||
self.scrollAreaWidgetContents = QtWidgets.QWidget()
|
self.scrollAreaWidgetContents = QtWidgets.QWidget()
|
||||||
self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 394, 306))
|
self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 462, 503))
|
||||||
self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
|
self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
|
||||||
self.games.setWidget(self.scrollAreaWidgetContents)
|
self.games.setWidget(self.scrollAreaWidgetContents)
|
||||||
self.verticalLayout_5.addWidget(self.games)
|
self.verticalLayout_5.addWidget(self.games)
|
||||||
|
@ -46,25 +42,13 @@ class Ui_browse_games(object):
|
||||||
spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||||
self.verticalLayout_6.addItem(spacerItem)
|
self.verticalLayout_6.addItem(spacerItem)
|
||||||
self.stack.addWidget(self.error)
|
self.stack.addWidget(self.error)
|
||||||
self.verticalLayout_4.addWidget(self.stack)
|
self.horizontalLayout_2.addWidget(self.stack)
|
||||||
self.horizontalLayout_2.addWidget(self.games_gb)
|
self.filter_scroll = QtWidgets.QScrollArea(browse_games)
|
||||||
self.filter_gb = QtWidgets.QGroupBox(browse_games)
|
self.filter_scroll.setMaximumSize(QtCore.QSize(200, 16777215))
|
||||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
|
|
||||||
sizePolicy.setHorizontalStretch(0)
|
|
||||||
sizePolicy.setVerticalStretch(0)
|
|
||||||
sizePolicy.setHeightForWidth(self.filter_gb.sizePolicy().hasHeightForWidth())
|
|
||||||
self.filter_gb.setSizePolicy(sizePolicy)
|
|
||||||
self.filter_gb.setMaximumSize(QtCore.QSize(200, 16777215))
|
|
||||||
self.filter_gb.setFlat(False)
|
|
||||||
self.filter_gb.setCheckable(False)
|
|
||||||
self.filter_gb.setObjectName("filter_gb")
|
|
||||||
self.verticalLayout = QtWidgets.QVBoxLayout(self.filter_gb)
|
|
||||||
self.verticalLayout.setObjectName("verticalLayout")
|
|
||||||
self.filter_scroll = QtWidgets.QScrollArea(self.filter_gb)
|
|
||||||
self.filter_scroll.setWidgetResizable(True)
|
self.filter_scroll.setWidgetResizable(True)
|
||||||
self.filter_scroll.setObjectName("filter_scroll")
|
self.filter_scroll.setObjectName("filter_scroll")
|
||||||
self.scroll_widget = QtWidgets.QWidget()
|
self.scroll_widget = QtWidgets.QWidget()
|
||||||
self.scroll_widget.setGeometry(QtCore.QRect(0, 0, 174, 479))
|
self.scroll_widget.setGeometry(QtCore.QRect(0, 0, 198, 521))
|
||||||
self.scroll_widget.setObjectName("scroll_widget")
|
self.scroll_widget.setObjectName("scroll_widget")
|
||||||
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.scroll_widget)
|
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.scroll_widget)
|
||||||
self.verticalLayout_3.setObjectName("verticalLayout_3")
|
self.verticalLayout_3.setObjectName("verticalLayout_3")
|
||||||
|
@ -109,19 +93,16 @@ class Ui_browse_games(object):
|
||||||
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||||
self.verticalLayout_3.addItem(spacerItem1)
|
self.verticalLayout_3.addItem(spacerItem1)
|
||||||
self.filter_scroll.setWidget(self.scroll_widget)
|
self.filter_scroll.setWidget(self.scroll_widget)
|
||||||
self.verticalLayout.addWidget(self.filter_scroll)
|
self.horizontalLayout_2.addWidget(self.filter_scroll)
|
||||||
self.horizontalLayout_2.addWidget(self.filter_gb)
|
|
||||||
|
|
||||||
self.retranslateUi(browse_games)
|
self.retranslateUi(browse_games)
|
||||||
self.stack.setCurrentIndex(1)
|
self.stack.setCurrentIndex(0)
|
||||||
QtCore.QMetaObject.connectSlotsByName(browse_games)
|
QtCore.QMetaObject.connectSlotsByName(browse_games)
|
||||||
|
|
||||||
def retranslateUi(self, browse_games):
|
def retranslateUi(self, browse_games):
|
||||||
_translate = QtCore.QCoreApplication.translate
|
_translate = QtCore.QCoreApplication.translate
|
||||||
browse_games.setWindowTitle(_translate("browse_games", "Form"))
|
browse_games.setWindowTitle(_translate("browse_games", "Form"))
|
||||||
self.games_gb.setTitle(_translate("browse_games", "Games"))
|
|
||||||
self.error_label.setText(_translate("browse_games", "An error occured"))
|
self.error_label.setText(_translate("browse_games", "An error occured"))
|
||||||
self.filter_gb.setTitle(_translate("browse_games", "Filter"))
|
|
||||||
self.price_gb.setTitle(_translate("browse_games", "Price"))
|
self.price_gb.setTitle(_translate("browse_games", "Price"))
|
||||||
self.clear_price.setText(_translate("browse_games", "Clear price filter"))
|
self.clear_price.setText(_translate("browse_games", "Clear price filter"))
|
||||||
self.free_button.setText(_translate("browse_games", "Free"))
|
self.free_button.setText(_translate("browse_games", "Free"))
|
||||||
|
|
|
@ -15,207 +15,177 @@
|
||||||
</property>
|
</property>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="games_gb">
|
<widget class="QStackedWidget" name="stack">
|
||||||
<property name="title">
|
<property name="currentIndex">
|
||||||
<string>Games</string>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
<widget class="QWidget" name="games_page">
|
||||||
<item>
|
<layout class="QVBoxLayout" name="verticalLayout_5">
|
||||||
<widget class="QStackedWidget" name="stack">
|
<item>
|
||||||
<property name="currentIndex">
|
<widget class="QScrollArea" name="games">
|
||||||
<number>1</number>
|
<property name="widgetResizable">
|
||||||
</property>
|
<bool>true</bool>
|
||||||
<widget class="QWidget" name="games_page">
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_5">
|
<widget class="QWidget" name="scrollAreaWidgetContents">
|
||||||
<item>
|
<property name="geometry">
|
||||||
<widget class="QScrollArea" name="games">
|
<rect>
|
||||||
<property name="widgetResizable">
|
<x>0</x>
|
||||||
<bool>true</bool>
|
<y>0</y>
|
||||||
</property>
|
<width>462</width>
|
||||||
<widget class="QWidget" name="scrollAreaWidgetContents">
|
<height>503</height>
|
||||||
<property name="geometry">
|
</rect>
|
||||||
<rect>
|
</property>
|
||||||
<x>0</x>
|
</widget>
|
||||||
<y>0</y>
|
|
||||||
<width>394</width>
|
|
||||||
<height>306</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="error">
|
</item>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_6">
|
</layout>
|
||||||
<item>
|
</widget>
|
||||||
<widget class="QLabel" name="error_label">
|
<widget class="QWidget" name="error">
|
||||||
<property name="text">
|
<layout class="QVBoxLayout" name="verticalLayout_6">
|
||||||
<string>An error occured</string>
|
<item>
|
||||||
</property>
|
<widget class="QLabel" name="error_label">
|
||||||
</widget>
|
<property name="text">
|
||||||
</item>
|
<string>An error occured</string>
|
||||||
<item>
|
</property>
|
||||||
<spacer name="verticalSpacer_2">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Vertical</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>20</width>
|
|
||||||
<height>40</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</item>
|
||||||
</item>
|
<item>
|
||||||
</layout>
|
<spacer name="verticalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="filter_gb">
|
<widget class="QScrollArea" name="filter_scroll">
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize">
|
<property name="maximumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>200</width>
|
<width>200</width>
|
||||||
<height>16777215</height>
|
<height>16777215</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="title">
|
<property name="widgetResizable">
|
||||||
<string>Filter</string>
|
<bool>true</bool>
|
||||||
</property>
|
</property>
|
||||||
<property name="flat">
|
<widget class="QWidget" name="scroll_widget">
|
||||||
<bool>false</bool>
|
<property name="geometry">
|
||||||
</property>
|
<rect>
|
||||||
<property name="checkable">
|
<x>0</x>
|
||||||
<bool>false</bool>
|
<y>0</y>
|
||||||
</property>
|
<width>198</width>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<height>521</height>
|
||||||
<item>
|
</rect>
|
||||||
<widget class="QScrollArea" name="filter_scroll">
|
</property>
|
||||||
<property name="widgetResizable">
|
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||||
<bool>true</bool>
|
<item>
|
||||||
</property>
|
<widget class="QGroupBox" name="price_gb">
|
||||||
<widget class="QWidget" name="scroll_widget">
|
<property name="title">
|
||||||
<property name="geometry">
|
<string>Price</string>
|
||||||
<rect>
|
|
||||||
<x>0</x>
|
|
||||||
<y>0</y>
|
|
||||||
<width>174</width>
|
|
||||||
<height>479</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="price_gb">
|
<widget class="QRadioButton" name="clear_price">
|
||||||
<property name="title">
|
<property name="text">
|
||||||
<string>Price</string>
|
<string>Clear price filter</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="clear_price">
|
|
||||||
<property name="text">
|
|
||||||
<string>Clear price filter</string>
|
|
||||||
</property>
|
|
||||||
<property name="checked">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="free_button">
|
|
||||||
<property name="text">
|
|
||||||
<string>Free</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="under10">
|
|
||||||
<property name="text">
|
|
||||||
<string>Under 10</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="under20">
|
|
||||||
<property name="text">
|
|
||||||
<string>Under 20</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="under30">
|
|
||||||
<property name="text">
|
|
||||||
<string>Under 30</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="above">
|
|
||||||
<property name="text">
|
|
||||||
<string>14.99 and above</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QRadioButton" name="on_discount">
|
|
||||||
<property name="text">
|
|
||||||
<string>Discount</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="platform_gb">
|
<widget class="QRadioButton" name="free_button">
|
||||||
<property name="title">
|
<property name="text">
|
||||||
<string>Platform</string>
|
<string>Free</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_7">
|
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="win_cb">
|
|
||||||
<property name="text">
|
|
||||||
<string>Windows</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="mac_cb">
|
|
||||||
<property name="text">
|
|
||||||
<string>Mac</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="verticalSpacer">
|
<widget class="QRadioButton" name="under10">
|
||||||
<property name="orientation">
|
<property name="text">
|
||||||
<enum>Qt::Vertical</enum>
|
<string>Under 10</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizeHint" stdset="0">
|
</widget>
|
||||||
<size>
|
</item>
|
||||||
<width>20</width>
|
<item>
|
||||||
<height>40</height>
|
<widget class="QRadioButton" name="under20">
|
||||||
</size>
|
<property name="text">
|
||||||
|
<string>Under 20</string>
|
||||||
</property>
|
</property>
|
||||||
</spacer>
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="under30">
|
||||||
|
<property name="text">
|
||||||
|
<string>Under 30</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="above">
|
||||||
|
<property name="text">
|
||||||
|
<string>14.99 and above</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="on_discount">
|
||||||
|
<property name="text">
|
||||||
|
<string>Discount</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</item>
|
||||||
</item>
|
<item>
|
||||||
</layout>
|
<widget class="QGroupBox" name="platform_gb">
|
||||||
|
<property name="title">
|
||||||
|
<string>Platform</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_7">
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="win_cb">
|
||||||
|
<property name="text">
|
||||||
|
<string>Windows</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="mac_cb">
|
||||||
|
<property name="text">
|
||||||
|
<string>Mac</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="verticalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
|
Loading…
Reference in a new issue