Оглавление
Программа для автоматизации создания интерфейса. Многие функции программы пока еще не сделаны, потому возможности ее практического использования минимальные. Лицензия свободная.
Внешний вид программы.
1) Открываем шаблон программы из файла min_prog.ced или box_l.ced (min_prog.ced - "минимальная" программа, box_l.ced - программа с подключением библиотеки box_lib.obj, планируеться добавление других шаблонов)
2) Редактируем объекты в подключенном файле *.ced
3) Создаем *.asm код в текстовом окне кнопкой на панели. Сохраняем *.asm код на диск (работоспособность получившегося файла не гарантируется, т. к. многие элементы еще доконца не запрограмированы)
4) Редактируем получившийся *.asm файл любым текстовым редактором
Програмный код создается на основе свойств объектов, внесенных в файл проэкта. Все объекты внутри програмы представляються структурами вида:
struct object id dd ? ;идентификатор объекта txt rb MAX_LEN_OBJ_TXT ;текстовые свойства lvl db 0 clo db 0 typid dd ? ;номер объекта определяющего тип переменной modif dd ? ;битовые свойства ends
В зависимости от вида объекта не все его параметры могут использоваться. Большая часть свойств объекта задается параметрами: txt (текстовые свойства), typid и modif (битовые свойства). Редактирование оъектов совершается через окно свойств объекта. При создании объекта текстовые свойства вносятся в текстовые поля (элементы editbox слевой стороны окна); битовые свойства задаются флажками (находятся справой стороны в нижнем углу окна) а тип объекта выбирается из списка, который доступен только при редактировании переменных (находятся справой стороны в верхнем углу окна).
Для открытия окна со свойствами объекта нужно выбрать редактируемый объект и нажать [Enter] или кнопку на панели инструментов.
Переменные в програмном коде имеют разные типы данных. Этот объект служит для задания типов данных, с которыми в последствии можно связывать объекты переменных. Один объект типа данных может много раз использоваться для задания типов переменных.
Объект переменной содержит 3 текстовых свойства: 1) имя переменной, 2) значение по умолчанию, 3) комментарий; и одну ссылку на объект типа данного или объект структуры.
Объект структуры содержит 2 текстовых свойства: 1) имя структуры, 2) параметры для макроса. Свойство параметры для макроса не обязательно для заполнения. Структура должна содержать в себе переменные. Все объекты переменных структуры должны быть расположены уровнем ниже чем объект структуры, таким образом программа при создании кода определит где находится начало и конец данных структуры.
Объект содержащий програмный код, который вставляется в генерируемую программу. Длина кода ограничивается размером константы MAX_LEN_OBJ_TXT (200 символов). Подобный объект нужен для задания каких-либо готовых пользовательских функций или для выхода из нестандартных заранее не предусмотренных ситуаций. Может возникнуть ситуация, когда через использование других объектов решение задачи может оказаться нецелесообразным, например такой код:
struct p a dd ? b dd ? ends
Можно создать из 3-х обектов: 1-на структура и 2 переменные или обойтись 1-м объектом asm кода.
Для програмирования некоторых объектов необходимо написание кода в разных местах программы. Но один объект не может создавать свой код в разных местах. Для решения этой задачи был создан объект авто кода. Он может автоматически создавать коды других объектов. Этот объект содержит текстовое свойство, которое используется как подсказка пользователю, но в програмный код не попадает. Также содержит флаги, от которых зависит какой именно код будет создаваться, вот они:
Этот объект работает в связке с другими объектами, а сам по себе никакого кода не создает.
Данный объект служит для создания структуры импорта библиотеки. Содержит параметры:
Для создания програмного кода этого объекта нужен объект авто кода с включенной опцией коды элементов. Этот объект используется вместе с объектами функция из библиотеки, которые должны быть дочерними для него.
Игорь А. (IgorA) - разработка программы.