Etiqueta

25 octubre 2017

Componentes JSON&JS (Parte 9 de 12)

events  

Es opcional y permite especificar los eventos que generará el control (además de los indicados en el grupo "flags"). Cada miembro del objeto events identifica un evento. El nombre de cada uno es también el nombre del evento, incluyendo su prefijo "ev". Se pueden incluir ciertos eventos estándar, tales como: "evClick", "evDoubleClick", "evTabSelected", "evCellChanges", "evHeaderClick" y "evHeadedListDisplayOrderChanged". Los elementos válidos de cada objeto-evento son:
  • id
No debe especificarse para eventos estándar, pero, para el resto es obligatorio y debe ser un número entero positivo. Este identificador deberá coincidir con el identificador de evento, usado en la construcción del control JavaScript  y ser único dentro del contexto del mismo. 
  • desc
No debe especificarse para eventos estándar, pero, para el resto es obligatorio y deberá consistir en un texto descriptivo del evento. 
  • parameters
Define los parámetros del evento. Consiste es una lista, donde cada línea de la misma, identifica a cada uno de los parámetros, conformando por los siguientes elementos: 
  • name
Es obligatorio y da nombre al parámetro. No deberá incluirse el prefijo "p". (ya que será agregado por Omnis) Tenga en cuenta que si se usara de nuevo el mismo nombre para definir otro parámetro, se tomará sólo su primera definición, ignorándose el resto, incluyendo su tipo y descripción.
  • type
Es obligatorio e indica el tipo de datos que admitirá el parámetro. ("integer", "character", "boolean" o "list").
  • desc
Es obligatorio y deberá consistir en un texto descriptivo del parámetro. 
 Ejemplo:
"events": {
   "evNetOmnisControlOpened": { 
      "id": 1,
      "desc": "The event sent when the control opens", 
      "parameters": [
         {
            "name": "name",
            "type": "character",
            "desc": "The name event parameter"
         },
        {
           "name": "name2",
           "type": "integer",
           "desc": "The second event parameter"
        }
      ]
     },
     "evClick": {
     "parameters": [
        {
           "name": "zname1",
           "type": "character",
           "desc": "The zname1 event parameter"
        },
        {
           "name": "zname2",
           "type": "integer",
           "desc": "The zname2 event parameter"
        },
        {
          "name": "horzcell",
          "type": "character",
          "desc": "the horz cell event parameter"
        }
      ]
   }

No hay comentarios: