diff options
author | Adhitya Kamakshidasan | 2016-06-08 16:34:21 +0530 |
---|---|---|
committer | Adhitya Kamakshidasan | 2016-06-08 16:34:21 +0530 |
commit | 33a9287cb072d429a057525c1bbae1c7401e31e4 (patch) | |
tree | dcf686090f82bc91147754e65b7ebad6c71ccc45 | |
parent | dd9f7b0c31a79802e0b13212406a17ac4d33da35 (diff) | |
parent | f3a71d260d8fb92c73cf96c576a98ed45ab75c13 (diff) | |
download | xcos-on-web-33a9287cb072d429a057525c1bbae1c7401e31e4.tar.gz xcos-on-web-33a9287cb072d429a057525c1bbae1c7401e31e4.tar.bz2 xcos-on-web-33a9287cb072d429a057525c1bbae1c7401e31e4.zip |
Merge pull request #20 from sarangsingh29/master
Integrated XSL transformation with the HTML file
-rw-r--r-- | finalmodsheet.xsl | 2042 | ||||
-rw-r--r-- | index.html | 368 |
2 files changed, 2255 insertions, 155 deletions
diff --git a/finalmodsheet.xsl b/finalmodsheet.xsl new file mode 100644 index 0000000..80a9ab7 --- /dev/null +++ b/finalmodsheet.xsl @@ -0,0 +1,2042 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +eXtensible Stylesheet for converting GUI-obtained XML to Scilab-compatible XML. +Authors: Maverick & Karma +--> +<!-- Maverick --> +<!-- +NOTES: +Look for TAG:Break1!!! +--> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + <xsl:output method="xml" indent="no"/> + <xsl:template match="/"> + <xsl:element name="XcosDiagram"> + <xsl:attribute name="background">-1</xsl:attribute> + <xsl:attribute name="title">Maverick XSL</xsl:attribute> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template match="root"> + <xsl:element name="root"> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template match="mxCell"> + <xsl:choose> + <xsl:when test="@style"> + <!-- Style present --> + <xsl:choose> + <xsl:when test="@style='BIGSOM_f'"> + <xsl:call-template name="BigSom" /> + </xsl:when> + <xsl:when test="@style='ExplicitInputPort'"> + <xsl:call-template name="ExplicitInputPort" /> + </xsl:when> + <xsl:when test="@style='ExplicitOutputPort'"> + <xsl:call-template name="ExplicitOutputPort" /> + </xsl:when> + <xsl:when test="@style='ControlPort'"> + <xsl:call-template name="ControlPort" /> + </xsl:when> + <xsl:when test="@style='ImplicitInputPort'"> + <xsl:call-template name="ImplicitInputPort" /> + </xsl:when> + <xsl:when test="@style='ImplicitOutputPort'"> + <xsl:call-template name="ImplicitOutputPort" /> + </xsl:when> + <xsl:when test="@style='CommandPort'"> + <xsl:call-template name="CommandPort" /> + </xsl:when> + <xsl:otherwise> + <!-- Maverick --> + <!-- TAG:Break1 + This line has been commented because Javascript was having + some problem with the function call. + + Commenting doesn't bring any change to the result now, but + may cause some problems in the future. + --> + <!-- <xsl:apply-templates select="name(*[1])"/> --> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + <xsl:otherwise> + <!-- Style not present --> + <xsl:copy-of select="." /> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + <xsl:template name="Object" match="Object"> + <xsl:element name="Array"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@scilabClass"> + <xsl:attribute name="scilabClass"> + <xsl:value-of select="@scilabClass" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@varName"> + <xsl:attribute name="varName"> + <xsl:value-of select="@varName" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="Array" match="Array"> + <xsl:element name="Array"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@scilabClass"> + <xsl:attribute name="scilabClass"> + <xsl:value-of select="@scilabClass" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ScilabBoolean" match="ScilabBoolean"> + <xsl:element name="ScilabBoolean"> + <xsl:choose> + <xsl:when test="@height"> + <xsl:attribute name="height"> + <xsl:value-of select="@height" /> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="height">0</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <xsl:choose> + <xsl:when test="@width"> + <xsl:attribute name="width"> + <xsl:value-of select="@width" /> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="width">0</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ScilabInteger" match="ScilabInteger"> + <xsl:element name="ScilabInteger"> + <xsl:if test="@height"> + <xsl:attribute name="height"> + <xsl:value-of select="@height" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@intPrecision"> + <xsl:attribute name="intPrecision"> + <xsl:value-of select="@intPrecision" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@width"> + <xsl:attribute name="width"> + <xsl:value-of select="@width" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="add" match="add"> + <xsl:element name="add"> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="mxGraphModel" match="mxGraphModel"> + <xsl:element name="mxGraphModel"> + <xsl:attribute name="as">model</xsl:attribute> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="root" match="root"> + <xsl:element name="root"> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="AfficheBlock" match="AfficheBlock"> + <xsl:element name="AfficheBlock"> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@hashCode"> + <xsl:attribute name="hashCode"> + <xsl:value-of select="@hashCode" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="BigSom" match="BigSom"> + <xsl:element name="BigSom"> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="CommandControlLink" match="CommandControlLink"> + <xsl:element name="CommandControlLink"> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ConstBlock" match="ConstBlock"> + <xsl:element name="ConstBlock"> + <xsl:if test="@angle"> + <xsl:attribute name="angle"> + <xsl:value-of select="@angle" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="EventInBlock" match="EventInBlock"> + <xsl:element name="EventInBlock"> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="EventOutBlock" match="EventOutBlock"> + <xsl:element name="EventOutBlock"> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ExplicitInBlock" match="ExplicitInBlock"> + <xsl:element name="ExplicitInBlock"> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ExplicitLink" match="ExplicitLink"> + <xsl:element name="ExplicitLink"> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ExplicitOutBlock" match="ExplicitOutBlock"> + <xsl:element name="ExplicitOutBlock"> + <xsl:if test="@angle"> + <xsl:attribute name="angle"> + <xsl:value-of select="@angle" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="GainBlock" match="GainBlock"> + <xsl:element name="GainBlock"> + <xsl:if test="@angle"> + <xsl:attribute name="angle"> + <xsl:value-of select="@angle" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="GroudBlock" match="GroudBlock"> + <xsl:element name="GroundBlock"> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ImplicitInBlock" match="ImplicitInBlock"> + <xsl:element name="ImplicitInBlock"> + <xsl:if test="@angle"> + <xsl:attribute name="angle"> + <xsl:value-of select="@angle" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ImplicitLink" match="ImplicitLink"> + <xsl:element name="ImplicitLink"> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ImplicitOutBlock" match="ImplicitOutBlock"> + <xsl:element name="ImplicitOutBlock"> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="PrintBlock" match="PrintBlock"> + <xsl:element name="PrintBlock"> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="Product" match="Product"> + <xsl:element name="Product"> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="RoundBlock" match="RoundBlock"> + <xsl:element name="RoundBlock"> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="SplitBlock" match="SplitBlock"> + <xsl:element name="SplitBlock"> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="Summation" match="Summation"> + <xsl:element name="Summation"> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="SuperBlock" match="SuperBlock"> + <xsl:element name="SuperBlock"> + <xsl:if test="@angle"> + <xsl:attribute name="angle"> + <xsl:value-of select="@angle" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="SuperBlockDiagram" match="SuperBlockDiagram"> + <xsl:element name="SuperBlockDiagram"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@background"> + <xsl:attribute name="background"> + <xsl:value-of select="@background" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@finalIntegrationTime"> + <xsl:attribute name="finalIntegrationTime"> + <xsl:value-of select="@finalIntegrationTime" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@gridEnabled"> + <xsl:attribute name="gridEnabled"> + <xsl:value-of select="@gridEnabled" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@integratorAbsoluteTolerance"> + <xsl:attribute name="integratorAbsoluteTolerance"> + <xsl:value-of select="@integratorAbsoluteTolerance" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@integratorRelativeTolerance"> + <xsl:attribute name="integratorRelativeTolerance"> + <xsl:value-of select="@integratorRelativeTolerance" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@maxIntegrationTimeInterval"> + <xsl:attribute name="maxIntegrationTimeInterval"> + <xsl:value-of select="@maxIntegrationTimeInterval" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@solver"> + <xsl:attribute name="solver"> + <xsl:value-of select="@solver" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@title"> + <xsl:attribute name="title"> + <xsl:value-of select="@title" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@toleranceOnTime"> + <xsl:attribute name="toleranceOnTime"> + <xsl:value-of select="@toleranceOnTime" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="TextBlock" match="TextBlock"> + <xsl:element name="TextBlock"> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="VoltageSensorBlock" match="VoltageSensorBlock"> + <xsl:element name="VoltageSensorBlock"> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <!-- <xsl:template name="mxCell" match="mxCell"> + <xsl:element name="mxCell"> + + + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as"/> + </xsl:attribute> + </xsl:if> + </xsl:if> + + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@edge"> + <xsl:attribute name="edge"> + <xsl:value-of select="@edge"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@source"> + <xsl:attribute name="source"> + <xsl:value-of select="@source"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value"/> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex"/> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates/> + </xsl:element> + </xsl:template> --> + <xsl:template name="mxPoint" match="mxPoint"> + <xsl:element name="mxPoint"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@x"> + <xsl:attribute name="x"> + <xsl:value-of select="@x" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@y"> + <xsl:attribute name="y"> + <xsl:value-of select="@y" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="data" match="data"> + <xsl:element name="data"> + <xsl:if test="@bUnsigned"> + <xsl:attribute name="bUnsigned"> + <xsl:value-of select="@bUnsigned" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@column"> + <xsl:attribute name="column"> + <xsl:value-of select="@column" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@line"> + <xsl:attribute name="line"> + <xsl:value-of select="@line" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@realPart"> + <xsl:attribute name="realPart"> + <xsl:value-of select="@realPart" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@imaginaryPart"> + <xsl:attribute name="imaginaryPart"> + <xsl:value-of select="@imaginaryPart" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ScilabDouble" match="ScilabDouble"> + <xsl:element name="ScilabDouble"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:choose> + <xsl:when test="@height"> + <xsl:attribute name="height"> + <xsl:value-of select="@height" /> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="height">0</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <xsl:choose> + <xsl:when test="@width"> + <xsl:attribute name="width"> + <xsl:value-of select="@width" /> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="width">0</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ScilabString" match="ScilabString"> + <xsl:element name="ScilabString"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:choose> + <xsl:when test="@height"> + <xsl:attribute name="height"> + <xsl:value-of select="@height" /> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="height">0</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <xsl:choose> + <xsl:when test="@width"> + <xsl:attribute name="width"> + <xsl:value-of select="@width" /> + </xsl:attribute> + </xsl:when> + <xsl:otherwise> + <xsl:attribute name="width">0</xsl:attribute> + </xsl:otherwise> + </xsl:choose> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ControlPort" match="ControlPort"> + <xsl:element name="ControlPort"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectedLinkId"> + <xsl:attribute name="connectedLinkId"> + <xsl:value-of select="@connectedLinkId" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataType"> + <xsl:attribute name="dataType"> + <xsl:value-of select="@dataType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visbile"> + <xsl:attribute name="visbile"> + <xsl:value-of select="@visbile" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="mxGeometry" match="mxGeometry"> + <xsl:element name="mxGeometry"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@height"> + <xsl:attribute name="height"> + <xsl:value-of select="@height" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@relative"> + <xsl:attribute name="relative"> + <xsl:value-of select="@relative" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@width"> + <xsl:attribute name="width"> + <xsl:value-of select="@width" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@x"> + <xsl:attribute name="x"> + <xsl:value-of select="@x" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@y"> + <xsl:attribute name="y"> + <xsl:value-of select="@y" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ExplicitOutputPort" match="ExplicitOutputPort"> + <xsl:element name="ExplicitOutputPort"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectedLinkId"> + <xsl:attribute name="connectedLinkId"> + <xsl:value-of select="@connectedLinkId" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataColumns"> + <xsl:attribute name="dataColumns"> + <xsl:value-of select="@dataColumns" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataLines"> + <xsl:attribute name="dataLines"> + <xsl:value-of select="@dataLines" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataType"> + <xsl:attribute name="dataType"> + <xsl:value-of select="@dataType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ExplicitInputPort" match="ExplicitInputPort"> + <xsl:element name="ExplicitInputPort"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectedLinkId"> + <xsl:attribute name="connectedLinkId"> + <xsl:value-of select="@connectedLinkId" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataColumns"> + <xsl:attribute name="dataColumns"> + <xsl:value-of select="@dataColumns" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataLines"> + <xsl:attribute name="dataLines"> + <xsl:value-of select="@dataLines" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataType"> + <xsl:attribute name="dataType"> + <xsl:value-of select="@dataType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ImplicitInputPort" match="ImplicitInputPort"> + <xsl:element name="ImplicitInputPort"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectedLinkId"> + <xsl:attribute name="connectedLinkId"> + <xsl:value-of select="@connectedLinkId" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataColumns"> + <xsl:attribute name="dataColumns"> + <xsl:value-of select="@dataColumns" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataLines"> + <xsl:attribute name="dataLines"> + <xsl:value-of select="@dataLines" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataType"> + <xsl:attribute name="dataType"> + <xsl:value-of select="@dataType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="ImplicitOutputPort" match="ImplicitOutputPort"> + <xsl:element name="ImplicitOutputPort"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectedLinkId"> + <xsl:attribute name="connectedLinkId"> + <xsl:value-of select="@connectedLinkId" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataColumns"> + <xsl:attribute name="dataColumns"> + <xsl:value-of select="@dataColumns" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataLines"> + <xsl:attribute name="dataLines"> + <xsl:value-of select="@dataLines" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataType"> + <xsl:attribute name="dataType"> + <xsl:value-of select="@dataType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="BasicBlock" match="BasicBlock"> + <xsl:element name="BasicBlock"> + <xsl:if test="@angle"> + <xsl:attribute name="angle"> + <xsl:value-of select="@angle" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@blockType"> + <xsl:attribute name="blockType"> + <xsl:value-of select="@blockType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dependsOnT"> + <xsl:attribute name="dependsOnT"> + <xsl:value-of select="@dependsOnT" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dependsOnU"> + <xsl:attribute name="dependsOnU"> + <xsl:value-of select="@dependsOnU" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@interfaceFunctionName"> + <xsl:attribute name="interfaceFunctionName"> + <xsl:value-of select="@interfaceFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionName"> + <xsl:attribute name="simulationFunctionName"> + <xsl:value-of select="@simulationFunctionName" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@simulationFunctionType"> + <xsl:attribute name="simulationFunctionType"> + <xsl:value-of select="@simulationFunctionType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@vertex"> + <xsl:attribute name="vertex"> + <xsl:value-of select="@vertex" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="CommandPort" match="CommandPort"> + <xsl:element name="CommandPort"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@connectable"> + <xsl:attribute name="connectable"> + <xsl:value-of select="@connectable" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@connectedLinkId"> + <xsl:attribute name="connectedLinkId"> + <xsl:value-of select="@connectedLinkId" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@dataType"> + <xsl:attribute name="dataType"> + <xsl:value-of select="@dataType" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@initialState"> + <xsl:attribute name="initialState"> + <xsl:value-of select="@initialState" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@ordering"> + <xsl:attribute name="ordering"> + <xsl:value-of select="@ordering" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@parent"> + <xsl:attribute name="parent"> + <xsl:value-of select="@parent" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@style"> + <xsl:attribute name="style"> + <xsl:value-of select="@style" /> + </xsl:attribute> + </xsl:if> + <xsl:if test="@visible"> + <xsl:attribute name="visible"> + <xsl:value-of select="@visible" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> + <xsl:template name="Orientation" match="Orientation"> + <xsl:element name="Orientation"> + <xsl:if test="name(..)='BasicBlock'"> + <xsl:if test="@as"> + <xsl:attribute name="as"> + <xsl:value-of select="@as" /> + </xsl:attribute> + </xsl:if> + </xsl:if> + <xsl:if test="@value"> + <xsl:attribute name="value"> + <xsl:value-of select="@value" /> + </xsl:attribute> + </xsl:if> + <xsl:apply-templates /> + </xsl:element> + </xsl:template> +</xsl:stylesheet> @@ -8,11 +8,11 @@ BODY { font-family: Arial; } - + H1 { font-size: 18px; } - + H2 { font-size: 16px; } @@ -27,10 +27,11 @@ <link rel="stylesheet" href="jquery/farbtastic.css" type="text/css" /> <link rel="stylesheet" href="jquery/jquery-ui.css"> - + <script type="text/javascript" src="details.js"></script> <script type="text/javascript" src="json2.js"></script> <script type="text/javascript"> + function main(container, outline, toolbar, sidebar, status) { // Checks if the browser is supported @@ -100,131 +101,104 @@ // Sets the graph container and configures the editor editor.setGraphContainer(container); - // Disables built-in context menu + // Disables built-in context menu mxEvent.disableContextMenu(document.body); - + // Configures automatic expand on mouseover graph.panningHandler.autoExpand = true; // Creates a right-click menu - graph.panningHandler.factoryMethod = function(menu, cell, evt) - { - - if (cell != null) + graph.panningHandler.factoryMethod = function(menu, cell, evt) { + + if (cell != null) { + + if (cell.value == "ExplicitInputPort" || cell.value == "ExplicitOutputPort" || cell.value == "CommandPort" || cell.value == "ControlPort") { + + } else if (cell.isEdge() == true) // @ToDo: Pooja: Different edge value cases. { - - if( cell.value == "ExplicitInputPort" || cell.value == "ExplicitOutputPort" || cell.value == "CommandPort" || cell.value == "ControlPort") - { - - } - else if (cell.isEdge() == true)// @ToDo: Pooja: Different edge value cases. - { - - menu.addItem('Delete', 'images/delete2.png', function() - { - editor.execute('delete'); - }); - var edgeformat = menu.addItem('Format', null, null); - - menu.addItem('Border Color', 'images/draw-brush.png', function() - { - alert('Border Color');// @ToDo: Pooja: Functionality to be put. - }, edgeformat); - menu.addItem('Edit...', 'images/edit.png', function() - { - alert('Edit...');// @ToDo: Pooja: Functionality to be put. - }, edgeformat); - - } - else - { - - menu.addItem('Block Parameters...', 'images/gear.gif', function() - { - // @ToDo: Pooja: Functionality to be put. - }); - - menu.addItem('Cut', 'images/cut.png', function() - { - editor.execute('cut'); - }); - - menu.addItem('Copy', 'images/copy.png', function() - { - editor.execute('copy'); - }); - - menu.addItem('Delete', 'images/delete2.png', function() - { - editor.execute('delete'); - }); - - menu.addItem('Selection to superblock', 'images/superblock.png', function() - { - // @ToDo: Pooja: Functionality to be put. - }); - var format = menu.addItem('Format', null, null); - - menu.addItem('Rotate', 'images/rotate.png', function() - { - alert('Rotate');// @ToDo: Pooja: Functionality to be put. - }, format); - menu.addItem('Edit...', 'images/edit.png', function() - { - alert('Edit...');// @ToDo: Pooja: Functionality to be put. - }, format); - - menu.addItem('Details', null, function() - { - // @ToDo: Pooja: Functionality to be put. - }); - } - } - else { - menu.addItem('Undo', 'images/undo.png', function() - { - editor.execute('undo'); + menu.addItem('Delete', 'images/delete2.png', function() { + editor.execute('delete'); }); - menu.addItem('Redo', 'images/redo.png', function() - { - editor.execute('redo'); - }); - menu.addItem('Paste', 'images/paste.png', function() - { - editor.execute('paste'); - }); - menu.addItem('Select all', 'images/selectall.png', function() - { - editor.execute('selectAll'); + var edgeformat = menu.addItem('Format', null, null); + + menu.addItem('Border Color', 'images/draw-brush.png', function() { + alert('Border Color'); // @ToDo: Pooja: Functionality to be put. + }, edgeformat); + menu.addItem('Edit...', 'images/edit.png', function() { + alert('Edit...'); // @ToDo: Pooja: Functionality to be put. + }, edgeformat); + + } else { + + menu.addItem('Block Parameters...', 'images/gear.gif', function() { + // @ToDo: Pooja: Functionality to be put. }); - menu.addItem('Set Context', null, function() - { - // @ToDo: Pooja: Functionality to be put. + + menu.addItem('Cut', 'images/cut.png', function() { + editor.execute('cut'); }); - menu.addItem('Setup', 'images/setup.png', function() - { - // @ToDo: Pooja: Functionality to be put. + + menu.addItem('Copy', 'images/copy.png', function() { + editor.execute('copy'); }); - menu.addItem('Zoom In', 'images/zoom_in.png', function() - { - editor.execute('zoomIn'); + menu.addItem('Delete', 'images/delete2.png', function() { + editor.execute('delete'); }); - menu.addItem('Zoom Out', 'images/zoom_out.png', function() - { - editor.execute('zoomOut'); + + menu.addItem('Selection to superblock', 'images/superblock.png', function() { + // @ToDo: Pooja: Functionality to be put. }); - menu.addItem('Diagram background...', null, function() - { - - showColorWheel(graph); - // graph.container.style.backgroundColor=showColorWheel(graph); - //editor.execute('pageBackgroundColor'); + var format = menu.addItem('Format', null, null); + + menu.addItem('Rotate', 'images/rotate.png', function() { + alert('Rotate'); // @ToDo: Pooja: Functionality to be put. + }, format); + menu.addItem('Edit...', 'images/edit.png', function() { + alert('Edit...'); // @ToDo: Pooja: Functionality to be put. + }, format); + + menu.addItem('Details', null, function() { // @ToDo: Pooja: Functionality to be put. }); - } - + } + + } else { + menu.addItem('Undo', 'images/undo.png', function() { + editor.execute('undo'); + }); + menu.addItem('Redo', 'images/redo.png', function() { + editor.execute('redo'); + }); + menu.addItem('Paste', 'images/paste.png', function() { + editor.execute('paste'); + }); + menu.addItem('Select all', 'images/selectall.png', function() { + editor.execute('selectAll'); + }); + menu.addItem('Set Context', null, function() { + // @ToDo: Pooja: Functionality to be put. + }); + menu.addItem('Setup', 'images/setup.png', function() { + // @ToDo: Pooja: Functionality to be put. + }); + + menu.addItem('Zoom In', 'images/zoom_in.png', function() { + editor.execute('zoomIn'); + }); + menu.addItem('Zoom Out', 'images/zoom_out.png', function() { + editor.execute('zoomOut'); + }); + menu.addItem('Diagram background...', null, function() { + + showColorWheel(graph); + // graph.container.style.backgroundColor=showColorWheel(graph); + //editor.execute('pageBackgroundColor'); + // @ToDo: Pooja: Functionality to be put. + }); + } + }; //var config = mxUtils.load('config/editor-commons.xml').getDocumentElement(); @@ -461,18 +435,102 @@ toolbar.appendChild(spacer.cloneNode(true)); - // Defines a new export action - editor.addAction('export', function(editor, cell) { + + /* + Maverick + This method is used for loading the stylesheet from the file. + Reference: http://www.w3schools.com/xsl/xsl_client.asp + */ + + function loadXMLDoc(filename) { + if (window.ActiveXObject) { + xhttp = new ActiveXObject("Msxml2.XMLHTTP"); + } else { + xhttp = new XMLHttpRequest(); + } + xhttp.open("GET", filename, false); + try { + xhttp.responseType = "msxml-document" + } catch (err) {} + xhttp.send(""); + return xhttp.responseXML; + } + + + /* + Maverick + The Export buttons in toolbar call this function with varying + arguments. + The third argument is used to decide which button is being + pressed. + exportXML : 2 arguments + exportXcos: 3 arguments + */ + function displayXMLorXcos() { var textarea = document.createElement('textarea'); textarea.style.width = '400px'; textarea.style.height = '400px'; + var enc = new mxCodec(mxUtils.createXmlDocument()); - var node = enc.encode(editor.graph.getModel()); + var node = enc.encode(arguments[0].graph.getModel()); + + + //console.log(mxUtils.getPrettyXml(node)); textarea.value = mxUtils.getPrettyXml(node); - showModalWindow(graph, 'XML', textarea, 410, 440); + + + if (arguments[2] == null) { + showModalWindow(graph, 'XML', textarea, 410, 440); + } else { + xmlFromExportXML = mxUtils.getXml(node); + return xmlFromExportXML; + } + } + + // Defines a new export action + editor.addAction('exportXML', function(editor, cell) { + //Only two parameters passed here. + displayXMLorXcos(editor, cell); + }); + + /* Maverick + Reference: http://www.w3schools.com/xsl/xsl_client.asp + */ + + editor.addAction('exportXcos', function(editor, cell) { + //Mind the 3 parameters. + var xmlFromExportXML = displayXMLorXcos(editor, cell, true); + if (xmlFromExportXML == null) alert('First create the XML file.'); + else { + /* + Maverick + Adding <mxGraphModel> tag to make up for the missing tag. + */ + + var xml = mxUtils.parseXml("<mxGraphModel>" + xmlFromExportXML + "</mxGraphModel>"); + + var xsl = loadXMLDoc("finalmodsheet.xsl"); + + xsltProcessor = new XSLTProcessor(); + xsltProcessor.importStylesheet(xsl); + resultDocument = xsltProcessor.transformToDocument(xml); + + + var textarea = document.createElement('textarea'); + textarea.style.width = '400px'; + textarea.style.height = '400px'; + /* + Maverick + Using resultDocument.documentElement to remove an additional tag "<#document>" created by the XSLTProcessor. + */ + textarea.value = mxUtils.getPrettyXml(resultDocument.documentElement); + showModalWindow(graph, 'Xcos', textarea, 410, 440); + } }); - addToolbarButton(editor, toolbar, 'export', 'Export', 'images/export1.png'); + addToolbarButton(editor, toolbar, 'exportXML', 'Export XML', 'images/export1.png'); + + addToolbarButton(editor, toolbar, 'exportXcos', 'Export Xcos', 'images/export1.png'); // Adds toolbar buttons into the status bar at the bottom // of the window. @@ -692,9 +750,9 @@ showModalWindow(graph, 'Properties', content, 450, height); }; - function showColorWheel(graph) { + function showColorWheel(graph) { + - // Create basic structure for the form var content = document.createElement('div'); content.setAttribute("id", "colorProperties"); @@ -702,37 +760,37 @@ // Add Form var myform = document.createElement("form"); myform.method = ""; - myform.setAttribute("id","formProperties"); + myform.setAttribute("id", "formProperties"); - // Line break + // Line break var linebreak = document.createElement('br'); myform.appendChild(linebreak); - - // Input Title - var fieldName = 'Color'; - var namelabel = document.createElement('label'); - namelabel.innerHTML = fieldName; - myform.appendChild(namelabel); + // Input Title + var fieldName = 'Color'; + var namelabel = document.createElement('label'); + namelabel.innerHTML = fieldName; + myform.appendChild(namelabel); - // Input - var input = document.createElement("input"); - input.name = fieldName; - input.value = 0; - input.style.cssText = 'float: right;'; - input.setAttribute("id", "color"); - myform.appendChild(input); - // Line break - var linebreak = document.createElement('br'); - myform.appendChild(linebreak); + // Input + var input = document.createElement("input"); + input.name = fieldName; + input.value = 0; + input.style.cssText = 'float: right;'; + input.setAttribute("id", "color"); + myform.appendChild(input); + + // Line break + var linebreak = document.createElement('br'); + myform.appendChild(linebreak); + + // Line break + var linebreak = document.createElement('br'); + myform.appendChild(linebreak); - // Line break - var linebreak = document.createElement('br'); - myform.appendChild(linebreak); - // Line break var linebreak = document.createElement('br'); myform.appendChild(linebreak); @@ -746,7 +804,7 @@ myform.appendChild(linebreak); // Button - Submit - + var btn = document.createElement("button"); btn.innerHTML = 'Submit'; btn.type = "button"; @@ -756,19 +814,19 @@ // Executes when button 'btn' is clicked btn.onclick = function() { - var input=document.getElementById('color').value; - - graph.container.style.backgroundColor=input; - + var input = document.getElementById('color').value; + + graph.container.style.backgroundColor = input; + }; myform.appendChild(btn); - + content.appendChild(myform); - showModalWindow(graph, 'Diagram background...', content,285,340); + showModalWindow(graph, 'Diagram background...', content, 285, 340); // Invokes the farbtastic functionality - $(document).ready(function() { - $('#picker').farbtastic('#color'); + $(document).ready(function() { + $('#picker').farbtastic('#color'); }); }; @@ -880,9 +938,9 @@ if (name == 'ANDBLK') { var details = ANDBLK("define"); - var enc = new mxCodec(mxUtils.createXmlDocument()); - var node = enc.encode(details); - //node.setAttribute('label',label); + var enc = new mxCodec(mxUtils.createXmlDocument()); + var node = enc.encode(details); + //node.setAttribute('label',label); v1 = graph.insertVertex(parent, null, node, x, y, 80, 80, 'ANDBLK'); createPorts(graph, v1, [], ['CONTROL', 'CONTROL'], [], ['COMMAND']); } else if (name == 'CMSCOPE') { @@ -890,8 +948,8 @@ createPorts(graph, v1, ['EXPLICIT', 'EXPLICIT'], ['CONTROL'], [], []); } else if (name == 'CONST_m') { var details = CONST_m("define"); - var enc = new mxCodec(mxUtils.createXmlDocument()); - var node = enc.encode(details); + var enc = new mxCodec(mxUtils.createXmlDocument()); + var node = enc.encode(details); v1 = graph.insertVertex(parent, null, node, x, y, 80, 80, 'CONST_m'); createPorts(graph, v1, [], [], ['EXPLICIT'], []); } else if (name == 'CONVERT') { |