Added ability to filter title trees with search box

Also fixed tree widths not expanding for titles with long names
This commit is contained in:
2024-12-22 17:07:27 -05:00
parent 20439f8785
commit 9dcaa22e89
12 changed files with 639 additions and 490 deletions

View File

@@ -35,21 +35,38 @@ class Ui_MainWindow(object):
self.horizontalLayout_3.setSizeConstraint(QLayout.SizeConstraint.SetDefaultConstraint)
self.vertical_layout_trees = QVBoxLayout()
self.vertical_layout_trees.setObjectName(u"vertical_layout_trees")
self.label_2 = QLabel(self.centralwidget)
self.label_2.setObjectName(u"label_2")
font = QFont()
font.setBold(True)
self.label_2.setFont(font)
self.tree_filter_layout = QHBoxLayout()
self.tree_filter_layout.setObjectName(u"tree_filter_layout")
self.tree_filter_input = QLineEdit(self.centralwidget)
self.tree_filter_input.setObjectName(u"tree_filter_input")
sizePolicy = QSizePolicy(QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.tree_filter_input.sizePolicy().hasHeightForWidth())
self.tree_filter_input.setSizePolicy(sizePolicy)
self.vertical_layout_trees.addWidget(self.label_2)
self.tree_filter_layout.addWidget(self.tree_filter_input)
self.tree_filter_reset_btn = QPushButton(self.centralwidget)
self.tree_filter_reset_btn.setObjectName(u"tree_filter_reset_btn")
sizePolicy1 = QSizePolicy(QSizePolicy.Policy.Maximum, QSizePolicy.Policy.Fixed)
sizePolicy1.setHorizontalStretch(0)
sizePolicy1.setVerticalStretch(0)
sizePolicy1.setHeightForWidth(self.tree_filter_reset_btn.sizePolicy().hasHeightForWidth())
self.tree_filter_reset_btn.setSizePolicy(sizePolicy1)
self.tree_filter_layout.addWidget(self.tree_filter_reset_btn)
self.vertical_layout_trees.addLayout(self.tree_filter_layout)
self.platform_tabs = QTabWidget(self.centralwidget)
self.platform_tabs.setObjectName(u"platform_tabs")
sizePolicy = QSizePolicy(QSizePolicy.Policy.Maximum, QSizePolicy.Policy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.platform_tabs.sizePolicy().hasHeightForWidth())
self.platform_tabs.setSizePolicy(sizePolicy)
sizePolicy2 = QSizePolicy(QSizePolicy.Policy.Maximum, QSizePolicy.Policy.Expanding)
sizePolicy2.setHorizontalStretch(0)
sizePolicy2.setVerticalStretch(0)
sizePolicy2.setHeightForWidth(self.platform_tabs.sizePolicy().hasHeightForWidth())
self.platform_tabs.setSizePolicy(sizePolicy2)
self.platform_tabs.setMinimumSize(QSize(410, 0))
self.platform_tabs.setMaximumSize(QSize(410, 16777215))
self.wii_tab = QWidget()
@@ -128,21 +145,18 @@ class Ui_MainWindow(object):
self.horizontalLayout.setObjectName(u"horizontalLayout")
self.download_btn = QPushButton(self.centralwidget)
self.download_btn.setObjectName(u"download_btn")
sizePolicy1 = QSizePolicy(QSizePolicy.Policy.MinimumExpanding, QSizePolicy.Policy.Fixed)
sizePolicy1.setHorizontalStretch(0)
sizePolicy1.setVerticalStretch(0)
sizePolicy1.setHeightForWidth(self.download_btn.sizePolicy().hasHeightForWidth())
self.download_btn.setSizePolicy(sizePolicy1)
sizePolicy3 = QSizePolicy(QSizePolicy.Policy.MinimumExpanding, QSizePolicy.Policy.Fixed)
sizePolicy3.setHorizontalStretch(0)
sizePolicy3.setVerticalStretch(0)
sizePolicy3.setHeightForWidth(self.download_btn.sizePolicy().hasHeightForWidth())
self.download_btn.setSizePolicy(sizePolicy3)
self.horizontalLayout.addWidget(self.download_btn)
self.script_btn = QPushButton(self.centralwidget)
self.script_btn.setObjectName(u"script_btn")
sizePolicy2 = QSizePolicy(QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Fixed)
sizePolicy2.setHorizontalStretch(0)
sizePolicy2.setVerticalStretch(0)
sizePolicy2.setHeightForWidth(self.script_btn.sizePolicy().hasHeightForWidth())
self.script_btn.setSizePolicy(sizePolicy2)
sizePolicy.setHeightForWidth(self.script_btn.sizePolicy().hasHeightForWidth())
self.script_btn.setSizePolicy(sizePolicy)
self.horizontalLayout.addWidget(self.script_btn)
@@ -158,6 +172,8 @@ class Ui_MainWindow(object):
self.verticalLayout_7.setSizeConstraint(QLayout.SizeConstraint.SetMinimumSize)
self.label_3 = QLabel(self.centralwidget)
self.label_3.setObjectName(u"label_3")
font = QFont()
font.setBold(True)
self.label_3.setFont(font)
self.verticalLayout_7.addWidget(self.label_3)
@@ -167,11 +183,8 @@ class Ui_MainWindow(object):
self.pack_archive_row.setObjectName(u"pack_archive_row")
self.pack_archive_chkbox = QCheckBox(self.centralwidget)
self.pack_archive_chkbox.setObjectName(u"pack_archive_chkbox")
sizePolicy3 = QSizePolicy(QSizePolicy.Policy.Maximum, QSizePolicy.Policy.Fixed)
sizePolicy3.setHorizontalStretch(0)
sizePolicy3.setVerticalStretch(0)
sizePolicy3.setHeightForWidth(self.pack_archive_chkbox.sizePolicy().hasHeightForWidth())
self.pack_archive_chkbox.setSizePolicy(sizePolicy3)
sizePolicy1.setHeightForWidth(self.pack_archive_chkbox.sizePolicy().hasHeightForWidth())
self.pack_archive_chkbox.setSizePolicy(sizePolicy1)
self.pack_archive_chkbox.setText(u"")
self.pack_archive_row.addWidget(self.pack_archive_chkbox)
@@ -201,8 +214,8 @@ class Ui_MainWindow(object):
self.keep_enc_row.setObjectName(u"keep_enc_row")
self.keep_enc_chkbox = QCheckBox(self.centralwidget)
self.keep_enc_chkbox.setObjectName(u"keep_enc_chkbox")
sizePolicy3.setHeightForWidth(self.keep_enc_chkbox.sizePolicy().hasHeightForWidth())
self.keep_enc_chkbox.setSizePolicy(sizePolicy3)
sizePolicy1.setHeightForWidth(self.keep_enc_chkbox.sizePolicy().hasHeightForWidth())
self.keep_enc_chkbox.setSizePolicy(sizePolicy1)
self.keep_enc_chkbox.setText(u"")
self.keep_enc_chkbox.setChecked(True)
@@ -224,8 +237,8 @@ class Ui_MainWindow(object):
self.create_dec_row.setObjectName(u"create_dec_row")
self.create_dec_chkbox = QCheckBox(self.centralwidget)
self.create_dec_chkbox.setObjectName(u"create_dec_chkbox")
sizePolicy3.setHeightForWidth(self.create_dec_chkbox.sizePolicy().hasHeightForWidth())
self.create_dec_chkbox.setSizePolicy(sizePolicy3)
sizePolicy1.setHeightForWidth(self.create_dec_chkbox.sizePolicy().hasHeightForWidth())
self.create_dec_chkbox.setSizePolicy(sizePolicy1)
self.create_dec_chkbox.setText(u"")
self.create_dec_row.addWidget(self.create_dec_chkbox)
@@ -247,8 +260,8 @@ class Ui_MainWindow(object):
self.use_local_chkbox = QCheckBox(self.centralwidget)
self.use_local_chkbox.setObjectName(u"use_local_chkbox")
self.use_local_chkbox.setEnabled(True)
sizePolicy3.setHeightForWidth(self.use_local_chkbox.sizePolicy().hasHeightForWidth())
self.use_local_chkbox.setSizePolicy(sizePolicy3)
sizePolicy1.setHeightForWidth(self.use_local_chkbox.sizePolicy().hasHeightForWidth())
self.use_local_chkbox.setSizePolicy(sizePolicy1)
self.use_local_chkbox.setText(u"")
self.use_local_row.addWidget(self.use_local_chkbox)
@@ -270,8 +283,8 @@ class Ui_MainWindow(object):
self.use_wiiu_nus_row.setSizeConstraint(QLayout.SizeConstraint.SetDefaultConstraint)
self.use_wiiu_nus_chkbox = QCheckBox(self.centralwidget)
self.use_wiiu_nus_chkbox.setObjectName(u"use_wiiu_nus_chkbox")
sizePolicy.setHeightForWidth(self.use_wiiu_nus_chkbox.sizePolicy().hasHeightForWidth())
self.use_wiiu_nus_chkbox.setSizePolicy(sizePolicy)
sizePolicy2.setHeightForWidth(self.use_wiiu_nus_chkbox.sizePolicy().hasHeightForWidth())
self.use_wiiu_nus_chkbox.setSizePolicy(sizePolicy2)
self.use_wiiu_nus_chkbox.setLayoutDirection(Qt.LayoutDirection.LeftToRight)
self.use_wiiu_nus_chkbox.setText(u"")
self.use_wiiu_nus_chkbox.setChecked(True)
@@ -295,8 +308,8 @@ class Ui_MainWindow(object):
self.patch_ios_chkbox = QCheckBox(self.centralwidget)
self.patch_ios_chkbox.setObjectName(u"patch_ios_chkbox")
self.patch_ios_chkbox.setEnabled(False)
sizePolicy3.setHeightForWidth(self.patch_ios_chkbox.sizePolicy().hasHeightForWidth())
self.patch_ios_chkbox.setSizePolicy(sizePolicy3)
sizePolicy1.setHeightForWidth(self.patch_ios_chkbox.sizePolicy().hasHeightForWidth())
self.patch_ios_chkbox.setSizePolicy(sizePolicy1)
self.patch_ios_chkbox.setText(u"")
self.patch_ios_row.addWidget(self.patch_ios_chkbox)
@@ -338,8 +351,8 @@ class Ui_MainWindow(object):
self.pack_vwii_mode_chkbox = QCheckBox(self.centralwidget)
self.pack_vwii_mode_chkbox.setObjectName(u"pack_vwii_mode_chkbox")
self.pack_vwii_mode_chkbox.setEnabled(False)
sizePolicy3.setHeightForWidth(self.pack_vwii_mode_chkbox.sizePolicy().hasHeightForWidth())
self.pack_vwii_mode_chkbox.setSizePolicy(sizePolicy3)
sizePolicy1.setHeightForWidth(self.pack_vwii_mode_chkbox.sizePolicy().hasHeightForWidth())
self.pack_vwii_mode_chkbox.setSizePolicy(sizePolicy1)
self.pack_vwii_mode_chkbox.setText(u"")
self.pack_vwii_mode_row.addWidget(self.pack_vwii_mode_chkbox)
@@ -399,7 +412,8 @@ class Ui_MainWindow(object):
def retranslateUi(self, MainWindow):
MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"MainWindow", None))
self.label_2.setText(QCoreApplication.translate("MainWindow", u"Available Titles", None))
self.tree_filter_input.setPlaceholderText(QCoreApplication.translate("MainWindow", u"Search", None))
self.tree_filter_reset_btn.setText(QCoreApplication.translate("MainWindow", u"Clear", None))
self.platform_tabs.setTabText(self.platform_tabs.indexOf(self.wii_tab), QCoreApplication.translate("MainWindow", u"Wii", None))
self.platform_tabs.setTabText(self.platform_tabs.indexOf(self.vwii_tab), QCoreApplication.translate("MainWindow", u"vWii", None))
self.platform_tabs.setTabText(self.platform_tabs.indexOf(self.dsi_tab), QCoreApplication.translate("MainWindow", u"DSi", None))

View File

@@ -33,16 +33,34 @@
<item>
<layout class="QVBoxLayout" name="vertical_layout_trees">
<item>
<widget class="QLabel" name="label_2">
<property name="font">
<font>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Available Titles</string>
</property>
</widget>
<layout class="QHBoxLayout" name="tree_filter_layout">
<item>
<widget class="QLineEdit" name="tree_filter_input">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="placeholderText">
<string>Search</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="tree_filter_reset_btn">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Clear</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QTabWidget" name="platform_tabs">