Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


Java ARINC 661 Server / News: Recent posts

0.56 Beta 2 released

Fix a NPE which could be fired in the Scenario plugin if a scenario event without a Channel origin was found concerning a Layer which did not exist in the Server or Client configuration
Fix MapItems defined on more than one index (A661_LINE_SEGMENT, A661_LINE_ARC, etc...) not capable to being highlighted if they were defined on a MapItemList widget which was not the last on its parent MapSource widget
Fix a regression for BlinkingContainer widgets which emitted a NPE at the instantiation in the Server if the BlinkingContainer widget was not set as visible in the Definition File
Simplification of the Editor and Server architecture used to install a Layer definition in the Server
Fix an exception which would be thrown by the Server when the User Application send a message changing the properties of a Display (for example visibility) which did have a Cockpit configuration with only one Layout for this Display
Add the capability at runtime to change the Channel whose performance is monitored in the Server monitoring tools
Fix a bug where the String corresponding with a A661_LABEL widget cloned in a SuperLayer multi-application definition would be the same instance in the multiple displays
Fix the Scenario.autoStart property for the Scenario plugin not taking into account the Channel definitions if there is more than one Channel defined for the Network configuration
Use the java.util.logging package for the logging facility. Provide a generic capability to write the log on an output File, and to specify which part of the code should emit debug messages
Use version 0.7.4 of the MDIUtilities library
Suppress the specific MapHorzItemsRenderer and MapVertItemsRenderer classes, and only keep the parent class which has all the necessary functionality
Fix the CursorOver widget not being interactive in a stand-alone Server working in a non windowed mode
Fix a bug where changing the MaskContainer reference would not change the clipping
Store the currently selected Look and Feel in the Editor to reuse this one rather than the default when opening a new Definition File after quitting the Editor. Make sure that the first Look and Feel is selected when opening a Definition File in the Editor after changing the Look and Feel configuration
Support the UTF-8 Definition File encoding, which was added in supplement 5 in the standard
Add two Synth2 Look and Feel properties to the MapHorzPanel widget controlling if the panel must be saturated or not in its parent MapHorz widget, and if it can be moved if the coordinate system of the parent is updated after it had been set visible. These two boolean properties are panel.movable and panel.saturated
Add a new interface for ComponentUIs allowing to control widgets Feel using Look and Feel properties
Fix some remaining bugs preventing the correct parsing of Binary Definition Files in the Client in some cases
Fix a bug in the Client java API
Implement the MapHorzContainer widget (new supplement 5 widget)
Put the getTransform() method in the AbstractUnsizedRenderer class, rather than having a similar method in all containers and graphic widgets
Fix the Synth2 Look and Feel parser not parsing correctly int constants, and add the handling of float constants, and Image resources
Add a Synth2 Look and Feel painter which is able to add a frame, cross, or double cross around a label or button
Emit a clear error message rather than throw a NPE in the Client if the a message for a Layer has to be sent but the Layer is not part of the Network configuration
Signal clearly to the user if some layers are not defined in the Network configuration
Allow to change during runtime the level of detail of the performance monitored in the Server
Fix the Server considering incorrectly that a Layer has been modified (and repainting its content) if it receives a runtime message from the Client for this Layer but no widgets are modified by the message (note that the Server did correctly detect that the widgets were not modified and did not in this case update any widget, but it still tried to repaint the Layer)

Posted by Hervé Girod 2013-03-14

0.56 Beta 1 released

Use version 0.7.3 of the MDIUtilities library
Add a "JavaVersion" property allowing to require a minimum Java version for an extension
Add methods in the DFLoaderListener interface allowing to be informed of binary or XML parsing errors when loading Definition Files
Rename the Server ARINCElement and ARINCMapWidget classes to ServerElement and ServerMapWidget
Replace many creation of Number subclasses by using the valueOf method
Improve the GenericDialog class and allow to print in HTML the results of an error Panel
Fix rotation angles calculation in the case of a non conformal zoom factor for the Server
Manage consistency between the projection updates and the MapItem updates in the case of high throughput Map updating, when using the projection update cap configuration property
Use the 3.9 version of Apache POI
Fix the Cockpit Plugin generating an incorrect SuperLayer multi-application definition in certain complex cases
Use version 0.6.5 of the MDIFramework library
Fix the Editor, Server, or Client not seeing the plugins directory if there were some space characters in the plugins directory path
Add an API in the Editor allowing Plugins to customize how the widgets in the tree are rendered. For example it is possible to define that the nodes for widgets fulfilling certain properties are of a specific color, or use a specific icon
Add an API in the Editor to allow Plugins to add custom components as additional panels alongside the widget tree (for example it allow Plugin developers to present a restricted list of widgets and navigate in this list rather than the whole widget tree)
Update ScaledTranslation extension to version 1.4 Beta 1 to take into account the last changed in the core API

Posted by Hervé Girod 2013-02-16

0.55 final released

No change compared to 0.55 Beta 1, except from version number. This version is meant to be a final stable release. The main parts which have been improved in 0.55 (through Beta 1 and Beta 2) are:

- Applets now work without problem with the Server
- The Embedded Server is functional and work well
- The synth2 to / from Look model transformation is functional
- Support some new widgets and Symbol commands as of the upcoming ARINC 661 supplement 5

Posted by Hervé Girod 2013-02-03

0.55 Beta 2 released

Manage the event origin for widget events
Fix A661_LABEL widgets rendering incorrectly for updates if they are in multi-rendered Layers
Remove the MaxWidgetIdent and MinWidgetIdent which were written in XML Definition Files because it was a mistake in the examples in the ARINC 661 standard
Change the ARINC 661 keywords and hexadecimal IDs for A661_VALUE, A661_TICS_COARSE, and A661_TICS_FINE in the widget definition, to take into account changes in the ARINC 661 standard supplement 5. The reason of the change was to avoid to use the same keywords and hexadecimal IDs for parameters of different types
As for ARINC 661 supplement 5, change as runtime modifiable the A661_NEXT_FOCUSED_WIDGET and A661_AUTO_FOCUS_MOTION parameters for interactive widgets
Support the BroadcastReceiver widget (new supplement 5 widget)
Add a default "empty" implementation for the NoServiceMonitor and MapHorzContainer widgets (new supplement 5 widgets)
The widget MapVertPanel is removed, because contrary to the MapHorzPanel widget, it was not added to the standard for supplement 5
Fix some last problems in the WebServer protocol
Add a new protocol.inputPortRedirect (for now only supported by the UDP protocol) allowing to redirect the input of a Server or Client to another output port
Remove the 30 limit for the pushMatrix / popMatrix stack (linked to the OpenGL stack) in the Embedded Server
Protect the Synth2 Look and Feel against a few possible bad XML definitions which could lead to a NPE (no Insets definition). More generally, add several protections in the Synth2 Look and Feel against badly defined synth2 XML files
Reorganize the Look model plugin architecture for the from/to Synth2 Look and Feel conversion
Support global CDS properties for the synth2 model in the conversion from and to synth2
Allow using custom Look Capacities files for the conversion from and to synth2
Fix blinkings for the Server MapItems
Support the notion of invalid coordinates in Maps projections. All standard ARINC 661 projections do not have any invalid coordinates, so this notion is not useful for standard conversion, but custom Maps projections can have points whose projection is not valid
Fix a bug introduced in 0.55 Beta 1 when a change a value for an ItemStyle could have no effect on MapItems
Fix a bug introduced in 0.55 Beta 1 when the change of value for the A661_VISIBLE property in at runtime was ignored for the MapItemList widgets
Fix an error in the compute of the size and position of the A661_GP_ARC_CIRCLE widget and the A661_SYMBOL_DEFN_ARC_CIRCLE symbol command when using a zoom factor with an X value different from the Y value

Posted by Hervé Girod 2013-01-31

0.55 Beta 1 released

