ViewManager - Менеджер содержимого окон

class axipy.ViewManager

Менеджер содержимого окон.

Примечание

Создание axipy.ViewManager не требуется, используйте объект axipy.view_manager.

Пример использования
table = provider_manager.openfile(filepath)
m = Map([table])
view_manager.create_mapview(m)

Свойства:

active

Текущее активное окно.

count

Количество окон.

global_parent

Может использоваться как 'parent' при использовании стандартных диалогов Qt.

legendviews

Список всех окон с легендами.

mapviews

Список всех окон с картами.

reportviews

Список всех окон с отчетами.

tableviews

Список всех окон с таблицами просмотра.

views

Список всех известных окон.

Методы:

activate(view)

Делает заданное окно активным.

add_to_current_mapview(value)

Добавляет слой в текущее окно.

close(view)

Закрывает окно.

close_all()

Закрывает все окна.

create_legendview(mapview)

Создает окно легенды для карты.

create_mapview(map)

Создает окно из для переданного объекта карты.

create_reportview([report])

Создает окно с планом отчета.

create_tableview(table)

Создает окно в виде табличного представления из объекта данных.

create_view(value)

Создает окно из для переданного объекта соответствующего типа.

Сигналы:

active_changed

Активное окно изменилось.

count_changed

Количество окон изменилось.

mainwindow_activated

Возникает когда главное окно приложения инициализировано и активировано.

activate(view: View)

Делает заданное окно активным.

Параметры:

view – Содержимое окна.

property active: Optional[View]

Текущее активное окно.

Результат:

None, если нет активных окон.

property active_changed: Signal

Активное окно изменилось.

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

Signal[]

add_to_current_mapview(value: Union[Layer, DataObject])

Добавляет слой в текущее окно. Если текущее окно карты отсутствует, создается новое окно

Параметры:

value – Слой или объект данных

close(view: View)

Закрывает окно.

Параметры:

view – Содержимое окна.

close_all()

Закрывает все окна.

property count: int

Количество окон.

property count_changed: Signal

Количество окон изменилось.

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

Signal[]

create_legendview(mapview: MapView) LegendView

Создает окно легенды для карты.

Параметры:

mapview – Окно с картой.

Результат:

Окно с легендой.

create_mapview(map: Map) MapView

Создает окно из для переданного объекта карты.

Параметры:

map – Карта.

Примечание

Переданная карта копируется.

Результат:

Окно карты.

create_reportview(report: Report = None) ReportView

Создает окно с планом отчета.

Параметры:

report – План отчета. Если не передан, то создается по умолчанию.

Результат:

Окно отчета.

create_tableview(table: Table) TableView

Создает окно в виде табличного представления из объекта данных.

Параметры:

table – Таблица.

Результат:

Окно таблицы.

create_view(value: Union[Map, Layer, DataObject, Report, MapView]) Union[MapView, TableView, ReportView, LegendView]

Создает окно из для переданного объекта соответствующего типа.

Параметры:

value – таблица, слой, карта или отчет.

Результат:

Окно.

property global_parent: QWidget

Может использоваться как „parent“ при использовании стандартных диалогов Qt. Использование данного свойства решает проблему, когда окно показывается в панели задач как отдельное приложение.

Пример:

if QMessageBox.question(view_manager.global_parent, 'Вопрос', 'Отменить действие?') == QMessageBox.Yes:
    pass
property legendviews: List[LegendView]

Список всех окон с легендами.

property mainwindow_activated: Signal

Возникает когда главное окно приложения инициализировано и активировано. Данное событие может использоваться в плагинах когда есть необходимость обратиться к главному окну приложения. Но ввиду того, что сами плагины загружаются до инициализации главного окна, данную процедуру можно выполнить используя данное событие (axipy.AxiomaInterface.window).

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

Signal[]

property mapviews: List[MapView]

Список всех окон с картами.

Пример:

for v in view_manager.mapviews:
    print('Widget:', v.title)

```>>> Widget: Карта: world```
```>>> Widget: Карта: rus_obl```
property reportviews: List[ReportView]

Список всех окон с отчетами.

property tableviews: List[TableView]

Список всех окон с таблицами просмотра.

property views: List[View]

Список всех известных окон.