Project Details
Changes Log
Who We Are

Widget meta-definition

    1  Widget definition
       1.1  Examples
    2  Attribute definition
       2.1  Examples
       2.2  ARINC 661 properties padding
    3  UA message definition
       3.1  Examples
    4  Widget events definition
       4.1  Examples
    5  Extensions support
       5.1  Example
    6  Examples
       6.1  PushButton
    7  See also

The widgets definitions allows to define the ARINC 661 characteristics of widgets. It is possible to inherit widgets definitions from others. For the moment only one abstract widget is used for the inheritance, which hold the widget type, ident, and parent ident attributes.
A widget Meta−definition contain:

Widget definition

For each widget, we have the following XML attributes:


A general widget:
      <widget arincID="A661_GP_CROWN" hexID="0xA110" inherits="ABSTRACT_WIDGET" cat="graphic">  

An interactive widget:
      <widget arincID="A661_PUSH_BUTTON" hexID="0xA2A0" inherits="ABSTRACT_WIDGET" cat="interactive">  

A container:
      <widget arincID="A661_PANEL" hexID="0xA1F0" inherits="ABSTRACT_WIDGET" container="true" cat="container">  

A widget which is only available for supplement 3 and beyond:
      <widget arincID="A661_SIZE_TO_FIT_CONTAINER" hexID="0xA4A0" inherits="ABSTRACT_WIDGET" supp="3+" container="true" cat="container">  

A widget which has no renderer:
     <widget arincID="A661_BUFFER_FORMAT" hexID="0xA040" hasRenderer="false" inherits="ABSTRACT_WIDGET" cat="misc">  

A Map widget:
      <widget arincID="A661_MAPHORZ" hexID="0xA1B0" inherits="ABSTRACT_WIDGET" container="true" cat="map">  

A MapSource widget:
      <widget arincID="A661_MAPHORZ_SOURCE" hexID="0xA1A0" inherits="ABSTRACT_WIDGET" container="true" mapSource="true" mapType="mapHorz" cat="map">  

A MapItemList widget:
      <widget arincID="A661_MAPHORZ_ITEMLIST" hexID="0xA180" inherits="ABSTRACT_WIDGET" mapItemList="horz" cat="map">  

Attribute definition

The widget or extension attribute meta−definition define one ARINC 661 attribute used in the associated widget or extension. Note that the attributes are ordered as in the binary Definition File.
For each attribute we have the following XML attributes:
The following XML attributes are optional, and their presence depend of the attribute type:


      <widgetAttr name="Visible" arincID="A661_VISIBLE">  

Event attribute:
      <widgetAttr name="EntryValidation" arincID="A661_ENTRY_VALID" runtimeType="R">  

An attribute which is not padded:
      <widgetAttr name="FormatString" arincID="A661_FORMAT_STRING" maxLength="_MAXFORMATSTRINGLENGTH" pad="false">  

An array attribute:
      <widgetAttr name="OrientationArray" arincID="_ANGLE_ARRAY" size="_NB_SYMBOLS">  

The "OrientationArray" attribute maximum size is specified by the attribute of the ARINC ID _ANGLE_ARRAY.
A String attribute:
      <widgetAttr name="LabelString" arincID="A661_STRING" maxLength="_MAXSTRINGLENGTH">  

The "LabelString" attribute maximum String length is specified by the attribute of the ARINC ID _MAXSTRINGLENGTH.

ARINC 661 properties padding

Padding in the binary Definition File can be used by adding "pad" nodes. Paddings only server to be sure that the following rules are fulfilled: There are several possible padding definitions:

UA message definition

The widget or extension message meta−definition define one UA message that can be received from the UA for the associated widget or extension. For each message we have the following XML attributes: If the message just refer to several ARINC 661 attributes in the widget or extension, the element will contain one child for each attribute.


Simple message declaration:
      <message type="byte_1" arincID="A661_VISIBLE">  

