Оглавление
Программа для автоматизации создания интерфейса. Некоторые из функций программы пока еще не сделаны, потому возможности ее практического использования ограничены. Лицензия свободная.
Внешний вид программы.
1) Открываем шаблон программы из файла с расширением .ced (min_prog.ced - "минимальная" программа, box_l.ced - программа с подключением библиотеки box_lib.obj, buf2d.ced - программа с подключением библиотеки buf2d.obj, планируеться добавление других шаблонов)
2) Редактируем объекты в подключенном файле *.ced
3) Создаем *.asm код в текстовом окне кнопкой на панели. Сохраняем *.asm код на диск (работоспособность получившегося файла не гарантируется, т. к. некоторые из элементов еще доконца не проработаны)
4) Редактируем получившийся *.asm файл любым текстовым редактором. Для этого убираем в начале файла описания структур (т. к. они содержатся в подключаемых файлах .inc) и дописываем пути к подключаемым файлам.
Програмный код создается на основе свойств объектов, внесенных в файл проэкта. Все объекты внутри програмы представляються структурами вида:
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 кода.
Для програмирования некоторых объектов необходимо написание кода в разных местах программы. Но один объект не может создавать свой код в разных местах. Для решения этой задачи был создан объект авто кода. Он может автоматически создавать коды других объектов. Этот объект содержит текстовое свойство, которое используется как подсказка пользователю, но в програмный код не попадает. Также содержит флаги, от которых зависит какой именно код будет создаваться, вот они:
Этот объект работает в связке с другими объектами, а сам по себе никакого кода не создает.
Данный объект служит для создания структуры импорта библиотеки. Содержит параметры:
Для создания програмного кода этого объекта нужен объект авто кода с включенной опцией коды элементов. Этот объект используется вместе с объектами функция из библиотеки, которые должны быть дочерними для него.
Данные объекты служат для создания указателей на функции импортируемые из библиотеки. Содержит параметры:
В большинстве случаев эти параметры будут совпадать друг с другом. Эти объекты используется вместе с объектами импорт библиотеки, которые должны быть родительскими для них.
Объект создания кода подключения файлов, через ключевое слово include. Содержит параметры:
Игорь А. (IgorA) - разработка программы.