Home > Personalización (Skins) > Diseños Teclado

Documentación Archivo de definición de Diseños de Teclado

El archivo de definición XML para los teclados en pantalla, mediante sus elementos y atributos, define el área para cada tecla que puede presionarse en el teclado de pantalla táctil, y la función asociada que debe ejecutarse.

Por favor, tenga en cuenta:
Es preciso un conocimiento básico para crear un diseño de teclado nuevo. Por razones obvias no podemos (a parte de esta documentación) proporcionar soporte gratuito para crear sus Skins personalizados.
Por favor, tenga en cuenta que la siguiente documentación solo está disponible en inglés. 
1. Recomendaciones sobre las Resoluciones de Pantalla
Los diseños de teclado incluidos con SiteKiosk se han optimizado para una resolución de 1600x1200 pixels.

Si utiliza resolución diferente en SiteKiosk, entonces SiteKiosk convertirá autormáticamente todos los para la resolución apropiada que también permite mostrarse en 800x600.  Tenga en cuenta que bajo circunstancias normales un teclado no se mostrará en un tamaño superior al tamaño original de la imagen de teclado.

Definiendo de forma explícita el elemento painting, puede optimizar la forma en la que se mostrará para una determinada resolución.

Para una mejor calidad de la imagen le recomendamos crear un diseño de teclado con una resolución de al menos 1024x768 si está pensando en un diseño de teclado para uso general. Si está creando uno para un uso específico planificado, debería decidir la resolución en la fase inicial. 

2. Estructura general del archivo de definición
La forma más sencilla es comenzar a partir de un modelo de archivo completo de los diseños de teclado en pantalla ya existentes. El diseño de barras de desplazamiento estándar (en inglés) es un teclado en pantalla muy simple. Descargue la definición del diseño y revise el archivo "standard_english_scroll.xml" en el directorio  .\SiteKiosk\skins\default\englishscroll con un editor de texto.

Este es un extracto de las principales áreas del archivo:

<keydef name="TX-82 Scroll Bars (English)">
<subkeydef name="1024-small" type="small" language="9" docked="-1" forcewinkeyboard="-1">
          <dockrect x1="0" y1="0" x2="1024" y2="52"/>
          <hotspot x="0" y="0"/>
          <shape mode="xor">
                    <rect x1="12" y1="5" x2="162" y2="50"/>
                    <rect x1="12" y1="5" x2="162" y2="50"/>
                    <rect x1="12" y1="5" x2="162" y2="50" mode="add"/>
                    ...
          </shape>
          <language id="9" target="TX-82 Scroll Bars (English)\\docked, big"/>
          <jpeg type="normal">skins\tx-82\englishscroll\qwerty0001.jpg</jpeg>
          <jpeg type="pressed">skins\tx-82\englishscroll\qwerty0002.jpg</jpeg>
          <sound id="0">wavs\key_click.wav</sound>
          <dockbackground type="2" filename="background.png"/>
          <nondragarea mode="or"/>
                    <rect x1="12" y1="5" x2="162" y2="50"/>
                    ...
          </nondragarea>
          <nonshiftkeys>
          <key sound="5" type="5" vkey="0" char="+" shift="0">
                    <shape mode="xor">
                    <rect x1="" y1="" x2="" y2="" mode="or"/>
                    <ellipse x1="" y1="" x2="" y2="" mode="or"/>
                    <roundrect x1="" y1="" x2="" y2="" widthellipse="" heightellipse=""                        mode="or"/>
                    <polygon mode="or" polymode="alternate">
                              <point x="322" y="2"/>
                              <point x="486" y="2"/>
                              <point x="486" y="53"/>
                    </polygon>
                    ...
                    </shape>
          </key>
          <key sound="2" type="2" vkey="0" target="docked, small">
                    ...
          </key>
          <key sound="2" type="16" vkey="0" target="http://www.sitekiosk.com/">
                    ...
          </key>
          <key sound="17" type="2" vkey="0" target="docked, small">
                    ...
          </key>
          <macro sound="0">
                    <shape>
                              ...
                    </shape>
                    <mkey char="h"/>
                    <mkey char="t"/>
                    <mkey char="t"/>
                    <mkey char="p"/>
                    <mkey char=":"/>
                    <mkey char="/"/>
                    <mkey char="/"/>
          </marco>
          </nonshiftkeys>
          <keyswithoutshift>
                    <key type="0" char="a">
                              ...
                    </key>
                    ...
          </keyswithoutshift>
          <keyswithshift>
                    <key type="0" char="A">
                              ...
                    </key>
                    ...
          </keyswithshift>