Message which contains more than one attribute:
      <message type="byte_8" arincID="A661_POS_XY">  
         <messageParam arincID="A661_POS_X"/>  
         <messageParam arincID="A661_POS_Y"/>  

Widget events definition

The widget or extension event meta−definition define one widget event that can be sent by the Server for the associated widget or extension. For each widget event we have the following XML attributes: If the message just refer to several ARINC 661 attributes in the widget or extension, the element will contain one child for each attribute.


Simple event declaration (without attributes):
      <event arincID="A661_EVT_SELECTION" type="empty" />  

Event which contains one attribute:
     <event arincID="A661_EVT_STATE_CHANGE" type="uchar">  
        <eventAttr arincID="A661_INNER_STATE_CHECK"/>  

Extensions support

The "extensionSupport" element specifies the ARINC 661 extensions which can be applied on the widget.


      <extensionSupport arincID="A661_CURSOR_EVENTS_EXTENSION"/>  
      <extensionSupport arincID="A661_DIRECTIONAL_TABBING_EXTENSION"/>  
      <extensionSupport arincID="A661_INITIAL_FOCUS_EXTENSION"/>  
      <extensionSupport arincID="A661_FOCUS_STOP_EXTENSION"/>  



      <widget arincID="A661_PUSH_BUTTON" hexID="0xA2A0" inherits="ABSTRACT_WIDGET" cat="interactive">  
         <widgetAttr name="Enable" arincID="A661_ENABLE"/>  
         <widgetAttr name="Visible" arincID="A661_VISIBLE"/>  
         <widgetAttr name="PosX" arincID="A661_POS_X"/>  
         <widgetAttr name="PosY" arincID="A661_POS_Y"/>  
         <widgetAttr name="SizeX" arincID="A661_SIZE_X"/>  
         <widgetAttr name="SizeY" arincID="A661_SIZE_Y"/>  
         <widgetAttr name="StyleSet" arincID="A661_STYLE_SET"/>  
         <widgetAttr name="NextFocusedWidget" arincID="A661_NEXT_FOCUSED_WIDGET"/>  
         <widgetAttr name="MaxStringLength" arincID="_MAXSTRINGLENGTH"/>  
         <widgetAttr name="AutomaticFocusMotion" arincID="A661_AUTO_FOCUS_MOTION"/>  
         <widgetAttr name="Alignment" arincID="_ALIGNMENT"/>  
         <widgetAttr name="LabelString" arincID="A661_STRING" maxLength="_MAXSTRINGLENGTH"/>  
         <widgetAttr name="EntryValidation" arincID="A661_ENTRY_VALID" runtimeType="R" supp="3+"/>  
         <message type="byte_1" arincID="A661_ENTRY_VALID" supp="3+"/>  
         <message type="byte_1" arincID="A661_ENABLE"/>  
         <message type="byte_1" arincID="A661_VISIBLE"/>  
         <message type="byte_2" arincID="A661_NEXT_FOCUSED_WIDGET" supp="5+"/>  
         <message type="byte_1" arincID="A661_AUTO_FOCUS_MOTION" supp="5+"/>  
         <message type="byte_2" arincID="A661_STYLE_SET"/>  
         <message type="string" arincID="A661_STRING"/>  
         <event arincID="A661_EVT_SELECTION" type="empty" />  
         <extensionSupport arincID="A661_CURSOR_EVENTS_EXTENSION"/>  
         <extensionSupport arincID="A661_DIRECTIONAL_TABBING_EXTENSION"/>  
         <extensionSupport arincID="A661_INITIAL_FOCUS_EXTENSION"/>  
         <extensionSupport arincID="A661_FOCUS_STOP_EXTENSION"/>  

See Also

Categories: arinc661 | dev | meta

Copyright 2016-2017 Dassault Aviation. All Rights Reserved. Documentation and source under the LGPL v2 licence

Project Web Hosted by SourceForge.net Copyright 1999-2010 - Geeknet, Inc., All Rights Reserved About - Legal - Help