понедельник, 15 июня 2009 г.

cl-libxml2-0.3.1

Выпустил новую версию cl-libxml2. Ключевые изменения:
  • Смена лицензии на Lisp LGPL
  • Перемещение исходного кода на github (об это я уже писал)
  • Добавление системы xfactory, которая позволяет достаточно просто генерить xml
  • Ну и ещё несколько небольших изменений
Пример использования XFACTORY:
(xtree:with-object (doc (xfactory:with-document-factory 
((XUL "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" "xul")
(SVG "http://www.w3.org/2000/svg" "svg"))
(xfactory:process-instruction "xml-stylesheet" "href=\"style.css\" type=\"text/css\"")
(XUL "window"
(xfactory:namespace "http://www.w3.org/1999/xlink" "xlink")
(XUL "vbox"
(xfactory:attributes :flex 1
:width 500)
(loop for i from 1 to 3
do (XUL "label"
(xfactory:text "text ~A" i)))
(SVG "svg"
(xfactory:attributes :width "500px"
:height "500px")
(SVG "a"
(xfactory:attributes "xlink:href" "http://www.w3.org")
(SVG "rect"
(xfactory:attributes :x 100
:y 100
:width 300
:height 200
:fill "red"))))))))
(xtree:serialize doc *standard-output* :pretty-print t))
==>
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="style.css" type="text/css"?>
<xul:window xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xlink="http://www.w3.org/1999/xlink">
<xul:vbox flex="1" width="500">
<xul:label>text 1</xul:label>
<xul:label>text 2</xul:label>
<xul:label>text 3</xul:label>
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" width="500px" height="500px">
<svg:a xlink:href="http://www.w3.org">
<svg:rect x="100" y="100" width="300" height="200" fill="red"/>
</svg:a>
</svg:svg>
</xul:vbox>
</xul:window>

Комментариев нет:

Отправить комментарий