Workspace - Рабочее пространство
- class axipy.Workspace
Сохранение рабочего пространства в файл рабочего набора
*.mws
.Рабочее пространство можно как сохранять в файл так и читать из него. При чтении из файла рабочего пространства посредством метода
load_file()
все источники данных (таблицы) открываются и добавляются в каталогaxipy.DataManager
, доступный через переменнуюaxipy.data_manager
. А окна с наполнением добавляются в менеджер оконaxipy.ViewManager
, доступный через переменнуюview_manager
.В случае записи текущего состояния в файл рабочего пространства последовательность обратная рассмотренной. Состояние каталога и менеджера окон записывается в рабочее пространство посредством метода
save_file()
.Пример чтения данных в рамках отдельного приложения:
from axipy import init_axioma, data_manager, view_manager, Workspace, open_file_dialog # инициализация ядра app = init_axioma() print('Before: tables({}), views({})'.format(len(data_manager), len(view_manager))) # Чтение рабочего набора file_name = open_file_dialog("Рабочий набор (*.mws)") Workspace().load_file(file_name) print('After: tables({}), views({})'.format(len(data_manager), len(view_manager))) # Если есть хотя бы одно окно с картой, показываем его if len(view_manager.mapviews): mapview = view_manager.mapviews[0] mapview.show() app.exec_() # Результат: # Before: tables(0), views(0) # After: tables(5), views(3) # В зависимости от рабочего набора, числа могут отличаться
Пример записи рабочего пространства:
from pathlib import Path from PySide2.QtCore import QStandardPaths from axipy import Workspace path = Path(QStandardPaths.writableLocation(QStandardPaths.DocumentsLocation)) path = path / "ws_out.mws" Workspace().save_file(path) print("Файл рабочего набора сохранен.", path) # Результат: # Файл рабочего набора сохранен. C:\Users\User\Documents\ws_out.mws
Методы:
load_file
(file_name[, suppress_non_exist])Читает из файла рабочего пространства и заносит данные в текущее окружение.
load_string
(workspace_str[, suppress_non_exist])Читает из строки описание рабочего пространства и заносит данные в текущее окружение.
save_file
(file_name[, overwrite])Сохраняет текущее состояние в файл рабочего пространства.
Сохраняет текущее состояние рабочего пространства в виде строки.
- load_file(file_name: Union[str, Path], suppress_non_exist: bool = False)
Читает из файла рабочего пространства и заносит данные в текущее окружение.
- Параметры:
file_name – Имя входного файла.
suppress_non_exist – Пропускать ненайденные файлы
- load_string(workspace_str: str, suppress_non_exist: bool = False)
Читает из строки описание рабочего пространства и заносит данные в текущее окружение.
- Параметры:
workspace_str – Строка с контентом рабочего пространства.
suppress_non_exist – Пропускать ненайденные файлы