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

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


koda:ru:documentation:appendice_koda_form_format

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

koda:ru:documentation:appendice_koda_form_format [2014/07/09 10:40] (текущий)
Строка 1: Строка 1:
 +====== Формат форм Koda ======
 +
 +Для всех, кто, возможно, захочет конвертировать другие форматы форм в формат Koda или прочитать его в другой программе, написано это руководство по структуре K(oda)X(ml)F(ormat).
 +
 +Формат форм Koda очень простой. Он удовлетворяет требованиям XML и легко может быть прочитан другими программами. Другие программы также могут писать формат Koda.
 +
 +
 +**Примечания:**
 +  * в настоящее время Koda может работать только с файлами в ANSI-кодировке.
 +  * все тэги/атрибуты регистрозависимые.
 +  * узлы "properties" и "components" должны присутствовать в каждом объекте, независимо от того, содержат они что-либо или нет.
 +
 +
 +**Общая структура:**
 +<code xml>
 +<?xml version="1.0"?>
 +<object type="type" name="name">
 +    <properties>
 +        <property name="name" vt="vt">
 +            ...
 +        </property>
 +    </properties>
 +    <components>
 +        <object>
 +            ...
 +            </object>
 +    </components>
 +</object>
 +</code>
 +
 +|**Объект имеет два атрибута:**||
 +|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)://
 +
 +<code xml>
 +<property name="Lines" vt="List">
 +    <list>
 +        <li>...</li>
 +        <li>...</li>
 +    </list>
 +</property>
 +</code>
 +
 +//Коллекция://
 +<code xml>
 +<property name="Columns" vt="Collection">
 +    <collection>
 +        <item>
 +            <property/>
 +            <property/>
 +            ...
 +        </item>
 +        ...
 +    </collection>
 +</property>
 +</code>
 +
 +//Бинарные данные://
 +<code xml>
 +<property name="Icon" vt="Binary">
 +    <bin>...</bin>
 +    <bin>...</bin>
 +</property>
 +</code>
 +
 +Бинарные данные должны быть разбиты на строки по 32 байта каждая и конвертированы в HEX, таким образом каждая пара <bin></bin> может содержать до 64 символов HEX.
  
koda/ru/documentation/appendice_koda_form_format.txt · Последнее изменение: 2014/07/09 10:40 (внешнее изменение)

Инструменты страницы