</subkeydef>
</keydef>
3. Documentación de los Elementos y Atributos
3.1 keydef-Element
Cada diseño de teclado se divide en una sección keydef (para definir las teclas) con varias secciones subkeydef y una sección opcional de dibujo. Las secciones subkeydef describen los diferentes estados posibles de las teclas en un teclado, por ejemplo contraído (pequeño) o extendido (grande).

<keydef name="TX-82 Scroll Bars (English)">
          <subkeydef ...>
          ...
          </subkeydef>
</keydef>

name:
El único atributo de la sección es el keydef name define el nombre del teclado. El contenido de este atributo se muestra en la configuración de SiteKiosk. El atributo name (nombre) debe ser único para cada diseño de teclado. 
3.2 subkeydef-Element
Las seccionessubkeydef describen los distintos estados posibles del teclado, por ejemplo, contraído (pequeño), o extendido (grande). 

<subkeydef name="1024-small" type="small" language="9" docked="-1" forcewinkeyboard="1">

name:
El atributo name especifica un nombre único para el sublayout. El nombre se necesita cuando crea teclados que cambien en ejecución a tiempo real. Por ejemplo, con los teclados multi-idioma, en los que se utiliza este atributo name.


type:
El atributotype determina si la definición de teclado es para un teclado grande (extendido) o pequeño (contraído). Esto es principalmente para asegurar que SiteKiosk pueda detectar en tiempo real de ejecución si el teclado ya está en posición contraida, por ejemplo cuando se abre una nueva ventana.

El cambio desde un teclado extendido a contraído o viceversa sólo puede ocurrir de forma automática si hay disponible un área de tecla tipo "2" (botón para alternar entre ambos). Con un cambio automático todas las entradas de tipo "2" se realizan eligiendo el primero que se encuentra. 
Importante: Las teclas deben definir completamente para tamaño grande y pequeño, es decir, algunas teclas visibles en tamaño pequeño y grande se deben definir dos veces.


language:
El atributo language especifica el idioma para el cual se ha definido el diseño de teclado. Es importante para un cambio automático de idioma comprobar si el diseño deseado puede incluir ya el ajuste correcto de idioma. Utilice el 0 si quiere crear un teclado que pueda cambiar entre todos los idiomas configurados en el teclado de Windows. En caso contrario, introduzca el ID del idioma deseado. 


docked:
El atributo docked determina si el teclado debe anclarse. Esto significa que al contrario del teclado FLOTANTE, un teclado anclado (docked) hace la ventana del navegador más pequeña de tal forma que se posiciona fuera del navegador o áreas no definidas de sobreposición en dockrect.
Un teclado  ANCLADO (en inglés, DOCKED) asegura que el teclado no cubre la ventana del navegador. Por el contrario un teclado cubre parcialmente el navegador.   -1 Significa que el teclado está anclado. , 0 significa que no está anclado (que es flotante).  

forcewinkeyboard:
El atributo forcewinkeyboard está obsoleto.  
3.3 dockrect-Element
Si un teclado está anclado, el valor dockrect define el rango en el que el teclado puede extenderse en la ventana del navegador. Este área también es la parte visible del teclado contraído. Normalmente hay botones para "(desplegar/contraer) Teclado" además de los botones de desplazamiento. El código de ejemplo es de  1024 píxeles de ancho y 58 píxles de alto de solapamiento en el navegador. Si no se define el parámetro dockrect, el navegador se repliega sobre el teclado entonces no se posiciona sobre el navegador.

<dockrect x1="0" y1="0" x2="1024" y2="58"/>