Manage default values for undefined properties in the conversion from Synth2 Look and Feel specification to a Look definition model
When writing LookCapacities or the LookDefinition models, only write the parent "constants" or "tables" nodes if they are not empty
Take fonts into account in the Synth2 Look and Feel to the Look definition model conversion
Fix thread contention bugs which could happen in high throughput scenarios when several channels are receiving a huge amount of data at the same time (typically could happen for some multi-channel Maps scenarios)
When parsing a LookDefinition model, allow properties which are defined at the "state" scope in the LookCapacities to be set at the "StyleSet" scope in the LookDefinition
Fix the dotted line styles which propagated to elements which where not defined as dotted in the Embedded Server
Manage the width of lines in the Embedded Server
Fix the behavior of ComboBoxes and Sliders in the Embedded Server (which were not interactive in this mode)
Add a new check for the names of elements in the LookCapacities or the LookDefinition models
Fix an exception which would be thrown by the Editor when creating a widget which had a renderer before another one which did not have one
Fix a bug which made the A661_DATA_SCALING_FR180 widget not updatable at runtime
Fix a bug which made it impossible to send other parameters than A661_VALUE at run time to DataScaling widgets
Avoid some cases when MapItems could be updated during the same time they where used in MapItemList widgets
Fix the Client parser throwing a NPE on the parsing of a Definition File with DataScaling widgets
Fix the Halo around the A661_SYMBOL_DEFN_POLYLINE SymbolCommand not being closed if the Polyline definition is closed
Add a "cloneConfiguration method on the CommonConfiguration class which allows to control if the Client or Server configuration is cloned for each Channel or not
Add the capability to record and read scenarios in hexadecimal rather than Base64
Fix an abnormal high workload for the Server when using the Synth2 Look and Feel. The workload would be 50% on a single core without receiving any UA messages, it is now 0% in this same case
Use version 0.7.1 of the MDIUtilities library
Emit a proper ARINC 661 exception rather than throw a raw Java Exception when a MapItem sent by the Client has an ItemStyle which is not handled by the XML MapItems styles file
Fix an exception in the Client which would appear when parsing a cockpit configuration with a A661_GP_POLYLINE and a A61_SYMBOL_DEFN_TRIANGLE_FAN in certain conditions
Fix an exception in the Server which would appear at runtime if there is no TriangleSegment between a TriangleStart and a TriangleEnd in MapItems
When checking the validity of a LookDefinition, check that ComponentDefinition and WidgetDefinition have StyleSets
Avoid the throw an exception when parsing the configuration properties if some numeric properties contain spaces, rather parse them getting rid of the spaces
Fix the runtime type of the A661_SYMBOL_REFERENCE attribute, which was byte_1 when it is byte_2 in the standard
Add the A661_FONT runtime message for the A661_LABEL widget, allowing to change the font at runtime
Add the A661_PRP_XY runtime message for the A661_MAP_VERT widget
Add a server.projectionUpdateCap configuration property for the Server, allowing to cap the delay between two modifications of a Map coordinate system
Introduce a "yield" when looping through the loop of events for not blocking queues, when the event queue is not empty. This avoid to gobble the CPU load in cases where very high workload cyclic messages are managed by a queue fit to non cyclic messages
Fix the drawing of lines in the Embedded Server which had a small offset
Fix the Client sending an exception when parsing a Definition File with a MapHorzSource (or MapVertSource) without children
Fix a problem while using the Client API and receiving Server messages (some message where not seen by the API)
Protected the Server Wrapper against cases where the GUI menus could be null but still used and thus throw NullPointer Exceptions, depending on the properties configuration

Posted by Hervé Girod 2013-01-12

0.54 final released

