Ananas Library 0.9.5
|
Определяет программный интерфейс Runtime системы, который используется Ананас скриптом. Наследует QObject. Подробнее...
#include <engine.h>
Открытые слоты | |
QString | cfgname () |
QString | Time () |
QString | Date () |
void | Exit () |
void | Message (int n, const QString &msg) |
void | StatusMessage (const QString &msg) |
void | StatusMessage (const QString &msg, const int &pos) |
void | settimer (int sec, QString proc) |
aForm * | OpenForm (QString fname, int mode=0, aObject *selecter=0, bool modal=false) |
aForm * | OpenForm (QString fname, int mode, int ido, aObject *selecter=0, bool modal=false) |
Создает и открывает новую форму. | |
QVariant | value (const QString &name) |
void | setValue (const QString &name, QVariant value=QVariant::Invalid) |
void | on_MenuBar (int id) |
void | execAction (aCfgItem &act, QObject *context=0) |
aDataField * | enterValue (const QString &FieldType, const QString &title="") |
bool | startTransaction () |
bool | commitTransaction () |
bool | rollbackTransaction () |
Сигналы | |
void | statusMessage (const QString &msg) |
void | statusMessage (const QString &msg, const int &pos) |
void | statusIcon (const int &status) |
void | event (const QString &source, const QString &data) |
Открытые члены | |
aEngine () | |
virtual | ~aEngine () |
virtual bool | init (const QString &rcfile) |
virtual void | done () |
void | openEmbedCatalogueEditor (int oid, QWidget *parent=NULL, const bool toSelect=true) |
QString | sourcePreprocessor (const QString &src) |
void | timerEvent (QTimerEvent *e) |
int | on_systemstart () |
int | on_systemstop () |
aForm * | openForm (int oid, int fid=0, int defaultfor=1, int mode=0, ANANAS_UID id=0, aWidget *caller=0, bool modal=false) |
Создает и открывает новую форму. | |
Открытые атрибуты | |
aDatabase | db |
aCfg * | md |
QWidget * | ws |
aWindowsList * | wl |
QSInterpreter * | code |
QSProject | project |
int | next_obj_id |
Определяет программный интерфейс Runtime системы, который используется Ананас скриптом. Наследует QObject.
Класс, реализующий обработку и выполнение скриптов, открытие экранных форм, предварительную обработку скрипта перед выполнением (для последующего использования русских управляющих инструкций), системные функции получения даты и времени, печати сообщений об ошибках и т.д
aEngine::aEngine | ( | ) |
Конструктор. Создает новый объект с именем "sys". Доступ к функциям этого объекта из Ананас.Скрипта возможен примерно так:
Перекрестные ссылки md и next_obj_id.
|
virtual |
Деструктор.
|
slot |
Заглушка. Возвращает всегда строку "???" В будущем возможно будет возвращать имя конфигурации.
|
slot |
Закрывает транзацкию.
Перекрестные ссылки db.
|
slot |
Возвращает строковое представление текущей даты в формате "dd.MM.yy"
|
virtual |
Заглушка.
|
slot |
Установка значения глобальной переменной.
Перекрестные ссылки ws.
|
slot |
Вспомогательный метод. Запускает действие в указанном контексте. Правильная работа не гарантируется (где-то там ошибки есть).
act | - ссылка на объект метаданных, описывающий действие |
context | - контекст выполнения действия. |
Перекрестные ссылки code, md, openEmbedCatalogueEditor(), openForm() и sourcePreprocessor().
Используется в on_MenuBar().
|
virtual |
Инициализирует объект. Инициализирует скриптовую систему, добавляет несколько глобальных функций.
Перекрестные ссылки code, db, md, project и sourcePreprocessor().
|
slot |
Вывод сообщений.
n | - тип сообщения. 0 - уведомление, 1 - предупреждение, 2 - ошибка. |
msg | - текст сообщения. |
|
slot |
Запускает действие
id | - идентификатор действия в метаданных. |
Перекрестные ссылки execAction() и md.
int aEngine::on_systemstart | ( | ) |
Автоматически вызывается при старте системы. Если в глобальном модуле определа функция on_systemstart() то она будет автоматически вызвана. Это можно использовать для открытия документов или журналов при старте системы, или каких-либо других действий.
Перекрестные ссылки project.
int aEngine::on_systemstop | ( | ) |
Автоматически вызывается при остановке системы. Если в глобальном модуле определа функция on_systemstop() то она будет автоматически вызвана.
Перекрестные ссылки project.
void aEngine::openEmbedCatalogueEditor | ( | int | oid, |
QWidget * | parent = NULL, | ||
const bool | toSelect = true ) |
Создает и открывает новую форму встроенного редактора каталога.
oid | - id каталога конфигурации, |
parent | - родительский объект wField |
toSelect | - Режим. true - выбор, false - редактирование |
Перекрестные ссылки db, wCatalogEditor::edit(), wCatalogEditor::initCat(), wCatalogEditor::select() и ws.
Используется в execAction().
|
slot |
Создает и открывает новую форму.
Форма создается с учетом её id в конфигураци и действия, режима работы (просмотр, редактирование, создание нового объекта). Форма должна поддерживать тот режим, для которого она открывается. Если форма открыта для просмотра она открывается в режиме отлько чтение. Если id формы равно 0, делается попытка найти первую форму с требуемым режимом.
formName | - имя формы, например, "DocJournal.Системный журнал.Form.Список документов" или "Catalogue.Константы.Form.Форма редактора констант". |
mode | - режим работы формы |
selector | - идентификатор объекта в базе данных, для редактирования которого открывается форма |
modal | - является ли окно модальным |
Перекрестные ссылки md, openForm() и aObject::sysValue().
aForm * aEngine::openForm | ( | int | formOwnerId, |
int | formId = 0, | ||
int | defaultfor = 1, | ||
int | mode = 0, | ||
ANANAS_UID | id = 0, | ||
aWidget * | caller = 0, | ||
bool | modal = false ) |
Создает и открывает новую форму.
Форма создается с учетом её id в конфигураци и действия, режима работы (просмотр, редактирование, создание нового объекта). Форма должна поддерживать тот режим, для которого она открывается. Если форма открыта для просмотра она открывается в режиме отлько чтение. Если id формы равно 0, делается попытка найти первую форму с требуемым режимом. При необходимости поля формы заполняются в соответствии с параметром id
formOwnerId | - идентификатор владельца формы в метаданных бизнес-схемы |
formId | - идентификатор формы в метаданных бизнес-схемы |
defaultfor | - режим работы формы |
mode | - пока не используется |
id | - идентификатор объекта в базе данных, для которого открывается форма. Используется только в режиме просмотра или редактирования |
caller | - Вызывающий данную функцию объект. Он будет обновлен автоматически при закрытии формы |
modal | - является ли окно модальным |
Перекрестные ссылки db, md, aForm::New(), aLog::print(), aForm::Select(), aForm::setMode(), aForm::SetReadOnly(), aForm::Show(), wl и ws.
Используется в execAction() и OpenForm().
|
slot |
ОТменяет действия с БД внутри транзакции.
Перекрестные ссылки db.
|
slot |
|
slot |
Установка значения глобальной переменной.
Перекрестные ссылки value().
QString aEngine::sourcePreprocessor | ( | const QString & | src | ) |
Функция препроцессора исходного текста скрипта. Для разработчиков: В первую очередь может быть использована для замены коротких имен из локального контекста на квалифицированные имена глобальных функций и объектов, например Message() в контексте формы может заменяться на global.Message() перед выполнением скрипта и выполняться корректно из любого места. В противном случае приходится дублировать глобальные встроенные функции во всех контекстах.
Используется в execAction() и init().
|
slot |
Открывает транзакцию в БД, при поддержке со стороны драйвера.
Перекрестные ссылки db.
|
slot |
Вывод сообщений в строке состояния.
msg | - текст сообщения. |
|
slot |
Вывод сообщений в строке состояния в целевую метку. pos модет принимать любые значения. Если метка не 1, 2 или 3, то сообщение выводится в StatusBar на 3 секунды.
msg | - текст сообщения, |
pos | - номер метки. |
|
slot |
Возвращает строковое представление текущего времени в формате "hh:mm:ss"
void aEngine::timerEvent | ( | QTimerEvent * | e | ) |
Заглушка.
|
slot |
Получение значения глобальной переменной.
Используется в setValue().
QSInterpreter* aEngine::code |
ссылка на интерпретатор скрипта.
Используется в execAction() и init().
aDatabase aEngine::db |
Соединение с базой данных.
Используется в aForm::aForm(), aForm::aForm(), aForm::aForm(), aObjectsFactory::aObjectsFactory(), commitTransaction(), init(), openEmbedCatalogueEditor(), openForm(), rollbackTransaction() и startTransaction().
aCfg* aEngine::md |
ссылка на метаданные.
Используется в aEngine(), aReport::aReport(), aReport::aReport(), execAction(), init(), on_MenuBar(), OpenForm() и openForm().
int aEngine::next_obj_id |
номер для обеспечения уникальных имен при открытии форм.
Используется в aEngine().
QSProject aEngine::project |
ссылка на проект.
Используется в init(), on_systemstart() и on_systemstop().
aWindowsList* aEngine::wl |
ссылка на список окон.
Используется в openForm().
QWidget* aEngine::ws |
ссылка на рабочее пространство.
Используется в aReport::aReport(), aReport::aReport(), enterValue(), openEmbedCatalogueEditor() и openForm().