Los atributos de dockrect son coordenadas para las dimensiones del área. Estos valores también son importantes para centrar el teclado. 

x1, y1:
Coordenadas para la esquina superior izquierda del área dockrect.

x2, y2:
Coordenadas para la esquina inferior derecha del área dockrect.

3.4 dockbackground-Element
Este elemento especifica el aspecto del fondo del teclado en su estado anclado. Aquí puede definir un color o una imagen. 

<dockbackground type="2" filename="background.png" />

type:
Si el tipo es "1", entonces el atributo color espera un valor decimal que especifique el color de fondo.
Si el tipo se define como "2", entonces es necesario proporcionar un nombre de archivo para el archivo.. 

color:
Si type es "1", entonces el atributo de color espera un valor decimal para definir el color o filename

filename:
Si type es "2", entonces el atributo debe especificar el filename. Puede utilizar color o bien filename.
3.5 painting-Element
Este elemento tiene dos posibles ubicaciones en la definición del teclado. Puede ser un hijo del elemento keydef element o del elemento subkeydef.
Como elemento hijo de keydef element se utiliza para implementar el los valores de color por defecto para un teclado, que tiene colores que permiten personalizarse en la configuración de SiteKiosk, por ejemplo el diseño de teclado TouchBrowser. Los valores se pueden dejar como están, pues serán sobreescritos en la configuración de SiteKiosk. Por tanto no se detallarán más en este este documento.

<painting>
          <color-board>0</color-board>
          <color-buttonup>3289650</color-buttonup>
          <color-buttondown>16777215</color-buttondown>
          <color-symbolup>16777215</color-symboldown>
          <color-symboldown>0</color-symboldown>
          <color-symbolup-alt>16777215</color-symbolup-alt>
          <color-symboldown-alt>0</color-symboldown-alt>
          <color-dockbackground>0</color-dockbackground>
</painting>
Ejemplo: sección Painting del elemento keydef.

Sin embargo el elemento painting como hijo del elemento subkeydef es necesario si quiere crear un teclado que pueda cambiar automáticamente entre todos los idiomas configurados para funcionar en Windows. Entonces los archivos de imagen del teclado no contienen letras, sirven para el idioma especificado para valores de color (en estado presionado y no presionado), fuente, etc, a dibujar.

<painting color-up="0" color-down="16777215" font-family="Tahoma" font-weight="600" font-size="-22"/>
Ejemplo: Extracto del archivo natural.xml. Un diseño de teclado independiente del idioma.

color-up:
Color del fuente de la etiqueta del botón (tecla) cuando no está presionado.

color-down:
Color del fuente de la etiqueta del botón cuando se está presionando.

font-family:
Fuente de la etiqueta del botón.

font-weight:
Valor weight del fuente de la etiqueta de la tecla. 

font-size:
Tamaño de fuente de la etiqueta de la tecla. 

Otros atributos posibles son resolution-x y resolution-y. Esto le permite especificar a qué tamaño se debe ajustar el teclado. Si no se especifica ningún valor, SiteKiosk utilizará 1600x1200. Para resoluciones más grandes o más pequeñas será escalado de acuerdo con esas proporciones.

<painting resolution-x="1024" resolution-y="768"/>
Ejemplo: Datos para un teclado que se adaptará a una resolución de pantalla de 1024x768.

resolution-x:
Ancho de resolución en pixels.

resolution-y:
Alto de la resolución en pixels.
3.6 languageselector-Element
Este elemento sólo se necesita si quiere crear un teclado que pueda cambiar automáticamente entre los idiomas configurados en Windows. Este elemento representa los idiomas disponibles a elegir y pueden ser defidios en la tecla correspondiente a type 19. La imagen del siguiente código de ejemplo contiene elementos opcionales, que en caso de no ser especificados, el idioma se escribirá con un texto. Imagerect yTextRect definen la posición de la imagen en el área de texto de un elemento.

<languageselector font-family="Arial" font-weight="600" font-size="-12" check-image="skins\provisio\languages\check.ico">
     ...
</languageselector>
Ejemplo: Extracto del archivo natural.xml. A diseño de teclado independiente del idioma.