Remove the server.screenDensity property in the properties file. Only the Server graphic properties screenDensity is kept
Fix the Server zoom factor not taking correctly into account if the screen density is forced
Fix some cases where the current graphic properties for MapItems (mainly stroke value) would not be reset after one MapItem
Fix the Synth2 Look and Feel not taking into account the screenDensity graphic property for the fonts set for buttons, comboBox, etc...
Allow to resize and select widgets in the Editor with the same gesture
Convert the Synth2 Look and Feel specification complex parameters to table entries in the Look Model rather than constants, in accordance with the standard Look definition specification
Add a new server.useGuiTools Server property to allow to remove the additional window for the Server presenting the frame-rate and the content, the input and output messages, and the menus allowing to access to plugins
Protect the Server against cases where some parameters would have values outside their accepted range as defined in the standard (as for example A661_SELECTED_ENTRY greater than A661_NUMBER_OF_ENTRIES), and send an ARINC 661 error notification if the Client send such erroneous values. Note that the Server was already protected for cases where an array size would be incorrect, or a String length greater than the maximum length of the String
Print in the Server logger area all the elements which would make possible to define the widget which notifies an ARINC 661 error notification (widgetID, layerID, application ID)
Fix the DataScaling widgets not taking into account a modification of the TargetParameterID property in the Editor
Protect the reading of scenarios if some events in the scenario arrive more quickly that they can be decoded by the Server or Client. This can happen if the scenario is recorded with the protocol.isSilent property
Convert the Synth2 Look and Feel specification states in the Look Model
Protect the decoding of buffers received by the Server against cases where some of the blocks have a 0 size
Protect the decoding of non blocking buffers received by the Server against cases where the decoding is not finished and another buffer is received on the same Channel
Update of the ant target for the project to be able to generate the plugins javadoc
Check during the parsing of a Look definition model that the each attribute defined in the LookCapacities is present for each StyleSet of the LookDefinition
Allow to convert a Synth2 Look and Feel specification to a Look definition model
Add a new protocol.outputPortsList for UDP protocol, which replace the protocol.outputPort property, and allows to define more than one port for the output (meaning that several remote Client/Server will receive the buffers)
Protect the renderers of TriangleFans and TriangleStrips of incorrect Client messages

Posted by Hervé Girod 2012-12-09

0.54 Beta 6 released

Use version 0.6.4 of the MDIFramework library
Allow the Editor to manage tabs which are not Definition Files. This will allow plugins to add other types of tabs (for example, a Plugin could create a new tab of tab which is the result of Definition Files comparison)
Add a Look model plugin which will ultimately be able to convert from/to the Look specification format to/from the Synth2 Look and Feel format. Note that the Look specification is an upcoming new feature of ARINC 661 supplement 5.
Fix a problem in the Embedded Server which lead to an infinite loop in Map widgets (in an embedded Server) showing legends
Add a Synth2 Look and Feel sample which implements the Windows Look and Feel
Fix the A661_SIZE_TO_FIT_CONTAINER and A661_SHUFFLE_TO_FIT_CONTAINER widgets having no registered renderers for the Server
Add full support for appliID management in the Client java API, and update the demos accordingly
Fix the positioning of the A661_MAPHORZ_PANEL and A661_MAPVERT_PANEL widgets
Fix an error in the values of X and Y properties for A661_EVT_SELECTION_MAP events for A661_MAPHORZ_SOURCE widgets in the Latitude/Longitude coordinate system
Avoid to compute immediately the text layout for a A661_LABEL if the label alignment change, but wait for the next time the label is painted
Clarify the error messages which will appear if the cockpit configuration or the network configuration is incorrect
Emit clear parsing exceptions if the Synth2 Look and Feel XML file parsing detect that the file has some invalid parameters
Fix the Java type of the NumberOfSymbols property for the A661_SYMBOL_ANIMATED widget
Fix a problem in the Embedded Server which could lead to wrong colors for texts
Fix exceptions sent by the Server in the Embedded Server configuration when changing the cockpit layout
Emit a clear Exception when parsing a Network configuration for incorrect directions specifications
Fix exception messages which could be sent by the Server for Maps in some heavy load configurations
Fix positioning of A661_MAPHORZ_PANEL and A661_MAPVERT_PANEL widgets in some cases in multi-applications cockpit configurations
Add cobertura in the building framework to allow to get the functional and structural coverage of unit tests
Fix the tag in the logger when the Server send messages (it was "CLIENT" instead of "SERVER")
Use version 0.7 Beta 5 of the MDIUtilities library
Protect the Server in the OpenGL embedded mode against possible OpenGL GL_VERTEX_ARRAY or GL_TEXTURE_COORD_ARRAY enabling performed by the C code before calling the Server. These enable would crash the Server while drawing arrays of vertices
Add a isRotatedSymbol property (default true) for A661_SYMBOL_TARGET MapItems to allow the main Shapes of the target to rotate with the MapItem orientation or not
Allow the Server to send an Exception to the Client if one Layer for a Client command is not defined
Fix a case where changing the cockpit configuration layout at runtime and having one Layer in the same window for the same Layout visible a second time would make this Layer modifications not visible anymore

