На главную   На главную   Форумы Новости Документация Скачать Купить  
Регистрация  
Система Allegro
Oб Allegro Характеристики Пример конфигурации Документация База ошибок Развитие
Версия для печати К списку книг Вернуться к оглавлению Предыдущий параграф Следующий параграф
Поиск по книге

Глава 12. РАЗРАБОТКА ОКОННОГО ИНТЕРФЕЙСА

Контекст документа RunContext

Контекст документа RunContext типа TRunContext – объект, создаваемый программой Allegro при запуске скриптового проекта функциями CallDocument и CallDocumentEx. Объект RunContext доступен в скриптовом проекте документа и хранит информацию об id редактируемого (создаваемого) документа, его типе doc_type_id, папке «Проводника по документам» dir_id и прочую полезную информацию. Программа Allegro хранит список всех объектов типа TRunContext, связанных с запущенными в данный момент проектами и перед вызовом любого документа на редактирование проверяет, нет ли его в списке уже редактируемых. Если документ уже присутствует в списке, Allegro вместо запуска нового экземляра проекта выводит на передний план главное окно уже запущенного проекта.

  TRunContext = class
  public
    property RunMode: integer;
    property ModuleName: string; //имя модуля проекта
    property ProjectHandle: THandle;
    property ModalResult: TModalResult;
    property dir_id: integer; //папка (используется при создании нового документа)
    property Documents: TDocParams;    //список открытых документов
    property Params: string read FParams write FParams; //строка произвольных параметров
    property parent_doc_type_id: integer; //тип «родительского» документа («документа-основания»)
    property parent_doc_id: integer; //id «родительского» документа («документа-основания»)
  end;
  TDocParams = class
  public
    function Add(doc_type_id, doc_id: integer): TDocParam;  //добавить документ в список
    property Current: TDocParam; //текущий документ
    property Items[Index: integer]: TDocParam;default;  //список документов
    property Count: integer;  //кол-во документов в списке
    procedure Clear; //очистить список документов
    procedure Delete(Index: integer); //удалить элемент списка
    procedure DeleteDoc(doc_id: integer);  // удалить документ из списка
    procedure DeleteAll(doc_type_id: integer); //удалить все документы определенного типа из списка
    procedure SetAsCurrent(doc_id: integer);  //сделать документ текущим
  end;
  TDocParam = class
  public
    property doc_type_id: integer;  //тип документа
    property doc_id: integer;  //документ
  end;



Система Allegro. Руководство разработчика Наверх