font-family:
Elección del fuente dentro del área de selección de idioma.

font-weight:
Peso del Fuente del área de selección de idioma.

font-size:
Tamaño del fuente del área de selección de idioma.

check-image:
Imagen tipo icono que marca el idioma seleccionado. 

menu-align:
Pisión del menú de selección de idioma. El valor decimal es opcional. Valor por defecto: 32. Posiciones del menú de selección de idioma en la parte superior izquierda del teclado.
El valor es la suma de valores hexadecimales, cuyo resultado se a convertido a un valor decimal.

0x00
 Position relative to the keyboard area
0x01  Position relative to the language selector button on the keyboard

 
0x00  Position left-aligned
0x40  Position center (X-axis)
0x80  Position right-aligned
   
0x00  Position lower border
0x10  Position center (Y-axis)
0x20  Position upper border

Ejemplo: la posición debería ser la esquina superior derecha del botón de selección de idioma del teclado. Esto significa 0x01 + 0x80 + 0x20 = A1. El valor decimal que se tiene que utiizar es 161.

Los siguientes parámetros están disponibles dentro del languageselector:

<imagerect x1="135" y1="222" x2="157" y2="236"/>
<textrect x1="161" y1="222" x2="181" y2="236"/>
<image id="1">skins\provisio\languages\jpg\sa.jpg</image>
<image id="2049">skins\provisio\languages\jpg\iq.jpg</image>

imagerect:
Define la posición del área de la imagen del elementolanguageselector.

textrect:
Define la posición del área de texto del elemento languageselector.

image:
Especifica la ruta a un archivo de imagen que representa el dicioma, por ejemplo, la bandera de un país.
3.7 hotspot-Element

Esto le permite definir un punto que permanecerá invariable ante los cambios en el teclado. Si alterna entre dos teclados similares, esto impiede un representación desplazada del teclado. Si el elemento hotspot no se puede fijar aquí, el punto (x=0, y=0) se definirá automáticamente como un hotspot.

Los teclados fijos, que se muestran centrados, no están influenciados por el elemento hotspot.

<hotspot x="0"y="0"/>

x, y:
Define las coordenadas de un hotspot.
3.8 shape-Element
Un alemento shape element especifica el contorno de un diseño de teclado entero (Ejemplo 1) o una tecla individual (Ejemplo 2).
Los elementos geométricos disponibles para una tecla se describen aquí.

<shape>
         <rect x1="0" y1="0" x2="1024" y2="58"/>
</shape>
Ejemplo 1: Especifica que el diseño de teclado es de 1024 pixels de ancho por 58 pixels desde el punto superior visible del gráfico del teclado contraído. 


<key sound="5" type="5" vkey="0">
         <shape>
                  <polygon>
                           <point x="322" x="2"/>
                           <point x="486" x="2"/>
                           <point x="486" x="53"/>
                           <point x="322" x="53"/>
                           <point x="322" x="2"/>
                  </polygon>
         </shape>
</key>
Ejemplo 2: Definición de la tecla "Scroll up / Re Pág" (Type 5). En el diseño de teclado se realiza definiendo una forma (aquí es un polígono mediante 5 puntos), lo que determina la posición y el tamaño del botón a partir de los 5 valores de coordenadas. Al hacer clic el archivo de sonido identificado con el  ID 5 se reproducirá cuando la tecla "Scroll Up /Re Pág." sea presionada.

mode:
el elmento shape tiene incluso un atributo opcional mode, que determina cómo cada elemento sub-o elementos-hijo se acoplan para obtener la forma final. El mode puede contener los siguientes valores​: "or" (por defecto), "and", "xor" y"diff". Cada elemento hijo puede tener un atributo mode, que sobreescribe atributo mode el elemento padre. Los elementos hijo se acoplan de arriba a abajo para conformar un diseño de teclado completo.

3.9 Areas Define Key
Utilizando varios elementos geométricos puede definir áreas en el teclado para hacer clic.