Posted by Hervé Girod 2012-11-25

0.54 Beta 5 released

Fix the reference point of the A661_MAPHORZ_PANEL and A661_MAPVERT_PANEL widgets (which was the top left whereas it should be the bottom left)
Allow to create a custom vertical projection in the projections extensions
Allow full configuration for the custom projections extensions
Avoid possible NullPointer exceptions in some rare cases when clicking on a MapHorz or MapVert widget
Fix the A661_CURSOR_POS_OVERLAY still sending events even if it is disabled
Fix an exception throwing when the user perform a CTRL-X action on a Layer or Definition File in the Editor
Fix the buffer bytes content presented in the Client Logger being null in all cases
Fix a NullPointerException throwing in certain cases by the SuperLayer window manager when changing the Layer in a Window to a NULL Layer, and then changing back to the previous Layer
Fix the widgets event definition incorrectly defined for the A661_POPUP_MENU and A661_POPUP_MENU_BUTTON
Fix the A661_LEGEND_ANCHOR MapItems management. The position of Legends after anchors was incorrect
Allow to orient legends alongside Segments for A661_SEGMENT MapItems (using the orientLegends property)
Fix an Exception which was thrown when trying to add a new widget under a Layer whose name was changed just after being created
Use version 0.6.4 Beta 4 of the MDIFramework library
Use version 0.7 Beta 5 of the MDIUtilities library
Change some signatures in the Client, Server and Editor to use URLs rather than Files when possible
Fix the Client not capable of sending several messages of different Layers in the same message
Separate the generic IO exception from the IO exception which happen when there is a tentative to bind to an address which is already bound
Improve performance of String rendering in the Embedded Server
Allow to move and resize sized containers (like A661_PANEL) in the Editor
Fix some rare exceptions when changing the current layout, for Layers which are connected to at least one other Layer in the cockpit configuration
Fix special characters not being correctly encoded or decoded in StringArrays
Fix the Scenario plugin recording empty scenarios each two recording after the first
Add a check which inform the user when the Network configuration is incorrectly defined and would prevent the recording of scenarios
Fix some remaining problems when starting the Server in an Applet
Add a new feature in the SuperLayer configuration file allowing to use the same Layer in several Displays, but declaring in the configuration file a new Application ID for several Layers. This allows to specify only one Layer, but using it as two different Layers in the cockpit
Show the layer appliID and layerID in the Client interface
Fix a problem in the Embedded Server which resulted in an offset from the real position of a click to the position managed by the Server
Fix an exception in the Embedded Server which could occur when drawing Strings
Fix a regression on the TCP protocol
Allow to use several layers with the same layerID (and different applicationIDs) in the Client java API
Return during the Server initialization to the user the attribute(s) which is (or are) not implemented if some attributes defined in the ARINC 661 XML model is not implemented
Log a "clean" exception in a configuration cockpit if a Layer referenced in a Window does not exist, or a default layer defined for a Window does not exist or is not a child of the Window
Fix growable arrays in the Editor and the Client not allowing to add rows if their content if empty
Fix a few mistakes for the hexadecimal IDs of the A661_CLAMPING property and the A661_DATA_SCALING_FR180 widget type
Avoid to emit Java Stack Traces when some widgets specified in a Definition File, or their associated renderers, are not defined, and emit a clean log message
Protect the synth2 Slider implementation if its Insets are undefined
Fix some Strings in Labels incorrectly not redrawn when modified in some cases in the Server
Allow to move unsized containers (like A661_BASIC_CONTAINER) in the Editor
Fix the scenario plugin only showing events in the scenario list when reading an existing scenario as "OUT", even if they are inputs
Signal a clear "error" in the Server, the Client, or the Editor if the same extension or Map projection is referenced more than once. The extension will not be loaded twice, avoiding to trigger nasty exceptions

Posted by Hervé Girod 2012-11-02

0.54 Beta 4 released

Fix the MutuallyExclusiveContainer widget not sending any ARINC Exception in the case where the VisibleChild index is not the index of a child of the widget during runtime
Allow to stop the Debug plugin Debugger on a breakpoint on an ARINC Exception condition
Fix a bug which appeared after changing the Layout, if the Look and Feel was not the default Look and Feel: the Layers in the new Layout had a wrong Look and Feel
Fix a NullPointerException which appeared after changing the selected Layer in a "OneOf" Window since Beta 2
Fix the PopupMenu and PopupMenuButton widgets always sending 0 when closing the menu by clicking on a menu item
Fix the Server not seeing its plugins in cases where the user directory is not the parent directory of the Server jar file (note that it was still right if the userdir or pluginsDir directory was explicitly defined in the launch arguments)
Use version 0.6.4 Beta 2 of the MDIFramework library
Use version 0.7 Beta 4 of the MDIUtilities library
Improve performance of simple shapes (lines, rectangle, etc...) rendering in the Embedded Server
Fix the Server not parsing correctly URLs using the http or https protocol, when these URLs are defined as children of other URLs
Fix a false exception warning which could happen in certain cases when parsing an XML Definition File on the Server
Fix the A661_EVT_CURSOR_ENTER, A661_EVT_CURSOR_EXIT, and A661_EVT_CURSOR_INSIDE events sent by the Server for the widget A661_CURSOR_OVER: the X, Y position sent to the Client was top left while it should have been bottom left as defined by the standard
Fix the A661_EVT_POS_CHANGE event sent by the Server for the widget A661_CURSOR_POS_OVERLAY: the X, Y position sent to the Client was top left while it should have been bottom left as defined by the standard
Fix the A661_EVT_SELECTED entry value sent by the Server always being 0 when selecting an entry in the A661_POP_UP_MENU and A661_POP_UP_MENU_BUTTON widgets
Fix further non security related problems which could prevent to use of the Server as an Applet
Fix the A661_SLIDER widget always casting internally its values to int
Improve widget updates behavior for cockpits configuration when a Layer is present in more than one Display
Fix the previous MapItems list in the Maps plugin not being reset after reopening the Client window in the Editor a second time
Show a clean parsing error if one Definition File in a cockpit configuration file does not exist
Allow more extension capabilities in the Map widgets framework
Fix a regression in the Editor which made the grid moving when widgets were moved
Allow to use more than one Jar file to define the MapItems UI library implementation in the Server or the Editor
Fix labels horizontal alignment which could be a little off in some times
Add capability to use specific lineStyles (dot, etc..) on MapItem types which did not have it already (A661_SYMBOL_GENERIC, A661_SYMBOL_ROTATED, A661_SYMBOL_TARGET, A661_RUNWAY)
Support the use of new widget events unnamed parameter types: uchar and String
Allow to mix without any limitations named and unnamed parameters in the widget events definition
Fix tables of Long parameters not modifiable in the Client
Remove the A661_POS_X and A661_POS_Y parameters which were incorrectly defined as design-time parameters for the A661_BLINKING_CONTAINER widget
Improve the error message in the Embedded Client configuration file parsing in the case where a message ID does not exist for a widget. Previously the message was the same as when a widget ID did not exist
Remove the A661_SCALED_TRANSLATION_CONTAINER from the supported widgets because it has been removed from supplement 5 (replaced by better and more general widgets to scale any parameter). The A661_SCALED_TRANSLATION_CONTAINER is now available as a contrib extension
Change the build of the test utilities to allow to use them easily in other projects
Now if the user start the Editor and use the "-propFile" option without defining any properties file, the Editor will ask for the file to use before starting
Implement the A661_DATA_SCALING_LONG, A661_DATA_SCALING_ULONG, and A661_DATA_SCALING_FR180 widgets for supplement 5
Implement the A661_MAPHORZ_PANEL and A661_MAPVERT_PANEL widgets for supplement 5
Add a resolIndep property for the fonts element in the graphic properties to be sure to have the same resolution as the native resolution for fonts. This is particularly important if it is necessary to have exactly the same size as the Windows native fonts for the same point value (Mac OS X fonts usually have the same size as Java)
The UIProperties plugin is not working properly. An exception occurs when using it on a widget
Fix sending MapItems to the Server by the Maps plugin not working in all cases in complex configurations

