Инструменты пользователя

Инструменты сайта


Боковая панель

<< Назад


koda:ru:documentation:appendice_koda_form_format

Формат форм Koda

Для всех, кто, возможно, захочет конвертировать другие форматы форм в формат Koda или прочитать его в другой программе, написано это руководство по структуре K(oda)X(ml)F(ormat).

Формат форм Koda очень простой. Он удовлетворяет требованиям XML и легко может быть прочитан другими программами. Другие программы также могут писать формат Koda.

Примечания:

  • в настоящее время Koda может работать только с файлами в ANSI-кодировке.
  • все тэги/атрибуты регистрозависимые.
  • узлы «properties» и «components» должны присутствовать в каждом объекте, независимо от того, содержат они что-либо или нет.

Общая структура:

<?xml version="1.0"?>
<object type="type" name="name">
    <properties>
        <property name="name" vt="vt">
            ...
        </property>
    </properties>
    <components>
        <object>
            ...
            </object>
    </components>
</object>
Объект имеет два атрибута:
typeИмя класса объекта, например «TALabel».
nameУникальное имя объекта. Этот атрибут контролируется приложением, так что парсер Koda не будет исправлять его, если оно не уникально! Единственное исключение - пустое имя: может быть любое количество объектов с пустым именем.
Свойства имеют два атрибута:
nameИмя свойства, например «Caption».
vt (variant type)Тип сохраненного значения. Может принимать следующие значения:
Int8короткое 8-bit целое;
Int16короткое 16-bit целое;
Int32длинное 32-bit целое;
Int64длинное 64-bit целое (этот тип допустим, но не используется в Koda);
True/Falseбулевое значение
Singleчисло с плавающей точкой;
Extendedчисло с плавающей точкой (двойной точности);
Currencyвалюта (не используется в Koda);
Stringстрока ANSI;
UTF8String,
WString
юникодовая строка, сейчас обрабатывается как строка ANSI;
Identидентификатор объекта;
Setнабор идентификаторов;
Dateдата/время. Ввиду того, что Delphi некорректно обрабатывает потоки с этим типом, он не используется Koda, и не рекомендуется к использованию;
Listсписок строк (см. ниже);
Collectionколлекция (см. ниже);
Binaryбинарные данные (см. ниже).

Некоторые типы, требующие специальной обработки:

Список строк (например, свойство Items в Listbox):

<property name="Lines" vt="List">
    <list>
        <li>...</li>
        <li>...</li>
    </list>
</property>

Коллекция:

<property name="Columns" vt="Collection">
    <collection>
        <item>
            <property/>
            <property/>
            ...
        </item>
        ...
    </collection>
</property>

Бинарные данные:

<property name="Icon" vt="Binary">
    <bin>...</bin>
    <bin>...</bin>
</property>

Бинарные данные должны быть разбиты на строки по 32 байта каждая и конвертированы в HEX, таким образом каждая пара <bin></bin> может содержать до 64 символов HEX.

koda/ru/documentation/appendice_koda_form_format.txt · Последние изменения: 2014/07/09 10:40 (внешнее изменение)