<polygon>
          <point x="322" y="2"/>
          <point x="486" y="2"/>
          <point x="486" y="53"/>
          <point x="322" y="53"/>
          <point x="322" y="2"/>
</polygon>
Ejemplo de polóigono: Un polígono consiste en un número cualquiera de puntos interconectados (5 en este caso).

Están disponibles las siguientes formas geométicas:

rect:
Con rect, definirá un rectángulo. Los atributos son el punto "x1", "y1" para el extremo superior izquierdo, y el punto  "x2" "y2" para el inferior derecho.


ellipse:
Con elipses, puede definir un area elíptica. La elipse se describe mediante un rectánculo, que toca la elipse por cuatro puntos desde el interior. De nuev, los atributos son las coordenadas "x1" "y1" y "x2" "y2".


roundrect:
Esto le permite especificar un rectángulo redondeado. Además de los atributos para las coordinadas rectangulares  ("x1", "y1" y "x2", "y2") se puede utilizar para determinar en qué grado el rectángulo tendría las esquinas redondeadas. 


polygon:
Un polígono define un área mediante varios puntos. El polígono se puede formar con dos atributos Polymode distintos. Si el Polymode es "winding" is (por defecto), entonces todas las zonas son rellenadas. Si Polymode fuera "alternate", entonces las regiones entre los lados impares y pares se rellenarán.
Usando puntos se proporcionarán algunos de los conforman el polígono mediante las coordenadas con atributos x, y.

3.10
nondragarea
-Element
Este campo opcional especifica zonas a las que el usuario no podrá arrastrar el teclado. El elemento nondragarea se construye igual que el elmento shape.

3.11 language-Element
Nota: Este elemento no se necesita si quiere crear un teclado que pueda conmutar automáticamente entre los idiomas configurados en Windows. En ese caso utilice el languageselector-Element.
Con el elemento opciocional de idioma, es posible crear distintos diseños de teclados por idioma. Cuando se produce un cambio automático de idioma se utilizarán todos los que coincidan con el código de identificación de idioma ("ID").

<keydef name="TX82-Ultra Universal (floating)">
         <subkeydef name="ger, docked, small" language="7" type="small" docked="-1" forcewinkeyboard="1">
                  <dockrect x1="0" y1="22" x2="991" y2="47"/>
                  <hotspot x="0" y="0"/>
                  <language id="7" target="ger, docked, small"/>
                  <language id="9" target="eng, docked, small"/>
                  <language id="12" target="fre, docked, small"/>
                  ...
</keydef>
Ejemplo: extracto del archivo tx82_ultra_universal_floating.xml; diseño de teclado tri-lingüe (Inglés, Alemán, Francés).

target:
El diseño de teclado se cargará donde se especifique en target. Target es necesario en atributo nombre del  elemento subkeydef.

id:
El atributo id especifica la lengua del diseño de teclado cargado en target.

Los IDs de idiomas son los sguientes:

LANG_AFRIKAANS 54
LANG_ALBANIAN 28
LANG_ARABIC 1
LANG_ARMENIAN 43
LANG_ASSAMESE 77
LANG_BULGARIAN 2
LANG_CATALAN 3
LANG_CHINESE 4
LANG_CROATIAN 26
LANG_CZECH 5
LANG_DANISH 6
LANG_DUTCH 19
LANG_ENGLISH 9
LANG_ESTONIAN 37
LANG_FINNISH 11
LANG_FRENCH 12
LANG_FRENCH-BELGIUM 2060
LANG_GERMAN 7
LANG_GREEK 8
LANG_HEBREW 13
LANG_HINDI 57
LANG_HUNGARIAN 14
LANG_ICELANDIC 15
LANG_INDONESIAN 33
LANG_ITALIAN 16
LANG_JAPANESE 17
LANG_KANNADA 75
LANG_KOREAN 18
LANG_LATVIAN 38
LANG_LITHUANIAN 39
LANG_MACEDONIAN 47
LANG_MALAY 62
LANG_MALAYALAM 76
LANG_MARATHI 78
LANG_NORWEGIAN 20
LANG_POLISH 21
LANG_PORTUGUESE 22
LANG_ROMANIAN 24
LANG_RUSSIAN 25
LANG_SERBIAN 26
LANG_SLOVAK 27
LANG_SLOVENIAN 36
LANG_SPANISH 10
LANG_SWEDISH 29
LANG_THAI 30
LANG_TURKISH 31
3.12 jpeg-Element
El elemento jpeg las imágenes con dos variaciones: teclas no pulsadas (type="normal") y teclas pulsadas (type="pressed"). Los dibujos pueden ser archivos jpeg y también archivos png.
La imagen para type="normal" se muestran completamente. Mientras que la imagen para el tipo type="pressed" sólo se muestra la parte del botón que está pulsada (presionada). Esta sección se define en el área key. Para que un teclado en pantalla funcione es necesaria la especificación de ambas imágenes.

