From 8049aaa89921f5c4e337654fd86fd2b382fb3bc6 Mon Sep 17 00:00:00 2001 From: Laurent Monin Date: Fri, 12 Apr 2024 18:28:21 +0200 Subject: [PATCH] Use Option title in Profiles Option dialog --- picard/ui/options/profiles.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/picard/ui/options/profiles.py b/picard/ui/options/profiles.py index 9df0a6c9f..7b8f2c18f 100644 --- a/picard/ui/options/profiles.py +++ b/picard/ui/options/profiles.py @@ -29,9 +29,12 @@ from PyQt6 import ( QtWidgets, ) +from picard import log from picard.config import ( IntOption, ListOption, + Option, + OptionError, SettingConfigSection, get_config, ) @@ -226,7 +229,15 @@ class ProfilesOptionsPage(OptionsPage): widget_item.setFlags(QtCore.Qt.ItemFlag.ItemIsEnabled | QtCore.Qt.ItemFlag.ItemIsUserCheckable | QtCore.Qt.ItemFlag.ItemIsAutoTristate) widget_item.setCheckState(self.TREEWIDGETITEM_COLUMN, QtCore.Qt.CheckState.Unchecked) for setting in group_settings: - child_item = QtWidgets.QTreeWidgetItem([_(setting.title)]) + try: + opt_title = Option.get_title('setting', setting.name) + except OptionError as e: + log.debug(e) + continue + if opt_title is None: + opt_title = setting.name + log.debug("Missing title for option: %s", setting.name) + child_item = QtWidgets.QTreeWidgetItem([_(opt_title)]) child_item.setData(0, QtCore.Qt.ItemDataRole.UserRole, setting.name) child_item.setFlags(QtCore.Qt.ItemFlag.ItemIsEnabled | QtCore.Qt.ItemFlag.ItemIsUserCheckable) state = QtCore.Qt.CheckState.Checked if settings and setting.name in settings else QtCore.Qt.CheckState.Unchecked