Turn off images in settings

This commit is contained in:
BarsTiger
2022-08-15 21:35:46 +03:00
parent 22a874e7be
commit 65295e627f
7 changed files with 40 additions and 17 deletions

View File

@@ -504,7 +504,7 @@ class Ui_MainWindow(object):
self.settings_toolbox = QtWidgets.QToolBox(self.settings_page)
self.settings_toolbox.setObjectName("settings_toolbox")
self.database_options_page = QtWidgets.QWidget()
self.database_options_page.setGeometry(QtCore.QRect(0, 0, 296, 144))
self.database_options_page.setGeometry(QtCore.QRect(0, 0, 782, 349))
self.database_options_page.setObjectName("database_options_page")
self.verticalLayout_17 = QtWidgets.QVBoxLayout(self.database_options_page)
self.verticalLayout_17.setContentsMargins(0, 0, 0, 0)
@@ -554,7 +554,7 @@ class Ui_MainWindow(object):
self.verticalLayout_17.addItem(spacerItem20)
self.settings_toolbox.addItem(self.database_options_page, "")
self.gui_options_page = QtWidgets.QWidget()
self.gui_options_page.setGeometry(QtCore.QRect(0, 0, 166, 95))
self.gui_options_page.setGeometry(QtCore.QRect(0, 0, 782, 349))
self.gui_options_page.setObjectName("gui_options_page")
self.verticalLayout_18 = QtWidgets.QVBoxLayout(self.gui_options_page)
self.verticalLayout_18.setContentsMargins(0, 0, 0, 0)
@@ -569,6 +569,10 @@ class Ui_MainWindow(object):
self.app_theme_box.addItem("")
self.app_theme_box.addItem("")
self.verticalLayout_18.addWidget(self.app_theme_box)
self.show_images_check = QtWidgets.QCheckBox(self.gui_options_page)
self.show_images_check.setChecked(True)
self.show_images_check.setObjectName("show_images_check")
self.verticalLayout_18.addWidget(self.show_images_check)
spacerItem21 = QtWidgets.QSpacerItem(20, 251, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_18.addItem(spacerItem21)
self.save_gui_setting_button = QtWidgets.QPushButton(self.gui_options_page)
@@ -675,8 +679,8 @@ class Ui_MainWindow(object):
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
self.content.setCurrentIndex(0)
self.settings_toolbox.setCurrentIndex(0)
self.content.setCurrentIndex(3)
self.settings_toolbox.setCurrentIndex(1)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
@@ -730,6 +734,7 @@ class Ui_MainWindow(object):
self.app_theme_box.setItemText(0, _translate("MainWindow", "Dark gray"))
self.app_theme_box.setItemText(1, _translate("MainWindow", "Black"))
self.app_theme_box.setItemText(2, _translate("MainWindow", "Black acrylic"))
self.show_images_check.setText(_translate("MainWindow", "Render images in list (may cause long loading)"))
self.save_gui_setting_button.setText(_translate("MainWindow", "Save visual settings"))
self.settings_toolbox.setItemText(self.settings_toolbox.indexOf(self.gui_options_page), _translate("MainWindow", "Visual options"))
self.edit_box_item_name_label.setText(_translate("MainWindow", "Item name"))

View File

@@ -296,7 +296,7 @@ QToolBox::tab {
<item>
<widget class="QStackedWidget" name="content">
<property name="currentIndex">
<number>0</number>
<number>3</number>
</property>
<widget class="QWidget" name="main_page">
<layout class="QVBoxLayout" name="verticalLayout">
@@ -1691,15 +1691,15 @@ p, li { white-space: pre-wrap; }
<item>
<widget class="QToolBox" name="settings_toolbox">
<property name="currentIndex">
<number>0</number>
<number>1</number>
</property>
<widget class="QWidget" name="database_options_page">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>296</width>
<height>144</height>
<width>782</width>
<height>349</height>
</rect>
</property>
<attribute name="label">
@@ -1865,8 +1865,8 @@ p, li { white-space: pre-wrap; }
<rect>
<x>0</x>
<y>0</y>
<width>166</width>
<height>95</height>
<width>782</width>
<height>349</height>
</rect>
</property>
<attribute name="label">
@@ -1917,6 +1917,16 @@ p, li { white-space: pre-wrap; }
</item>
</widget>
</item>
<item>
<widget class="QCheckBox" name="show_images_check">
<property name="text">
<string>Render images in list (may cause long loading)</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_18">
<property name="orientation">

View File

@@ -50,12 +50,13 @@ def refill_list(ui: Ui_MainWindow):
f'{"" if Config.get().profile in list(Database.get().profiles) and item.item_name in Database.get_profile().owned_items else ""}'
f'{item.item_name} - ${"{:,}".format(item.price)}'
)
pixmap = QtGui.QPixmap()
try:
pixmap.loadFromData(requests.get(item.image).content)
list_item.setIcon(QtGui.QIcon(pixmap))
except Exception as e:
print(f"Failed to load {item.image}, {e}")
if Config.get().images:
pixmap = QtGui.QPixmap()
try:
pixmap.loadFromData(requests.get(item.image).content)
list_item.setIcon(QtGui.QIcon(pixmap))
except Exception as e:
print(f"Failed to load {item.image}, {e}")
ui.items_list.addItem(list_item)

View File

@@ -8,5 +8,6 @@ def on_settings_button_click(ui: Ui_MainWindow):
ui.database_list_box.addItems(glob.glob("*.gtabase"))
ui.database_list_box.setCurrentText(Config.get().database)
ui.app_theme_box.setCurrentText(Config.get().theme)
ui.show_images_check.setChecked(Config.get().images)
ui.content.setCurrentWidget(ui.settings_page)

View File

@@ -1,6 +1,10 @@
from gui.gui import Ui_MainWindow
from modules.config import Config
from gui.modules.core import items_list
def on_save_visual_click(ui: Ui_MainWindow):
Config.update("theme", ui.app_theme_box.currentText())
Config.update("images", ui.show_images_check.isChecked())
items_list.refill_list(ui)

View File

@@ -8,3 +8,4 @@ class ConfigModel:
database: str
profile: str | None
theme: str
images: bool

View File

@@ -8,7 +8,8 @@ class Config:
return {
"database": "default.gtabase",
"profile": None,
"theme": "Dark gray"
"theme": "Dark gray",
"images": True
}
@staticmethod