SelectionManager - Доступ к выделенным объектам

class axipy.gui.SelectionManager

Класс доступа к выделенным объектам.

Примечание

Получить экземпляр сервиса можно в атрибуте axipy.gui.selection_manager.

Methods:

add(table, ids)

Добавляет выборку записи таблицы по их идентификаторам.

clear()

Очищает выборку.

get_as_cursor()

Возвращает выборку в виде итератора по записям.

get_as_table()

Возвращает выборку в виде таблицы.

remove(table, ids)

Удаляет из выборки записи таблицы по их идентификаторам.

set(table, ids)

Создает выборку из записей таблицы по их идентификаторам.

Attributes:

changed

Signal[] Выделение было изменено.

count

Размер выделения, то есть количество выделенных записей (количество элементов в списке идентификаторов).

ids

Список идентификаторов выделенных записей.

table

Таблица, являющаяся источником текущего выделения.

add(table, ids)

Добавляет выборку записи таблицы по их идентификаторам.

Параметры
  • table (Table) – Таблица.

  • ids (Union[List[int], int]) – Идентификаторы записей.

property changed

Signal[] Выделение было изменено.

Тип результата

Signal

clear()

Очищает выборку.

property count

Размер выделения, то есть количество выделенных записей (количество элементов в списке идентификаторов).

Тип результата

int

get_as_cursor()

Возвращает выборку в виде итератора по записям.

Пример:

for f in selection_manager.get_as_cursor():
    print('Feature id={}. Страна={}'.format(f.id, f['Страна']))

Предупреждение

Не рекомендуется, начиная с версии 3.5: Используйте axipy.da.DataManager.selection.

Тип результата

Iterator[Feature]

get_as_table()

Возвращает выборку в виде таблицы.

Тип результата

Optional[Table]

Результат

Таблица или None, если выборки нет.

Содержимое таблицы основывается на текущей выборке на момент вызова данного метода. При последующем изменении или сбросе выборки контент данной таблицы не меняется. Результирующей таблице присваивается наименование в формате data*, которое в последствии можно изменить. При закрытии базовой таблицы данная таблицы так-же закрывается.

Пример:

# Получаем таблицу из выборки.
tbl = selection_manager.get_as_table()
# Задаем желаемое имя таблицы (необязательно)
tbl.name = 'my_table'
# Регистрация в каталоге (необязательно)
app.mainwindow.catalog().add(tbl)
for f in tbl.items():
    print('Feature id={}. Страна={}'.format(f.id, f['Страна']))

Предупреждение

Не рекомендуется, начиная с версии 3.5: Используйте axipy.da.DataManager.selection.

property ids

Список идентификаторов выделенных записей.

Тип результата

List[int]

remove(table, ids)

Удаляет из выборки записи таблицы по их идентификаторам.

Параметры
  • tbl – Таблица.

  • ids (Union[List[int], int]) – Идентификаторы записей.

set(table, ids)

Создает выборку из записей таблицы по их идентификаторам.

Параметры
  • table (Table) – Таблица.

  • ids (Union[List[int], int]) – Идентификаторы записей.

property table

Таблица, являющаяся источником текущего выделения.

Тип результата

Optional[Table]