Home
Categories
Dictionary
Download
Project Details
Changes Log
Who We Are
FAQ
License

List of ARINC661 useful widgets



This article presents a list of ARINC661 useful widgets and some of their Use Cases.

Widgets list

Containers

Widget Type Widget ARINC ID Supplement Usage
Panel A661_PANEL 2 Clipped rectangular container
BasicContainer A661_BASIC_CONTAINER 2 Transparent container which allows to move the position of a group of widgets
MutuallyExclusiveContainer A661_MUTUALLY_EXCLUSIVE_CONTAINER 2 A transparent container which allows to change its current visible child among its list of children
TranslationContainer A661_TRANSLATION_CONTAINER 2 Transparent container, allows to move the position of a group of widgets, similar to the BasicContainer widget. The children widgets must be graphic widgets
RotationContainer A661_ROTATION_CONTAINER 2 Transparent container, allows to rotate a group of widgets. The children widgets must be graphic widgets
MaskContainer A661_MASK_CONTAINER 2 Allow to apply a clip on a group of widgets. The children widgets must be graphic widgets
BlinkingContainer A661_BLINKING_CONTAINER 2 Allow to apply a blinking on a group of widgets. The children widgets must be graphic widgets
TabbedPanelGroup A661_TABBED_PANEL_GROUP 2 This widget is a tabbed pane. The children widgets must be TabbedPanel widgets
TabbedPanel A661_TABBED_PANEL 2 This widget is a tab inside a TabbedPanelGroup
ScrollPanel A661_SCROLL_PANEL 2 This widget is a container which shows its content inside a viewport

Graphic widgets

Widget Type Widget ARINC ID Supplement Usage
GpArcCircle A661_GP_ARC_CIRCLE 2 An Arc Circle (can be a full circle)
GpArcEllipse A661_GP_ARC_ELLIPSE 2 An Arc Ellipse (can be a full ellipse)
GpCrown A661_GP_CROWN 2 A circular filled region (limited by two arc circles)
GpRectangle A661_GP_RECTANGLE 2 A rectangle
GpLine A661_GP_LINE 2 A line which coordinates are expressed in x,y coordinates
GpLinePolar A661_GP_LINE_POLAR 2 A line which coordinates are expressed in polar coordinates
GpPolyline A661_GP_POLYLINE 5 A polyline
GpTriangle A661_GP_TRIANGLE 2 A triangle
Label A661_LABEL 2 A label
LabelComplex A661_LABEL_COMPLEX 2 A label with text decoration (underlined, different colors for specific characters, etc...)
NumericReadout A661_NUMERIC_READOUT 5 A widget which format and present a numeric value
Symbol A661_SYMBOL 2 Allows to show a Symbol specified in the symbol definition library

Interactive widgets

Widget Type Widget ARINC ID Supplement Usage
PushButton A661_PUSH_BUTTON 2 A push button
PicturePushButton A661_PICTURE_PUSH_BUTTON 2 A push button wich has the capability to use an icon
ToggleButton A661_TOGGLE_BUTTON 2 A toggle button
PictureToggleButton A661_PICTURE_TOGGLE_BUTTON 2 A toggle button wich has the capability to use an icon for its two states
MultiStateButton A661_MULTI_STATE_BUTTON 6 A button with more than one state (think of it as a ToggleButton wich can have more than two states)
CheckButton A661_CHECK_BUTTON 2 A check button
ComboBox A661_COMBO_BOX 2 A combo box
ScrollList A661_SCROLL_LIST 2 A scrollable list of several items
EditBoxText A661_EDIT_BOX_TEXT 2 An edit box allowing to modify a text
EditBoxNumeric A661_EDIT_BOX_NUMERIC 2 An edit box allowing to modify a numeric value
EditBoxMasked A661_EDIT_BOX_MASKED 2 An edit box with a mask indicating which characters are modifiable
ActiveArea A661_ACTIVE_AREA 2 A transparent rectangular area defining an interactive area
CursorPosOverlay A661_CURSOR_POS_OVERLAY 2 A transparent rectangular area which sends the position of the cursor in the area, upon a click on the cursor
CursorOver A661_CURSOR_OVER 3 A transparent rectangular area which sends the position of the cursor in the area. Note that the event is sent regardless of any click event on the cursor, and it is not swallowing the cursor events for the widgets which are under this one
KeyboardArea A661_KEYBOARD_AREA 6 A transparent rectangular area which sends keyboard events
ScrollWheelArea A661_SCROLL_WHEEL_AREA 6 A transparent rectangular area which sends scrollWheel events
TouchArea A661_TOUCH_AREA 6 A transparent rectangular area which sends raw touch (including multitouch) events
GestureArea A661_GESTURE_AREA 6 A transparent rectangular area which sends gesture events

