Модуль DMTaskMaker
Типы модуля DMTaskMaker |
type TaskProcType = procedure;
Тип процедуры, генерирующей конкретное задание.
Каждое задание реализуется в виде отдельной процедуры; для связывания этой процедуры
с именем задания необходимо использовать процедуру RegisterTask
, описываемую ниже.
Процедуры модуля DMTaskMaker |
procedure Field(szx,szy: integer);
Задает поле Чертежника размера szx
на szy
клеток.
procedure DoToPoint(x,y: integer);
Перемещает перо Чертежника-постановщика заданий в точку с
координатами (x
, y)
.
procedure DoOnVector(dx,dy: integer);
Перемещает перо Чертежника-постановщика заданий в точку с
координатами (x
, y)
.
procedure DoPenUp;
Поднимает перо Чертежника-постановщика заданий.
procedure DoPenDown;
Опускает перо Чертежника-постановщика заданий.
procedure TaskText(s: string);
Задает имя и формулировку задания в строке s
.
procedure RegisterGroup(name,description,unitname: string; count: integer);
Обеспечивает автоматическую регистрацию новой группы заданий в программном модуле PT4Load.
В результате имя данной группы будет отображаться в окне модуля PT4Load в списке групп, связанных с исполнителем
Чертежник,
что позволит создать программу-заготовку для выполнения любого задания этой группы.
В качестве параметров процедуры указывается имя группы name
,
краткое описание группы description
,
имя модуля unitname
, в котором описана группа, и количество заданий count
.
Имя группы заданий должно содержать не более 7 символов (цифр и латинских букв) и не должно оканчиваться цифрой,
количество заданий не должно превышать 999.
Процедура RegisterGroup
должна
вызываться в секции инициализации модуля, содержащего реализацию новой группы заданий для Чертежника.
procedure RegisterTask(name: string; p: TaskProcType);
Связывает имя задания name
с процедурой p
, в которой реализовано данное задание.
Данную процедуру следует вызывать для каждого задания.
Подобно описанной выше процедуре RegisterGroup
, процедура RegisterTask
должна вызываться в секции инициализации
модуля, содержащего реализацию новой группы заданий для Чертежника. Порядок вызова этих процедур может быть произвольным.