Posted by Hervé Girod 2012-10-04

0.54 Beta 3 released

Fix the direct OpenGL mode never being used in the Embedded Server, regardless of the value of the OpenGL.textured property. This should fix an unusual bad performance experienced in the embedded mode

Improve performance of OpenGL Strings rendering in the Embedded Server

Add several new methods in the Editor scripting Plugin helper to allow to remove, or create a widget through a script

Add two utility methods in the Editor scripting Plugin helper to allow to get/set a widget property knowing the name of the property (the one which is defined in the XML File) rather than the ARINC ID of this property... read more

Posted by Hervé Girod 2012-09-16

0.54 Beta 2 released

The multirendering of Layers is now working. One Layer may be rendered more than once in a window configuration, including connected Layers, and even Maps under connectors. For example, it is possible to use the same MapHorzSource widget under two different MapHorz widget by using two connectors, which means that the MapItems will be rendered twice, with a different range / orientation, etc....

Additionally, if the user change the state of one interactive widget in one renderer (for example, by clicking on a CheckBox), then all other renderers for the same widget will be in sync with the same state... read more

Posted by Hervé Girod 2012-08-21

0.54 Beta 1 released

Fix the start of a Debug plugin session changing the settings of the Editor to those defined for the Debug session

Allow to define in the Synth2 Look and Feel a style for Labels where the n last characters have a specified Font. The two properties to use are label.decimalFont (Font property) and label.decimalFontLength (integer property)

Allow to start a Debug plugin session with TCP protocols ... read more

Posted by Hervé Girod 2012-08-07

0.53.1 released

Log the extensions names version and date in the Editor, Server or Client on the console

Fix the MapItems not being painted correctly in the case where the MapHorzSource was under a Connector

Allow to define which localization to use in the Synth2 Look and Feel

Fix the selection on MapItems not being sent correctly in some cases

Fix the Logger only keeping the last exception in the associated file, and log the version and date of the application when logging the first exception... read more

Posted by Hervé Girod 2012-07-18

0.53.1 Beta 1 released

Add a mechanism for the Editor to log unhandled exceptions which might arise in a temp file (under the temp directory for the user)

Add the forgotten runtime only ShiftFirstVisibleEntry parameter for the A661_SCROLL_LIST widget

Fix some attributes defined as char or short whereas they should have been defined as uchar or ushort. Note that it does not impact the interface between the UA and the CDS... read more

Posted by Hervé Girod 2012-07-02

0.53 final released

Fix the selection of interactive widgets with negative positions in unsized containers without setting the "server.offsetRendering=true" option (like A661_BASIC_CONTAINER)

Improve the graphic quality in the OpenGL embedded mode

Fix the saving of Definition Files by the "Save" command in the Editor always saving the Definition File with the supplement 2 specified, even if the Editor is configured in an other supplement version of the standard... read more

Posted by Hervé Girod 2012-06-27

0.53 Beta 7 released

The selection mechanism used in Map widgets is modified to allow for easier extension of selections in Maps (for example, it could allow for different events for: right click, left click, double click, etc...)

Support for dotted lines in the MapItems styles XML definition

Fix of the A661_LINE_ARC MapItems drawing when the Radius parameter is negative (which is valid in ARINC 661)

Add Unit tests for MapItems for lines, arcs, symbols, and legends... read more

Posted by Hervé Girod 2012-06-14

0.53 Beta 6 released

Fix some deprecation warnings in the synth2 package


