Hello,
Alex Fritze (of Croczilla fame - SVG support for
Mozilla) has created an alternative XUL tag plugin
"architecture" for Mozilla called XTF - eXtensible Tag
Framework that ends the XBL (XML Binding Language)
misery.
Alex writes in the FOSDOM 2004 talk slides about
Mozilla and SVG (Scalable Vector Graphics):
Lessons from our Crocodile Maths experience
* XBL has many shortcomings (at least for our
application area)
* -> XTF: Extensible Tag Framework - allows
'plugging' new tags into Mozilla
Problems with XBL
* Actually quite good for many interactive apps
(xbl-shapes, Crocodile Maths)
But...
* Many bugs, e.g. prototype chain forking not
working, document element can't be bound, etc.
* No data hiding, no public/private interfaces
* No 'real' inheritance (forking bug, but also no
virtual methods)
* Forces 'visual-directed programming'. OK for some
apps. Not OK for e.g. apps with multiple views -> Want
document-view (or MVC) split
* Performance overhead; no C++ implementations
possible
XTF - An eXtensible Tag Framework
* New elements implemented in 'plug-in' XPCOM
module
* Allows us to do almost anything that XBL can do.
And more!
* Can use proper inheritance
* Data hiding, public/private interfaces
* Control over interfaces exposed for scripting
* Tags can be coded in any xpcom-compatible
language
* Can code html/xul/svg compatible tags
Alex is not all talk but has also created the full
XTF machinery and some examples such as the <similey>
tag (see below). Alex writes "Technology similar to
XTF (XTL) is in Crocodile Maths now. Order of
magnitude speed improvement.".
Full story @ http://www.croczilla.com/xtf
and http://www.croczilla.com/~alex/fosdem2004
and http://www.croczilla.com/svg
and http://www.mozilla.org/projects/svg
- Gerald
PS: <smiley> tag example using XTF:
<svg xmlns="http://www.w3.org/2000/svg">
<smiley xmlns="urn:mozilla:xtf:tests:shapes"
transform="translate(120,150)"/>
<smiley xmlns="urn:mozilla:xtf:tests:shapes"
style="fill:red;"
transform="translate(100) rotate(30)
scale(0.5)"/>
<smiley xmlns="urn:mozilla:xtf:tests:shapes"
style="fill:green;"
transform="translate(200,50) rotate(-30)
scale(0.5)"/>
</svg>
Source:
http://www.croczilla.com/~alex/fosdem2004/xtf-tags.html
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
xul-announce mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xul-announce