Map widgets

Widget Type Widget ARINC ID Supplement Usage
MapHorz A661_MAPHORZ 2 The top widget of a horizontal Map. See map widgets
MapHorzSource A661_MAPHORZ_SOURCE 2 The widget of a horizontal Map which specifies the coordinates system. See map widgets
MapHorzItemList A661_MAPHORZ_ITEMLIST 2 The widget of a horizontal Map which hold the MapItems. See map widgets
MapHorzContainer A661_MAPHORZ_CONTAINER 5 Position and scale non interactive widgets in a horizontal Map using real world coordinates. See map widgets
MapHorzPanel A661_MAPHORZ_PANEL 5 Position widgets in a horizontal Map using real world coordinates. See map widgets
MapVert A661_MAPVERT 2 The top widget of a vertical Map. See map widgets
MapVertSource A661_MAPVERT_SOURCE 2 The widget of a vertical Map which specifies the coordinates system. See map widgets
MapVertItemList A661_MAPVERT_ITEMLIST 2 The widget of a vertical Map which hold the MapItems. See map widgets
MapVertContainer A661_MAPVERT_CONTAINER 6 Position and scale non interactive widgets in a vertical Map using real world coordinates. See map widgets
MapVertPanel A661_MAPVERT_PANEL 6 Position widgets in a vertical Map using real world coordinates. See map widgets

Utility widgets

Widget Type Widget ARINC ID Supplement Usage
Connector A661_CONNECTOR 2 Reference a Layer in the definition of a parent Layer, to be able to include the connected Layer content in the context of the Layer which contains the Connector widget. See Connector
DataConnector A661_DATA_CONNECTOR 6 A Connector widget with additional Data. See Connector
ExternalSource A661_EXTERNAL_SOURCE 1 Allows to show an External Source, which is managed by the CDS. The source can be for example a video, a sensor image, an external cartography image, etc... See External Source
BufferFormat A661_BUFFER_FORMAT 2 A widget which allows to compress datas sent to several widgets. See BufferFormat
DataScalingLong A661_DATA_SCALING_LONG 5 Allows to scale one long value sent by the UA before using it in another widget. It allows to send data with "real-world" units but scale it to the dimensions or the widgets which must show them (such as for example a data which sets the position of a point on a graphical scale)
DataScalingULong A661_DATA_SCALING_ULONG 5 Allows to scale one ulong value sent by the UA before using it in another widget. It allows to send data with "real-world" units but scale it to the dimensions or the widgets which must show them (such as for example a data which sets the width or height of a rectangle)
DataScalingFR180 A661_DATA_SCALING_FR180 5 Allows to scale one fr(180) value sent by the UA before using it in another widget. It allows to send data with "real-world" units but scale it to the dimensions or the widgets which must show them (such as for example a data which changes angle of an ArcCircle)
BroadcastReceiver A661_BROADCAST_RECEIVER 5 Allows to use the same data from the UA for several widgets. For example it can allow to set the same ColorIndex for many graphical widgets rather than send several ColorIndex datas with the same value for each of them
AnimationTranslation A661_ANIMATION_TRANSLATION 6 A widget which allows to perform an animation on the position of a widget. See Animation Widgets
AnimationRotation A661_ANIMATION_ROTATION 6 A widget which allows to perform an animation on the rotation angle of a widget. See Animation Widgets
AnimationScale A661_ANIMATION_SCALE 6 A widget which allows to perform an animation on the scale on a widget. See Animation Widgets
AnimationOnParam A661_ANIMATION_ONPARAM 6 A widget which allows to perform an animation on any widget parameter (including parameters which are not modifiable at runtime by the UA). See Animation Widgets
AnimationGroup A661_ANIMATION_GROUP 6 An animation widget which allows to group together sequentially or in parallel several animations. See Animation Widgets