Implement the A661_DRAW_LINE_TO_CURSOR MapItem

Implement the A661_EVT_INCREMENT event in the A661_MAP_HORZ_SOURCE widget... read more

Posted by Hervé Girod 2012-06-07

0.53 Beta 5 released

Use version 0.6.6 of the MDIUtilities library

Take into account highlight detection and selection in maps for A661_LINE_SEGMENT and A661_LINE_ARC MapItems

Remove one unused DataProvider configuration for the Embedded Client

Further fixes in the OpenGL Embedded embedded mode, now complex Definition Files are rendered correctly in OpenGL

Improve the default value given to the Range, RangeX, and RangeY parameters to newly created A661_MAP_HORZ and A661_MAP_VERT widgets in the Editor... read more

Posted by Hervé Girod 2012-06-01

0.53 Beta 4 released

Fix the rotation of A661_SYMBOL_OVAL, A661_SYMBOL_RECTANGLE, A661_SYMBOL_TARGET, and A661_SYMBOL_ROTATED MapItems in MapHorz Map widgets when the MapHorz has a rotation angle different from 0

Fix several bugs in non trivial A661_LEGEND MapItems presentations (like change of ItemStyle between several A661_LEGEND MapItems)

Support A661_LEGEND_ANCHOR_ROTATED (previously the 661_LEGEND_ANCHOR_ROTATED did not rotate the following A661_LEGEND MapItems, but it behaved like A661_LEGEND_ANCHOR)... read more

Posted by Hervé Girod 2012-05-15

0.53 Beta 3 released

Fix the Client logger not showing the content of a widget event received from the Server if the message contains some named parameters rather than only unnamed values

Fix the Client logger showing illegible values if the content of a widget event received from the Server contains characters

Take into account and send to the Client the selection in the Map widgets background according to the standard the selection of MapItems in Map widgets... read more

Posted by Hervé Girod 2012-05-13

0.53 Beta 2 released

Change some fields and methods for the RectangleRenderer, ArcCircleRenderer, ArcEllipseRenderer, CrownRenderer, LineRenderer, PolylineRenderer, and PolarLineRenderer from private to protected to allow for easier customization for these widgets

Add the definition of the ARINC 661 values A661_UP and A661_DOWN in the ARINC 661 XML model

The overlay-type widgets are not initialized correctly in the Editor, which result in the A661_CURSOR_POS widget not behaving properly in the Editor... read more

Posted by Hervé Girod 2012-05-03

0.53 Beta 1 released

Fix some artifacts in the OpenGL Embedded embedded mode, and possible Heap Space Exception in this mode after many drawings

Fix the MutuallyExclusiveContainer widgets not showing correctly in the OpenGL Embedded mode, and simplify the way the container handles its children

Handle multi-displays in the OpenGL Embedded mode

Fix a regression where the image of the cursor could not be customized anymore

Fix the overlay Shape of RotationContainers in the Editor having twice the angle of the Rotation... read more

Posted by Hervé Girod 2012-05-01

0.52.1 released

Fix a regression in 0.52 final where the font of a Label (A661_LABEL) would be set to the default font before the first font or style modification

Posted by Hervé Girod 2012-04-25

0.52 final released

Change the JOGL version to autobuild (preview of 2.0rc6)

Fixes for the Server OpenGL embedded mode: now the textured mode works correctly again, and the direct mode begins to work in simple use cases

The license for the OpenGL plugin becomes LGPL v2

Fixes to avoid instability of characters positions in Labels which rotate rapidly. The fix is a workaround for a problem which seem to be in the JDK Graphics2D.drawString method... read more

Posted by Hervé Girod 2012-04-16

0.52 Beta 7 released

Further generification of the code, and removal of various unused variables
Use the 0.9.1 release of the expressionJ library for the Embedded Client and the Debugger: Add several new operators in the expression language: ++, --, +=, -=, *=, and /=. Make the expression engine much more lenient to overuse of semicolons in expressions. Allow comments in expressions. Add the sign and echo functions ... read more

Posted by Hervé Girod 2012-03-25