<jpeg type="normal">skins\tx-82\englishscroll\qwerty0001.jpg</jpeg>
<jpeg type="pressed">skins\tx-82\englishscroll\qwerty0002.jpg</jpeg>

Tenga en cuenta que hay un tercer tipo llamado mask, que se utiliza para teclados con colores personalizados. Los colores se definen en la configuración de SiteKiosk. Un ejemplo sería el diseño de teclado TouchBrowser.

<jpeg type="mask">skins\provisio\lightweight_int_touchbrowser\lightweight_int_touchbrowser_mask_min.png</jpeg>
<jpeg type="normal">skins\provisio\lightweight_int_touchbrowser\lightweight_int_touchbrowser.tga</jpeg>
<jpeg type="pressed">skins\provisio\lightweight_int_touchbrowser\lightweight_int_touchbrowser.tga</jpeg>

type:
Tendrá el valor normal, para teclas no pulsadas, o pressed para las teclas pulsadas. Type mask se utiliza además de forma opcional en teclados para personalizar el color. Se aplica en las imágenes a blanco y negro, negro para el cuerpo del teclado y blanco para las teclas. Si se utiliza mask el uso de normal y pressed es opcional y entonces se refería a las imágenes con escalas de grises en canal alfa (formato tga).
3.13 sound-Element
Entre la etiqueta de apertura <sound> y de cierre </sound> se define el archivo de sonido a reproducir. Introduzca tantos elementos de sonido como necesite. Sin embargo, debe establecer los atributos id para cada uno.

<sound id="0">wavs\key_click.wav</sound>

id:
El id del elemento sonido determina cuándo se reproduce el sonido. En los elementos key- o macro con el atributo de sonido se define el sonido de sonido para el elemento.
3.14 nonshiftkeys Element
Los elementos nonshiftkeys, son todas aquellas teclas o botones que pueden utilizarse sin necesidad de las teclas shift. Estos incluyen por ejemplo "a", "b", "+", "-", "." or "," y también las que sirven para cambiar el diseño de teclado, teclas / botones de desplazamiento, etc. 

<nonshiftkeys>
     ...
</nonshiftkeys>

Cada tecla individual se define con la ayuda de key-Elements.


3.15 Elemento keyswithoutshift y Element keyswithshift
Esto le permite determinar qué teclas/funciones deben asimilarse en key sin función Shift (keyswithoutshift) o con la función Shift. Como elementos hijo sólo se proporcionan los elementos key, como se describe en KEY y SHAPE.

<keyswithoutshift>
     ...
</keyswithoutshift>
<keyswithshift>
     ...
</keyswithshift>

Los botones del área keyswithoutshift y keyswithshift se definen respectivamente con los elementos key.

3.16 key-Element
El elemento key tiene varios atributos. No todos se tienen que definir.

<key sound="5" type="5" vkey="0">
         <shape>
                  <polygon>
                           <point x="322" x="2"/>
                           <point x="486" x="2"/>
                           <point x="486" x="53"/>
                           <point x="322" x="53"/>
                           <point x="322" x="2"/>
                  </polygon>
         </shape>
</key>
Ejemplo 2: Define la tecla "Scroll up /Re Pág"  (Type 5). En el diseño de teclado es la forma (aquí un Polygono con 5 puntos), la que determina la posición y el tamaño del botón mediante los 5 valores de coordenadas. Haciendo clic el archivo de sonido con el ID 5 se reproducirá si la teclas "Scroll Up /Re Pág" se pulsa.

