Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/.classpath8
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/.cvsignore1
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/.project29
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs5
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/build.properties9
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/dump.jet5
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/build.properties.jet35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/customTargets.xml.jet215
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/main.jet85
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/build.properties.jet35
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/customTargets.xml.jet215
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/_SHORTNAME_.map.jet12
-rw-r--r--examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/build.cfg.jet4
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.classpath8
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.cvsignore1
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.project29
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jet.prefs5
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/spaces.publishing.prefs5
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/META-INF/MANIFEST.MF9
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/build.properties11
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/.placeholder0
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/plugin.xml21
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/sample.xml3
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/initControl.jet16
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/swtStyles.jet17
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/initControl.jet19
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/swtStyles.jet11
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/initControl.jet10
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/swtStyles.jet5
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/controlData.xml.jet42
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/initControl.jet12
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/swtStyles.jet8
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/initControl.jet10
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/swtStyles.jet23
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/initControl.jet10
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/swtStyles.jet8
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/initControl.jet10
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/swtStyles.jet11
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridData.jet30
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridLayout.jet27
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/initControl.jet13
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/swtStyles.jet20
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/initControl.jet19
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/swtStyles.jet8
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/initControl.jet16
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/swtStyles.jet32
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/dump.jet5
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/event/eventData.xml.jet44
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/main.jet74
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/codeBehind.java.jet39
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flatten.xml.jet13
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flattenControl.jet29
-rw-r--r--examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/wizardPage.java.jet124
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/.project22
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/.settings/spaces.publishing.prefs5
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/META-INF/MANIFEST.MF5
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/build.properties6
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/dump.xml44
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/flattened.xml73
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (test.wizardpage.xml).launch6
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (codeBehind) (test.wizardpage.xml).launch6
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (jmerge) (test.wizardpage.xml).launch6
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/test.wizardpage.xml48
-rw-r--r--examples/org.eclipse.jet.examples.ec2008/wizardPageLayout.xsd834
66 files changed, 2524 insertions, 0 deletions
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.classpath b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.classpath
new file mode 100644
index 0000000..c7bb288
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="jet2java"/>
+ <classpathentry exported="true" kind="lib" path="bin" sourcepath="bin"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.cvsignore b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.cvsignore
new file mode 100644
index 0000000..ba077a4
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.cvsignore
@@ -0,0 +1 @@
+bin
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.project b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.project
new file mode 100644
index 0000000..4bd99ae
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jet.ec2008.pushbuttonbuild</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jet.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.jet.jet2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..03d0280
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+#Fri Apr 04 11:34:05 EDT 2008
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs
new file mode 100644
index 0000000..a962fe0
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/.settings/org.eclipse.jet.prefs
@@ -0,0 +1,5 @@
+#Mon Mar 17 13:52:25 PDT 2008
+eclipse.preferences.version=1
+org.eclipse.jet.compiledTemplatePackage=org.eclipse.jet.ec2008.pushbuttonbuild.compiled
+org.eclipse.jet.compiledTemplateSrcDir=jet2java
+org.eclipse.jet.projectPrefs=true
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/build.properties b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/build.properties
new file mode 100644
index 0000000..cb23e8a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/build.properties
@@ -0,0 +1,9 @@
+source.. = jet2java/
+output.. = bin/
+bin.includes = .,\
+ plugin.xml,\
+ META-INF/,\
+ templates/
+src.includes = .project,\
+ build.properties,\
+ .classpath
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/dump.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/dump.jet
new file mode 100644
index 0000000..428f088
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/dump.jet
@@ -0,0 +1,5 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<?xml version="1.0" encoding="utf-8"?>
+<c:dump select="/*" format="true" entities="true"/>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/build.properties.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/build.properties.jet
new file mode 100644
index 0000000..05dbb0e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/build.properties.jet
@@ -0,0 +1,35 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<c:choose>
+<c:when test="$build/@jre = 'J2SE-1.5'">
+javacSource=5.0
+javacTarget=5.0
+</c:when>
+<c:when test="$build/@jre = 'J2SE-1.4'">
+javacSource=1.4
+javacTarget=1.4
+</c:when>
+</c:choose>
+
+buildDirectory=${builder}/../eclipse
+buildType=I
+buildId=${buildId}
+buildLabel=${buildLabel}
+timestamp=0000
+collPlace=.
+collBase=.
+baseLocation=
+configs=*,*,*
+baseos=linux
+basews=gtk
+basearch=x86
+bootclasspath=${java.home}/lib/*.jar
+javacFailOnError=true
+javacVerbose=true
+javacDebugInfo=on
+zipargs=
+archivesFormat = *,*,*-antZip
+collectingFolder=eclipse
+archivePrefix=eclipse
+generateFeatureVersionSuffix=true
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/customTargets.xml.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/customTargets.xml.jet
new file mode 100644
index 0000000..227ba19
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/extraZIP/customTargets.xml.jet
@@ -0,0 +1,215 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<project name="Build specific targets and properties" default="noDefault" basedir=".">
+
+ <property name="archiveName" value="<c:get select="$build/@parentProjectName"/>-${subprojectName}-<c:get select="$extraZIP/@name"/>-<c:get select="$build/@incubationTag"/>${buildAlias}.zip" />
+ <!-- ===================================================================== -->
+ <!-- Run a given ${target} on all elements being built -->
+ <!-- ===================================================================== -->
+ <target name="allElements">
+ <ant antfile="${genericTargets}" target="${target}">
+ <property name="type" value="feature" />
+ <property name="id" value="org.eclipse.<c:get select="$build/@projectNamespace"/>.<c:get select="$extraZIP/@name"/>" />
+ </ant>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Targets to assemble the built elements for particular configurations -->
+ <!-- These generally call the generated assemble scripts (named in -->
+ <!-- ${assembleScriptName}) but may also add pre and post processing -->
+ <!-- Add one target for each root element and each configuration -->
+ <!-- ===================================================================== -->
+
+ <target name="assemble.org.eclipse.<c:get select="$build/@projectNamespace"/>.<c:get select="$extraZIP/@name"/>">
+ <ant antfile="${assembleScriptName}" />
+ <!-- ADD POST STEPS -->
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Check out map files from correct repository -->
+ <!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->
+ <!-- ===================================================================== -->
+ <target name="checkLocal">
+ <available property="mapsLocal" file="${buildDirectory}/maps" />
+ </target>
+
+ <target name="getMapFiles" depends="checkLocal" unless="mapsLocal">
+
+ <!-- *** change the repo info -->
+ <property name="mapCvsRoot" value=":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}" />
+
+ <property name="mapVersionTag" value="HEAD" />
+ <property name="packagePath" value="org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps"/>
+
+ <cvs cvsRsh="ssh" cvsRoot="${mapCvsRoot}" tag="${mapVersionTag}"
+ package="${packagePath}" dest="${buildDirectory}/maps" />
+ <copy todir="${buildDirectory}/maps/CVS" overwrite="true">
+ <fileset dir="${buildDirectory}/maps/${packagePath}/CVS" />
+ </copy>
+ <copy todir="${buildDirectory}/maps" overwrite="true">
+ <fileset dir="${buildDirectory}/maps/${packagePath}" />
+ </copy>
+ <delete dir="${buildDirectory}/maps/org.eclipse.${projectName}" />
+
+ <!--tag the map files project-->
+ <antcall target="tagMapFiles" />
+ </target>
+
+ <target name="tagMapFiles" if="tagMaps">
+ <cvs cvsRsh="ssh" dest="${buildDirectory}/maps" command="tag v${timestamp}" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before setup -->
+ <!-- ===================================================================== -->
+ <target name="preSetup">
+ <mkdir dir="${buildDirectory}/${buildLabel}"/>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after setup but before starting the build proper -->
+ <!-- ===================================================================== -->
+ <target name="postSetup">
+ <!-- TODO: if your project requires more dependencies, add them here -->
+ <!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->
+ <echo message="Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ..." />
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${eclipseURL}" />
+ <property name="file" value="${eclipseFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${emfURL}" />
+ <property name="file" value="${emfFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${uml2URL}" />
+ <property name="file" value="${uml2File}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${oclURL}" />
+ <property name="file" value="${oclFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${queryURL}" />
+ <property name="file" value="${queryFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${transactionURL}" />
+ <property name="file" value="${transactionFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${validationURL}" />
+ <property name="file" value="${validationFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${gefURL}" />
+ <property name="file" value="${gefFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.gef/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${gmfURL}" />
+ <property name="file" value="${gmfFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF" />
+ </ant>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before fetching the build elements -->
+ <!-- ===================================================================== -->
+ <target name="preFetch">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the fetch -->
+ <!-- ===================================================================== -->
+ <target name="postFetch">
+ <replace dir="${buildDirectory}/plugins" value="${timestamp}" token="@buildid@">
+ <include name="**/about.mappings" />
+ </replace>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before generating build scripts -->
+ <!-- ===================================================================== -->
+ <target name="preGenerate">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after generating the build scripts -->
+ <!-- ===================================================================== -->
+ <target name="postGenerate">
+ <antcall target="clean" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before assembling -->
+ <!-- ===================================================================== -->
+ <target name="preAssemble">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after assembling-->
+ <!-- ===================================================================== -->
+ <target name="postAssemble">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before running the build.xmls for the elements being built. -->
+ <!-- ===================================================================== -->
+ <target name="preProcess">
+ <replace dir="${buildDirectory}/plugins" value="${timestamp}" token="@build@">
+ <include name="**/about.mappings" />
+ </replace>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after running the build.xmls for the elements being built. -->
+ <!-- ===================================================================== -->
+ <target name="postProcess">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after everything is built and assembled -->
+ <!-- (e.g., testing, posting, emailing, ...) -->
+ <!-- ===================================================================== -->
+ <target name="postBuild">
+ <antcall target="gatherLogs" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Helper targets -->
+ <!-- ===================================================================== -->
+ <target name="gatherLogs">
+ <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
+ <antcall target="allElements">
+ <param name="target" value="gatherLogs" />
+ </antcall>
+
+ <unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true">
+ <fileset dir="${buildDirectory}/features/org.eclipse.<c:get select="$build/@projectNamespace"/>.<c:get select="$extraZIP/@name"/>">
+ <include name="*.log.zip" />
+ </fileset>
+ </unzip>
+ </target>
+ <target name="clean" unless="noclean">
+ <antcall target="allElements">
+ <param name="target" value="cleanElement" />
+ </antcall>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Default target -->
+ <!-- ===================================================================== -->
+ <target name="noDefault">
+ <echo message="You must specify a target when invoking this file" />
+ </target>
+
+</project>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/main.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/main.jet
new file mode 100644
index 0000000..2dd7451
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/main.jet
@@ -0,0 +1,85 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%@taglib prefix="ws" id="org.eclipse.jet.workspaceTags" %>
+<%-- Main entry point for org.eclipse.jet.ec2008.pushbuttonbuild --%>
+
+<%--
+TODO: traverse input model, performing calculations and storing
+the results as model annotations via c:set tag
+--%>
+<c:setVariable var="build" select="/*"/>
+
+<c:set select="$build" name="relengProjectName">org.eclipse.<c:get select="$build/@projectNamespace"/>.releng</c:set>
+<c:set select="$build" name="incubationTag"></c:set>
+<c:if test="$build/@isIncubation = 'true'">
+ <c:set select="$build" name="incubationTag">incubation-</c:set>
+</c:if>
+<%--
+TODO: traverse annotated model, performing text generation actions
+such as ws:file, ws:folder and ws:project
+--%>
+<ws:project name="{$build/@relengProjectName}">
+ <ws:file path=".project" template="templates/project/project.jet"/>
+ <ws:file path="build.xml" template="templates/project/build.xml.jet"/>
+ <ws:file path="buildAll.xml" template="templates/project/buildAll.xml.jet"/>
+ <ws:file path="projectToEclipse.{$build/@shortName}.properties" template="templates/project/promoteToEclipse._SHORTNAME_.properties.jet"/>
+ <ws:file path="repoInfo.properties" template="templates/project/repoInfo.properties.jet"/>
+ <ws:file path="testManifest.xml" template="templates/project/testManifest.xml.jet"/>
+ <ws:folder path="builder">
+ <ws:folder path="doc">
+ <ws:file path="build.properties" template="templates/project/builder/doc/build.properties.jet"/>
+ <ws:file path="customTargets.xml" template="templates/project/builder/doc/customTargets.xml.jet"/>
+ </ws:folder>
+ <ws:folder path="examples">
+ <ws:file path="build.properties" template="templates/project/builder/examples/build.properties.jet"/>
+ <ws:file path="customTargets.xml" template="templates/project/builder/examples/customTargets.xml.jet"/>
+ </ws:folder>
+ <ws:folder path="runtime">
+ <ws:file path="build.properties" template="templates/project/builder/runtime/build.properties.jet"/>
+ <ws:file path="customTargets.xml" template="templates/project/builder/runtime/customTargets.xml.jet"/>
+ </ws:folder>
+ <ws:folder path="sdk">
+ <ws:file path="build.properties" template="templates/project/builder/sdk/build.properties.jet"/>
+ <ws:file path="customTargets.xml" template="templates/project/builder/sdk/customTargets.xml.jet"/>
+ </ws:folder>
+ <ws:folder path="tests">
+ <ws:folder path="configs/local">
+ <ws:file path="chkpii_ignore_list.txt" template="templates/project/builder/tests/configs/local/chkpii_ignore_list.txt.jet"/>
+ <ws:file path="customTest.xml" template="templates/project/builder/tests/configs/local/customTest.xml.jet"/>
+ <ws:file path="relengbuildgtk.sh" template="templates/project/builder/tests/configs/local/relengbuildgtk.sh.jet"/>
+ <ws:file path="testing.properties" template="templates/project/builder/tests/configs/local/testing.properties.jet"/>
+ </ws:folder>
+ <ws:folder path="scripts">
+ <ws:file path="readme.html" template="templates/project/builder/tests/scripts/readme.html.jet"/>
+ <ws:file path="test.xml" template="templates/project/builder/tests/scripts/test.xml.jet"/>
+ </ws:folder>
+ <ws:file path="build.properties" template="templates/project/builder/tests/build.properties.jet"/>
+ <ws:file path="customTargets.xml" template="templates/project/builder/tests/customTargets.xml.jet"/>
+ </ws:folder>
+ </ws:folder>
+ <ws:folder path="maps">
+ <ws:file path="{$build/@shortName}.map" template="templates/project/maps/_SHORTNAME_.map.jet"/>
+ <ws:file path="build.cfg" template="templates/project/maps/build.cfg.jet"/>
+ </ws:folder>
+ <ws:folder path="templateFiles">
+ <ws:file path="{$build/@shortName}.map.template" template="templates/project/templateFiles/_SHORTNAME_.map.template.jet"/>
+ <ws:file path="testManifest.xml.template" template="templates/project/templateFiles/testManifest.xml.template.jet"/>
+ </ws:folder>
+
+</ws:project>
+
+<c:iterate select="$build/extraZIP" var="extraZIP">
+ <ws:folder path="{$build/@relengProjectName}/builder/{$extraZIP/@name}">
+ <ws:file path="build.properties" template="templates/extraZIP/build.properties.jet"/>
+ <ws:file path="customTargets.xml" template="templates/extraZIP/customTargets.xml.jet"/>
+ </ws:folder>
+</c:iterate>
+<%-- For debug purposes, dump the annotated input model in
+ the root of the project containing the original input model.
+
+ Note that model formatting may not be identical, and that in
+ the case of non-XML input models, the dump may look quite different.
+--%>
+
+<ws:file template="templates/dump.jet" path="{$org.eclipse.jet.resource.project.name}/dump.xml"/>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/build.properties.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/build.properties.jet
new file mode 100644
index 0000000..05dbb0e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/build.properties.jet
@@ -0,0 +1,35 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<c:choose>
+<c:when test="$build/@jre = 'J2SE-1.5'">
+javacSource=5.0
+javacTarget=5.0
+</c:when>
+<c:when test="$build/@jre = 'J2SE-1.4'">
+javacSource=1.4
+javacTarget=1.4
+</c:when>
+</c:choose>
+
+buildDirectory=${builder}/../eclipse
+buildType=I
+buildId=${buildId}
+buildLabel=${buildLabel}
+timestamp=0000
+collPlace=.
+collBase=.
+baseLocation=
+configs=*,*,*
+baseos=linux
+basews=gtk
+basearch=x86
+bootclasspath=${java.home}/lib/*.jar
+javacFailOnError=true
+javacVerbose=true
+javacDebugInfo=on
+zipargs=
+archivesFormat = *,*,*-antZip
+collectingFolder=eclipse
+archivePrefix=eclipse
+generateFeatureVersionSuffix=true
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/customTargets.xml.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/customTargets.xml.jet
new file mode 100644
index 0000000..93f07d7
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/builder/sdk/customTargets.xml.jet
@@ -0,0 +1,215 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<project name="Build specific targets and properties" default="noDefault" basedir=".">
+
+ <property name="archiveName" value="<c:get select="$build/@parentProjectName"/>-${subprojectName}-SDK-<c:get select="$build/@incubationTag"/>${buildAlias}.zip" />
+ <!-- ===================================================================== -->
+ <!-- Run a given ${target} on all elements being built -->
+ <!-- ===================================================================== -->
+ <target name="allElements">
+ <ant antfile="${genericTargets}" target="${target}">
+ <property name="type" value="feature" />
+ <property name="id" value="org.eclipse.<c:get select="$build/@projectNamespace"/>.sdk" />
+ </ant>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Targets to assemble the built elements for particular configurations -->
+ <!-- These generally call the generated assemble scripts (named in -->
+ <!-- ${assembleScriptName}) but may also add pre and post processing -->
+ <!-- Add one target for each root element and each configuration -->
+ <!-- ===================================================================== -->
+
+ <target name="assemble.org.eclipse.<c:get select="$build/@projectNamespace"/>.sdk">
+ <ant antfile="${assembleScriptName}" />
+ <!-- ADD POST STEPS -->
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Check out map files from correct repository -->
+ <!-- Replace values for cvsRoot, package and mapVersionTag as desired. -->
+ <!-- ===================================================================== -->
+ <target name="checkLocal">
+ <available property="mapsLocal" file="${buildDirectory}/maps" />
+ </target>
+
+ <target name="getMapFiles" depends="checkLocal" unless="mapsLocal">
+
+ <!-- *** change the repo info -->
+ <property name="mapCvsRoot" value=":${cvsReadProtocol}:${cvsReadUser}@${cvsHost}:${cvsRep}" />
+
+ <property name="mapVersionTag" value="HEAD" />
+ <property name="packagePath" value="org.eclipse.${projectName}/org.eclipse.${subprojectName2}.releng/maps"/>
+
+ <cvs cvsRsh="ssh" cvsRoot="${mapCvsRoot}" tag="${mapVersionTag}"
+ package="${packagePath}" dest="${buildDirectory}/maps" />
+ <copy todir="${buildDirectory}/maps/CVS" overwrite="true">
+ <fileset dir="${buildDirectory}/maps/${packagePath}/CVS" />
+ </copy>
+ <copy todir="${buildDirectory}/maps" overwrite="true">
+ <fileset dir="${buildDirectory}/maps/${packagePath}" />
+ </copy>
+ <delete dir="${buildDirectory}/maps/org.eclipse.${projectName}" />
+
+ <!--tag the map files project-->
+ <antcall target="tagMapFiles" />
+ </target>
+
+ <target name="tagMapFiles" if="tagMaps">
+ <cvs cvsRsh="ssh" dest="${buildDirectory}/maps" command="tag v${timestamp}" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before setup -->
+ <!-- ===================================================================== -->
+ <target name="preSetup">
+ <mkdir dir="${buildDirectory}/${buildLabel}"/>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after setup but before starting the build proper -->
+ <!-- ===================================================================== -->
+ <target name="postSetup">
+ <!-- TODO: if your project requires more dependencies, add them here -->
+ <!-- TODO: if your project requires more dependencies, add them here; if it does not require all of these, remove those not required -->
+ <echo message="Download, then unpack: Eclipse, EMF, UML2, OCL, Query, Transaction, Validation, GEF, GMF ..." />
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${eclipseURL}" />
+ <property name="file" value="${eclipseFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.platform.doc.isv/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${emfURL}" />
+ <property name="file" value="${emfFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.ecore/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${uml2URL}" />
+ <property name="file" value="${uml2File}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.uml2/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${oclURL}" />
+ <property name="file" value="${oclFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.ocl/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${queryURL}" />
+ <property name="file" value="${queryFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.query/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${transactionURL}" />
+ <property name="file" value="${transactionFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.transaction/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${validationURL}" />
+ <property name="file" value="${validationFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.emf.validation/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${gefURL}" />
+ <property name="file" value="${gefFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.gef/plugin.xml" />
+ </ant>
+ <ant target="getDependency" antfile="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/getDependencies.xml">
+ <property name="url" value="${gmfURL}" />
+ <property name="file" value="${gmfFile}" />
+ <property name="isUnpackedFile" value="${buildDirectory}/plugins/org.eclipse.gmf/META-INF/MANIFEST.MF" />
+ </ant>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before fetching the build elements -->
+ <!-- ===================================================================== -->
+ <target name="preFetch">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the fetch -->
+ <!-- ===================================================================== -->
+ <target name="postFetch">
+ <replace dir="${buildDirectory}/plugins" value="${timestamp}" token="@buildid@">
+ <include name="**/about.mappings" />
+ </replace>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before generating build scripts -->
+ <!-- ===================================================================== -->
+ <target name="preGenerate">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after generating the build scripts -->
+ <!-- ===================================================================== -->
+ <target name="postGenerate">
+ <antcall target="clean" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before assembling -->
+ <!-- ===================================================================== -->
+ <target name="preAssemble">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after assembling-->
+ <!-- ===================================================================== -->
+ <target name="postAssemble">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before running the build.xmls for the elements being built. -->
+ <!-- ===================================================================== -->
+ <target name="preProcess">
+ <replace dir="${buildDirectory}/plugins" value="${timestamp}" token="@build@">
+ <include name="**/about.mappings" />
+ </replace>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after running the build.xmls for the elements being built. -->
+ <!-- ===================================================================== -->
+ <target name="postProcess">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after everything is built and assembled -->
+ <!-- (e.g., testing, posting, emailing, ...) -->
+ <!-- ===================================================================== -->
+ <target name="postBuild">
+ <antcall target="gatherLogs" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Helper targets -->
+ <!-- ===================================================================== -->
+ <target name="gatherLogs">
+ <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
+ <antcall target="allElements">
+ <param name="target" value="gatherLogs" />
+ </antcall>
+
+ <unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true">
+ <fileset dir="${buildDirectory}/features/org.eclipse.<c:get select="$build/@projectNamespace"/>.sdk">
+ <include name="*.log.zip" />
+ </fileset>
+ </unzip>
+ </target>
+ <target name="clean" unless="noclean">
+ <antcall target="allElements">
+ <param name="target" value="cleanElement" />
+ </antcall>
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Default target -->
+ <!-- ===================================================================== -->
+ <target name="noDefault">
+ <echo message="You must specify a target when invoking this file" />
+ </target>
+
+</project>
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/_SHORTNAME_.map.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/_SHORTNAME_.map.jet
new file mode 100644
index 0000000..cdd7232
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/_SHORTNAME_.map.jet
@@ -0,0 +1,12 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+!*************** PROJECT CONTRIBUTION ********************************************************
+
+!*** Special entries from eclipse
+
+plugin@org.eclipse.test=v20070226,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
+fragment@org.eclipse.ant.optional.junit=v20050226,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse,
+
+!*** Project's plugins, features and fragments
+
diff --git a/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/build.cfg.jet b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/build.cfg.jet
new file mode 100644
index 0000000..71b6fb9
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.pushbuttonbuild/templates/project/maps/build.cfg.jet
@@ -0,0 +1,4 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+# this file's contents are generated \ No newline at end of file
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.classpath b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.classpath
new file mode 100644
index 0000000..c7bb288
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="jet2java"/>
+ <classpathentry exported="true" kind="lib" path="bin" sourcepath="bin"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.cvsignore b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.cvsignore
new file mode 100644
index 0000000..ba077a4
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.cvsignore
@@ -0,0 +1 @@
+bin
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.project b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.project
new file mode 100644
index 0000000..87564a5
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jet.ec2008.swtgen.codebehind</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jet.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.jet.jet2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jdt.core.prefs b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..7031bc2
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+#Sun Mar 16 10:58:40 EDT 2008
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jet.prefs b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jet.prefs
new file mode 100644
index 0000000..2237e79
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/org.eclipse.jet.prefs
@@ -0,0 +1,5 @@
+#Fri Feb 29 13:10:53 EST 2008
+eclipse.preferences.version=1
+org.eclipse.jet.compiledTemplatePackage=org.eclipse.jet.ec2008.swtgen.compiled
+org.eclipse.jet.compiledTemplateSrcDir=jet2java
+org.eclipse.jet.projectPrefs=true
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/spaces.publishing.prefs b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/spaces.publishing.prefs
new file mode 100644
index 0000000..ef7464a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/.settings/spaces.publishing.prefs
@@ -0,0 +1,5 @@
+#Sun Mar 16 18:27:54 PDT 2008
+areaName=EC2008-JET
+eclipse.preferences.version=1
+selector=org.eclipse.spaces.osgi.internal.updatesite.UpdateSiteSelector
+spaceAddress=spaces\:xdrive\://pelderibm@aim.com,eclipse.xdrive.com/
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/META-INF/MANIFEST.MF b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..621ba05
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/META-INF/MANIFEST.MF
@@ -0,0 +1,9 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: SWT Generator
+Bundle-SymbolicName: org.eclipse.jet.ec2008.swtgen.codebehind;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Vendor:
+Require-Bundle: org.eclipse.jet
+Bundle-ClassPath: .,bin/
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/build.properties b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/build.properties
new file mode 100644
index 0000000..a9abadb
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/build.properties
@@ -0,0 +1,11 @@
+source.. = jet2java/
+output.. = bin/
+bin.includes = .,\
+ plugin.xml,\
+ META-INF/,\
+ templates/
+src.includes = .project,\
+ build.properties,\
+ .classpath,\
+ sample.xml,\
+ .settings/
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/.placeholder b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/.placeholder
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/jet2java/.placeholder
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/plugin.xml b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/plugin.xml
new file mode 100644
index 0000000..7007552
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/plugin.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+ <extension
+ id=""
+ name=""
+ point="org.eclipse.jet.transform">
+ <transform
+ startTemplate="templates/main.jet"
+ templateLoaderClass="org.eclipse.jet.ec2008.swtgen.compiled._jet_transformation"
+ >
+ <description>Generate SWT-based dialogs and wizard ages</description>
+ <tagLibraries>
+ <importLibrary id="org.eclipse.jet.controlTags" usePrefix="c" autoImport="true"/>
+ <importLibrary id="org.eclipse.jet.javaTags" usePrefix="java" autoImport="true"/>
+ <importLibrary id="org.eclipse.jet.formatTags" usePrefix="f" autoImport="true"/>
+ <importLibrary id="org.eclipse.jet.workspaceTags" usePrefix="ws" autoImport="false"/>
+ </tagLibraries>
+ </transform>
+ </extension>
+</plugin> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/sample.xml b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/sample.xml
new file mode 100644
index 0000000..84ff56b
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/sample.xml
@@ -0,0 +1,3 @@
+<root>
+
+</root> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/initControl.jet
new file mode 100644
index 0000000..f096295
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/initControl.jet
@@ -0,0 +1,16 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- button --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
+<c:if test="$control/@grayed">
+ <c:get select="$control/@name"/>.setGreyed(<c:get select="$control/@grayed"/>);
+</c:if>
+<c:if test="$control/@selection">
+ <c:get select="$control/@name"/>.setSelection(<c:get select="$control/@selection"/>);
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/swtStyles.jet
new file mode 100644
index 0000000..6eef889
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/button/swtStyles.jet
@@ -0,0 +1,17 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- button --%>
+ SWT.<c:get select="$control/@style"/>
+<c:if test="$control/@border = 'true'">
+ |SWT.BORDER
+</c:if>
+<c:if test="$control/@flat = 'true'">
+ |SWT.FLAT
+</c:if>
+<c:if test="$control/@alignment">
+ |SWT.<c:get select="$control/@alignment"/>
+</c:if>
+<c:if test="$control/@arrowStyle">
+ |SWT.<c:get select="$control/@arrowStyle"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/initControl.jet
new file mode 100644
index 0000000..3299830
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/initControl.jet
@@ -0,0 +1,19 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- combo --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@visibleItemCount">
+ <c:get select="$control/@message"/>.setVisibleItemCount(<c:get select="$control/@visibleItemCount"/>);
+</c:if>
+<c:if test="$control/@textLimit">
+ <c:get select="$control/@name"/>.setTextLimit(<c:get select="$control/@textLimit"/>);
+</c:if>
+<c:iterate select="$control/item" var="item">
+ <c:get select="$control/@name"/>.add("<c:get select="$item"/>");
+</c:iterate>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/swtStyles.jet
new file mode 100644
index 0000000..bdc3f34
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/combo/swtStyles.jet
@@ -0,0 +1,11 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- combo --%>
+ SWT.NONE
+<c:if test="$control/@readOnly = 'true'">
+ |SWT.READ_ONLY
+</c:if>
+<c:if test="$control/@style">
+ |SWT.<c:get select="$control/@style"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/initControl.jet
new file mode 100644
index 0000000..0a01fcd
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/initControl.jet
@@ -0,0 +1,10 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- composite --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+
+ <c:include template="templates/control/setGridLayout.jet"/>
+
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/swtStyles.jet
new file mode 100644
index 0000000..524b58b
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/composite/swtStyles.jet
@@ -0,0 +1,5 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- composite --%>
+ SWT.NONE
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/controlData.xml.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/controlData.xml.jet
new file mode 100644
index 0000000..3d3d46f
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/controlData.xml.jet
@@ -0,0 +1,42 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+ <button javaType="org.eclipse.swt.widgets.Button"
+ swtStylesTemplate="templates/control/button/swtStyles.jet"
+ initControlTemplate="templates/control/button/initControl.jet"/>
+
+ <combo javaType="org.eclipse.swt.widgets.Combo"
+ swtStylesTemplate="templates/control/combo/swtStyles.jet"
+ initControlTemplate="templates/control/combo/initControl.jet"/>
+
+ <composite javaType="org.eclipse.swt.widgets.Composite"
+ swtStylesTemplate="templates/control/composite/swtStyles.jet"
+ initControlTemplate="templates/control/composite/initControl.jet"/>
+
+ <group javaType="org.eclipse.swt.widgets.Group"
+ swtStylesTemplate="templates/control/group/swtStyles.jet"
+ initControlTemplate="templates/control/group/initControl.jet"/>
+
+ <label javaType="org.eclipse.swt.widgets.Label"
+ swtStylesTemplate="templates/control/label/swtStyles.jet"
+ initControlTemplate="templates/control/label/initControl.jet"/>
+
+ <link javaType="org.eclipse.swt.widgets.Link"
+ swtStylesTemplate="templates/control/link/swtStyles.jet"
+ initControlTemplate="templates/control/link/initControl.jet"/>
+
+ <list javaType="org.eclipse.swt.widgets.List"
+ swtStylesTemplate="templates/control/list/swtStyles.jet"
+ initControlTemplate="templates/control/list/initControl.jet"/>
+
+ <table javaType="org.eclipse.swt.widgets.Table"
+ swtStylesTemplate="templates/control/table/swtStyles.jet"
+ initControlTemplate="templates/control/table/initControl.jet"/>
+
+ <tableColumn javaType="org.eclipse.swt.widgets.TableColumn"
+ swtStylesTemplate="templates/control/tableColumn/swtStyles.jet"
+ initControlTemplate="templates/control/tableColumn/initControl.jet"/>
+
+ <text javaType="org.eclipse.swt.widgets.Text"
+ swtStylesTemplate="templates/control/text/swtStyles.jet"
+ initControlTemplate="templates/control/text/initControl.jet"/>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/initControl.jet
new file mode 100644
index 0000000..bfd3a1d
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/initControl.jet
@@ -0,0 +1,12 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- group --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
+
+ <c:include template="templates/control/setGridLayout.jet"/>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/swtStyles.jet
new file mode 100644
index 0000000..578fcfe
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/group/swtStyles.jet
@@ -0,0 +1,8 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- group --%>
+ SWT.NONE
+<c:if test="$control/@shadow">
+ |SWT.SHADOW_<c:get select="$control/@orientation"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/initControl.jet
new file mode 100644
index 0000000..133e87a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/initControl.jet
@@ -0,0 +1,10 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- label --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/swtStyles.jet
new file mode 100644
index 0000000..726804e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/label/swtStyles.jet
@@ -0,0 +1,23 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- label --%>
+ SWT.NONE
+<c:if test="$control/@border = 'true'">
+ |SWT.BORDER
+</c:if>
+<c:if test="$control/@separator = 'true'">
+ |SWT.SEPARATOR
+</c:if>
+<c:if test="$control/@wrap = 'true'">
+ |SWT.WRAP
+</c:if>
+<c:if test="$control/@alignment">
+ |SWT.<c:get select="$control/@alignment"/>
+</c:if>
+<c:if test="$control/@orientation">
+ |SWT.<c:get select="$control/@orientation"/>
+</c:if>
+<c:if test="$control/@shadow">
+ |SWT.SHADOW_<c:get select="$control/@orientation"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/initControl.jet
new file mode 100644
index 0000000..224b6f4
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/initControl.jet
@@ -0,0 +1,10 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- link --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/swtStyles.jet
new file mode 100644
index 0000000..eb395e8
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/link/swtStyles.jet
@@ -0,0 +1,8 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- link --%>
+ SWT.NONE
+<c:if test="$control/@border = 'true'">
+ |SWT.BORDER
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/initControl.jet
new file mode 100644
index 0000000..8fa81a9
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/initControl.jet
@@ -0,0 +1,10 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- list --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:iterate select="$control/item" var="item">
+ <c:get select="$control/@name"/>.add("<c:get select="$item"/>");
+</c:iterate> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/swtStyles.jet
new file mode 100644
index 0000000..2e82e15
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/list/swtStyles.jet
@@ -0,0 +1,11 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- list --%>
+ SWT.NONE
+<c:if test="not($control/@border) or $control/@border = 'true'">
+ |SWT.BORDER
+</c:if>
+<c:if test="$control/@style">
+ |SWT.<c:get select="$control/@style"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridData.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridData.jet
new file mode 100644
index 0000000..c7ee4c0
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridData.jet
@@ -0,0 +1,30 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+ <java:import>org.eclipse.jface.layout.GridDataFactory</java:import>.defaultsFor(<c:get select="$control/@name"/>)
+<c:iterate select="$control/gridData/*" var="data">
+<c:choose>
+<c:when test="$data/self::align">
+ .align(SWT.<c:get select="$data/@hAlign"/>, SWT.<c:get select="$data/@vAlign"/>)
+</c:when>
+<c:when test="$data/self::exclude">
+ .exclude(true)
+</c:when>
+<c:when test="$data/self::grab">
+ .grab(<c:get select="$data/@horizontal"/>, <c:get select="$data/@vertical"/>)
+</c:when>
+<c:when test="$data/self::hint">
+ .hint(<c:get select="$data/@xHint"/>, <c:get select="$data/@yHint"/>)
+</c:when>
+<c:when test="$data/self::indent">
+ .indent(<c:get select="$data/@hIndent"/>, <c:get select="$data/@vIndent"/>)
+</c:when>
+<c:when test="$data/self::minSize">
+ .minSize(<c:get select="$data/@minX"/>, <c:get select="$data/@minY"/>)
+</c:when>
+<c:when test="$data/self::span">
+ .span(<c:get select="$data/@hSpan"/>, <c:get select="$data/@vSpan"/>)
+</c:when>
+</c:choose>
+</c:iterate>
+ .applyTo(<c:get select="$control/@name"/>);
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridLayout.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridLayout.jet
new file mode 100644
index 0000000..a1f6b8a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/setGridLayout.jet
@@ -0,0 +1,27 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<c:if test="$control/gridLayout">
+ <java:import>org.eclipse.jface.layout.GridLayoutFactory</java:import>.swtDefaults()
+<c:iterate select="$control/gridLayout/*" var="layout">
+<c:choose>
+<c:when test="$layout/self::equalWidth">
+ .equalWidth(true)
+</c:when>
+<c:when test="$layout/self::extendedMargins">
+ .extendedMargins(<c:get select="$layout/@left"/>, <c:get select="$layout/@right"/>,
+ <c:get select="$layout/@top"/>, <c:get select="$layout/@bottom"/>)
+</c:when>
+<c:when test="$layout/self::margins">
+ .margins(<c:get select="$layout/@width"/>, <c:get select="$layout/@height"/>)
+</c:when>
+<c:when test="$layout/self::numColumns">
+ .numColumns(<c:get select="$layout/@numColumns"/>)
+</c:when>
+<c:when test="$layout/self::spacing">
+ .spacing(<c:get select="$layout/@hSpacing"/>, <c:get select="$layout/@vSpacing"/>)
+</c:when>
+</c:choose>
+</c:iterate>
+ .applyTo(<c:get select="$control/@name"/>);
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/initControl.jet
new file mode 100644
index 0000000..2b0064c
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/initControl.jet
@@ -0,0 +1,13 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- table --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@headerVisible">
+ <c:get select="$control/@name"/>.setHeaderVisible(<c:get select="$control/@headerVisible"/>);
+</c:if>
+<c:if test="$control/@linesVisible = 'true'">
+ <c:get select="$control/@name"/>.setLinesVisible(<c:get select="$control/@linesVisible"/>);
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/swtStyles.jet
new file mode 100644
index 0000000..94d4d2e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/table/swtStyles.jet
@@ -0,0 +1,20 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- table --%>
+ SWT.NONE
+<c:if test="not($control/@border) or $control/@border = 'true'">
+ |SWT.BORDER
+</c:if>
+<c:if test="$control/@style">
+ |SWT.<c:get select="$control/@style"/>
+</c:if>
+<c:if test="$control/@fullSelection = 'true'">
+ |SWT.FULL_SELECTION
+</c:if>
+<c:if test="$control/@hideSelection = 'true'">
+ |SWT.HIDE_SELECTION
+</c:if>
+<c:if test="$control/@virtual = 'true'">
+ |SWT.VIRTUAL
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/initControl.jet
new file mode 100644
index 0000000..4e56208
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/initControl.jet
@@ -0,0 +1,19 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- tableColumn --%>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
+<c:if test="$control/@toolTipText">
+ <c:get select="$control/@name"/>.setToolTipText("<c:get select="$control/@toolTipText"/>");
+</c:if>
+<c:if test="$control/@width">
+ <c:get select="$control/@name"/>.setWidth(<c:get select="$control/@width"/>);
+</c:if>
+<c:if test="$control/@moveable">
+ <c:get select="$control/@name"/>.setMoveable(<c:get select="$control/@moveable"/>);
+</c:if>
+<c:if test="$control/@resizeable">
+ <c:get select="$control/@name"/>.setResizeable(<c:get select="$control/@resizeable"/>);
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/swtStyles.jet
new file mode 100644
index 0000000..eeda8f4
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/tableColumn/swtStyles.jet
@@ -0,0 +1,8 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- tableColumn --%>
+ SWT.NONE
+<c:if test="$control/@alignment">
+ |SWT.<c:get select="$control/@alignment"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/initControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/initControl.jet
new file mode 100644
index 0000000..8ebf24a
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/initControl.jet
@@ -0,0 +1,16 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- text --%>
+<c:if test="$control/@enabled">
+ <c:get select="$control/@name"/>.setEnabled(<c:get select="$control/@enabled"/>);
+</c:if>
+<c:if test="$control/@text">
+ <c:get select="$control/@name"/>.setText("<c:get select="$control/@text"/>");
+</c:if>
+<c:if test="$control/@message">
+ <c:get select="$control/@message"/>.setMessage("<c:get select="$control/@message"/>");
+</c:if>
+<c:if test="$control/@textLimit">
+ <c:get select="$control/@name"/>.setTextLimit(<c:get select="$control/@textLimit"/>);
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/swtStyles.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/swtStyles.jet
new file mode 100644
index 0000000..8ac2906
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/control/text/swtStyles.jet
@@ -0,0 +1,32 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- text --%>
+ SWT.NONE
+<c:if test="$control/@style">
+ |SWT.<c:get select="$control/@style"/>
+</c:if>
+<c:if test="not($control/@border) or $control/@border = 'true'">
+ |SWT.BORDER
+</c:if>
+<c:if test="$control/@readOnly = 'true'">
+ |SWT.READ_ONLY
+</c:if>
+<c:if test="$control/@wrap = 'true'">
+ |SWT.WRAP
+</c:if>
+<c:if test="$control/@search = 'true'">
+ |SWT.SEARCH
+</c:if>
+<c:if test="$control/@cancel = 'true'">
+ |SWT.CANCEL
+</c:if>
+<c:if test="$control/@password = 'true'">
+ |SWT.PASSWORD
+</c:if>
+<c:if test="$control/@alignment">
+ |SWT.<c:get select="$control/@alignment"/>
+</c:if>
+<c:if test="$control/@scroll">
+ |SWT.<c:get select="$control/@scroll"/>
+</c:if>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/dump.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/dump.jet
new file mode 100644
index 0000000..d21c92b
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/dump.jet
@@ -0,0 +1,5 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<?xml version="1.0" encoding="utf-8"?>
+<c:dump select="$flattened/*" format="true" entities="true"/>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/event/eventData.xml.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/event/eventData.xml.jet
new file mode 100644
index 0000000..5cc218e
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/event/eventData.xml.jet
@@ -0,0 +1,44 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<Selection
+ addListenerMethod="addSelectionListener"
+ handlerBaseClass="org.eclipse.swt.events.SelectionAdapter"
+ handlerMethod="widgetSelected"
+ eventClass="org.eclipse.swt.events.SelectionEvent"
+ delegateMethodSuffix="_selected"/>
+
+<DefaultSelection
+ addListenerMethod="addSelectionListener"
+ handlerBaseClass="org.eclipse.swt.events.SelectionAdapter"
+ handlerMethod="widgetDefaultSelected"
+ eventClass="org.eclipse.swt.events.SelectionEvent"
+ delegateMethodSuffix="_defaultSelected"/>
+
+<Modify
+ addListenerMethod="addModifyListener"
+ handlerBaseClass="org.eclipse.swt.events.ModifyListener"
+ handlerMethod="modifyText"
+ eventClass="org.eclipse.swt.events.ModifyEvent"
+ delegateMethodSuffix="_modify"/>
+
+<Move
+ addListenerMethod="addControlListener"
+ handlerBaseClass="org.eclipse.swt.events.ControlAdapter"
+ handlerMethod="controlMoved"
+ eventClass="org.eclipse.swt.events.ControlEvent"
+ delegateMethodSuffix="_moved"/>
+
+<Resize
+ addListenerMethod="addControlListener"
+ handlerBaseClass="org.eclipse.swt.events.ControlAdapter"
+ handlerMethod="controlResized"
+ eventClass="org.eclipse.swt.events.ControlEvent"
+ delegateMethodSuffix="_resized"/>
+
+<Verify
+ addListenerMethod="addVerifyListener"
+ handlerBaseClass="org.eclipse.swt.events.VerifyListener"
+ handlerMethod="verifyText"
+ eventClass="org.eclipse.swt.events.VerifyEvent"
+ delegateMethodSuffix="_verify"/>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/main.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/main.jet
new file mode 100644
index 0000000..5b8f8bd
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/main.jet
@@ -0,0 +1,74 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%@taglib prefix="ws" id="org.eclipse.jet.workspaceTags" %>
+<%-- Main entry point for org.eclipse.jet.ec2008.swtgen --%>
+
+<%--
+TODO: traverse input model, performing calculations and storing
+the results as model annotations via c:set tag
+--%>
+<%-- Flatten the recurive control sturcture --%>
+<c:loadContent var="flattened"><c:include template="templates/wizardPage/flatten.xml.jet"/></c:loadContent>
+<%-- DEBUG: write the flattend file just so we can see it--%>
+<ws:file template="templates/wizardPage/flatten.xml.jet" path="{$org.eclipse.jet.resource.parent.fullPath}/flattened.xml"/>
+
+<%-- Load control data --%>
+<c:loadContent var="controlData">
+<controls>
+ <c:include template="templates/control/controlData.xml.jet"/>
+</controls>
+</c:loadContent>
+
+<%-- Load event data --%>
+<c:loadContent var="eventData">
+<events>
+ <c:include template="templates/event/eventData.xml.jet"/>
+</events>
+</c:loadContent>
+
+<c:setVariable var="wizardPage" select="$flattened/wizardPage"/>
+
+<%-- do calculations for wizardPage --%>
+<c:set select="$wizardPage" name="codeBehindClass"><c:get select="$wizardPage/@class"/>Code</c:set>
+
+<c:iterate select="$wizardPage/control" var="control">
+ <%-- do calculations for control --%>
+ <c:setVariable var="data" select="$controlData/controls/{$control/@type}"/>
+ <c:set select="$control" name="javaType"><c:get select="$data/@javaType"/></c:set>
+ <c:set select="$control" name="initControlTemplate"><c:get select="$data/@initControlTemplate"/></c:set>
+ <c:set select="$control" name="swtStylesTemplate"><c:get select="$data/@swtStylesTemplate"/></c:set>
+
+ <c:iterate select="$control/event" var="event">
+ <%-- do calculations for event --%>
+ <c:setVariable var="data" select="$eventData/events/{$event/@name}"/>
+ <c:set select="$event" name="addListenerMethod"><c:get select="$data/@addListenerMethod"/></c:set>
+ <c:set select="$event" name="handlerBaseClass"><c:get select="$data/@handlerBaseClass"/></c:set>
+ <c:set select="$event" name="handlerMethod"><c:get select="$data/@handlerMethod"/></c:set>
+ <c:set select="$event" name="eventClass"><c:get select="$data/@eventClass"/></c:set>
+ <c:set select="$event" name="delegateMethod"><c:get select="$control/@name"/><c:get select="$data/@delegateMethodSuffix"/></c:set>
+ </c:iterate>
+</c:iterate>
+
+<%--
+TODO: traverse annotated model, performing text generation actions
+such as ws:file, ws:folder and ws:project
+--%>
+<%-- do actions for wizardPage --%>
+<java:class srcFolder="{$wizardPage/@srcFolder}"
+ package="{$wizardPage/@package}"
+ name="{$wizardPage/@class}"
+ template="templates/wizardPage/wizardPage.java.jet"/>
+<java:class srcFolder="{$wizardPage/@srcFolder}"
+ package="{$wizardPage/@package}"
+ name="{$wizardPage/@codeBehindClass}"
+ template="templates/wizardPage/codeBehind.java.jet"/>
+
+<%-- For debug purposes, dump the annotated input model in
+ the root of the project containing the original input model.
+
+ Note that model formatting may not be identical, and that in
+ the case of non-XML input models, the dump may look quite different.
+--%>
+
+<ws:file template="templates/dump.jet" path="{$org.eclipse.jet.resource.parent.fullPath}/dump.xml"/>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/codeBehind.java.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/codeBehind.java.jet
new file mode 100644
index 0000000..aa9e02d
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/codeBehind.java.jet
@@ -0,0 +1,39 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<java:merge/>
+/*
+ * Generated by <%= context.getJETBundleId() %> from <c:get select="$org.eclipse.jet.resource.fullPath"/>.
+ * This class will not be modified by the transformation
+ */
+package <c:get select="$wizardPage/@package"/>;
+<java:importsLocation package="{$wizardPage/@package}"/>
+
+/**
+ *
+ */
+public class <c:get select="$wizardPage/@codeBehindClass"/> implements <c:get select="$wizardPage/@class"/>.CodeBehind {
+
+ private <c:get select="$wizardPage/@class"/> wizardPage;
+
+ /* (non-Javadoc)
+ * @see <c:get select="$wizardPage/@package"/>.<c:get select="$wizardPage/@class"/>.CodeBehind#setWizardPage(<c:get select="$wizardPage/@package"/>.<c:get select="$wizardPage/@class"/>)
+ */
+ public void setWizardPage(<c:get select="$wizardPage/@class"/> wizardPage) {
+ this.wizardPage = wizardPage;
+ }
+
+ /* (non-Javadoc)
+ * @see <c:get select="$wizardPage/@package"/>.<c:get select="$wizardPage/@class"/>.CodeBehind#doInitControls()
+ */
+ public void doInitControls() {
+ // TODO Generated init method
+ }
+
+<c:iterate select="$wizardPage/control/event" var="event">
+ public void <c:get select="$event/@delegateMethod"/>(<java:import><c:get select="$event/@eventClass"/></java:import> e) {
+ // TODO Generated event handler
+ }
+
+</c:iterate>
+}
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flatten.xml.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flatten.xml.jet
new file mode 100644
index 0000000..fcc67d8
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flatten.xml.jet
@@ -0,0 +1,13 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<?xml version="1.0" encoding="UTF-8"?>
+<wizardPage
+ srcFolder="<c:get select="/wizardPage/@srcFolder"/>"
+ package="<c:get select="/wizardPage/@package"/>"
+ class="<c:get select="/wizardPage/@class"/>">
+<c:setVariable var="parentControl" select=" 'parent' "/>
+<c:iterate select="/wizardPage/composite" var="control">
+ <c:include template="templates/wizardPage/flattenControl.jet" passVariables="control,parentControl"/>
+</c:iterate>
+</wizardPage> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flattenControl.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flattenControl.jet
new file mode 100644
index 0000000..15ea6fc
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/flattenControl.jet
@@ -0,0 +1,29 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+<%-- parentControl : name of parent control or empty string
+ control : current control element or empty string
+--%>
+ <control
+ type="<c:get select="local-name($control)"/>"
+ parent="<c:get select="$parentControl"/>"
+ <%-- copy attributes --%>
+ <c:iterate select="$control/@*" var="attr">
+ <c:get select="local-name($attr)"/>="<f:replaceAll value="&" replacement="&amp;"><c:get select="$attr"/></f:replaceAll>"
+ </c:iterate>
+ >
+<%-- copy elements (gridData|gridLayout|event|item) as child elements --%>
+ <c:iterate select="$control/gridLayout | $control/gridData | $control/event | $control/item"
+ var="childData">
+ <c:dump select="$childData"/>
+ </c:iterate>
+<%-- close control element --%>
+ </control>
+<c:setVariable var="parentControl" select="string($control/@name)"/>
+<%-- process child control elements at same depth as parent --%>
+<c:iterate select="$control/*"
+ var="control">
+ <c:if test="not(local-name($control) = 'gridData' or local-name($control) = 'gridLayout' or local-name($control) = 'event' or local-name($control) = 'item')">
+ <c:include template="templates/wizardPage/flattenControl.jet" passVariables="control,parentControl"/>
+ </c:if>
+</c:iterate>
diff --git a/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/wizardPage.java.jet b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/wizardPage.java.jet
new file mode 100644
index 0000000..b9ff73c
--- /dev/null
+++ b/examples/org.eclipse.jet.ec2008.swtgen.codebehind/templates/wizardPage/wizardPage.java.jet
@@ -0,0 +1,124 @@
+<%!
+/* Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0. */
+%>
+/**
+ * Generated by <%= context.getJETBundleId() %> from <c:get select="$org.eclipse.jet.resource.fullPath"/>
+ */
+package <c:get select="$wizardPage/@package"/>;
+
+<java:importsLocation package="{$wizardPage/@package}"/>
+
+import org.eclipse.jface.dialogs.Dialog;<java:impliedImport name="org.eclipse.jface.dialogs.Dialog"/>
+import org.eclipse.jface.resource.ImageDescriptor;<java:impliedImport name="org.eclipse.jface.resource.ImageDescriptor"/>
+import org.eclipse.jface.wizard.WizardPage;<java:impliedImport name="org.eclipse.jface.wizard.WizardPage"/>
+import org.eclipse.swt.widgets.Composite;<java:impliedImport name="org.eclipse.swt.widgets.Composite"/>
+import org.eclipse.swt.SWT;<java:impliedImport name="org.eclipse.swt.SWT"/>
+
+/**
+ *
+ */
+public class <c:get select="$wizardPage/@class"/> extends WizardPage {
+
+ /**
+ * Code behind class for <c:get select="$wizardPage/@class"/>
+ */
+ public static interface CodeBehind {
+
+ /**
+ * Perform any control required initialization. This method is called
+ * by {@link <c:get select="$wizardPage/@class"/>#createControl(Composite parent)}
+ */
+ public abstract void doInitControls();
+
+ /**
+ * Set the wizardPage of the code-behind class. This method is called by the
+ * wizard page constructor on the passed codeBehind class.
+ */
+ public abstract void setWizardPage(<c:get select="$wizardPage/@class"/> wizardPage);
+
+<c:iterate select="$wizardPage/control/event" var="event">
+ /**
+ * Handle <c:get select="$event/@name"/> event for <c:get select="$event/../@name"/>
+ */
+ public abstract void <c:get select="$event/@delegateMethod"/>(<java:import><c:get select="$event/@eventClass"/></java:import> e);
+
+</c:iterate>
+ }
+
+<c:iterate select="$wizardPage/control[@isField = 'true']" var="control">
+ public <java:import><c:get select="$control/@javaType"/></java:import> <c:get select="$control/@name"/>;
+
+</c:iterate>
+
+ private final CodeBehind codeBehind;
+
+ /**
+ * @param pageName
+ */
+ public <c:get select="$wizardPage/@class"/>(String pageName, CodeBehind codeBehind) {
+ super(pageName);
+ this.codeBehind = codeBehind;
+ codeBehind.setWizardPage(this);
+ }
+
+ /**
+ * @param pageName
+ * @param title
+ * @param titleImage
+ */
+ public <c:get select="$wizardPage/@class"/>(String pageName, String title,
+ ImageDescriptor titleImage, CodeBehind codeBehind) {
+ super(pageName, title, titleImage);
+ this.codeBehind = codeBehind;
+ codeBehind.setWizardPage(this);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
+ */
+ public void createControl(Composite parent) {
+ initializeDialogUnits(parent);
+
+<c:iterate select="$wizardPage/control" var="control">
+ <c:if test="not($control/@isField = 'true')"><java:import><c:get select="$control/@javaType"/></java:import> </c:if><c:get select="$control/@name"/>
+ = new <java:import><c:get select="$control/@javaType"/></java:import>(
+ <c:get select="$control/@parent"/>,
+ <c:include template="{$control/@swtStylesTemplate}"/>
+ );
+ <c:include template="{$control/@initControlTemplate}"/>
+ <c:include template="templates/control/setGridData.jet"/>
+ <c:iterate select="$control/event" var="event">
+ <c:get select="$control/@name"/>.<c:get select="$event/@addListenerMethod"/>( new <java:import><c:get select="$event/@handlerBaseClass"/></java:import>() {
+ public void <c:get select="$event/@handlerMethod"/>(<java:import><c:get select="$event/@eventClass"/></java:import> e) {
+ if(codeBehind != null) {
+ codeBehind.<c:get select="$event/@delegateMethod"/>(e);
+ }
+
+ }});
+ </c:iterate>
+
+</c:iterate>
+
+<c:iterate select="$wizardPage/control[@parent='parent']" var="topControl">
+ setControl(<c:get select="$topControl/@name"/>);
+ Dialog.applyDialogFont(<c:get select="$topControl/@name"/>);
+</c:iterate>
+
+ if(codeBehind != null) {
+ codeBehind.doInitControls();
+ }
+ }
+
+<c:if test="$wizardPage/control[@isField = 'true' and (not(@enabled) or @enabled = 'true')]" var="firstControl">
+ @Override
+ public void setVisible(boolean visible) {
+ super.setVisible(visible);
+
+ if(visible) {
+ <c:get select="$firstControl/@name"/>.setFocus();
+ }
+
+ }
+
+</c:if>
+}
diff --git a/examples/org.eclipse.jet.examples.ec2008/.project b/examples/org.eclipse.jet.examples.ec2008/.project
new file mode 100644
index 0000000..7b46b77
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jet.examples.ec2008</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/examples/org.eclipse.jet.examples.ec2008/.settings/spaces.publishing.prefs b/examples/org.eclipse.jet.examples.ec2008/.settings/spaces.publishing.prefs
new file mode 100644
index 0000000..3efea3f
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/.settings/spaces.publishing.prefs
@@ -0,0 +1,5 @@
+#Sun Mar 16 18:28:49 PDT 2008
+areaName=EC2008-JET
+eclipse.preferences.version=1
+selector=org.eclipse.spaces.osgi.internal.updatesite.UpdateSiteSelector
+spaceAddress=spaces\:xdrive\://pelderibm@aim.com,eclipse.xdrive.com/
diff --git a/examples/org.eclipse.jet.examples.ec2008/META-INF/MANIFEST.MF b/examples/org.eclipse.jet.examples.ec2008/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..1921ca0
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/META-INF/MANIFEST.MF
@@ -0,0 +1,5 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Ec2008
+Bundle-SymbolicName: org.eclipse.jet.examples.ec2008
+Bundle-Version: 1.0.0
diff --git a/examples/org.eclipse.jet.examples.ec2008/build.properties b/examples/org.eclipse.jet.examples.ec2008/build.properties
new file mode 100644
index 0000000..4faf44b
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/build.properties
@@ -0,0 +1,6 @@
+bin.includes = META-INF/
+src.includes = launchConfigs/,\
+ test.wizardpage.xml,\
+ wizardPageLayout.xsd,\
+ build.properties,\
+ .project
diff --git a/examples/org.eclipse.jet.examples.ec2008/dump.xml b/examples/org.eclipse.jet.examples.ec2008/dump.xml
new file mode 100644
index 0000000..6f995cd
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/dump.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<wizardPage srcFolder="test.wizardPage/src" package="org.example" class="MyWizPage" codeBehindClass="MyWizPageCode">
+ <control type="composite" parent="parent" name="main" javaType="org.eclipse.swt.widgets.Composite" initControlTemplate="templates/control/composite/initControl.jet" swtStylesTemplate="templates/control/composite/swtStyles.jet">
+ </control>
+ <control type="composite" parent="main" name="projectName" javaType="org.eclipse.swt.widgets.Composite" initControlTemplate="templates/control/composite/initControl.jet" swtStylesTemplate="templates/control/composite/swtStyles.jet">
+ <gridLayout>
+ <numColumns numColumns="3"/>
+ </gridLayout>
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ </gridData>
+ </control>
+ <control type="label" parent="projectName" name="lblProject" javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="projectName" isField="true" name="txtProject" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ <span hSpan="1" vSpan="2"/>
+ </gridData>
+ <event name="Verify" addListenerMethod="addVerifyListener" handlerBaseClass="org.eclipse.swt.events.VerifyListener" handlerMethod="verifyText" eventClass="org.eclipse.swt.events.VerifyEvent" delegateMethod="txtProject_verify"/>
+ <event name="Modify" addListenerMethod="addModifyListener" handlerBaseClass="org.eclipse.swt.events.ModifyListener" handlerMethod="modifyText" eventClass="org.eclipse.swt.events.ModifyEvent" delegateMethod="txtProject_modify"/>
+ </control>
+ <control type="button" parent="projectName" isField="true" name="cbxUseDefaultLocation" style="CHECK" text="&Use default location" javaType="org.eclipse.swt.widgets.Button" initControlTemplate="templates/control/button/initControl.jet" swtStylesTemplate="templates/control/button/swtStyles.jet">
+ <gridData>
+ <span hSpan="1" vSpan="3"/>
+ </gridData>
+ <event name="Selection" addListenerMethod="addSelectionListener" handlerBaseClass="org.eclipse.swt.events.SelectionAdapter" handlerMethod="widgetSelected" eventClass="org.eclipse.swt.events.SelectionEvent" delegateMethod="cbxUseDefaultLocation_selected"/>
+ </control>
+ <control type="label" parent="projectName" isField="true" name="lblLocation" text="&Location:" javaType="org.eclipse.swt.widgets.Label" initControlTemplate="templates/control/label/initControl.jet" swtStylesTemplate="templates/control/label/swtStyles.jet">
+ </control>
+ <control type="text" parent="projectName" isField="true" name="txtLocationY" javaType="org.eclipse.swt.widgets.Text" initControlTemplate="templates/control/text/initControl.jet" swtStylesTemplate="templates/control/text/swtStyles.jet">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING"/>
+ <grab horizontal="true" vertical="false"/>
+ <minSize minX="10" minY="6"/>
+ </gridData>
+ <event name="Verify" addListenerMethod="addVerifyListener" handlerBaseClass="org.eclipse.swt.events.VerifyListener" handlerMethod="verifyText" eventClass="org.eclipse.swt.events.VerifyEvent" delegateMethod="txtLocationY_verify"/>
+ </control>
+ <control type="button" parent="projectName" isField="true" name="cbBrowse" style="PUSH" javaType="org.eclipse.swt.widgets.Button" initControlTemplate="templates/control/button/initControl.jet" swtStylesTemplate="templates/control/button/swtStyles.jet">
+ <event name="Selection" addListenerMethod="addSelectionListener" handlerBaseClass="org.eclipse.swt.events.SelectionAdapter" handlerMethod="widgetSelected" eventClass="org.eclipse.swt.events.SelectionEvent" delegateMethod="cbBrowse_selected"/>
+ </control>
+</wizardPage>
diff --git a/examples/org.eclipse.jet.examples.ec2008/flattened.xml b/examples/org.eclipse.jet.examples.ec2008/flattened.xml
new file mode 100644
index 0000000..368db61
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/flattened.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wizardPage
+ srcFolder="test.wizardPage/src"
+ package="org.example"
+ class="MyWizPage">
+ <control
+ type="composite"
+ parent="parent"
+ name="main"
+ >
+ </control>
+ <control
+ type="composite"
+ parent="main"
+ name="projectName"
+ >
+ <gridLayout><numColumns numColumns="3"/></gridLayout>
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/></gridData>
+ </control>
+ <control
+ type="label"
+ parent="projectName"
+ name="lblProject"
+ >
+ </control>
+ <control
+ type="text"
+ parent="projectName"
+ isField="true"
+ name="txtProject"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/><span hSpan="1" vSpan="2"/></gridData>
+ <event name="Verify"/>
+ <event name="Modify"/>
+ </control>
+ <control
+ type="button"
+ parent="projectName"
+ isField="true"
+ name="cbxUseDefaultLocation"
+ style="CHECK"
+ text="&amp;Use default location"
+ >
+ <gridData><span hSpan="1" vSpan="3"/></gridData>
+ <event name="Selection"/>
+ </control>
+ <control
+ type="label"
+ parent="projectName"
+ isField="true"
+ name="lblLocation"
+ text="&amp;Location:"
+ >
+ </control>
+ <control
+ type="text"
+ parent="projectName"
+ isField="true"
+ name="txtLocationY"
+ >
+ <gridData><align hAlign="FILL" vAlign="BEGINNING"/><grab horizontal="true" vertical="false"/><minSize minX="10" minY="6"/></gridData>
+ <event name="Verify"/>
+ </control>
+ <control
+ type="button"
+ parent="projectName"
+ isField="true"
+ name="cbBrowse"
+ style="PUSH"
+ >
+ <event name="Selection"/>
+ </control>
+</wizardPage> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (test.wizardpage.xml).launch b/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (test.wizardpage.xml).launch
new file mode 100644
index 0000000..257c916
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (test.wizardpage.xml).launch
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<launchConfiguration type="org.eclipse.jet.jet2Transformation">
+<stringAttribute key="org.eclipse.jet.id" value="org.eclipse.jet.ec2008.swtgen"/>
+<intAttribute key="org.eclipse.jet.logFilterLevel" value="3"/>
+<stringAttribute key="org.eclipse.jet.source" value="/org.eclipse.jet.examples.ec2008/test.wizardpage.xml"/>
+</launchConfiguration>
diff --git a/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (codeBehind) (test.wizardpage.xml).launch b/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (codeBehind) (test.wizardpage.xml).launch
new file mode 100644
index 0000000..a5f7869
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (codeBehind) (test.wizardpage.xml).launch
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<launchConfiguration type="org.eclipse.jet.jet2Transformation">
+<stringAttribute key="org.eclipse.jet.id" value="org.eclipse.jet.ec2008.swtgen.codebehind"/>
+<intAttribute key="org.eclipse.jet.logFilterLevel" value="3"/>
+<stringAttribute key="org.eclipse.jet.source" value="/org.eclipse.jet.examples.ec2008/test.wizardpage.xml"/>
+</launchConfiguration>
diff --git a/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (jmerge) (test.wizardpage.xml).launch b/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (jmerge) (test.wizardpage.xml).launch
new file mode 100644
index 0000000..40a7e54
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/launchConfigs/SWT Gen (jmerge) (test.wizardpage.xml).launch
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<launchConfiguration type="org.eclipse.jet.jet2Transformation">
+<stringAttribute key="org.eclipse.jet.id" value="org.eclipse.jet.ec2008.swtgen.jmerge"/>
+<intAttribute key="org.eclipse.jet.logFilterLevel" value="3"/>
+<stringAttribute key="org.eclipse.jet.source" value="/org.eclipse.jet.examples.ec2008/test.wizardpage.xml"/>
+</launchConfiguration>
diff --git a/examples/org.eclipse.jet.examples.ec2008/test.wizardpage.xml b/examples/org.eclipse.jet.examples.ec2008/test.wizardpage.xml
new file mode 100644
index 0000000..8652b22
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/test.wizardpage.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wizardPage srcFolder="test.wizardPage/src" package="org.example"
+ class="MyWizPage"
+ xmlns="http://www.eclipse.org/modeling/jet/ec2008/wizardPageLayout"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.eclipse.org/modeling/jet/ec2008/wizardPageLayout wizardPageLayout.xsd ">
+ <composite name="main">
+ <composite name="projectName">
+ <gridLayout>
+ <numColumns numColumns="3" />
+ </gridLayout>
+ <gridData>
+ <grab horizontal="true" vertical="false" />
+ <align hAlign="FILL" vAlign="BEGINNING" />
+ </gridData>
+ <label name="lblProject"></label>
+ <text name="txtProject" isField="true">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING" />
+ <grab horizontal="true" vertical="false" />
+ <span vSpan="2" hSpan="1" />
+ </gridData>
+ <event name="Verify" />
+ <event name="Modify" />
+ </text>
+ <button name="cbxUseDefaultLocation" isField="true" style="CHECK"
+ text="&amp;Use default location">
+ <gridData>
+ <span vSpan="3" hSpan="1" />
+ </gridData>
+ <event name="Selection" />
+ </button>
+ <label name="lblLocation" isField="true" text="&amp;Location:">
+ </label>
+ <text name="txtLocationY" isField="true">
+ <gridData>
+ <align hAlign="FILL" vAlign="BEGINNING" />
+ <grab horizontal="true" vertical="false" />
+ <minSize minX="10" minY="6"/>
+ </gridData>
+ <event name="Verify" />
+ </text>
+ <button name="cbBrowse" style="PUSH" isField="true">
+ <event name="Selection" />
+ </button>
+ </composite>
+ </composite>
+</wizardPage> \ No newline at end of file
diff --git a/examples/org.eclipse.jet.examples.ec2008/wizardPageLayout.xsd b/examples/org.eclipse.jet.examples.ec2008/wizardPageLayout.xsd
new file mode 100644
index 0000000..26772ec
--- /dev/null
+++ b/examples/org.eclipse.jet.examples.ec2008/wizardPageLayout.xsd
@@ -0,0 +1,834 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema elementFormDefault="qualified" targetNamespace="http://www.eclipse.org/modeling/jet/ec2008/wizardPageLayout" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.eclipse.org/modeling/jet/ec2008/wizardPageLayout">
+
+ <xsd:annotation>
+ <xsd:documentation>© Copyright 2008 IBM Corp. All rights reserved. This source code is made available under the terms of the Eclipse Public License, v1.0.
+</xsd:documentation></xsd:annotation>
+ <xsd:attributeGroup name="commonControlAttrs">
+ <xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
+ <xsd:attribute name="isField" type="xsd:boolean"
+ use="optional">
+ </xsd:attribute>
+
+ <xsd:attribute name="border" type="xsd:boolean"></xsd:attribute>
+ <xsd:attribute name="enabled" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:element name="composite">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridLayout" maxOccurs="1" minOccurs="0"></xsd:element>
+ <xsd:element ref="gridData" maxOccurs="1" minOccurs="0"></xsd:element>
+ <xsd:group ref="ChildControls"></xsd:group>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:attributeGroup name="alignment">
+ <xsd:attribute name="alignment">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="LEFT"></xsd:enumeration>
+ <xsd:enumeration value="RIGHT"></xsd:enumeration>
+ <xsd:enumeration value="CENTER"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="shadow">
+ <xsd:attribute name="shadow">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="NONE"></xsd:enumeration>
+ <xsd:enumeration value="IN"></xsd:enumeration>
+ <xsd:enumeration value="OUT"></xsd:enumeration>
+ <xsd:enumeration value="ETCHED_IN"></xsd:enumeration>
+ <xsd:enumeration value="ETCHED_OUT"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="shadowNoEtched">
+ <xsd:attribute name="shadow">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="NONE"></xsd:enumeration>
+ <xsd:enumeration value="IN"></xsd:enumeration>
+ <xsd:enumeration value="OUT"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="orientation">
+ <xsd:attribute name="orientation">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="HORIZONTAL"></xsd:enumeration>
+ <xsd:enumeration value="VERTICAL"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="wrap">
+ <xsd:attribute name="wrap" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="readOnly">
+ <xsd:attribute name="readOnly" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="textStyle">
+ <xsd:attribute name="style">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="SINGLE"></xsd:enumeration>
+ <xsd:enumeration value="MULTI"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="flat">
+ <xsd:attribute name="flat" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="arrowStyle">
+ <xsd:attribute name="arrowStyle">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="UP"></xsd:enumeration>
+ <xsd:enumeration value="DOWN"></xsd:enumeration>
+ <xsd:enumeration value="LEFT"></xsd:enumeration>
+ <xsd:enumeration value="RIGHT"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="buttonStyle">
+ <xsd:attribute name="style" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="ARROW"></xsd:enumeration>
+ <xsd:enumeration value="CHECK"></xsd:enumeration>
+ <xsd:enumeration value="PUSH"></xsd:enumeration>
+ <xsd:enumeration value="RADIO"></xsd:enumeration>
+ <xsd:enumeration value="TOGGLE"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="comboStyle">
+ <xsd:attribute name="style">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="DROP_DOWN"></xsd:enumeration>
+ <xsd:enumeration value="SIMPLE"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="dateTimeStyle">
+ <xsd:attribute name="style">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="DATE"></xsd:enumeration>
+ <xsd:enumeration value="TIME"></xsd:enumeration>
+ <xsd:enumeration value="CALENDAR"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="dateFormat">
+ <xsd:attribute name="dateFormat">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="SHORT"></xsd:enumeration>
+ <xsd:enumeration value="MEDIUM"></xsd:enumeration>
+ <xsd:enumeration value="LONG"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="scrollVerticalOnly">
+ <xsd:attribute name="scroll">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="V_SCROLL"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="separator">
+ <xsd:attribute name="separator" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+
+ <xsd:attributeGroup name="listStyle">
+ <xsd:attribute name="style">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="SINGLE"></xsd:enumeration>
+ <xsd:enumeration value="MULTI"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="menuItemStyle">
+ <xsd:attribute name="style">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="CHECK"></xsd:enumeration>
+ <xsd:enumeration value="CASCADE"></xsd:enumeration>
+ <xsd:enumeration value="PUSH"></xsd:enumeration>
+ <xsd:enumeration value="RADIO"></xsd:enumeration>
+ <xsd:enumeration value="SEPARATOR"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="tabLocation">
+ <xsd:attribute name="tabLocation">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="TOP"></xsd:enumeration>
+ <xsd:enumeration value="BOTTOM"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="shadowOutOnly">
+ <xsd:attribute name="shadow">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="OUT"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="alignmentRightOnly">
+ <xsd:attribute name="alignment">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="RIGHT"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="toolItemStyle">
+ <xsd:attribute name="style">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="PUSH"></xsd:enumeration>
+ <xsd:enumeration value="CHECK"></xsd:enumeration>
+ <xsd:enumeration value="RADIO"></xsd:enumeration>
+ <xsd:enumeration value="SEPARATOR"></xsd:enumeration>
+ <xsd:enumeration value="DROP_DOWN"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="check">
+ <xsd:attribute name="check" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="fullSelection">
+ <xsd:attribute name="fullSelection" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="virtual">
+ <xsd:attribute name="virtual" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="hideSelection">
+ <xsd:attribute name="hideSelection" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:element name="button">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event" maxOccurs="unbounded"
+ minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="Selection">
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="buttonStyle"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="flat"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="arrowStyle"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="alignment"></xsd:attributeGroup>
+ <xsd:attribute name="text" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="grayed" type="xsd:boolean"></xsd:attribute>
+ <xsd:attribute name="selection" type="xsd:boolean"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:element name="gridData">
+ <xsd:complexType>
+ <xsd:all>
+ <xsd:element name="align" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="hAlign" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="BEGINNING">
+ </xsd:enumeration>
+ <xsd:enumeration value="CENTER"></xsd:enumeration>
+ <xsd:enumeration value="END"></xsd:enumeration>
+ <xsd:enumeration value="FILL"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="vAlign" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="BEGINNING">
+ </xsd:enumeration>
+ <xsd:enumeration value="CENTER"></xsd:enumeration>
+ <xsd:enumeration value="END"></xsd:enumeration>
+ <xsd:enumeration value="FILL"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="exclude" maxOccurs="1"
+ minOccurs="0">
+ <xsd:complexType></xsd:complexType>
+ </xsd:element>
+ <xsd:element name="grab" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="horizontal"
+ type="xsd:boolean" use="required">
+ </xsd:attribute>
+ <xsd:attribute name="vertical"
+ type="xsd:boolean" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="hint" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="xHint" type="xsd:int"
+ use="required">
+ </xsd:attribute>
+ <xsd:attribute name="yHint"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="indent" maxOccurs="1"
+ minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="hIndent" type="xsd:int"
+ use="required">
+ </xsd:attribute>
+ <xsd:attribute name="vIndent"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="minSize" maxOccurs="1"
+ minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="minX" type="xsd:int"
+ use="required">
+ </xsd:attribute>
+ <xsd:attribute name="minY"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="span" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="hSpan" type="xsd:int" use="required">
+ </xsd:attribute>
+ <xsd:attribute name="vSpan" type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:all>
+ <xsd:attribute name="swtDefaults" type="xsd:boolean"></xsd:attribute>
+ </xsd:complexType></xsd:element>
+
+ <xsd:group name="ChildControls">
+ <xsd:sequence>
+ <xsd:choice maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="button"></xsd:element>
+ <xsd:element ref="composite"></xsd:element>
+ <xsd:element ref="combo"></xsd:element>
+ <xsd:element ref="group"></xsd:element>
+ <xsd:element ref="label"></xsd:element>
+ <xsd:element ref="link"></xsd:element>
+ <xsd:element ref="list"></xsd:element>
+ <xsd:element ref="scale"></xsd:element>
+ <xsd:element ref="slider"></xsd:element>
+ <xsd:element ref="table"></xsd:element>
+ <xsd:element ref="text"></xsd:element>
+ <xsd:element ref="tree"></xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:group>
+
+ <xsd:element name="gridLayout">
+ <xsd:complexType>
+ <xsd:all>
+ <xsd:element name="equalWidth" maxOccurs="1" minOccurs="0">
+ <xsd:complexType></xsd:complexType>
+ </xsd:element>
+ <xsd:element name="extendedMargins" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="left" type="xsd:int" use="required">
+ </xsd:attribute>
+ <xsd:attribute name="right" type="xsd:int" use="required">
+ </xsd:attribute>
+ <xsd:attribute name="top" type="xsd:int" use="required">
+ </xsd:attribute>
+ <xsd:attribute name="botton"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="margins" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="width" type="xsd:int"
+ use="required">
+ </xsd:attribute>
+ <xsd:attribute name="height"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="numColumns" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="numColumns"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="spacing" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="hSpacing" type="xsd:int"
+ use="required">
+ </xsd:attribute>
+ <xsd:attribute name="vSpacing"
+ type="xsd:int" use="required">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:all>
+ <xsd:attribute name="swtDefaults" type="xsd:boolean"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="combo">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="item" type="xsd:string"
+ maxOccurs="unbounded" minOccurs="0">
+ </xsd:element>
+ <xsd:element ref="gridData" maxOccurs="1" minOccurs="0"></xsd:element>
+ <xsd:element name="event" maxOccurs="1" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="DefaultSelection">
+ </xsd:enumeration>
+ <xsd:enumeration value="Modify"></xsd:enumeration>
+ <xsd:enumeration
+ value="Selection">
+ </xsd:enumeration>
+ <xsd:enumeration value="Verify"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="comboStyle"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="readOnly"></xsd:attributeGroup>
+ <xsd:attribute name="text" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="textLimit" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="visibleItemCount" type="xsd:int"></xsd:attribute>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="group">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridLayout" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:group ref="ChildControls"></xsd:group>
+
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="shadow"></xsd:attributeGroup>
+ <xsd:attribute name="text" type="xsd:string"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="label">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridLayout" maxOccurs="1" minOccurs="0"></xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="separator"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="orientation"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="wrap"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="shadowNoEtched"></xsd:attributeGroup>
+ <xsd:attribute name="text" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="image" type="xsd:string"></xsd:attribute>
+ <xsd:attributeGroup ref="alignment"></xsd:attributeGroup>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="list">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="item" type="xsd:string"
+ maxOccurs="unbounded" minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event" maxOccurs="unbounded"
+ minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="Selection">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="DefaultSelection">
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element ref="gridData" maxOccurs="1" minOccurs="0"></xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="listStyle"></xsd:attributeGroup>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="link">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Selection"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attribute name="text" type="xsd:string"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="scale">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Selection"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="orientation"></xsd:attributeGroup>
+ <xsd:attribute name="minimum" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="maximum" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="increment" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="pageIncrement" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="selection" type="xsd:int"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="slider">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Selection"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="orientation"></xsd:attributeGroup>
+ <xsd:attribute name="increment" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="minimum" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="maximum" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="pageIncrement" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="thumb" type="xsd:int"></xsd:attribute>
+ <xsd:attribute name="selection" type="xsd:int"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="text">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event" maxOccurs="unbounded" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="DefaultSelection">
+ </xsd:enumeration>
+ <xsd:enumeration value="Modify"></xsd:enumeration>
+ <xsd:enumeration value="Verify"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="textStyle"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="readOnly"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="wrap"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="search"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="cancel"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="password"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="scroll"></xsd:attributeGroup>
+ <xsd:attribute name="message" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="text" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="textLimit" type="xsd:string"></xsd:attribute>
+ <xsd:attributeGroup ref="alignment"></xsd:attributeGroup>
+ </xsd:complexType>
+ </xsd:element>
+
+
+ <xsd:attributeGroup name="cancel">
+ <xsd:attribute name="cancel" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="search">
+ <xsd:attribute name="search" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="password">
+ <xsd:attribute name="password" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:element name="table">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="tableColumn" maxOccurs="unbounded" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attributeGroup ref="alignment"></xsd:attributeGroup>
+ <xsd:attribute name="image" type="xsd:string">
+ </xsd:attribute>
+ <xsd:attribute name="text" type="xsd:string">
+ </xsd:attribute>
+ <xsd:attribute name="moveable"
+ type="xsd:boolean">
+ </xsd:attribute>
+ <xsd:attribute name="resizeable"
+ type="xsd:boolean">
+ </xsd:attribute>
+ <xsd:attribute name="toolTipText"
+ type="xsd:string">
+ </xsd:attribute>
+ <xsd:attribute name="width"
+ type="xsd:int">
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="event" maxOccurs="unbounded"
+ minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="Selection">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="DefaultSelection">
+ </xsd:enumeration>
+ <xsd:enumeration value="SetData"></xsd:enumeration>
+ <xsd:enumeration
+ value="MeasureItem">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="EraseItem">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="PaintItem">
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="listStyle"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="check"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="fullSelection"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="hideSelection"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="virtual"></xsd:attributeGroup>
+ <xsd:attribute name="headerVisible" type="xsd:boolean"></xsd:attribute>
+ <xsd:attribute name="linesVisible" type="xsd:boolean"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="tree">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="gridData" maxOccurs="1"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="event" maxOccurs="unbounded" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="name" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration
+ value="Selection">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="DefaultSelection">
+ </xsd:enumeration>
+ <xsd:enumeration value="Collapse"></xsd:enumeration>
+ <xsd:enumeration value="Expand"></xsd:enumeration>
+ <xsd:enumeration value="SetData"></xsd:enumeration>
+ <xsd:enumeration
+ value="MeasureItem">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="EraseItem">
+ </xsd:enumeration>
+ <xsd:enumeration
+ value="PaintItem">
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="commonControlAttrs"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="listStyle"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="check"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="fullSelection"></xsd:attributeGroup>
+ <xsd:attributeGroup ref="virtual"></xsd:attributeGroup>
+ <xsd:attribute name="headerVisible" type="xsd:boolean"></xsd:attribute>
+ <xsd:attribute name="linesVisible" type="xsd:boolean"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="wizardPage">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="composite" maxOccurs="1"
+ minOccurs="1">
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="package" type="xsd:string" use="required"></xsd:attribute>
+ <xsd:attribute name="class" type="xsd:string" use="required"></xsd:attribute>
+ <xsd:attribute name="srcFolder" type="xsd:string" use="required"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="dialog">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="composite" maxOccurs="1" minOccurs="1"></xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="fullyQualifiedClassName"
+ type="xsd:string" use="required">
+ </xsd:attribute>
+ <xsd:attribute name="baseClassName" type="xsd:string"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:attributeGroup name="border">
+ <xsd:attribute name="border" type="xsd:boolean"></xsd:attribute>
+ </xsd:attributeGroup>
+
+ <xsd:attributeGroup name="scroll">
+ <xsd:attribute name="scroll">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="H_SCROLL"></xsd:enumeration>
+ <xsd:enumeration value="V_SCROLL"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+</xsd:schema> \ No newline at end of file

Back to the top