Use qlistwidget_items() where applicable

This commit is contained in:
Laurent Monin
2023-09-07 14:52:29 +02:00
parent b7a6d5b2bd
commit 268eeed588
8 changed files with 37 additions and 33 deletions

View File

@@ -69,7 +69,10 @@ from picard.webservice import ratecontrol
from picard.ui import PicardDialog
from picard.ui.ui_provider_options_caa import Ui_CaaOptions
from picard.ui.util import StandardButton
from picard.ui.util import (
StandardButton,
qlistwidget_items,
)
CaaSizeItem = namedtuple('CaaSizeItem', ['thumbnail', 'label'])
@@ -215,8 +218,8 @@ class ListBox(QtWidgets.QListWidget):
callback()
def all_items_data(self, role=QtCore.Qt.ItemDataRole.UserRole):
for index in range(self.count()):
yield self.item(index).data(role)
for item in qlistwidget_items(self):
yield item.data(role)
class CAATypesSelectorDialog(PicardDialog):

View File

@@ -43,6 +43,7 @@ from picard.ui.options import (
register_options_page,
)
from picard.ui.ui_options_cover import Ui_CoverOptionsPage
from picard.ui.util import qlistwidget_items
class CoverOptionsPage(OptionsPage):
@@ -108,8 +109,7 @@ class CoverOptionsPage(OptionsPage):
self.update_ca_providers_groupbox_state()
def _ca_providers(self):
for i in range(self.ui.ca_providers_list.count()):
item = self.ui.ca_providers_list.item(i)
for item in qlistwidget_items(self.ui.ca_providers_list):
yield (item.data, item.checked)
def save(self):

View File

