Содержание
PropertyContainer
Данный класс служит хранилищем свойств, имеет в своем составе методы для манипуляции ими. Предполагается, что будет использован для хранения пользовательских настроек плагинов, но может быть использован для иных целей, например для реализации форм ввода данных.
Подробности смотрите в статье Контейнер свойств
Методы:
__getattr__()
Переопределение магического метода. Производит поиск свойства в контейнере и возвращает его значение, если свойство не найдено, возбуждает исключение AttributeError .
def __getattr__(self, item) -> Any
Параметры:
- item(str)-имя свойства
Возвращает:
- Any - значение свойства
Методы класса:
render_layout()
Возвращает интерфейс для редактирования значений свойст. По умолчанию свойства выводятся единым списком в две колоник, где в первой колонке находится имя свойства, во второй - виджет для редактирования значения. Переопределите этот метод, если нужен определенный вид интерфейса.
def render_layout(cls) -> QWidget
Возвращает:
- QWidget - форма для ввода значений свойств в контейнере
Урок о том, как разработать собственный интерфейс читайте в материале.
retranslate()
Переводит имена свойства и отображаемые ими данные на значения, которые будут найдены в словарях. Если вы переопредели метод render_layout(), то возможно будет необходимо переопределить и этот.
В данной версии функциональность интернационализации не реализована в полной мере.
def retranslate(self) -> None:
Возвращает:
- None
get_property()
Возвращает ссылку на свойство с указанным именем.
def get_property(cls, name: str) -> AbstractProperty
Параметры:
- name - имя свойства
Возвращает:
- AbstractProperty- ссылка на свойство
get_property_value()
Возвращает значение свойства с указанным именем.
def get_property_value(cls, name: str) -> Any
Параметры:
- name - имя свойства
Возвращает:
- Any - значение свойства
update_data()
Извлекает данные из виджетов, которые привязаны к свойствам. Вызывает метод extract_widget_data() у каждого свойства. Возвращает True, если хотя бы одно свойство было изменено, иначе - False.
def update_data(cls) -> bool:
Возвращает:
- bool - результат обновления данных
propvalues_to_dict()
Возвращает словарь со значениями свойств. В качестве ключа используется строка с именем свойства, в значении - кортеж вида: (<класс свойства>, <значение свойства>).
def propvalues_to_dict(cls) -> dict[str, (AbstractProperty, Any)]
Возвращает:
- dict[str, (AbstractProperty, Any)]
prop_params_to_dict()
Возвращает словарь с параметрами свойств. В качестве ключа используется строка с именем свойства, в значении - кортеж вида: (<класс свойства>, <словарь со значениями параметров>). Словарь со значениями возвращается свойствами при помощи метода get_parameters_dict().
def prop_params_to_dict(cls) -> dict[str, (AbstractProperty, dict)]
Возвращает:
- dict[str, (AbstractProperty, dict)]- словарь параметрами свойств
set_prop_params_from_dict()
Принимает словарь с параметрами свойств и устанавливает их для свойств в контейнере. В качестве ключа используется строка с именем свойства, в значении - кортеж вида: (<класс свойства>, <словарь со значениями параметров>).
def set_prop_params_from_dict(cls, params_dict: dict[str, (AbstractProperty, dict)]) -> None
Параметры:
- params_dict(dict[str, (AbstractProperty, dict)]) - словарь с параметрами свойств
Возвращает:
- None
set_propvalues_from_dict()
Принимает словарь со значениями свойств. В качестве ключа используется строка с именем свойства, в значении - кортеж вида: (<класс свойства>, <значение свойства>). Перед присвоением проверяет тип и значение свойства на соответствие, установленным по умолчанию.
def set_prop_params_from_dict(cls, params_dict: dict[str, (AbstractProperty, dict)]) -> None
Параметры:
- dict[str, (AbstractProperty, dict)]- словарь со значениями свойств
Возвращает:
- None