FreeCalypso > hg > tcs211-fcmodem
diff gpf/cfg/emw_gui_def.xsd @ 0:509db1a7b7b8
initial import: leo2moko-r1
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Mon, 01 Jun 2015 03:24:05 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gpf/cfg/emw_gui_def.xsd Mon Jun 01 03:24:05 2015 +0000 @@ -0,0 +1,158 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by Steve Farmwald (private) --> +<!-- +This schema file defines the possible tags for use in defining a dynamic User Interface for the +EMW. + +Displayable items are of 2 types. Simple Displayables are entities that are displayed within the UI. + Items are those Displayables that may be updated by the backend. (They are a subset of Displayable). + + Vectors of Items may be defined using the Vector tag. A Vector defines a series of identical Items aligned + within a row or column. The items are differentiated by an index. +--> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> + <xs:simpleType name="ColorSpec"> + <xs:annotation> + <xs:documentation>This defines the legal color specifications</xs:documentation> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:pattern value="white|black|red|green|blue|yellow|magenta|cyan|orange|redorange|purple|greenblue|[0-9]{1,3},[0-9]{1,3},[0-9]{1,3}|0x[0-9a-f]{2},0x[0-9a-f]{2},0x[0-9a-f]{2}"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="PageTag"> + <xs:annotation> + <xs:documentation>This defines a page (tab).</xs:documentation> + </xs:annotation> + <xs:choice minOccurs="0" maxOccurs="unbounded"> + <xs:element name="Label" type="LabelTag"/> + <xs:element name="TextItem" type="TextTag"/> + <xs:element name="LabelFrame" type="LabelFrameTag"/> + <xs:element name="CheckItem" type="CheckItemTag"/> + <xs:element name="Vector" type="VectorTag"/> + </xs:choice> + <xs:attribute name="title" type="xs:string" use="required"/> + </xs:complexType> + <xs:attributeGroup name="DisplayAttributes"> + <xs:annotation> + <xs:documentation>This defines a set of attributes common to all displayables.</xs:documentation> + </xs:annotation> + <xs:attribute name="row" type="xs:nonNegativeInteger" use="required"/> + <xs:attribute name="column" type="xs:nonNegativeInteger" use="required"/> + <xs:attribute name="row_span" type="xs:nonNegativeInteger" use="optional" default="1"/> + <xs:attribute name="column_span" type="xs:nonNegativeInteger" use="optional" default="1"/> + <xs:attribute name="tool_tip" type="xs:string" use="optional"/> + <xs:attribute name="text_alignment" use="optional" default="right"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="center"/> + <xs:enumeration value="left"/> + <xs:enumeration value="right"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="background_color" type="ColorSpec" use="optional"/> + <xs:attribute name="text_color" type="ColorSpec" use="optional" default="black"/> + <xs:attribute name="font_size" type="xs:nonNegativeInteger" use="optional" default="12"/> + <xs:attribute name="font_name" type="xs:string" use="optional" default="system"/> + <xs:attribute name="visible" type="xs:boolean" use="optional" default="true"/> + </xs:attributeGroup> + <xs:attributeGroup name="ItemAttributes"> + <xs:annotation> + <xs:documentation>this defines a set of attributes common to items.</xs:documentation> + </xs:annotation> + <xs:attribute name="item_id" type="xs:string" use="required"/> + <xs:attribute name="add_to_history" type="xs:boolean" use="optional" default="false"/> + <xs:attribute name="index" type="xs:nonNegativeInteger" use="optional"/> + <xs:attributeGroup ref="DisplayAttributes"/> + </xs:attributeGroup> + <xs:complexType name="LabelTag"> + <xs:annotation> + <xs:documentation>This defines a label.(This is not considered an item. ie, it is passive)</xs:documentation> + </xs:annotation> + <xs:attribute name="label_id" type="xs:string" use="required"/> + <xs:attributeGroup ref="DisplayAttributes"/> + </xs:complexType> + <xs:complexType name="LabelFrameTag"> + <xs:annotation> + <xs:documentation>This defines a labeled frame. (This is not considered an item. ie, it is passive)</xs:documentation> + </xs:annotation> + <xs:choice minOccurs="0" maxOccurs="unbounded"> + <xs:element name="Label" type="LabelTag"/> + <xs:element name="TextItem" type="TextTag"/> + <xs:element name="CheckItem" type="CheckItemTag"/> + <xs:element name="LabelFrame" type="LabelFrameTag"/> + <xs:element name="Vector" type="VectorTag"/> + </xs:choice> + <xs:attribute name="label_id" type="xs:string" use="optional"/> + <xs:attributeGroup ref="DisplayAttributes"/> + </xs:complexType> + <xs:complexType name="CheckItemTag"> + <xs:annotation> + <xs:documentation>This defines a checkbox (boolean) item.</xs:documentation> + </xs:annotation> + <xs:attribute name="label_position" use="optional" default="left"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="left"/> + <xs:enumeration value="right"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="label_id" type="xs:string" use="required"/> + <xs:attributeGroup ref="ItemAttributes"/> + </xs:complexType> + <xs:simpleType name="VectorType"> + <xs:restriction base="xs:string"> + <xs:enumeration value="row"/> + <xs:enumeration value="column"/> + </xs:restriction> + </xs:simpleType> + <xs:complexType name="VectorTag"> + <xs:annotation> + <xs:documentation>This is a shorthand for defining a number of items in a row or column</xs:documentation> + </xs:annotation> + <xs:choice> + <xs:element name="TextItem" type="TextTag"/> + <xs:element name="CheckItem" type="CheckItemTag"/> + </xs:choice> + <xs:attribute name="type" type="VectorType" use="required"/> + <xs:attribute name="length" type="xs:positiveInteger" use="required"/> + <xs:attributeGroup ref="DisplayAttributes"/> + </xs:complexType> + <xs:complexType name="TextTag"> + <xs:annotation> + <xs:documentation>This defines a Text Box item</xs:documentation> + </xs:annotation> + <xs:sequence minOccurs="0" maxOccurs="unbounded"> + <xs:element name="Threshhold"> + <xs:complexType> + <xs:attribute name="expression" type="xs:string" use="required"/> + <xs:attribute name="action" type="xs:string" use="required"/> + <xs:attribute name="add_to_history" type="xs:boolean" use="optional" default="false"/> + </xs:complexType> + </xs:element> + </xs:sequence> + <xs:attribute name="width_in_chars" type="xs:nonNegativeInteger" use="optional" default="3"/> + <xs:attributeGroup ref="ItemAttributes"/> + </xs:complexType> + <!--The GUIDescription consists of a number of pages (tabs) containing data items--> + <xs:element name="GuiDefinition"> + <xs:annotation> + <xs:documentation> +This schema file defines the possible tags for use in defining a dynamic User Interface for the +EMW. + +Displayable items are of 2 types. Simple Displayables are entities that are displayed within the UI. + Items are those Displayables that may be updated by the backend. (They are a subset of Displayable). + + Vectors of Items may be defined using the Vector tag. A Vector defines a series of identical Items aligned + within a row or column. The items are differentiated by an index. +</xs:documentation> + </xs:annotation> + <xs:complexType> + <xs:sequence> + <xs:element name="Page" type="PageTag" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + </xs:complexType> + </xs:element> +</xs:schema>