@@ -51,6 +51,7 @@ from picard.ui.options import (
from picard.ui.ui_options_interface_toolbar import (
Ui_InterfaceToolbarOptionsPage,
)
from picard.ui.util import qlistwidget_items
class InterfaceToolbarOptionsPage(OptionsPage):
@@ -198,8 +199,8 @@ class InterfaceToolbarOptionsPage(OptionsPage):
return list_item
def _all_list_items(self):
return [self.ui.toolbar_layout_list.item(i).action_name
for i in range(self.ui.toolbar_layout_list.count())]
for item in qlistwidget_items(self.ui.toolbar_layout_list):
yield item.action_name
def _added_actions(self):
actions = self._all_list_items()
@@ -234,7 +235,7 @@ class InterfaceToolbarOptionsPage(OptionsPage):
def update_layout_config(self):
config = get_config()
config.setting['toolbar_layout'] = self._all_list_items()
config.setting['toolbar_layout'] = list(self._all_list_items())
self._update_toolbar()
def _update_toolbar(self):

View File

@@ -53,6 +53,7 @@ from picard.ui.options import (
from picard.ui.ui_exception_script_selector import Ui_ExceptionScriptSelector
from picard.ui.ui_multi_locale_selector import Ui_MultiLocaleSelector
from picard.ui.ui_options_metadata import Ui_MetadataOptionsPage
from picard.ui.util import qlistwidget_items
def iter_sorted_locales(locales):
@@ -232,8 +233,7 @@ class MultiLocaleSelector(PicardDialog):
if item is None:
return
locale = item.data(QtCore.Qt.ItemDataRole.UserRole)
for row in range(self.ui.selected_locales.count()):
selected_item = self.ui.selected_locales.item(row)
for selected_item in qlistwidget_items(self.ui.selected_locales):
if selected_item.data(QtCore.Qt.ItemDataRole.UserRole) == locale:
return
new_item = item.clone()
@@ -253,10 +253,10 @@ class MultiLocaleSelector(PicardDialog):
self.ui.remove_locale.setEnabled(enabled)
def save_changes(self):
locales = []
for row in range(self.ui.selected_locales.count()):
selected_item = self.ui.selected_locales.item(row)
locales.append(selected_item.data(QtCore.Qt.ItemDataRole.UserRole))
locales = [
item.data(QtCore.Qt.ItemDataRole.UserRole)
for item in qlistwidget_items(self.ui.selected_locales)
]
self.parent().current_locales = locales
self.parent().make_locales_text()
self.accept()
@@ -319,8 +319,7 @@ class ScriptExceptionSelector(PicardDialog):
if item is None:
return
script_id = item.data(QtCore.Qt.ItemDataRole.UserRole)
for row in range(self.ui.selected_scripts.count()):
selected_item = self.ui.selected_scripts.item(row)
for selected_item in qlistwidget_items(self.ui.selected_scripts):
if selected_item.data(QtCore.Qt.ItemDataRole.UserRole)[0] == script_id:
return
new_item = QtWidgets.QListWidgetItem(self.make_label(script_id, 0))
@@ -366,10 +365,10 @@ class ScriptExceptionSelector(PicardDialog):
selected_item.setText(label)
def save_changes(self):
scripts = []
for row in range(self.ui.selected_scripts.count()):
selected_item = self.ui.selected_scripts.item(row)
scripts.append(selected_item.data(QtCore.Qt.ItemDataRole.UserRole))
scripts = [
item.data(QtCore.Qt.ItemDataRole.UserRole)
for item in qlistwidget_items(self.ui.selected_scripts)
]
self.parent().current_scripts = scripts
self.parent().make_scripts_text()
self.accept()

View File

@@ -46,6 +46,7 @@ from picard.ui.options import (
register_options_page,
)
from picard.ui.ui_options_profiles import Ui_ProfileEditorDialog
from picard.ui.util import qlistwidget_items
from picard.ui.widgets.profilelistwidget import ProfileListWidgetItem
@@ -201,8 +202,7 @@ class ProfilesOptionsPage(OptionsPage):
Yields:
dict: Profile information in a format for saving to the user settings
"""
for row in range(self.ui.profile_list.count()):
item = self.ui.profile_list.item(row)
for item in qlistwidget_items(self.ui.profile_list):
yield item.get_dict()
def make_setting_tree(self, settings=None):

View File

@@ -50,6 +50,7 @@ from picard.ui.options import (
register_options_page,
)
from picard.ui.ui_options_releases import Ui_ReleasesOptionsPage
from picard.ui.util import qlistwidget_items
from picard.ui.widgets import ClickableSlider
@@ -302,10 +303,10 @@ class ReleasesOptionsPage(OptionsPage):
list2.addItem(item)
def _save_list_items(self, setting, list1):
data = []
for i in range(list1.count()):
item = list1.item(i)
data.append(item.data(QtCore.Qt.ItemDataRole.UserRole))
data = [
item.data(QtCore.Qt.ItemDataRole.UserRole)
for item in qlistwidget_items(list1)
]
config = get_config()
config.setting[setting] = data

View File

@@ -60,6 +60,7 @@ from picard.ui.ui_options_script import Ui_ScriptingOptionsPage
from picard.ui.ui_scripting_documentation_dialog import (
Ui_ScriptingDocumentationDialog,
)
from picard.ui.util import qlistwidget_items
from picard.ui.widgets.scriptdocumentation import ScriptingDocumentationWidget
from picard.ui.widgets.scriptlistwidget import ScriptListWidgetItem
@@ -263,8 +264,7 @@ class ScriptingOptionsPage(OptionsPage):
last_selected_script.setSelected(True)
def _all_scripts(self):
for row in range(0, self.ui.script_list.count()):
item = self.ui.script_list.item(row)
for item in qlistwidget_items(self.ui.script_list):
yield item.get_all()
def save(self):

View File

@@ -81,6 +81,7 @@ from picard.ui.options.scripting import (
)
from picard.ui.ui_scripteditor import Ui_ScriptEditor
from picard.ui.ui_scripteditor_details import Ui_ScriptDetails
from picard.ui.util import qlistwidget_items
from picard.ui.widgets.scriptdocumentation import ScriptingDocumentationWidget
@@ -971,11 +972,10 @@ class ScriptEditorDialog(PicardDialog, SingletonDialog):
Returns:
dict: Dictionary of scripts
"""
naming_scripts = {}
for idx in range(self.ui.preset_naming_scripts.count()):
script_item = self.ui.preset_naming_scripts.itemData(idx)
naming_scripts[script_item["id"]] = script_item
return naming_scripts
return {
item['id']: item
for item in qlistwidget_items(self.ui.preset_naming_scripts)
}
def get_selected_item(self, idx=None):
"""Get the specified item from the script selection combo box.