Remarks on specific widgets

Connector and DataConnector widgets

The A661_CONNECTOR and A661_DATA_CONNECTOR widgets allow to include a Layer content (the Connected Layer) in the context of another Layer. For example:
      <a661_df name="Default" library_version="0" supp_version="5">
         <model>
            <prop name="ApplicationId" value="1" />
         </model>
         <a661_layer name="master" >
            <model>
               <prop name="LayerId" value="1" />
               <prop name="ContextNumber" value="0" />
               <prop name="Height" value="10000" />
               <prop name="Width" value="10000" />
            </model>
            <a661_widget name="connector" type="A661_CONNECTOR">
               <model>
                  <prop name="WidgetIdent" value="1" />
                  <prop name="Visible" value="A661_TRUE" />
                  <prop name="Enable" value="A661_TRUE" />
                  <prop name="ConnectorReference" value="2" />
               </model>
            </a661_widget>
         </a661_layer>
      </a661_df>
The ConnectorReference specifies the reference to the Connected Layer. Note that the standard does not specify how the Server should resolve the Connected Layer with the reference (considering that a layer is specified by its Application ID and Layer ID, and the Connector Reference is only one ID. The way J661 will resolve the Connector Reference is the following:
  • If the server.connectors configuration property is not set, the Server will look for the first Layer with a Layer ID equal to the ConnectorReference value. If there are more than one Layer with the same Layer ID in the Server (for different Application IDs), the Server will preferentially look for a Layer in the same Application ID
  • Else it will use the Connectors reference configuration

BufferFormat widget

This widget allows to compress datas sent to several widgets. Rather than sending a SetParameters structure for each widget and for each widget Parameter Structure for each parameter, the BufferFormat specifies at design-time the list of widgets and parameter IDs which will be sent at runtime. For example:
      <a661_widget name="BufferFormat" type="A661_BUFFER_FORMAT">
         <model>
            <prop name="WidgetIdent" value="200" />
            <prop name="NumberOfFields" value="6" />
            <arrayprop name="BufferStructure">
               <structentry>
                  <field name="WidgetIdent" value="51" />
                  <field name="ParameterIdent" value="A661_VISIBLE" />
               </structentry>
               <structentry>
                  <field name="WidgetIdent" value="61" />
                  <field name="ParameterIdent" value="A661_RADIUS" />
               </structentry>
               <structentry>
                  <field name="WidgetIdent" value="51" />
                  <field name="ParameterIdent" value="A661_STRING" />
               </structentry>
               <structentry>
                  <field name="WidgetIdent" value="5" />
                  <field name="ParameterIdent" value="A661_POS_X" />
               </structentry>
               <structentry>
                  <field name="WidgetIdent" value="100" />
                  <field name="ParameterIdent" value="A661_FILL_INDEX" />
               </structentry>
               <structentry>
                  <field name="WidgetIdent" value="61" />
                  <field name="ParameterIdent" value="A661_END_ANGLE" />
               </structentry>
            </arrayprop>
         </model>
The datas will be sent in one block without having to specify the widgetID and the parameter ID for each parameter. However, this format does not allow to send arrays or more generally structured data.

See also


Categories: arinc661 | user

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