diff options
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/sdk/layout-devices.xsd')
-rwxr-xr-x | eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/sdk/layout-devices.xsd | 345 |
1 files changed, 345 insertions, 0 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/sdk/layout-devices.xsd b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/sdk/layout-devices.xsd new file mode 100755 index 000000000..a4ea6c42e --- /dev/null +++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/sdk/layout-devices.xsd @@ -0,0 +1,345 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Copyright (C) 2009 The Android Open Source Project + * + * Licensed under the Eclipse Public License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.eclipse.org/org/documents/epl-v10.php + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. +--> +<xsd:schema + targetNamespace="http://schemas.android.com/sdk/android/layout-devices/1" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:c="http://schemas.android.com/sdk/android/layout-devices/1" + elementFormDefault="qualified" + attributeFormDefault="unqualified" + version="1"> + + <!-- The root element layout-devices defines a sequence of 0..n device elements. --> + + <xsd:element name="layout-devices" type="c:layoutDevicesType" /> + + <xsd:complexType name="layoutDevicesType"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + The "layout-devices" element is the root element of this schema. + + It must contain zero or more "device" elements that each define the configurations + available for a given device. + + These definitions are used in the Graphical Layout Editor in the + Android Development Tools (ADT) plugin for Eclipse. + </xsd:documentation> + </xsd:annotation> + + <xsd:sequence> + <!-- layout-devices defines a sequence of 0..n device elements. --> + <xsd:element name="device" minOccurs="0" maxOccurs="unbounded"> + + <xsd:annotation> + <xsd:documentation xml:lang="en"> + A device element must contain at most one "default" element + followed by one or more "config" elements. + + The "default" element defines all the default parameters + inherited by the following "config" elements. + Each "config" element can override the default values, if any. + + A "device" element also has a required "name" attribute that + represents the user-interface name of this device. + </xsd:documentation> + </xsd:annotation> + + <xsd:complexType> + <!-- device defines a choice of 0..1 default element + and 1..n config elements. --> + + <xsd:sequence> + <xsd:element name="default" type="c:parametersType" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="config" type="c:configType" + minOccurs="1" maxOccurs="unbounded" /> + </xsd:sequence> + + <xsd:attribute name="name" type="xsd:normalizedString" use="required" /> + </xsd:complexType> + + </xsd:element> + </xsd:sequence> + </xsd:complexType> + + <!-- The type of a device>default element. + This is overridden by configType below for the device>config element. + --> + <xsd:complexType name="parametersType"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + The parametersType define all the parameters that can happen either in a + "default" element or in a named "config" element. + Each parameter element can appear once at most. + + Parameters here are the same as those used to specify alternate Android + resources, as documented by + http://d.android.com/guide/topics/resources/resources-i18n.html#AlternateResources + </xsd:documentation> + </xsd:annotation> + + <xsd:all> + <!-- parametersType says that 0..1 of each of these elements must be declared. --> + + <xsd:element name="country-code" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the configuration is for a particular Mobile Country Code. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:float"> + <xsd:minInclusive value="100" /> + <xsd:maxInclusive value="999" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="network-code" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the configuration is for a particular Mobile Network Code. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:float"> + <xsd:minExclusive value="0" /> + <xsd:maxExclusive value="1000" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="screen-size" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies that the configuration is for a particular class of screen. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="small" /> + <xsd:enumeration value="normal" /> + <xsd:enumeration value="large" /> + <xsd:enumeration value="xlarge" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="screen-ratio" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies that the configuration is for a taller/wider than traditional + screen. This is based purely on the aspect ration of the screen: QVGA, + HVGA, and VGA are notlong; WQVGA, WVGA, FWVGA are long. Note that long + may mean either wide or tall, depending on the current orientation. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="long" /> + <xsd:enumeration value="notlong" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="screen-orientation" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies that the configuration is for a screen that is tall (port) or + wide (land). + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="port" /> + <xsd:enumeration value="land" /> + <xsd:enumeration value="square" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="pixel-density" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the screen density the configuration is defined for. The medium + density of traditional HVGA screens (mdpi) is defined to be approximately + 160dpi; low density (ldpi) is 120, and high density (hdpi) is 240. There + is thus a 4:3 scaling factor between each density, so a 9x9 bitmap in ldpi + would be 12x12 is mdpi and 16x16 in hdpi. + The special nodpi density that can be used in resource qualifiers is not + a valid keyword here. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="ldpi" /> + <xsd:enumeration value="mdpi" /> + <xsd:enumeration value="tvdpi" /> + <xsd:enumeration value="hdpi" /> + <xsd:enumeration value="xhdpi" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="touch-type" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the touch type the configuration is defined for. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="notouch" /> + <xsd:enumeration value="stylus" /> + <xsd:enumeration value="finger" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="keyboard-state" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + If your configuration uses a soft keyboard, use the keyssoft value. + If it doesn't and has a real keyboard, use keysexposed or keyshidden. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="keysexposed" /> + <xsd:enumeration value="keyshidden" /> + <xsd:enumeration value="keyssoft" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="text-input-method" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the primary text input method the configuration is designed for. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="nokeys" /> + <xsd:enumeration value="qwerty" /> + <xsd:enumeration value="12key" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="nav-state" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies whether the primary non-touchscreen navigation control is + exposed or hidden. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="navexposed" /> + <xsd:enumeration value="navhidden" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="nav-method" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the primary non-touchscreen navigation method the configuration + is designed for. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:token"> + <xsd:enumeration value="dpad" /> + <xsd:enumeration value="trackball" /> + <xsd:enumeration value="wheel" /> + <xsd:enumeration value="nonav" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="screen-dimension" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the device screen resolution, in pixels. + </xsd:documentation> + </xsd:annotation> + <xsd:complexType> + <xsd:sequence minOccurs="2" maxOccurs="2"> + + <xsd:element name="size"> + <xsd:simpleType> + <xsd:restriction base="xsd:positiveInteger" /> + </xsd:simpleType> + </xsd:element> + + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="xdpi" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the actual density in X of the device screen. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:float"> + <xsd:minExclusive value="0" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + <xsd:element name="ydpi" minOccurs="0"> + <xsd:annotation> + <xsd:documentation xml:lang="en"> + Specifies the actual density in Y of the device screen. + </xsd:documentation> + </xsd:annotation> + <xsd:simpleType> + <xsd:restriction base="xsd:float"> + <xsd:minExclusive value="0" /> + </xsd:restriction> + </xsd:simpleType> + </xsd:element> + + </xsd:all> + </xsd:complexType> + + <!-- The type definition of a device>config element. + This type is basically all the element defined by parametersType and an extra + required "name" attribute for the user-interface configuration name. + --> + <xsd:complexType name="configType"> + <xsd:annotation> + <xsd:documentation> + The configType defines the content of a "config" element in a "device" element. + + A "config" element can have all the parameters elements defined by + "parameterType". It also has a required "name" attribute that indicates the + user-interface name for this configuration. + </xsd:documentation> + </xsd:annotation> + + <xsd:complexContent> + <xsd:extension base="c:parametersType"> + <xsd:attribute name="name" type="xsd:normalizedString" use="required" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + +</xsd:schema> |