Инструменты пользователя

Инструменты сайта


products:pussy:api:pyub:types:propertycontainer

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 - имя свойства

Возвращает:

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)]

Возвращает:

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
products/pussy/api/pyub/types/propertycontainer.txt · Последнее изменение: ironmesh