sound:
El atributo sonido especifica qué sonido se reproducirá cuando se pulsa una tecla/botón. Aquí se especifica el correspondiente Sound-ID.

vkey:
El atributo vkey puede determinar qué tecla virtual debe simularse al pulsar un botón. Por favor lea esta nota y también la documentación del API Window.

scancode:
El atributo scancode puede determinar alternativamente qué virtual key debe simularse al pulsar un botón. Por favor consulta la documentación del API Window.

shift:
Con shift, puede determinar si el shift ket debe simularse. 

language:
Este atributo sólo se utiliza cuando el botón que invoca el elemento de selector de idioma  (Type 19). En este momento el único valor aceptado es -1.

char:
En la mayoría de los casos, el atributo char es suficiente, simplemente porque porque este es el carácter especial que se especifica, entonces se simula la pulsación completa de la tecla del correspondiente botón (incluyendo Shift, Ctrl y Alt).

target:
En target se puede asignar una URL o un diseño de teclado. El destino deseado se mostrará en al tocar un botón. Para controlar el diseño de teclado introduzca el el nombre del teclado en subkeydef .

type:
El elemento key puede tener distintos atributos que pueden definir cada tipo: type.
  1. Type 0:
    Representa una tecla normal. Es la tecla a pulsar como mkey element o simulado.
  2. Type 1:
    Es el bloqueo de mayúsculas / Caps Lock que cambia el estado interno en SiteKiosk. Si el estado interno es "Shift", entonces cuando el usuario hace clic en el teclado todos las simulaciones se hacen como keyswhithshift, mientras que si el estado no es "Shift", entonces las teclas se definen sin shift en nonshiftkeys y en keyswithoutshift. Observe que  type = "1" siempre se combina con vkey = "16" para simular la tecla de bloqueo de mayúsculas. 
  3. Type 2:
    Este botón es para cambiar el tamaño del teclado. Sólo debería aparecer en lugar del propio teclado. El diseño se define en el atributo target. Para cambiar entre idiomas o para cambios generales de diseño utilice el Type 17.
  4. Type 3:
    Simula el desplazamiento de contenidos de todos los marcos a la izquierda. 
  5. Type 4:
    Simula el desplazamiento de contenidos a la derecha.
  6. Type 5:
    Simula el desplazamiento de contenidos hacia arriba.
  7. Type 6:
    Simula desplazamiento / scroll de los contenidos hacia abajo.
  8. Type 7:
    Este tipo no se puede utilizar (reservado).
  9. Type 8:
    Simula un clic en el botón atrás.
  10. Type 9:
    Simula un clic en el botón adelante.
  11. Type 10:
    Simula un clic en el botón parar. 
  12. Type 11:
    Simula un clic en el botón refrescar. 
  13. Type 12:
    Simula un clic en el botón start page / home page. 
  14. Type 13:
    Simula un clic en el botón Imprimir. 
  15. Type 14:
    Simula un clic en el botón Buscar. 
  16. Type 15:
    No se puede utilizar (reservado).
  17. Type 16:
    This type starts a browser navigation to the URL defined in the target attribute.
  18. Type 17:
    Cambia al diseño de teclado especificado en target.
  19. Type 18:
    No se puede utilizar (reservado). 
  20. Type 19:
    Es para la selección de idioma, si quiere crear un teclado que pueda cambiar de forma dinámica entre los distintos teclados de los idiomas configurados en Windows, y esto siempre se combina con language="-1" en el atributo language de cada elemento key. Normalmente no son posibles otros valores para language. El atributo language de  subkeydef se establecerá a 0 y se adaptará dinámicamente al idioma del diseño de teclado de Windows.  
  21. Type 20:
    Simula Alt Gr.
  22. Type 21:
    Simula shift (Shift).
  23. Type 22:
    Simula Strg-Taste.
