Language Definition"

From Documentation
Line 10: Line 10:
  
 
{{ZKDevelopersReferenceHeadingToc}}
 
{{ZKDevelopersReferenceHeadingToc}}
 +
 +
Here is a sample (from ZUL's lang.xml):
 +
 +
<source lang="xml">
 +
<language>
 +
<language-name>xul/html</language-name>
 +
<device-type>ajax</device-type>
 +
<namespace>http://www.zkoss.org/2005/zul</namespace>
 +
<extension>zul</extension><!-- the first extension is the major one -->
 +
<extension>xul</extension>
 +
 +
<version>
 +
<version-class>org.zkoss.zul.Version</version-class>
 +
<version-uid>5.0.6</version-uid>
 +
</version>
 +
 +
<javascript package="zk"/>
 +
<javascript package="zul.lang"/>
 +
<stylesheet href="~./zul/css/zk.wcs" type="text/css"/>
 +
 +
<renderer-class>org.zkoss.zul.impl.PageRenderer</renderer-class>
 +
 +
<label-template>
 +
<component-name>label</component-name>
 +
<component-attribute>value</component-attribute>
 +
</label-template>
 +
<macro-template>
 +
<macro-class>org.zkoss.zk.ui.HtmlMacroComponent</macro-class>
 +
</macro-template>
 +
<native-template>
 +
<native-class>org.zkoss.zk.ui.HtmlNativeComponent</native-class>
 +
</native-template>
 +
 +
<component>
 +
<component-name>a</component-name>
 +
<component-class>org.zkoss.zul.A</component-class>
 +
<widget-class>zul.wgt.A</widget-class>
 +
<text-as>label</text-as><!-- treat text within the element as the label property -->
 +
<mold>
 +
<mold-name>default</mold-name>
 +
<mold-uri>mold/a.js</mold-uri>
 +
<css-uri>css/a.css.dsp</css-uri>
 +
</mold>
 +
</component>
 +
</language>
 +
</source>
 +
 
{{ZKDevelopersReferencePageFooter}}
 
{{ZKDevelopersReferencePageFooter}}

Revision as of 06:59, 18 November 2010


Language Definition


A language definition defines a component set (aka., a language). For example, ZUL and XHTML are two component sets.

To define a language definition, you have to prepare a file called /metainfo/zk/lang.xml and makes it available to the classpath (such as in a JAR file, or in WEB-INF/classes of a Web application).

A language addon is used to extend a language definition. It shall be called /metainfo/zk/lang-addon.xml available to the classpath, or specified in WEB-INF/zk.xml.

When ZK starts, it will parse all language definitions and then all language addons based on their dependency. A language addon is a variant of a language definition. They are almost the same, except the naming and it must specify the addon name.


Subsections:


Here is a sample (from ZUL's lang.xml):

<language>
	<language-name>xul/html</language-name>
	<device-type>ajax</device-type>
	<namespace>http://www.zkoss.org/2005/zul</namespace>
	<extension>zul</extension><!-- the first extension is the major one -->
	<extension>xul</extension>

	<version>
		<version-class>org.zkoss.zul.Version</version-class>
		<version-uid>5.0.6</version-uid>
	</version>

	<javascript package="zk"/>
	<javascript package="zul.lang"/>
	<stylesheet href="~./zul/css/zk.wcs" type="text/css"/>

	<renderer-class>org.zkoss.zul.impl.PageRenderer</renderer-class>

	<label-template>
		<component-name>label</component-name>
		<component-attribute>value</component-attribute>
	</label-template>
	<macro-template>
		<macro-class>org.zkoss.zk.ui.HtmlMacroComponent</macro-class>
	</macro-template>
	<native-template>
		<native-class>org.zkoss.zk.ui.HtmlNativeComponent</native-class>
	</native-template>

	<component>
		<component-name>a</component-name>
		<component-class>org.zkoss.zul.A</component-class>
		<widget-class>zul.wgt.A</widget-class>
		<text-as>label</text-as><!-- treat text within the element as the label property -->
		<mold>
			<mold-name>default</mold-name>
			<mold-uri>mold/a.js</mold-uri>
			<css-uri>css/a.css.dsp</css-uri>
		</mold>
	</component>
</language>



Last Update : 2010/11/18

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.