diff --git a/gui/gui.py b/gui/gui.py
index 5901e1e..b1bbbc7 100644
--- a/gui/gui.py
+++ b/gui/gui.py
@@ -49,13 +49,23 @@ class Ui_MainWindow(object):
self.horizontalLayout_2.addWidget(self.open_filter_button)
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem)
+ self.edit_item_button = QtWidgets.QPushButton(self.topmenu)
+ self.edit_item_button.setMinimumSize(QtCore.QSize(48, 48))
+ self.edit_item_button.setMaximumSize(QtCore.QSize(48, 48))
+ self.edit_item_button.setText("")
+ icon2 = QtGui.QIcon()
+ icon2.addPixmap(QtGui.QPixmap(":/img/img/edit.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.edit_item_button.setIcon(icon2)
+ self.edit_item_button.setIconSize(QtCore.QSize(32, 32))
+ self.edit_item_button.setObjectName("edit_item_button")
+ self.horizontalLayout_2.addWidget(self.edit_item_button)
self.add_item_button = QtWidgets.QPushButton(self.topmenu)
self.add_item_button.setMinimumSize(QtCore.QSize(48, 48))
self.add_item_button.setMaximumSize(QtCore.QSize(48, 48))
self.add_item_button.setText("")
- icon2 = QtGui.QIcon()
- icon2.addPixmap(QtGui.QPixmap(":/img/img/plus.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.add_item_button.setIcon(icon2)
+ icon3 = QtGui.QIcon()
+ icon3.addPixmap(QtGui.QPixmap(":/img/img/plus.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.add_item_button.setIcon(icon3)
self.add_item_button.setIconSize(QtCore.QSize(32, 32))
self.add_item_button.setObjectName("add_item_button")
self.horizontalLayout_2.addWidget(self.add_item_button)
@@ -63,9 +73,9 @@ class Ui_MainWindow(object):
self.manage_profiles_button.setMinimumSize(QtCore.QSize(48, 48))
self.manage_profiles_button.setMaximumSize(QtCore.QSize(48, 48))
self.manage_profiles_button.setText("")
- icon3 = QtGui.QIcon()
- icon3.addPixmap(QtGui.QPixmap(":/img/img/account.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.manage_profiles_button.setIcon(icon3)
+ icon4 = QtGui.QIcon()
+ icon4.addPixmap(QtGui.QPixmap(":/img/img/account.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.manage_profiles_button.setIcon(icon4)
self.manage_profiles_button.setIconSize(QtCore.QSize(32, 32))
self.manage_profiles_button.setObjectName("manage_profiles_button")
self.horizontalLayout_2.addWidget(self.manage_profiles_button)
@@ -73,9 +83,9 @@ class Ui_MainWindow(object):
self.open_settings_button.setMinimumSize(QtCore.QSize(48, 48))
self.open_settings_button.setMaximumSize(QtCore.QSize(48, 48))
self.open_settings_button.setText("")
- icon4 = QtGui.QIcon()
- icon4.addPixmap(QtGui.QPixmap(":/img/img/settings.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.open_settings_button.setIcon(icon4)
+ icon5 = QtGui.QIcon()
+ icon5.addPixmap(QtGui.QPixmap(":/img/img/settings.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.open_settings_button.setIcon(icon5)
self.open_settings_button.setIconSize(QtCore.QSize(32, 32))
self.open_settings_button.setObjectName("open_settings_button")
self.horizontalLayout_2.addWidget(self.open_settings_button)
@@ -229,9 +239,9 @@ class Ui_MainWindow(object):
self.cancel_adding_item_button.setMinimumSize(QtCore.QSize(48, 48))
self.cancel_adding_item_button.setMaximumSize(QtCore.QSize(48, 48))
self.cancel_adding_item_button.setText("")
- icon5 = QtGui.QIcon()
- icon5.addPixmap(QtGui.QPixmap(":/img/img/cancel.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.cancel_adding_item_button.setIcon(icon5)
+ icon6 = QtGui.QIcon()
+ icon6.addPixmap(QtGui.QPixmap(":/img/img/cancel.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.cancel_adding_item_button.setIcon(icon6)
self.cancel_adding_item_button.setIconSize(QtCore.QSize(32, 32))
self.cancel_adding_item_button.setObjectName("cancel_adding_item_button")
self.horizontalLayout.addWidget(self.cancel_adding_item_button)
@@ -239,9 +249,9 @@ class Ui_MainWindow(object):
self.back_adding_item_button.setMinimumSize(QtCore.QSize(48, 48))
self.back_adding_item_button.setMaximumSize(QtCore.QSize(48, 48))
self.back_adding_item_button.setText("")
- icon6 = QtGui.QIcon()
- icon6.addPixmap(QtGui.QPixmap(":/img/img/back.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.back_adding_item_button.setIcon(icon6)
+ icon7 = QtGui.QIcon()
+ icon7.addPixmap(QtGui.QPixmap(":/img/img/back.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.back_adding_item_button.setIcon(icon7)
self.back_adding_item_button.setIconSize(QtCore.QSize(32, 32))
self.back_adding_item_button.setObjectName("back_adding_item_button")
self.horizontalLayout.addWidget(self.back_adding_item_button)
@@ -251,9 +261,9 @@ class Ui_MainWindow(object):
self.next_adding_item_button.setMinimumSize(QtCore.QSize(48, 48))
self.next_adding_item_button.setMaximumSize(QtCore.QSize(48, 48))
self.next_adding_item_button.setText("")
- icon7 = QtGui.QIcon()
- icon7.addPixmap(QtGui.QPixmap(":/img/img/next.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.next_adding_item_button.setIcon(icon7)
+ icon8 = QtGui.QIcon()
+ icon8.addPixmap(QtGui.QPixmap(":/img/img/next.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.next_adding_item_button.setIcon(icon8)
self.next_adding_item_button.setIconSize(QtCore.QSize(32, 32))
self.next_adding_item_button.setObjectName("next_adding_item_button")
self.horizontalLayout.addWidget(self.next_adding_item_button)
@@ -403,7 +413,7 @@ class Ui_MainWindow(object):
self.cancel_account.setMinimumSize(QtCore.QSize(48, 48))
self.cancel_account.setMaximumSize(QtCore.QSize(48, 48))
self.cancel_account.setText("")
- self.cancel_account.setIcon(icon5)
+ self.cancel_account.setIcon(icon6)
self.cancel_account.setIconSize(QtCore.QSize(32, 32))
self.cancel_account.setObjectName("cancel_account")
self.horizontalLayout_5.addWidget(self.cancel_account)
@@ -413,7 +423,7 @@ class Ui_MainWindow(object):
self.create_new_account.setMinimumSize(QtCore.QSize(48, 48))
self.create_new_account.setMaximumSize(QtCore.QSize(48, 48))
self.create_new_account.setText("")
- self.create_new_account.setIcon(icon2)
+ self.create_new_account.setIcon(icon3)
self.create_new_account.setIconSize(QtCore.QSize(32, 32))
self.create_new_account.setObjectName("create_new_account")
self.horizontalLayout_5.addWidget(self.create_new_account)
@@ -421,9 +431,9 @@ class Ui_MainWindow(object):
self.remove_selected_account.setMinimumSize(QtCore.QSize(48, 48))
self.remove_selected_account.setMaximumSize(QtCore.QSize(48, 48))
self.remove_selected_account.setText("")
- icon8 = QtGui.QIcon()
- icon8.addPixmap(QtGui.QPixmap(":/img/img/delete.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
- self.remove_selected_account.setIcon(icon8)
+ icon9 = QtGui.QIcon()
+ icon9.addPixmap(QtGui.QPixmap(":/img/img/delete.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
+ self.remove_selected_account.setIcon(icon9)
self.remove_selected_account.setIconSize(QtCore.QSize(32, 32))
self.remove_selected_account.setObjectName("remove_selected_account")
self.horizontalLayout_5.addWidget(self.remove_selected_account)
@@ -465,10 +475,126 @@ class Ui_MainWindow(object):
self.use_this_account_button.setObjectName("use_this_account_button")
self.verticalLayout_13.addWidget(self.use_this_account_button)
self.content.addWidget(self.account_page)
+ self.settings_page = QtWidgets.QWidget()
+ self.settings_page.setObjectName("settings_page")
+ self.verticalLayout_15 = QtWidgets.QVBoxLayout(self.settings_page)
+ self.verticalLayout_15.setContentsMargins(0, 0, 0, 0)
+ self.verticalLayout_15.setObjectName("verticalLayout_15")
+ self.topmenu_settings = QtWidgets.QWidget(self.settings_page)
+ sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.topmenu_settings.sizePolicy().hasHeightForWidth())
+ self.topmenu_settings.setSizePolicy(sizePolicy)
+ self.topmenu_settings.setObjectName("topmenu_settings")
+ self.horizontalLayout_7 = QtWidgets.QHBoxLayout(self.topmenu_settings)
+ self.horizontalLayout_7.setContentsMargins(0, 0, 0, 0)
+ self.horizontalLayout_7.setObjectName("horizontalLayout_7")
+ self.cancel_settings_button = QtWidgets.QPushButton(self.topmenu_settings)
+ self.cancel_settings_button.setMinimumSize(QtCore.QSize(48, 48))
+ self.cancel_settings_button.setMaximumSize(QtCore.QSize(48, 48))
+ self.cancel_settings_button.setText("")
+ self.cancel_settings_button.setIcon(icon6)
+ self.cancel_settings_button.setIconSize(QtCore.QSize(32, 32))
+ self.cancel_settings_button.setObjectName("cancel_settings_button")
+ self.horizontalLayout_7.addWidget(self.cancel_settings_button)
+ spacerItem19 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
+ self.horizontalLayout_7.addItem(spacerItem19)
+ self.verticalLayout_15.addWidget(self.topmenu_settings)
+ 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, 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)
+ self.verticalLayout_17.setObjectName("verticalLayout_17")
+ self.database_list_box = QtWidgets.QComboBox(self.database_options_page)
+ self.database_list_box.setMinimumSize(QtCore.QSize(0, 30))
+ self.database_list_box.setObjectName("database_list_box")
+ self.verticalLayout_17.addWidget(self.database_list_box)
+ self.load_this_db_button = QtWidgets.QPushButton(self.database_options_page)
+ self.load_this_db_button.setMinimumSize(QtCore.QSize(0, 30))
+ self.load_this_db_button.setObjectName("load_this_db_button")
+ self.verticalLayout_17.addWidget(self.load_this_db_button)
+ self.database_options_buttons_lay = QtWidgets.QWidget(self.database_options_page)
+ self.database_options_buttons_lay.setObjectName("database_options_buttons_lay")
+ self.horizontalLayout_9 = QtWidgets.QHBoxLayout(self.database_options_buttons_lay)
+ self.horizontalLayout_9.setContentsMargins(0, 0, 0, 0)
+ self.horizontalLayout_9.setSpacing(6)
+ self.horizontalLayout_9.setObjectName("horizontalLayout_9")
+ self.create_backup_button = QtWidgets.QPushButton(self.database_options_buttons_lay)
+ self.create_backup_button.setMinimumSize(QtCore.QSize(0, 30))
+ self.create_backup_button.setObjectName("create_backup_button")
+ self.horizontalLayout_9.addWidget(self.create_backup_button)
+ self.load_backup_button = QtWidgets.QPushButton(self.database_options_buttons_lay)
+ self.load_backup_button.setMinimumSize(QtCore.QSize(0, 30))
+ self.load_backup_button.setObjectName("load_backup_button")
+ self.horizontalLayout_9.addWidget(self.load_backup_button)
+ self.delete_db_button = QtWidgets.QPushButton(self.database_options_buttons_lay)
+ self.delete_db_button.setMinimumSize(QtCore.QSize(0, 30))
+ self.delete_db_button.setObjectName("delete_db_button")
+ self.horizontalLayout_9.addWidget(self.delete_db_button)
+ self.verticalLayout_17.addWidget(self.database_options_buttons_lay)
+ self.create_new_db_lay = QtWidgets.QWidget(self.database_options_page)
+ self.create_new_db_lay.setObjectName("create_new_db_lay")
+ self.horizontalLayout_10 = QtWidgets.QHBoxLayout(self.create_new_db_lay)
+ self.horizontalLayout_10.setContentsMargins(0, 0, 0, 0)
+ self.horizontalLayout_10.setObjectName("horizontalLayout_10")
+ self.new_db_name_box = QtWidgets.QLineEdit(self.create_new_db_lay)
+ self.new_db_name_box.setMinimumSize(QtCore.QSize(0, 30))
+ self.new_db_name_box.setObjectName("new_db_name_box")
+ self.horizontalLayout_10.addWidget(self.new_db_name_box)
+ self.new_db_create_button = QtWidgets.QPushButton(self.create_new_db_lay)
+ self.new_db_create_button.setMinimumSize(QtCore.QSize(70, 30))
+ self.new_db_create_button.setObjectName("new_db_create_button")
+ self.horizontalLayout_10.addWidget(self.new_db_create_button)
+ self.verticalLayout_17.addWidget(self.create_new_db_lay)
+ spacerItem20 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
+ 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, 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)
+ self.verticalLayout_18.setObjectName("verticalLayout_18")
+ self.app_theme_label = QtWidgets.QLabel(self.gui_options_page)
+ self.app_theme_label.setObjectName("app_theme_label")
+ self.verticalLayout_18.addWidget(self.app_theme_label)
+ self.app_theme_box = QtWidgets.QComboBox(self.gui_options_page)
+ self.app_theme_box.setMinimumSize(QtCore.QSize(0, 30))
+ self.app_theme_box.setObjectName("app_theme_box")
+ self.app_theme_box.addItem("")
+ self.app_theme_box.addItem("")
+ self.app_theme_box.addItem("")
+ self.verticalLayout_18.addWidget(self.app_theme_box)
+ 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)
+ self.save_gui_setting_button.setMinimumSize(QtCore.QSize(0, 30))
+ self.save_gui_setting_button.setObjectName("save_gui_setting_button")
+ self.verticalLayout_18.addWidget(self.save_gui_setting_button)
+ self.settings_toolbox.addItem(self.gui_options_page, "")
+ self.verticalLayout_15.addWidget(self.settings_toolbox)
+ self.settings_layout = QtWidgets.QWidget(self.settings_page)
+ self.settings_layout.setObjectName("settings_layout")
+ self.horizontalLayout_8 = QtWidgets.QHBoxLayout(self.settings_layout)
+ self.horizontalLayout_8.setContentsMargins(0, 0, 0, 0)
+ self.horizontalLayout_8.setObjectName("horizontalLayout_8")
+ self.options_lay = QtWidgets.QWidget(self.settings_layout)
+ self.options_lay.setObjectName("options_lay")
+ self.verticalLayout_16 = QtWidgets.QVBoxLayout(self.options_lay)
+ self.verticalLayout_16.setContentsMargins(0, 0, 0, 0)
+ self.verticalLayout_16.setObjectName("verticalLayout_16")
+ self.horizontalLayout_8.addWidget(self.options_lay)
+ self.verticalLayout_15.addWidget(self.settings_layout)
+ self.content.addWidget(self.settings_page)
self.verticalLayout_4.addWidget(self.content)
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
+ self.settings_toolbox.setCurrentIndex(1)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
@@ -511,6 +637,19 @@ class Ui_MainWindow(object):
self.cancel_account_creation.setText(_translate("MainWindow", "Cancel"))
self.accept_account_name.setText(_translate("MainWindow", "Create"))
self.use_this_account_button.setText(_translate("MainWindow", "Use selected account"))
+ self.load_this_db_button.setText(_translate("MainWindow", "Load selected database"))
+ self.create_backup_button.setText(_translate("MainWindow", "Create backup"))
+ self.load_backup_button.setText(_translate("MainWindow", "Load backup"))
+ self.delete_db_button.setText(_translate("MainWindow", "Delete this database"))
+ self.new_db_name_box.setPlaceholderText(_translate("MainWindow", "New database name"))
+ self.new_db_create_button.setText(_translate("MainWindow", "Create"))
+ self.settings_toolbox.setItemText(self.settings_toolbox.indexOf(self.database_options_page), _translate("MainWindow", "Database options"))
+ self.app_theme_label.setText(_translate("MainWindow", "App theme (requires restart)"))
+ 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.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"))
import gui.images_rc
diff --git a/gui/gui.ui b/gui/gui.ui
index 98ff0c6..1c5d9cc 100644
--- a/gui/gui.ui
+++ b/gui/gui.ui
@@ -359,6 +359,35 @@ QSpinBox::down-button {
+ -
+
+
+
+ 48
+ 48
+
+
+
+
+ 48
+ 48
+
+
+
+
+
+
+
+ :/img/img/edit.png:/img/img/edit.png
+
+
+
+ 32
+ 32
+
+
+
+
-
@@ -1569,6 +1598,383 @@ p, li { white-space: pre-wrap; }
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 48
+ 48
+
+
+
+
+ 48
+ 48
+
+
+
+
+
+
+
+ :/img/img/cancel.png:/img/img/cancel.png
+
+
+
+ 32
+ 32
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+
+
+
+ -
+
+
+ 1
+
+
+
+
+ 0
+ 0
+ 782
+ 349
+
+
+
+ Database options
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 30
+
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Load selected database
+
+
+
+ -
+
+
+
+ 6
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 30
+
+
+
+ Create backup
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Load backup
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Delete this database
+
+
+
+
+
+
+ -
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 30
+
+
+
+ New database name
+
+
+
+ -
+
+
+
+ 70
+ 30
+
+
+
+ Create
+
+
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+
+
+
+
+
+ 0
+ 0
+ 782
+ 349
+
+
+
+ Visual options
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+ -
+
+
+ App theme (requires restart)
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
-
+
+ Dark gray
+
+
+ -
+
+ Black
+
+
+ -
+
+ Black acrylic
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 251
+
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Save visual settings
+
+
+
+
+
+
+
+ -
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+
+
+
+
+
+
+
diff --git a/gui/images_rc.py b/gui/images_rc.py
index 60857ad..f23dd1d 100644
--- a/gui/images_rc.py
+++ b/gui/images_rc.py
@@ -9,68 +9,39 @@
from PyQt5 import QtCore
qt_resource_data = b"\
-\x00\x00\x03\xb3\
+\x00\x00\x01\xe2\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
-\xa7\x93\x00\x00\x03\x68\x49\x44\x41\x54\x78\x9c\xed\x9a\x4d\x8b\
-\x1d\x45\x14\x86\x9f\xe3\x90\x0f\x45\x51\x08\x19\x75\x32\x2e\x04\
-\x23\x83\xa8\x20\x04\x35\x22\x83\x48\x96\x0a\x41\x50\x7f\x87\xba\
-\x10\x5d\x65\x21\xe2\x4e\xf3\x03\x44\xa2\x1b\xc1\x4d\x04\x45\x31\
-\x09\x28\xf1\x6b\xa1\x9b\x18\xa3\xc4\x85\xa2\x99\x41\xf1\x83\x44\
-\xd1\x49\x32\x66\x1e\x17\x7d\x2f\xe8\x38\xc9\xed\xea\x9c\xee\x9e\
-\x90\x7e\xe0\x6e\x2e\xb7\xde\x3a\xef\xa1\x6e\xd7\xa9\x53\x0d\x03\
-\x03\x03\x03\x97\x31\xd1\xf5\x84\xea\x76\x60\x17\x30\x03\xcc\x8e\
-\xbe\x3e\x01\x2c\x02\x07\x23\xe2\x9b\xae\x63\x6a\x1d\x75\x93\xfa\
-\xa4\xfa\xa5\x93\x39\xaa\x3e\xa1\x6e\xea\x3b\xee\x14\xd4\x47\xd4\
-\xef\x6a\x18\x5f\xcd\xb7\xea\xee\xbe\xe3\x6f\x8c\x1a\xea\x1e\x75\
-\xa5\x81\xf9\x31\x2b\xea\x0b\xea\x15\x7d\xfb\x29\x46\x7d\xe5\x22\
-\x8c\xaf\xe6\xe5\xbe\xfd\x14\xa1\x3e\x9d\x68\x7e\xcc\x53\x7d\xfb\
-\xaa\x85\x7a\xb7\x7a\xae\x85\x04\xfc\xad\xee\xe8\xdb\xdf\x44\xd4\
-\x43\x2d\x98\x1f\xf3\x7e\xdf\xfe\x2e\x88\xba\xab\x45\xf3\x63\x1e\
-\xcc\x8c\x39\xfb\xe9\xfa\x78\xb2\xde\x5a\x3c\x96\x29\x96\x56\x09\
-\x5a\x6d\x55\x0b\xc0\x0d\x59\x9a\xe7\xe1\x27\x60\x26\x22\x56\x32\
-\xc4\x32\x57\xc0\x4d\xb4\x6f\x1e\xe0\x7a\x60\x5b\x96\x58\x66\x02\
-\x6e\x4c\xd4\x9a\xc4\x4c\x96\x50\x66\x02\xa6\x13\xb5\x3a\x9b\x2b\
-\x33\x01\xbf\x27\x6a\x4d\xe2\x54\x96\x50\x66\x02\x16\x13\xb5\x3a\
-\x9b\x2b\x33\x01\x3f\x00\xa7\x13\xf5\xce\xc7\x12\x55\xff\x20\x85\
-\xb4\x04\x44\xc4\x12\x70\x30\x4b\xef\x02\x1c\x88\x88\xb4\x44\x67\
-\x17\x42\xfb\x93\xf5\xd6\xe2\xcd\x4c\xb1\xd4\x96\x98\xba\x19\x38\
-\x4e\x55\x13\xb4\xc1\x02\x70\x6b\x44\xfc\x95\x25\x98\xba\x02\x46\
-\x4b\x73\x4f\xa6\xe6\x2a\x9e\xcd\x34\xdf\x0a\xea\x94\xfa\x4e\x0b\
-\x87\xa0\xb7\xbd\x54\x3a\x43\xea\x35\x56\xcd\xcd\x2c\xbe\x52\xaf\
-\xeb\xdb\x57\x11\xea\xac\xfa\x79\x82\xf9\xcf\xd4\xb4\xda\xbf\x53\
-\xd4\xab\xd4\xd7\x1a\x1a\x5f\x51\xf7\xa9\x57\xf6\xed\xe3\xa2\x51\
-\xef\x53\x3f\x2c\x30\x7f\x58\xdd\xd9\x45\x6c\x9d\xde\x0c\xa9\x73\
-\xc0\x6e\xaa\x9b\xa1\x6d\xfc\xf7\x66\xe8\x04\x70\x08\xd8\x1f\x11\
-\x5f\x77\x19\xd7\xc0\xc0\xc0\xc0\x65\x4b\xe3\x5d\x40\xbd\x1f\x78\
-\x88\xea\xe0\xb3\x21\x2d\xa2\x32\x96\x81\xef\x81\xb7\x22\xe2\xa3\
-\x4e\x66\x54\xa7\xd5\xf7\x1a\x16\x37\x6d\xf2\xae\xba\xb5\xd4\x4f\
-\xd1\x0a\xb0\xaa\xc7\x3f\x01\xe6\x4a\x27\xea\x88\x63\xc0\xce\x88\
-\xa8\xdd\x9f\x2c\x3d\x5d\x3d\xcf\xfa\x35\x0f\x70\x1b\xf0\x5c\xc9\
-\x80\xda\x2b\x40\xbd\x1a\xf8\x19\xd8\x5c\x18\x54\xd7\x9c\x06\xa6\
-\x23\xe2\x8f\x3a\x3f\x2e\x59\x01\x3b\x58\xff\xe6\xa1\x8a\xf1\xae\
-\xba\x3f\x2e\x49\xc0\x96\xf2\x58\x7a\xa3\xf6\xc3\xb0\x24\x01\x97\
-\x46\x37\xa6\xa2\x76\xac\x25\xa6\xfe\x6c\x10\x48\x5f\xd4\xfa\xff\
-\x43\x59\x02\xd2\x2e\x23\x3a\xa0\x76\xac\x25\xbb\xc0\x14\xf0\x0b\
-\xb0\xde\x7b\x73\x27\x81\x2d\x75\xdf\x1f\xa8\xbd\x02\x22\xe2\x1c\
-\xf0\x46\xd3\xa8\x3a\xe4\xf5\x92\x97\x27\x4a\x2b\xc1\x39\xe0\x08\
-\xfd\xd5\xfe\x93\x58\x06\x6e\x8f\x88\xe3\x75\x07\x14\x3d\xd9\x47\
-\xad\xaa\xbd\xa5\x51\x75\xc8\x8b\x25\xe6\xa1\xc1\x69\x50\xdd\x08\
-\x7c\x00\xdc\x5b\x3a\xb6\x65\x3e\x06\x1e\x88\x88\xe5\x92\x41\xc5\
-\x7b\x7b\x44\x9c\xa5\x3a\x06\x7f\x51\x3a\xb6\x45\x8e\x00\x0f\x97\
-\x9a\x87\x86\xc5\x4d\x44\xfc\x0a\xcc\xd3\xcd\x75\xf8\x24\x0e\x00\
-\xf3\x11\xf1\x5b\xe7\x33\x5b\xdd\x03\x3e\xa3\x2e\xf5\x70\xfe\x5f\
-\x1a\xcd\x3d\xd5\xb9\xf1\x35\x12\x31\xab\xee\x55\xcf\x74\x60\xfc\
-\xac\xfa\xaa\x7a\x73\xdf\xbe\xff\x87\xba\x7d\x94\x88\xc5\x16\x8c\
-\x2f\xa8\x2f\xa9\xb7\x64\xc6\xdc\xca\xcd\x90\xd5\x35\xf6\x3c\xf0\
-\x28\x70\x0f\x70\x07\xb0\xb1\x50\xe6\x0c\x70\x14\xf8\x94\xaa\x00\
-\x3b\x9c\xf5\x76\xe8\xbf\xe9\xe4\x6a\x4c\xdd\x40\xd5\xad\xb9\x93\
-\xea\x4d\xcf\x6b\xa9\x4a\xea\x71\x59\x7d\x72\xf4\x39\x05\xfc\x48\
-\xb5\xc3\x1c\x6b\xf2\x54\x1f\x18\x18\x18\x18\x28\xe0\x1f\x07\x8c\
-\x76\x28\x0c\x32\x8d\xaa\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\
-\x60\x82\
+\xa7\x93\x00\x00\x01\x97\x49\x44\x41\x54\x78\x9c\xed\xdb\xbd\x2e\
+\x44\x51\x14\xc5\xf1\xff\x46\x22\x13\x24\x48\xd0\x9b\xa8\x25\xa3\
+\xd5\x50\x6b\x55\x1e\xc1\x83\x28\x28\x44\xad\x54\x49\x3c\x82\x78\
+\x00\x11\x51\x51\xf0\x02\x34\x08\xe3\x23\x26\x4b\xa1\xd1\xb9\xfb\
+\xce\xcc\xd9\x86\xfd\xab\xcf\xbe\x67\xdd\x95\x3b\x33\xb7\x38\x03\
+\x29\xa5\x94\xfe\x2f\x2b\xb5\x91\xa4\x16\xb0\x01\x8c\xff\xb0\xf4\
+\x09\x38\x30\xb3\xf3\xfe\xa7\x2a\x44\x52\x53\x52\x5b\xd5\xb5\x25\
+\x35\x4b\x64\x1b\xf1\x2c\x96\x34\x07\xac\x03\x63\xce\x7d\x96\x80\
+\x86\x63\x7d\x03\xd8\x92\x74\xe6\xdc\xe7\x19\x38\x34\xb3\xdb\xaa\
+\x03\x95\x3f\x02\x92\xa6\x81\x53\x60\xde\x19\xaa\xb4\x1b\xa0\x65\
+\x66\x8f\x55\x16\x0f\x39\x2e\xbc\xca\xef\xbf\x79\x80\x26\xb0\x5c\
+\x75\xb1\xa7\x80\x4b\xe0\xc3\x1d\xa7\xbc\x0e\x70\x55\x75\xb1\xeb\
+\x57\x40\xd2\x1a\xb0\x09\xcc\x38\x43\x95\x72\x07\xec\x9b\xd9\x51\
+\x74\x90\x94\xd2\x60\x70\xbf\x0a\x4b\x5a\x04\x4e\xfa\x90\xa5\x17\
+\x56\xcc\xec\xc2\x33\xe0\x7a\x13\xfc\x36\x33\x55\x63\xae\x04\xf7\
+\xfd\x78\xde\x03\xfe\xa4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\
+\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\
+\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\
+\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\
+\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\
+\xb4\x2c\xa0\xc6\xcc\x6b\xcf\x53\xf4\xce\x8b\x77\xa0\xce\x11\x99\
+\x51\xbe\xce\xe3\x4d\x78\x67\xfb\xec\x01\x98\x35\xb3\x77\xcf\x90\
+\xfb\x09\x30\xb3\x37\x60\xc7\x3b\x57\xc0\xb6\xf7\xe6\x6b\x93\x34\
+\x2c\x69\x4f\x52\xc7\x71\x04\xbe\x5f\x3a\x92\x76\x25\xd5\xfa\x3e\
+\xeb\xea\x0f\x13\x92\x16\xf8\x3a\x44\x3d\xd9\xcd\x75\xba\x70\x0f\
+\x1c\x9b\xd9\x75\xd0\xfe\x29\xa5\x94\x52\x1a\x60\x9f\xc9\x63\x02\
+\x0c\xb1\xc5\x4e\x5f\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\
+\x82\
\x00\x00\x05\x4e\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -158,28 +129,62 @@ qt_resource_data = b"\
\x63\x89\x12\xfa\xea\x6c\x93\xec\xd5\xd9\x39\x31\x22\x17\x24\xed\
\xbb\x66\xaf\xce\x5e\x67\x1a\xf2\x0f\xac\x40\xde\xa1\xce\xa5\x28\
\x34\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\x36\
+\x00\x00\x01\xb0\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
+\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
+\x04\x67\x41\x4d\x41\x00\x00\xb1\x8f\x0b\xfc\x61\x05\x00\x00\x00\
+\x09\x70\x48\x59\x73\x00\x00\x0e\xc3\x00\x00\x0e\xc3\x01\xc7\x6f\
+\xa8\x64\x00\x00\x01\x45\x49\x44\x41\x54\x78\x5e\xed\xdb\x3d\x4a\
+\xc4\x50\x18\x46\xe1\x20\xee\x40\xd4\x46\xb4\xb3\xb6\x72\x05\x2e\
+\x41\x45\xd4\xb5\xd8\xc4\x85\x45\x88\x45\xec\xf2\xe3\x52\x12\x49\
+\x32\xa3\x9e\xc0\x17\xe1\x12\x62\x21\x16\x7a\xbf\xf7\x69\x86\xcc\
+\xa4\x39\x2f\x33\x03\x13\x26\x89\x88\xfc\x8a\x3d\x1c\xc3\x0e\x7d\
+\x79\x40\xdf\xf7\xc3\x07\xb2\x2c\x7b\x3a\x84\xbd\x14\xbf\x33\x6c\
+\xb7\xdb\xf7\x29\x7e\xd6\x34\xcd\xab\x9b\x11\x6e\x60\xdd\x01\x37\
+\x23\x1c\xa1\x6d\xdb\xce\xba\x03\x6e\x46\xb8\xc4\x30\x0c\xa3\x75\
+\x07\xea\xba\x6e\x5c\x8c\x70\x8b\x71\x1c\x37\xd6\x1d\xa8\xaa\xaa\
+\x3e\x80\x9d\x1a\x2f\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\
+\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\
+\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x80\x6b\xac\x5d\
+\x6d\x2e\x8a\xe2\x65\x17\x76\x6a\xbc\xbe\x7b\x27\x5c\xc0\x4e\xfb\
+\xb1\x1d\x7b\xfc\xb3\x36\x98\x62\xed\x30\xb0\xf6\x7c\x34\x5c\x7f\
+\x04\xee\xb0\xf6\xd6\x2f\xcb\xb2\xda\x87\x9d\x1a\x1f\xc5\x2b\x7e\
+\x49\xf1\x8a\x8f\x94\xe2\x15\xbf\xa4\x78\xc5\x47\x4a\xf1\x2b\xf1\
+\xd3\x05\x0e\xd7\xf1\x51\x5f\xdd\x51\xbc\xe2\x97\x14\xaf\xf8\x48\
+\x29\xde\x6b\xfc\x15\xdc\xfe\x5d\xfe\x04\x5d\xd7\xbd\x59\x6f\xc0\
+\xc5\x0d\x13\xf7\xb0\xde\x80\x9b\xbb\x45\xce\x61\xcd\x5f\x5c\xdd\
+\x34\x35\x49\xd3\xf4\x71\xfe\x02\xcc\xf3\xfc\xd9\x55\xfc\x6c\xfa\
+\x35\x77\x0a\x3b\x14\x91\xff\x20\x49\x3e\x01\xba\x26\x04\xe0\xd9\
+\xf1\x5c\x00\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x01\x8a\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
-\xa7\x93\x00\x00\x00\xeb\x49\x44\x41\x54\x78\x9c\xed\xd8\x31\x6e\
-\xc2\x50\x10\x45\xd1\x3b\xe9\x91\x10\x69\x53\x53\x86\x32\x4b\xc8\
-\x96\xb2\x8a\x78\x1f\x28\x3b\x80\x3a\x3d\x2d\xa4\x4d\x8b\x14\x67\
-\x01\x9f\x02\x17\xd6\xe7\xd3\xc1\x88\x84\x7b\xca\xb1\x8b\x37\xd6\
-\xb8\x79\x20\x49\x92\x24\xe9\x1e\x45\x6b\x58\x4a\x79\x02\x3a\xe0\
-\x15\x98\xa4\x26\xba\xbc\x5f\x60\x05\xbc\x45\xc4\xae\x7e\x78\xf2\
-\x01\x86\xe5\x37\xc0\xec\xfa\xd9\x52\xed\x81\xe7\x88\xf8\x1e\x0f\
-\x1f\x1a\x2f\x76\xfc\xbf\xe5\xe1\xb8\xd3\x7b\x3d\x6c\x5d\x40\xcf\
-\xdf\x3f\xfb\x73\x7e\x22\x62\x3a\x1e\xb4\x2e\xa0\x24\x85\xb9\x09\
-\xad\x0f\xb0\x4e\x4f\x91\x67\x55\x0f\x5a\xbf\xc0\x1c\xf8\x04\x1e\
-\x33\x12\x25\xda\x03\x2f\x11\xf1\x35\x1e\x9e\x5c\x40\x44\x6c\x81\
-\x05\xb0\x04\xfa\x9c\x6c\x57\xd5\x03\x1f\x34\x96\x97\x24\x49\xf7\
-\xcd\x3e\xa0\x1e\xd8\x07\xd8\x07\xd8\x07\xd8\x07\xa4\xa7\xc8\x63\
-\x1f\x60\x1f\x20\x49\x92\x34\xb0\x0f\xa8\x07\xf6\x01\xf6\x01\xf6\
-\x01\xf6\x01\xe9\x29\xf2\xd8\x07\xd8\x07\x48\x92\x24\x49\x12\x70\
-\x00\x67\x69\x63\x5e\x7b\xf6\xed\x1f\x00\x00\x00\x00\x49\x45\x4e\
-\x44\xae\x42\x60\x82\
+\xa7\x93\x00\x00\x01\x3f\x49\x44\x41\x54\x78\x9c\xed\x9b\x31\x2e\
+\x04\x61\x00\x46\x1f\x71\x03\x59\xdb\x08\x9d\x88\x4a\xe5\x04\x8e\
+\x80\x02\x67\x51\x39\x97\x44\xa1\x51\xb2\xae\x42\x62\x37\x9e\xc2\
+\x12\x24\x33\x5b\xd8\x7f\x7e\x3b\xf3\xbd\x72\x36\x99\x7c\xef\x4d\
+\x66\x8a\xd9\x5d\x08\x21\xac\x12\xea\x8e\xba\x59\x7b\x47\xe7\xa8\
+\x63\xf5\xd6\x0f\x5e\xd5\xab\xda\x9b\x3a\x63\x2e\xff\xe4\x4f\xde\
+\xd4\xc3\xbf\x9e\x7b\x7d\x19\x03\x4b\xa2\x8e\x81\x1b\xe0\xe0\xd7\
+\x47\x6b\xc0\x7e\xf7\x8b\x3a\xa4\xe1\xca\x7f\xf2\xac\x6e\xd7\xde\
+\x58\x8c\xb9\xfc\xa4\x41\x7e\xaa\x9e\xd4\xde\x58\x0c\x75\x4b\x7d\
+\x6c\x90\x9f\xa9\xe7\xb5\x37\x16\x23\xf2\x91\x8f\x7c\xe4\x23\x1f\
+\xf9\xc8\x47\xbe\x97\x44\x3e\xf2\x91\x8f\x7c\xe4\x23\x1f\xf9\xc8\
+\xf7\x92\xc8\x0f\x58\x7e\x43\xbd\x6f\x90\x9f\xaa\x67\xb5\x37\x16\
+\x45\x3d\x5e\xe5\x2b\xbf\x8c\x6f\x86\x6c\x39\x3e\x5b\xc2\xf9\xff\
+\x37\x83\xbf\x05\x00\xd4\x91\xfa\xd0\x72\x2b\x5c\xd4\xde\x58\x9c\
+\x44\x20\x11\x80\x44\x00\x12\x01\x48\x04\x20\x11\x80\x44\x00\x12\
+\x01\x48\x04\x20\x11\x80\x44\x00\xbe\x22\xb4\xbd\x40\x19\x44\x84\
+\x45\x6f\x91\x12\x21\x11\x12\x21\x11\x12\x21\x11\x12\x61\xb8\x11\
+\x16\xfd\x5c\xfe\xb4\xf6\xc6\xe2\xd8\xfe\x87\x89\x17\x75\xb7\xf6\
+\xc6\xe2\x2c\x88\x70\x59\x7b\x5f\x27\xb4\x44\x38\xaa\xbd\xad\x33\
+\xe6\x11\xee\xbe\x3d\x08\xaf\x6b\x6f\xaa\x82\xba\xa7\x8e\x6a\xef\
+\x08\xa1\x27\xbc\x03\x85\x53\x0e\x31\xd2\xc1\xa0\x73\x00\x00\x00\
+\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
\x00\x00\x03\x30\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -233,33 +238,96 @@ qt_resource_data = b"\
\xdc\x33\x33\xd0\x9f\xa6\x62\x33\x6a\xc0\x69\x86\xe3\x4f\x53\xbb\
\x66\xd6\xf0\xac\x23\x10\x08\x04\xaa\xc7\x5f\x97\x7c\xed\x09\x30\
\x07\x1e\xe5\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\x8a\
+\x00\x00\x01\x9e\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
-\xa7\x93\x00\x00\x01\x3f\x49\x44\x41\x54\x78\x9c\xed\x9b\x31\x2e\
-\x04\x61\x00\x46\x1f\x71\x03\x59\xdb\x08\x9d\x88\x4a\xe5\x04\x8e\
-\x80\x02\x67\x51\x39\x97\x44\xa1\x51\xb2\xae\x42\x62\x37\x9e\xc2\
-\x12\x24\x33\x5b\xd8\x7f\x7e\x3b\xf3\xbd\x72\x36\x99\x7c\xef\x4d\
-\x66\x8a\xd9\x5d\x08\x21\xac\x12\xea\x8e\xba\x59\x7b\x47\xe7\xa8\
-\x63\xf5\xd6\x0f\x5e\xd5\xab\xda\x9b\x3a\x63\x2e\xff\xe4\x4f\xde\
-\xd4\xc3\xbf\x9e\x7b\x7d\x19\x03\x4b\xa2\x8e\x81\x1b\xe0\xe0\xd7\
-\x47\x6b\xc0\x7e\xf7\x8b\x3a\xa4\xe1\xca\x7f\xf2\xac\x6e\xd7\xde\
-\x58\x8c\xb9\xfc\xa4\x41\x7e\xaa\x9e\xd4\xde\x58\x0c\x75\x4b\x7d\
-\x6c\x90\x9f\xa9\xe7\xb5\x37\x16\x23\xf2\x91\x8f\x7c\xe4\x23\x1f\
-\xf9\xc8\x47\xbe\x97\x44\x3e\xf2\x91\x8f\x7c\xe4\x23\x1f\xf9\xc8\
-\xf7\x92\xc8\x0f\x58\x7e\x43\xbd\x6f\x90\x9f\xaa\x67\xb5\x37\x16\
-\x45\x3d\x5e\xe5\x2b\xbf\x8c\x6f\x86\x6c\x39\x3e\x5b\xc2\xf9\xff\
-\x37\x83\xbf\x05\x00\xd4\x91\xfa\xd0\x72\x2b\x5c\xd4\xde\x58\x9c\
-\x44\x20\x11\x80\x44\x00\x12\x01\x48\x04\x20\x11\x80\x44\x00\x12\
-\x01\x48\x04\x20\x11\x80\x44\x00\xbe\x22\xb4\xbd\x40\x19\x44\x84\
-\x45\x6f\x91\x12\x21\x11\x12\x21\x11\x12\x21\x11\x12\x61\xb8\x11\
-\x16\xfd\x5c\xfe\xb4\xf6\xc6\xe2\xd8\xfe\x87\x89\x17\x75\xb7\xf6\
-\xc6\xe2\x2c\x88\x70\x59\x7b\x5f\x27\xb4\x44\x38\xaa\xbd\xad\x33\
-\xe6\x11\xee\xbe\x3d\x08\xaf\x6b\x6f\xaa\x82\xba\xa7\x8e\x6a\xef\
-\x08\xa1\x27\xbc\x03\x85\x53\x0e\x31\xd2\xc1\xa0\x73\x00\x00\x00\
-\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\xa7\x93\x00\x00\x01\x53\x49\x44\x41\x54\x78\x9c\xed\x9a\xbb\x4a\
+\xc4\x40\x18\x46\xbf\x11\xd2\xe8\xa3\xe8\x03\xb8\x8d\x9d\x58\xd8\
+\xfb\x98\xee\x6b\xf8\x18\x96\xb6\x11\x11\xc1\xe2\xd8\x24\xe0\x42\
+\x36\x9b\x4c\xee\x7f\xbe\xd3\x26\x0c\x73\x0e\x73\x29\x12\xc9\x18\
+\x63\xcc\x36\x01\x0e\xc0\x61\xe9\x79\x2c\x42\x25\x5f\x02\x5f\xc0\
+\xc3\xd2\xf3\x99\x95\x7f\xf2\x35\xfb\x89\xd0\x20\xbf\x9f\x08\x2d\
+\xf2\xf1\x23\x74\x90\x8f\x1b\x01\xb8\xeb\x28\x5f\x53\x12\xe9\x76\
+\x00\x0a\xe0\xb5\x47\x80\x78\x2b\xc1\x11\xb4\xa3\x08\xc0\x75\xcb\
+\xb3\x02\x38\xf6\x8c\x70\xf6\x4c\xb8\x9a\x4e\x23\x8f\x6a\xa2\xef\
+\xc0\x73\xd3\xf3\x94\xd2\xaf\xa4\x17\x49\xc7\xbe\x43\x0f\x9d\xdb\
+\xe4\x70\x7a\xd5\xfd\x9c\x8b\x50\xbd\xdb\x75\x3b\x94\xc0\xfd\x9c\
+\x1e\x59\xd0\x7c\xcf\x0f\x8d\xb0\x69\xf9\xa1\x11\x42\xc8\xe7\x46\
+\x08\x25\xdf\x37\x42\x48\xf9\x9a\x6f\xe0\xb1\x65\xcc\x02\xb8\x9d\
+\xd3\x23\x8b\x4c\xf9\x4e\x2b\x61\xf5\x0c\x94\xdf\x76\x84\x91\xe4\
+\xb7\x19\x61\x64\xf9\x9a\x0f\xe0\x66\x69\xb7\x8b\x4c\x24\x1f\xfa\
+\xb4\xb7\xbc\xe5\x2d\x6f\x79\xcb\x5b\xde\xf2\x96\x5f\x37\x96\xb7\
+\xbc\xe5\x2d\x6f\x79\xcb\x5b\x3e\xae\xbc\x24\x4d\x24\xbf\x9a\xbf\
+\x37\xd2\xa5\x17\x80\x31\xbf\xaa\x7e\x4a\x7a\x4a\x29\xbd\x8d\x38\
+\xe6\x20\xe6\xfc\x3c\xbe\x3a\x79\x69\xbe\x00\xab\x94\xef\xc4\x48\
+\x7b\x7e\x1b\x07\x5e\x13\xbb\x96\x97\x06\x05\xd8\xbe\xbc\x94\x1d\
+\x20\x86\xbc\x94\x15\x20\x8e\xbc\xd4\x3b\x40\x2c\x79\xa9\x57\x80\
+\x78\xf2\xc6\x18\x63\x8c\x09\xcd\x1f\x1f\xf1\xd2\x58\xc2\x3d\x01\
+\xf9\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x03\xb3\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
+\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
+\xa7\x93\x00\x00\x03\x68\x49\x44\x41\x54\x78\x9c\xed\x9a\x4d\x8b\
+\x1d\x45\x14\x86\x9f\xe3\x90\x0f\x45\x51\x08\x19\x75\x32\x2e\x04\
+\x23\x83\xa8\x20\x04\x35\x22\x83\x48\x96\x0a\x41\x50\x7f\x87\xba\
+\x10\x5d\x65\x21\xe2\x4e\xf3\x03\x44\xa2\x1b\xc1\x4d\x04\x45\x31\
+\x09\x28\xf1\x6b\xa1\x9b\x18\xa3\xc4\x85\xa2\x99\x41\xf1\x83\x44\
+\xd1\x49\x32\x66\x1e\x17\x7d\x2f\xe8\x38\xc9\xed\xea\x9c\xee\x9e\
+\x90\x7e\xe0\x6e\x2e\xb7\xde\x3a\xef\xa1\x6e\xd7\xa9\x53\x0d\x03\
+\x03\x03\x03\x97\x31\xd1\xf5\x84\xea\x76\x60\x17\x30\x03\xcc\x8e\
+\xbe\x3e\x01\x2c\x02\x07\x23\xe2\x9b\xae\x63\x6a\x1d\x75\x93\xfa\
+\xa4\xfa\xa5\x93\x39\xaa\x3e\xa1\x6e\xea\x3b\xee\x14\xd4\x47\xd4\
+\xef\x6a\x18\x5f\xcd\xb7\xea\xee\xbe\xe3\x6f\x8c\x1a\xea\x1e\x75\
+\xa5\x81\xf9\x31\x2b\xea\x0b\xea\x15\x7d\xfb\x29\x46\x7d\xe5\x22\
+\x8c\xaf\xe6\xe5\xbe\xfd\x14\xa1\x3e\x9d\x68\x7e\xcc\x53\x7d\xfb\
+\xaa\x85\x7a\xb7\x7a\xae\x85\x04\xfc\xad\xee\xe8\xdb\xdf\x44\xd4\
+\x43\x2d\x98\x1f\xf3\x7e\xdf\xfe\x2e\x88\xba\xab\x45\xf3\x63\x1e\
+\xcc\x8c\x39\xfb\xe9\xfa\x78\xb2\xde\x5a\x3c\x96\x29\x96\x56\x09\
+\x5a\x6d\x55\x0b\xc0\x0d\x59\x9a\xe7\xe1\x27\x60\x26\x22\x56\x32\
+\xc4\x32\x57\xc0\x4d\xb4\x6f\x1e\xe0\x7a\x60\x5b\x96\x58\x66\x02\
+\x6e\x4c\xd4\x9a\xc4\x4c\x96\x50\x66\x02\xa6\x13\xb5\x3a\x9b\x2b\
+\x33\x01\xbf\x27\x6a\x4d\xe2\x54\x96\x50\x66\x02\x16\x13\xb5\x3a\
+\x9b\x2b\x33\x01\x3f\x00\xa7\x13\xf5\xce\xc7\x12\x55\xff\x20\x85\
+\xb4\x04\x44\xc4\x12\x70\x30\x4b\xef\x02\x1c\x88\x88\xb4\x44\x67\
+\x17\x42\xfb\x93\xf5\xd6\xe2\xcd\x4c\xb1\xd4\x96\x98\xba\x19\x38\
+\x4e\x55\x13\xb4\xc1\x02\x70\x6b\x44\xfc\x95\x25\x98\xba\x02\x46\
+\x4b\x73\x4f\xa6\xe6\x2a\x9e\xcd\x34\xdf\x0a\xea\x94\xfa\x4e\x0b\
+\x87\xa0\xb7\xbd\x54\x3a\x43\xea\x35\x56\xcd\xcd\x2c\xbe\x52\xaf\
+\xeb\xdb\x57\x11\xea\xac\xfa\x79\x82\xf9\xcf\xd4\xb4\xda\xbf\x53\
+\xd4\xab\xd4\xd7\x1a\x1a\x5f\x51\xf7\xa9\x57\xf6\xed\xe3\xa2\x51\
+\xef\x53\x3f\x2c\x30\x7f\x58\xdd\xd9\x45\x6c\x9d\xde\x0c\xa9\x73\
+\xc0\x6e\xaa\x9b\xa1\x6d\xfc\xf7\x66\xe8\x04\x70\x08\xd8\x1f\x11\
+\x5f\x77\x19\xd7\xc0\xc0\xc0\xc0\x65\x4b\xe3\x5d\x40\xbd\x1f\x78\
+\x88\xea\xe0\xb3\x21\x2d\xa2\x32\x96\x81\xef\x81\xb7\x22\xe2\xa3\
+\x4e\x66\x54\xa7\xd5\xf7\x1a\x16\x37\x6d\xf2\xae\xba\xb5\xd4\x4f\
+\xd1\x0a\xb0\xaa\xc7\x3f\x01\xe6\x4a\x27\xea\x88\x63\xc0\xce\x88\
+\xa8\xdd\x9f\x2c\x3d\x5d\x3d\xcf\xfa\x35\x0f\x70\x1b\xf0\x5c\xc9\
+\x80\xda\x2b\x40\xbd\x1a\xf8\x19\xd8\x5c\x18\x54\xd7\x9c\x06\xa6\
+\x23\xe2\x8f\x3a\x3f\x2e\x59\x01\x3b\x58\xff\xe6\xa1\x8a\xf1\xae\
+\xba\x3f\x2e\x49\xc0\x96\xf2\x58\x7a\xa3\xf6\xc3\xb0\x24\x01\x97\
+\x46\x37\xa6\xa2\x76\xac\x25\xa6\xfe\x6c\x10\x48\x5f\xd4\xfa\xff\
+\x43\x59\x02\xd2\x2e\x23\x3a\xa0\x76\xac\x25\xbb\xc0\x14\xf0\x0b\
+\xb0\xde\x7b\x73\x27\x81\x2d\x75\xdf\x1f\xa8\xbd\x02\x22\xe2\x1c\
+\xf0\x46\xd3\xa8\x3a\xe4\xf5\x92\x97\x27\x4a\x2b\xc1\x39\xe0\x08\
+\xfd\xd5\xfe\x93\x58\x06\x6e\x8f\x88\xe3\x75\x07\x14\x3d\xd9\x47\
+\xad\xaa\xbd\xa5\x51\x75\xc8\x8b\x25\xe6\xa1\xc1\x69\x50\xdd\x08\
+\x7c\x00\xdc\x5b\x3a\xb6\x65\x3e\x06\x1e\x88\x88\xe5\x92\x41\xc5\
+\x7b\x7b\x44\x9c\xa5\x3a\x06\x7f\x51\x3a\xb6\x45\x8e\x00\x0f\x97\
+\x9a\x87\x86\xc5\x4d\x44\xfc\x0a\xcc\xd3\xcd\x75\xf8\x24\x0e\x00\
+\xf3\x11\xf1\x5b\xe7\x33\x5b\xdd\x03\x3e\xa3\x2e\xf5\x70\xfe\x5f\
+\x1a\xcd\x3d\xd5\xb9\xf1\x35\x12\x31\xab\xee\x55\xcf\x74\x60\xfc\
+\xac\xfa\xaa\x7a\x73\xdf\xbe\xff\x87\xba\x7d\x94\x88\xc5\x16\x8c\
+\x2f\xa8\x2f\xa9\xb7\x64\xc6\xdc\xca\xcd\x90\xd5\x35\xf6\x3c\xf0\
+\x28\x70\x0f\x70\x07\xb0\xb1\x50\xe6\x0c\x70\x14\xf8\x94\xaa\x00\
+\x3b\x9c\xf5\x76\xe8\xbf\xe9\xe4\x6a\x4c\xdd\x40\xd5\xad\xb9\x93\
+\xea\x4d\xcf\x6b\xa9\x4a\xea\x71\x59\x7d\x72\xf4\x39\x05\xfc\x48\
+\xb5\xc3\x1c\x6b\xf2\x54\x1f\x18\x18\x18\x18\x28\xe0\x1f\x07\x8c\
+\x76\x28\x0c\x32\x8d\xaa\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\
+\x60\x82\
\x00\x00\x01\xf4\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -294,96 +362,6 @@ qt_resource_data = b"\
\x2f\x33\xeb\x63\x11\x69\xf2\x9d\x4e\xa7\xd3\xf9\x07\x7c\x03\xe6\
\x36\x04\x96\x36\x44\xc8\x08\x00\x00\x00\x00\x49\x45\x4e\x44\xae\
\x42\x60\x82\
-\x00\x00\x01\xb0\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
-\x00\x00\x00\x01\x73\x52\x47\x42\x00\xae\xce\x1c\xe9\x00\x00\x00\
-\x04\x67\x41\x4d\x41\x00\x00\xb1\x8f\x0b\xfc\x61\x05\x00\x00\x00\
-\x09\x70\x48\x59\x73\x00\x00\x0e\xc3\x00\x00\x0e\xc3\x01\xc7\x6f\
-\xa8\x64\x00\x00\x01\x45\x49\x44\x41\x54\x78\x5e\xed\xdb\x3d\x4a\
-\xc4\x50\x18\x46\xe1\x20\xee\x40\xd4\x46\xb4\xb3\xb6\x72\x05\x2e\
-\x41\x45\xd4\xb5\xd8\xc4\x85\x45\x88\x45\xec\xf2\xe3\x52\x12\x49\
-\x32\xa3\x9e\xc0\x17\xe1\x12\x62\x21\x16\x7a\xbf\xf7\x69\x86\xcc\
-\xa4\x39\x2f\x33\x03\x13\x26\x89\x88\xfc\x8a\x3d\x1c\xc3\x0e\x7d\
-\x79\x40\xdf\xf7\xc3\x07\xb2\x2c\x7b\x3a\x84\xbd\x14\xbf\x33\x6c\
-\xb7\xdb\xf7\x29\x7e\xd6\x34\xcd\xab\x9b\x11\x6e\x60\xdd\x01\x37\
-\x23\x1c\xa1\x6d\xdb\xce\xba\x03\x6e\x46\xb8\xc4\x30\x0c\xa3\x75\
-\x07\xea\xba\x6e\x5c\x8c\x70\x8b\x71\x1c\x37\xd6\x1d\xa8\xaa\xaa\
-\x3e\x80\x9d\x1a\x2f\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\
-\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\
-\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x00\x8d\x80\x6b\xac\x5d\
-\x6d\x2e\x8a\xe2\x65\x17\x76\x6a\xbc\xbe\x7b\x27\x5c\xc0\x4e\xfb\
-\xb1\x1d\x7b\xfc\xb3\x36\x98\x62\xed\x30\xb0\xf6\x7c\x34\x5c\x7f\
-\x04\xee\xb0\xf6\xd6\x2f\xcb\xb2\xda\x87\x9d\x1a\x1f\xc5\x2b\x7e\
-\x49\xf1\x8a\x8f\x94\xe2\x15\xbf\xa4\x78\xc5\x47\x4a\xf1\x2b\xf1\
-\xd3\x05\x0e\xd7\xf1\x51\x5f\xdd\x51\xbc\xe2\x97\x14\xaf\xf8\x48\
-\x29\xde\x6b\xfc\x15\xdc\xfe\x5d\xfe\x04\x5d\xd7\xbd\x59\x6f\xc0\
-\xc5\x0d\x13\xf7\xb0\xde\x80\x9b\xbb\x45\xce\x61\xcd\x5f\x5c\xdd\
-\x34\x35\x49\xd3\xf4\x71\xfe\x02\xcc\xf3\xfc\xd9\x55\xfc\x6c\xfa\
-\x35\x77\x0a\x3b\x14\x91\xff\x20\x49\x3e\x01\xba\x26\x04\xe0\xd9\
-\xf1\x5c\x00\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\x9e\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
-\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
-\xa7\x93\x00\x00\x01\x53\x49\x44\x41\x54\x78\x9c\xed\x9a\xbb\x4a\
-\xc4\x40\x18\x46\xbf\x11\xd2\xe8\xa3\xe8\x03\xb8\x8d\x9d\x58\xd8\
-\xfb\x98\xee\x6b\xf8\x18\x96\xb6\x11\x11\xc1\xe2\xd8\x24\xe0\x42\
-\x36\x9b\x4c\xee\x7f\xbe\xd3\x26\x0c\x73\x0e\x73\x29\x12\xc9\x18\
-\x63\xcc\x36\x01\x0e\xc0\x61\xe9\x79\x2c\x42\x25\x5f\x02\x5f\xc0\
-\xc3\xd2\xf3\x99\x95\x7f\xf2\x35\xfb\x89\xd0\x20\xbf\x9f\x08\x2d\
-\xf2\xf1\x23\x74\x90\x8f\x1b\x01\xb8\xeb\x28\x5f\x53\x12\xe9\x76\
-\x00\x0a\xe0\xb5\x47\x80\x78\x2b\xc1\x11\xb4\xa3\x08\xc0\x75\xcb\
-\xb3\x02\x38\xf6\x8c\x70\xf6\x4c\xb8\x9a\x4e\x23\x8f\x6a\xa2\xef\
-\xc0\x73\xd3\xf3\x94\xd2\xaf\xa4\x17\x49\xc7\xbe\x43\x0f\x9d\xdb\
-\xe4\x70\x7a\xd5\xfd\x9c\x8b\x50\xbd\xdb\x75\x3b\x94\xc0\xfd\x9c\
-\x1e\x59\xd0\x7c\xcf\x0f\x8d\xb0\x69\xf9\xa1\x11\x42\xc8\xe7\x46\
-\x08\x25\xdf\x37\x42\x48\xf9\x9a\x6f\xe0\xb1\x65\xcc\x02\xb8\x9d\
-\xd3\x23\x8b\x4c\xf9\x4e\x2b\x61\xf5\x0c\x94\xdf\x76\x84\x91\xe4\
-\xb7\x19\x61\x64\xf9\x9a\x0f\xe0\x66\x69\xb7\x8b\x4c\x24\x1f\xfa\
-\xb4\xb7\xbc\xe5\x2d\x6f\x79\xcb\x5b\xde\xf2\x96\x5f\x37\x96\xb7\
-\xbc\xe5\x2d\x6f\x79\xcb\x5b\x3e\xae\xbc\x24\x4d\x24\xbf\x9a\xbf\
-\x37\xd2\xa5\x17\x80\x31\xbf\xaa\x7e\x4a\x7a\x4a\x29\xbd\x8d\x38\
-\xe6\x20\xe6\xfc\x3c\xbe\x3a\x79\x69\xbe\x00\xab\x94\xef\xc4\x48\
-\x7b\x7e\x1b\x07\x5e\x13\xbb\x96\x97\x06\x05\xd8\xbe\xbc\x94\x1d\
-\x20\x86\xbc\x94\x15\x20\x8e\xbc\xd4\x3b\x40\x2c\x79\xa9\x57\x80\
-\x78\xf2\xc6\x18\x63\x8c\x09\xcd\x1f\x1f\xf1\xd2\x58\xc2\x3d\x01\
-\xf9\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x01\xe2\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
-\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
-\xa7\x93\x00\x00\x01\x97\x49\x44\x41\x54\x78\x9c\xed\xdb\xbd\x2e\
-\x44\x51\x14\xc5\xf1\xff\x46\x22\x13\x24\x48\xd0\x9b\xa8\x25\xa3\
-\xd5\x50\x6b\x55\x1e\xc1\x83\x28\x28\x44\xad\x54\x49\x3c\x82\x78\
-\x00\x11\x51\x51\xf0\x02\x34\x08\xe3\x23\x26\x4b\xa1\xd1\xb9\xfb\
-\xce\xcc\xd9\x86\xfd\xab\xcf\xbe\x67\xdd\x95\x3b\x33\xb7\x38\x03\
-\x29\xa5\x94\xfe\x2f\x2b\xb5\x91\xa4\x16\xb0\x01\x8c\xff\xb0\xf4\
-\x09\x38\x30\xb3\xf3\xfe\xa7\x2a\x44\x52\x53\x52\x5b\xd5\xb5\x25\
-\x35\x4b\x64\x1b\xf1\x2c\x96\x34\x07\xac\x03\x63\xce\x7d\x96\x80\
-\x86\x63\x7d\x03\xd8\x92\x74\xe6\xdc\xe7\x19\x38\x34\xb3\xdb\xaa\
-\x03\x95\x3f\x02\x92\xa6\x81\x53\x60\xde\x19\xaa\xb4\x1b\xa0\x65\
-\x66\x8f\x55\x16\x0f\x39\x2e\xbc\xca\xef\xbf\x79\x80\x26\xb0\x5c\
-\x75\xb1\xa7\x80\x4b\xe0\xc3\x1d\xa7\xbc\x0e\x70\x55\x75\xb1\xeb\
-\x57\x40\xd2\x1a\xb0\x09\xcc\x38\x43\x95\x72\x07\xec\x9b\xd9\x51\
-\x74\x90\x94\xd2\x60\x70\xbf\x0a\x4b\x5a\x04\x4e\xfa\x90\xa5\x17\
-\x56\xcc\xec\xc2\x33\xe0\x7a\x13\xfc\x36\x33\x55\x63\xae\x04\xf7\
-\xfd\x78\xde\x03\xfe\xa4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\
-\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\
-\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\
-\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\
-\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\xb4\x2c\x20\x3a\x40\
-\xb4\x2c\xa0\xc6\xcc\x6b\xcf\x53\xf4\xce\x8b\x77\xa0\xce\x11\x99\
-\x51\xbe\xce\xe3\x4d\x78\x67\xfb\xec\x01\x98\x35\xb3\x77\xcf\x90\
-\xfb\x09\x30\xb3\x37\x60\xc7\x3b\x57\xc0\xb6\xf7\xe6\x6b\x93\x34\
-\x2c\x69\x4f\x52\xc7\x71\x04\xbe\x5f\x3a\x92\x76\x25\xd5\xfa\x3e\
-\xeb\xea\x0f\x13\x92\x16\xf8\x3a\x44\x3d\xd9\xcd\x75\xba\x70\x0f\
-\x1c\x9b\xd9\x75\xd0\xfe\x29\xa5\x94\x52\x1a\x60\x9f\xc9\x63\x02\
-\x0c\xb1\xc5\x4e\x5f\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\
-\x82\
\x00\x00\x78\x22\
\x00\
\x04\x20\x3e\x78\x9c\xec\xbd\x07\x54\x54\xcb\xd7\xe0\xfb\xff\x7f\
@@ -2309,6 +2287,28 @@ qt_resource_data = b"\
\xfa\x05\xe6\x7a\xbb\xd4\x27\x98\xe3\xaf\x33\x89\x1e\xfa\xe1\x25\
\x0a\x9a\xbf\x98\x7d\xc6\x39\x3f\xdb\xea\xd5\xff\x02\xf1\x29\xae\
\x82\
+\x00\x00\x01\x36\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x40\x00\x00\x00\x40\x08\x06\x00\x00\x00\xaa\x69\x71\xde\
+\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
+\xa7\x93\x00\x00\x00\xeb\x49\x44\x41\x54\x78\x9c\xed\xd8\x31\x6e\
+\xc2\x50\x10\x45\xd1\x3b\xe9\x91\x10\x69\x53\x53\x86\x32\x4b\xc8\
+\x96\xb2\x8a\x78\x1f\x28\x3b\x80\x3a\x3d\x2d\xa4\x4d\x8b\x14\x67\
+\x01\x9f\x02\x17\xd6\xe7\xd3\xc1\x88\x84\x7b\xca\xb1\x8b\x37\xd6\
+\xb8\x79\x20\x49\x92\x24\xe9\x1e\x45\x6b\x58\x4a\x79\x02\x3a\xe0\
+\x15\x98\xa4\x26\xba\xbc\x5f\x60\x05\xbc\x45\xc4\xae\x7e\x78\xf2\
+\x01\x86\xe5\x37\xc0\xec\xfa\xd9\x52\xed\x81\xe7\x88\xf8\x1e\x0f\
+\x1f\x1a\x2f\x76\xfc\xbf\xe5\xe1\xb8\xd3\x7b\x3d\x6c\x5d\x40\xcf\
+\xdf\x3f\xfb\x73\x7e\x22\x62\x3a\x1e\xb4\x2e\xa0\x24\x85\xb9\x09\
+\xad\x0f\xb0\x4e\x4f\x91\x67\x55\x0f\x5a\xbf\xc0\x1c\xf8\x04\x1e\
+\x33\x12\x25\xda\x03\x2f\x11\xf1\x35\x1e\x9e\x5c\x40\x44\x6c\x81\
+\x05\xb0\x04\xfa\x9c\x6c\x57\xd5\x03\x1f\x34\x96\x97\x24\x49\xf7\
+\xcd\x3e\xa0\x1e\xd8\x07\xd8\x07\xd8\x07\xd8\x07\xa4\xa7\xc8\x63\
+\x1f\x60\x1f\x20\x49\x92\x34\xb0\x0f\xa8\x07\xf6\x01\xf6\x01\xf6\
+\x01\xf6\x01\xe9\x29\xf2\xd8\x07\xd8\x07\x48\x92\x24\x49\x12\x70\
+\x00\x67\x69\x63\x5e\x7b\xf6\xed\x1f\x00\x00\x00\x00\x49\x45\x4e\
+\x44\xae\x42\x60\x82\
"
qt_resource_name = b"\
@@ -2316,62 +2316,62 @@ qt_resource_name = b"\
\x00\x00\x70\x37\
\x00\x69\
\x00\x6d\x00\x67\
-\x00\x0b\
-\x0c\x98\x63\x87\
-\x00\x61\
-\x00\x63\x00\x63\x00\x6f\x00\x75\x00\x6e\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x0a\
+\x0c\xad\x0f\x07\
+\x00\x64\
+\x00\x65\x00\x6c\x00\x65\x00\x74\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x0c\
\x0b\xdf\x21\x47\
\x00\x73\
\x00\x65\x00\x74\x00\x74\x00\x69\x00\x6e\x00\x67\x00\x73\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x08\
-\x0c\x58\x59\x27\
-\x00\x6d\
-\x00\x65\x00\x6e\x00\x75\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x0c\xf7\x59\xc7\
+\x00\x6e\
+\x00\x65\x00\x78\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x08\
+\x07\x9e\x5a\x47\
+\x00\x62\
+\x00\x61\x00\x63\x00\x6b\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x08\
\x03\xc6\x59\xa7\
\x00\x70\
\x00\x6c\x00\x75\x00\x73\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x08\
-\x07\x9e\x5a\x47\
-\x00\x62\
-\x00\x61\x00\x63\x00\x6b\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x0b\x07\x5a\x27\
+\x00\x65\
+\x00\x64\x00\x69\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x0b\
+\x0c\x98\x63\x87\
+\x00\x61\
+\x00\x63\x00\x63\x00\x6f\x00\x75\x00\x6e\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x0a\
\x09\xb2\x67\xc7\
\x00\x63\
\x00\x61\x00\x6e\x00\x63\x00\x65\x00\x6c\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x08\
-\x0c\xf7\x59\xc7\
-\x00\x6e\
-\x00\x65\x00\x78\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x08\
-\x0b\x07\x5a\x27\
-\x00\x65\
-\x00\x64\x00\x69\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0a\
-\x0c\xad\x0f\x07\
-\x00\x64\
-\x00\x65\x00\x6c\x00\x65\x00\x74\x00\x65\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x08\
\x0a\x61\x42\x7f\
\x00\x69\
\x00\x63\x00\x6f\x00\x6e\x00\x2e\x00\x69\x00\x63\x00\x6f\
+\x00\x08\
+\x0c\x58\x59\x27\
+\x00\x6d\
+\x00\x65\x00\x6e\x00\x75\x00\x2e\x00\x70\x00\x6e\x00\x67\
"
qt_resource_struct_v1 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x03\
-\x00\x00\x00\x5c\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x43\
-\x00\x00\x00\x72\x00\x00\x00\x00\x00\x01\x00\x00\x0d\x77\
-\x00\x00\x00\x88\x00\x00\x00\x00\x00\x01\x00\x00\x0f\x05\
-\x00\x00\x00\xe8\x00\x01\x00\x00\x00\x01\x00\x00\x16\x39\
-\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\x12\xb1\
-\x00\x00\x00\x28\x00\x00\x00\x00\x00\x01\x00\x00\x03\xb7\
-\x00\x00\x00\x46\x00\x00\x00\x00\x00\x01\x00\x00\x09\x09\
+\x00\x00\x00\x70\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x7a\
+\x00\x00\x00\x5a\x00\x00\x00\x00\x00\x01\x00\x00\x08\xec\
+\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\x13\x07\
+\x00\x00\x00\xd2\x00\x01\x00\x00\x00\x01\x00\x00\x14\xff\
+\x00\x00\x00\x86\x00\x00\x00\x00\x00\x01\x00\x00\x0d\xae\
+\x00\x00\x00\x26\x00\x00\x00\x00\x00\x01\x00\x00\x01\xe6\
+\x00\x00\x00\xe8\x00\x00\x00\x00\x00\x01\x00\x00\x8d\x25\
+\x00\x00\x00\x9c\x00\x00\x00\x00\x00\x01\x00\x00\x0f\x50\
\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
-\x00\x00\x00\xce\x00\x00\x00\x00\x00\x01\x00\x00\x14\x53\
-\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x01\x00\x00\x10\xfd\
+\x00\x00\x00\x44\x00\x00\x00\x00\x00\x01\x00\x00\x07\x38\
"
qt_resource_struct_v2 = b"\
@@ -2381,25 +2381,25 @@ qt_resource_struct_v2 = b"\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x03\
\x00\x00\x00\x00\x00\x00\x00\x00\
-\x00\x00\x00\x5c\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x43\
+\x00\x00\x00\x70\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x7a\
\x00\x00\x01\x82\x36\xc2\x4c\xa3\
-\x00\x00\x00\x72\x00\x00\x00\x00\x00\x01\x00\x00\x0d\x77\
+\x00\x00\x00\x5a\x00\x00\x00\x00\x00\x01\x00\x00\x08\xec\
\x00\x00\x01\x82\x5f\x53\x50\xd3\
-\x00\x00\x00\x88\x00\x00\x00\x00\x00\x01\x00\x00\x0f\x05\
+\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\x13\x07\
\x00\x00\x01\x82\x5f\x56\xe8\x76\
-\x00\x00\x00\xe8\x00\x01\x00\x00\x00\x01\x00\x00\x16\x39\
+\x00\x00\x00\xd2\x00\x01\x00\x00\x00\x01\x00\x00\x14\xff\
\x00\x00\x01\x7b\x68\xc3\x67\xb7\
-\x00\x00\x00\xb8\x00\x00\x00\x00\x00\x01\x00\x00\x12\xb1\
+\x00\x00\x00\x86\x00\x00\x00\x00\x00\x01\x00\x00\x0d\xae\
\x00\x00\x01\x82\x73\xf5\xa1\x33\
-\x00\x00\x00\x28\x00\x00\x00\x00\x00\x01\x00\x00\x03\xb7\
+\x00\x00\x00\x26\x00\x00\x00\x00\x00\x01\x00\x00\x01\xe6\
\x00\x00\x01\x81\x68\xf5\xcd\x75\
-\x00\x00\x00\x46\x00\x00\x00\x00\x00\x01\x00\x00\x09\x09\
+\x00\x00\x00\xe8\x00\x00\x00\x00\x00\x01\x00\x00\x8d\x25\
\x00\x00\x01\x81\x68\xf5\xcd\x75\
-\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
+\x00\x00\x00\x9c\x00\x00\x00\x00\x00\x01\x00\x00\x0f\x50\
\x00\x00\x01\x82\x3f\x74\xb0\xd2\
-\x00\x00\x00\xce\x00\x00\x00\x00\x00\x01\x00\x00\x14\x53\
+\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
\x00\x00\x01\x82\x79\xb2\x70\x17\
-\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x01\x00\x00\x10\xfd\
+\x00\x00\x00\x44\x00\x00\x00\x00\x00\x01\x00\x00\x07\x38\
\x00\x00\x01\x82\x5f\x5d\x42\x4b\
"
diff --git a/gui/modules/handlers/register.py b/gui/modules/handlers/register.py
index a4a5f67..0854809 100644
--- a/gui/modules/handlers/register.py
+++ b/gui/modules/handlers/register.py
@@ -5,6 +5,7 @@ from gui.modules.adding_item import on_add_click
from gui.modules.filters import menu
from gui.modules.core import items_list
from gui.modules import account
+from gui.modules import settings
def register_handlers(ui: Ui_MainWindow):
@@ -33,3 +34,4 @@ def register_handlers(ui: Ui_MainWindow):
ui.own_button.clicked.connect(lambda: account.owning.on_change_owning_clicked(ui))
on_add_click.register_add_handlers(ui)
+ settings.register_handlers(ui)
diff --git a/gui/modules/settings/__init__.py b/gui/modules/settings/__init__.py
new file mode 100644
index 0000000..1f9d8e0
--- /dev/null
+++ b/gui/modules/settings/__init__.py
@@ -0,0 +1,2 @@
+from .on_settings_open import *
+from .handlers import *
\ No newline at end of file
diff --git a/gui/modules/settings/handlers.py b/gui/modules/settings/handlers.py
new file mode 100644
index 0000000..834418c
--- /dev/null
+++ b/gui/modules/settings/handlers.py
@@ -0,0 +1,6 @@
+from . import *
+
+
+def register_handlers(ui: Ui_MainWindow):
+ ui.open_settings_button.clicked.connect(lambda: on_settings_button_click(ui))
+ ui.cancel_settings_button.clicked.connect(lambda: ui.content.setCurrentWidget(ui.main_page))
diff --git a/gui/modules/settings/on_settings_open.py b/gui/modules/settings/on_settings_open.py
new file mode 100644
index 0000000..460c7d0
--- /dev/null
+++ b/gui/modules/settings/on_settings_open.py
@@ -0,0 +1,12 @@
+from gui.gui import Ui_MainWindow
+from modules.config import Config
+import glob
+
+
+def on_settings_button_click(ui: Ui_MainWindow):
+ ui.database_list_box.clear()
+ 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.content.setCurrentWidget(ui.settings_page)
diff --git a/modules/config/model.py b/modules/config/model.py
index b81b019..1073885 100644
--- a/modules/config/model.py
+++ b/modules/config/model.py
@@ -1,4 +1,3 @@
-from typing import Dict, List
from dataclasses import dataclass
from dataclasses_json import dataclass_json