Sugerencia: Para imprimir el atributo char usando caracteres especiales, es necesario utilizar Unicode. Por favor tenga en cuenta que sólo se pueden utilizar caracteres que también existan en el diseño de teclado oficial para el idioma seleccionado.  

<key sound="0" type="0" char="="& #8364;">
         <shape>
                  <rect x1="644" y1="151" x2="696" y2="201">
         </shape>
</key>
Ejemplo: Define una tecla para el carácter "€".
3.17 macro-Element
Este elemento permite crear macros, lo que significa que presionando una única tecla / botón se pueden simular automáticamente varias acciones de tecla individual. 

<macro sound="8">
          <shape>
                    <polygon>
                              <point x="806" y="289"/>
                              <point x="906" y="290"/>
                              <point x="906" y="344"/>
                              <point x="805" y="343"/>
                              <point x="806" y="289"/>
                    </polygon>
          </shape>
          <mkey char=";"/>
          <mkey char="-"/>
          <mkey char=")"/>
</marco>
Ejemplo: Acitivando esta macro se escribirá el conjunto que compone el emoticono ";-)".

sound:
En elemento macro tiene un atributo de sonido, que se asigna bajo el elemento de sonido asociado al ID para el archivo de sonido.

El elemento macro también se compone del sub-elemtno shape, que determina las coordenadas para el área que se registrará ante  la presión de esa tecla / botón. El elemento shape se ha descrito aquí.

Una macro contiene como elemento hijo cualquier número de elementos mkey. Estos definen las teclas individuales que forman la macro.

<mkey char=")"/>

mkey:
El atributo mkey puede contender vkey, press, char shift.
El atributo vkey attribute determina que tecla virtual (ver la documentación de Window API aquí) para simularse con el Tastentendruck.
Presionado uno determina la acción correspondiente a la pulsación, es decir, si el botón se pulsa o no: pressed ("1"), released ("0"); o se pulsa y se suelta ("-1") (por defecto).
Con shift podemos determinar si debe simularse que se ha pulsado la tecla Shift previamente.
En la mayoría de los casos, sin embargo, el atributo char es suficiente, simplemente porque el carácter deseado se se espeficia, en cuyo caso se simula la pulsación completa de las teclas necesarias In most cases, however, the char attribute is sufficient, simply because the desired character is specified, then the entire necessarias (incluuendo Shift, Ctrl y Alt).

3.18 icon-Element
El elemento icon es opcional (se utiliza para teclados con color personalizable) y se puede utilizar para asignar un icono a una tecla o macro. La forma del icono debería coincidir con la de la tecla a la que se asigna. Puede encontrar más información aquí.

<key sound="3" type="5">
         <icon path="skins\provisio\lightweight_int_touchbrowser\up.png">
                  <rect x1="644" y1="151" x2="696" y2="201">
         </icon>
         <shape>
                  <rect x1="644" y1="151" x2="696" y2="201">
         </shape>
</key>

path:
La ruta del elemento icon se define mediante path, determinando así la imagen del icono. La imagen necesita ser blanco y negro. El fono es negro y el símbolo de icono blanco. el símbolo se rellenará con el color seleccionado en la configuracón de SiteKiosk.

4. Recomendaciones

4.1 Virtual Keycodes
virtkeys.exe es una herramienta de software que puede descargar gratuitamente. Con esta herramienta, puede comprobar fácilmente los códigos de las teclas virtuales que necesite para un diseño de teclado en pantalla.

Los keycodes más importante en un vistazo son los siguientes:
  • ENTER = 13
  • SHIFT LEFT= 16, 160
  • ESC = 27
  • SPACE= 32
  • TAB = 9
  • BACKSPACE= 8
4.2 Conversión de diseños de teclado antiguos 
Nota: La herramienta aquí mencionada no está soportada oficialmente. 
Ofrecemos una herramienta de conversión gratuita para descargar. Con este programa podría convertir antiguos archivos  .kbd  (4.8 de SiteKiosk) en un nuevo formato .xml format. Sin embargo es necesario siempre un rediseño para asegurar y garantizar el funcionamiento completo con las últimas versiones de SiteKiosk.

Vea también



Volver arriba