GEMS Dash Design Revision History
================================================================================
Version 2.3.14 - 04 September 2025
================================================================================
T#5988: CAN Tx: Display 'Special Value' name in message layout view if not a regular channel.
T#1044: Added DBC Export for CAN Rx / Tx.
CAN DBC files are now interpreted in Latin1 encoding rather than UTF-8. For example, fixes display of exported degrees symbol in other applications.
Delayload vxlapi.dll / vxlapi64.dll.
T#6023: Added 'tolerance' column for logic channel conditions. Applies to = and <> comparators.
Tolerance values are currently always emulated by refactoring/inserting logic channels during export.
Future display firmware versions may add native support for logic tolerance values.
T#6025: Supplemental: To provide more natural logic expressions with operator precedence and grouping of terms with parentheses,
maths channels have been extended to add logic related functionality:
Added emulated maths functions for sgn, near, not_near, clamp.
Added emulated relational operators, <, <=, >, >=, ==, !=, logical operators &&, ||, !.
These functions/operators are emulated using floating point arithmetic / min / max / abs on existing firmware.
Future firmware versions may include support for these functions natively.
T#5898: Add additional Conditions for rule based LED setup.
T#6146: Add tolerance for Rule based LED setup conditions.
T#5618: Increased max number of segments for bar based gauges to 5000.
================================================================================
Version 2.3.13 - 23 June 2025
================================================================================
Updated PCU510 simulator to version 03x31.
B#5871: Updated PCU700 simulator to version 01x21.
Fixed MD5 Mode for auto-save locked setup feature.
B#5972: Fixed calculation of 'Increment' value on limiter gauge when setting 'End' property.
Fixed rendering of bar tacho with smooth edges + separators on Design tab.
T#5974: Add smooth (interpolated) position to Bar Tacho gauge (PCU-510)
T#5975: Add 'Hide above value' property to limiter gauge. PCU510 03x31 or later firmware is required for this feature.
================================================================================
Version 2.3.12 - 17 June 2025
================================================================================
Updated PCU510 simulator to version 03x30.
Updated PCU700 simulator to version 01x20.
Added additional label to default NO CAN Rx screen to remind users about monitored channels.
T#5899: Added "End" property to limiter gauge and moved 'light count' into the 'data' category, alongside the range values.
T#5839: Smooth position on Round Tacho, VTBar and HTBar gauges for CD5x.
B#5840: Fixed always filled appearance of square bar gauges when anti-aliased.
B#5928: User should not be able to edit predefined logic channel.
B#5929: Fixed crash if predefined logic channel selected in logic page.
B#5930: Fixed update logic for predefined logic channels (e.g. marshalling LED logic) which would break input channel.
B#5601: PCU8 Conversion to PCU-700 - Import channel with colour map used on warning gauge fails if directly using CAN source.
B#5959: XML Import/Export was missing Colour Map user-defined shared presets.
T#5927: Preference to auto-save locked setup name to MD5 named file (the default for Display Utility).
Display Utility: Changed default 'auto save locked setup' preference to "When Programming" as was the case with Display Utility v1.
B#5894: Fixed issue using shift + arrow keys to select multiple items in grids such as CAN receive signals list.
Grids that use 'edit on typing' mode would open grid editor when the shift key was pressed.
Added home/end key handling to grids.
T#5647: Implemented drag & drop for moving a screen pages to a new position in the list.
+ added Screen menu command for moving a single screen page to a new position in the list.
Screen pages tab now supports multi-select (can also be used for multiple clear / enable).
================================================================================
Version 2.3.11 - 16 April 2025
================================================================================
Updated compiler version / internal libraries.
T#5771: Update scaling of 3V8 in PCU510 setups.
Predefined scaled analogues will now always be updated if they do not match when loading.
Display info in setup check if scaling changed.
T#5796: Added predefined logic channels for marshalling LED statuses (PCU700 / PCU510).
These are in addition to the existing mask channels, the difference is
that they resolve to a more intuitive logic output (0 or 1) that on PCU510
can also be used in event processing.
T#5738: Setup check: delete VID_LIMITER_START on value gauges with RID_SECONDARY_SOURCE.
It appears to be possible for some setups to define both LIMIT and LOGIC colour modes on value gauges, which does not operate correctly on the display.
Added support for Vector XL CAN driver.
Updated release process to now put build artifacts into sharepoint document libraries.
B#5895: Obscured channel names in shared scaling list.
================================================================================
Version 2.3.10 - 10 February 2025
================================================================================
B#5591: "Save As" via OS file dialog does not work correctly if the file does not exist.
B#5589: Fix applied: report of application crashing when saving setup to network share.
Setup files and Locked Setup files are now written locally and then moved to the network using system functions.
B#5561: Fixed Rule-based LED setup compilation for the display when 2 conditions are combined with a logical operator.
Installer: fixed icon being placed on desktop twice.
B#5455: Reverted regression of latch option for logic channels for many display types excluding some older displays or those with CD4x core.
B#5409: Fixed failure to reprogram ethernet displays twice in a row in Dash Programmer app.
================================================================================
Version 2.3.9 - 20 January 2025
================================================================================
Updated to handle CAN-FD messages *from* simulator.
#5416: Include 'Monitored Channels' section to Setup for PCU700 now that No CAN
screen is based upon receiving monitored CAN channels.
Fixed backwards compatibility issue relating to export of setups with Needle Gauge in legacy versions of the application.
Removed restricted 'Notifications' (Error Text) channel types from PCU700 UI.
Monitored channels setup: Added multi-select to the picker dialog + to the list of monitored channels.
================================================================================
Version 2.3.8 - 03 December 2024
================================================================================
B#5319: Fixed Unicode issue with about box title / details in branded DashProg app.
T#5323: Images being exported to displays with 16bpp density (or cd3x based) are now dithered by default.
This can be switched off in the settings for individual graphics.
B#5320: Fixed crash if saving a new PCU700 setup due to attempting to write validation log to CWD, which is in Program Files for installed application.
Added additional defenses around save/upload actions that could perform FIA rules validation to show an error instead in case of exceptions.
T#5365: Branded build: Display type changes.
T#5366: PCU700 - Remove non-functional graph gauge.
Installer: added firewall exception for appropriate builds that support ethernet displays.
T#5381: Added configuration of marshalling LED brightness for PCU700 (requires firmware 01x11 or later).
Added PC700 simulator version 01x11.
Added Shell for PCU510 simulator (to show LEDs).
T#5302: Added mechanism for sharing sensors (channel conversions) between multiple channels.
B#5383: Error messages/crash when importing PCU700 CAN with channels that conflict with predefined CAN channels for LED control.
Channel conflicts are checked and errors added to import message log instead of pop-up dialogs.
Fixed possible undefined behaviour in XML reader when escaping empty strings.
Crash was due to B#5320.
T#5382: PCU700: Predefined CAN message for LED brightness control.
Pulse progress bar when waiting for device for all tasks. Fixes Firmware programming task where the progress bar would not pulse when waiting for firmware to be flased by the display.
B#5375: Reduced GIF gauge live preview rate as it was otherwise preventing the UI from updating correctly in some cases.
Disable live preview on animation gauge by default.
================================================================================
Version 2.3.7 - 31 October 2024
================================================================================
B#5218: Updated platform.iss to use latest VC Runtime DLLs (prevents crash since updating compiler).
T#5232: Corrected RAM size properties for CD6-43, PCU-700 and PCU-510, to avoid size warnings when programming setups.
Fixed required RAM size calculation during setup programming.
Optimize setup before building font table.
T#5231: USB: Wait for display to complete flash erase/write before saying that a programming operation is complete.
B#5234: Fixed multiple colour presets not working on the display due to bug in modifier chain optimizer not including sensor child nodes in comparisons.
T#5237: Colour Gradient Presets: Added checkbox option to use range from the preset rather than a local per-gauge override.
B#5238: Fixed missing "Events" tab for some display types.
B#5129: PCU-700: Fixed default new channel type (was previously unsupported function table type).
================================================================================
Version 2.3.6 - 18 October 2024
================================================================================
B#5104: Fixed sorted lists in numerous places due to bug in VS2022 compiler for 32-bit release builds affecting std::sort on std::deque.
T#5063: Options to set CAN ID for PCU700 status message on CAN.
T#5200: "Show Predefined" checkbox in CAN Rx signals table.
T#5149: Shared presets for colour map used on warning gauge / text gauges. This feature is not backwards compatible with older application versions.
T#5156: Moved SDB (DBC signal database) library to package manager.
Added methods to automation interface for binding PC CAN adaptors (PCAN or Kvaser) to the simulator.
================================================================================
Version 2.3.5 - 20 September 2024
================================================================================
Fixed issue with LED IDs in LED rules editor that would have affected PCU510.
R#5106: New LED handling for PCU700.
Update PCU700 Simulator to 01x09.
B#5142: Fixed A2D Channels Internal SD 3v3 and Internal SOM 3V3 were assigned to the wrong A2Ds
These have been reassigned + renamed to ensure automatic fixup for any existing setups.
Channel names are now "Internal 3V3 (SD)" and "Internal 3V3 (SOM)".
T#5072: Added 'Audit' feature to all builds. This generates 'mermaid' routing
diagram and displays it in web browser.
T#5109: Updated to emerald_id/1.2.53.
================================================================================
Version 2.3.4 - 27 August 2024
================================================================================
Fixed programming of setups and firmware over TCP connection (PCU510) - programming process would report failure and abort early.
B#5100: Fixed: PCU510: Channel 'Internal CD 3v3' should be 'Internal SD 3v3'.
================================================================================
Version 2.3.3 - 26 July 2024
================================================================================
T#4872: Auto-configure PCU510 built in [psuedo] A2D channels.
Update to PCU700 01x07 simulator.
Enable ethernet comms for PCU510.
Fixed invalid setup check warning about Group gauge.
Added feature to simulator channels list so that items may be checked and only those items will be shown in the simulator channel list.
T#5075: Added custom colour maps. Requires firmware update to support (e.g. PCU700 01x08).
Added conversion of function tables used as colour maps to custom colour maps for displays that do not allow function tables.
Refactored display setup export to avoid changes requiring emerald library updates.
T#4877: PCU510 Simulator.
================================================================================
Version 2.3.2 - 18 June 2024
================================================================================
For displays that use FIA checksum verification, output the firmware checksum when programming the display.
Tentative fix for possible issue when initializing USB connection to display.
Fixed issue with LED Rules builder where LEDs set to OFF could override other LEDs.
Branded display programming tool: Fixed installer system configuration settings for GEMS license system.
T4982: PCU700 Feature Restrictions.
Added PCU700 validator with validation report.
PCU700 Internal Temperature scaling changed to avoid use of function table type channels: Display firmware version 01x06 or later is required otherwise internal temperature readings will be incorrect.
B#4960: Fixed push buttons on GLW-43 simulator not visually updating when pressed.
Use notification popup system for fullscreen mode popup instead of legacy toaster popup.
Updated PCU700 simulator to 01x06.
Removed PCU700 simulator versions prior to 01x06 due to incompatible changes to internal temperature scaling.
Warn about unsupported gauge types.
Added properties form to CAN RX setup page to enable modifying multiple signals at once (e.g. setting CAN ID to be the same for a set of signals).
Updated to C++20 standard.
Updated to cryptopp 8.9.0.
================================================================================
Version 2.3.1 - 29 May 2024
================================================================================
Fixed bug when exporting setup leading to incorrect display unit conversions. Since the recent change to clone the setup prior to export, it was possible for additional unit conversion channels to be inserted.
Modified Ethernet Display Module discovery service to bind to network interfaces individually to avoid packet loss on some systems.
Fixed possible crash during application shutdown relating to the Ethernet Display Module discovery service.
T#4935: Added support for Network special format for value gauges.
T#2730: Moved PCAN dependency to package manager.
Add PCU510 type.
T#4871: PCU510 LCD properties.
T#4873: PCU510 LEDs.
T#4874: PCU510 Ethernet.
B#4946: Fixed crash when un-checking database node in DBC import dialog.
T#4876: Camera Gauge.
T#3941: Add support for Arc gauge.
Fixed issue with updating layout of gauge palette on design page when changing display type.
Added auto-size option to Needle & Arc gauges.
Added additional features to Unique Fonts dialog to list all items using a given font and additionally to delete.
Added additional text direction modes for flipped / rotated text when using vector fonts.
Fixed Menu Gauge: MENU CONTROL channel was not being added to the setup nor attached to Menu Gauges.
Added properties to menu gauge for configuring control events.
Fixed condition name for Bit Pattern LED rules.
Removed Text History gauge from all display types as no longer supported by any current firmware.
Added Animation (GIF) gauge to CD6x displays.
Fixed property editor for animation gauge file path.
B#4953: Fixed crash in setup browser when cancelling edit of sub-directory.
B#4944: Fixed incorrect fixup of downloaded track database file from Display Module.
T#4934: Dash Programming tool: Added additional commissioning features for users with appropriate licenses.
B#4943: Fixed binary format of track database for display (insert header padding).
Upload firmware: If restoring last selected firmware filename, set the directory of the picker to the parent of the restored filename.
T#4950: Added feature for auto-saving locked setup files when either saving the setup or programming the display.
Moved export raw setup menu options to a sub-menu in gems build and removed from other build variants where the locked setup feature should be used.
Fixed crash if setting speed input or odometer input to a circular reference.
================================================================================
Version 2.3.0 - 26 April 2024
================================================================================
Breaking change - XML setup export of led_rules no longer includes property categories.
B#4084: Fixed crash when adding a vector font.
Fixed update of aliases in CAN Rx signals grid following replacing the currently open setup.
Store/restore layout of CAN Rx signals grid when setup changed as column widths for consistency in help generation when switching CAN-FD enabled setups.
Fix issue with closing Setup Check view via automation interface.
Renamed columns in Case channel editor.
Added 'copy names' context menu command to channel lists.
Fixed minimum size of Filter picker on Channels tab when shown for some channel types.
ETA channels no longer have input/output units since they output time values.
Fixed connect to GDA function in simulator.
Fixed erroneous CANTXWAKEUP setup check warning.
Fixed crash if setup closed while unit preferences dialog is open.
Various modifications for help generator.
Improved sizing of tooltips.
Fixed @units special format for value gauges.
Branded build: Include Events tab.
PCU700: Fixed missing pre-defined channel Analogue 24.
Fixed undo scope setting name of LED rule.
T#4824: Updated wording in upgrade required dialog.
B#4820: Marshalling LED status - Marshall Blue R channel missing source channel.
T#4724: Make marshalling LEDs monochrome in rule-based LED setup.
T#4723: Added bit pattern mode for rule based LED setup.
B#4742: Fixed validation of floating point numbers with scientific notation. Fixes issue with linear scalar channels with e.g. scalar of 9.1555e-5 not updating editor and showing value from prior selected channel.
B#4676: Fixed apparent change in datatype when changing signal type to FD for channels imported from DD v1 that do not have the data type set.
B#4916: Disallow predefined or duplicate channel names for CAN Tx messages (which are actually channels under the hood).
B#4833: Fixed crash adding menu item to menu gauge.
B#4826: ECU Text channel type may only be used for channels with a direct raw CAN source. Added setup check for this + disable ECU Text option for inapplicable channels.
B#4823: Fixed file appearing to be modified following programming into display if the setup uses rule-based LED setup.
Added context menu to CAN Rx signals to show the channels tab for the selected signal and conversely from Channels tab to show the CAN Rx signals tab.
T#4817: Added 'Conversion' column to CAN Rx signals table. It is now clear if signal have a text conversion and the conversion can be edited from the table.
Fixed undo scoping issue when changing LED group name via the LED group editor dialog.
Added drag & drop to LED Rules tree.
LED Rules: added 'Duplicate' context menu command.
Fixed bug in Gauge tree drag & drop when validating ancestry.
Fixed crash in gauge tree when merging properties for some selections involving groups and their children.
COM interface screenshot function now uses a chroma key to remove the matte from the drop shadow for help generator.
Close any LED rule editor dialogs when closing the setup.
Fixed import XML message box text suggesting that it was an export.
Fixed serialization of CAN Response channels to XML.
Fixed issue with XML import of CAN Tx messages where the shared CAN tx sensor was being erased.
Implemented goto location for CAN Tx messages from setup checker.
T#4106, T#4592: Added HTML help system.
T#2872: Ethernet display comms support + display discovery protocol.
Disable export XML menu item for locked setups.
T#2869: Added features to Locked Setups:
Embed checksums / hashes for verification, some ECUs may include internal checksumming for scrutineering purposes.
Include Setup Name and Source Setup filename.
Option to embed password protected original setup (AES encrypted).
When adding a 'Special Type' signal to a CAN Tx message, an input channel is also selected - even though it is not used it is required for the signal to be generated by the display firmware.
T#4926: Add support for OEM serial numbers.
Support trackdb for 15x?? GLW-43.
================================================================================
Version 2.2.62 - 21 March 2024
================================================================================
T#998: Use multiple lines for gauge palette 'toolbar' on Design page if there are too many gauges to fit in a single row.
B#4546: PCU700 corrected Analogue channel for CPU Temperature.
T#4747: Add IMU channels to PCU700.
T#4748: Add PCU700 Marshalling LED status.
For displays that have firmware update checking enabled, fixed a regression that resulted in the firmware version being checked against the bootloader version.
Crash Report: Tentative fix for crash when merging properties for multi-selection of gauges on the design page.
Updated to emerald 5.5.7.
Adjusted COM automation interface to assist help system generation.
Added missing HelpIDs integration for Events tab.
Add any missing screens to existing setups when display properties have changed since the setup was created (e.g. No CAN RX screen).
Adjusted layout of channels tab to allow a smaller minimum size.
Added menu item / action to show the setup check view (makes this automatable).
Increased minimum column size for setup check view so that Severity column is not clipped on first view.
Simulator channel values can now be set via the COM automation interface.
CAN TX: Add Signal: Offer selection of 'special type' (e.g. Setup Name / Serial Number) instead of a channel to make it clearer how to add a special type signals.
CAN TX: fixed display of 'Setup Version' data type in type selection list.
Fixed: Do not display left/right LED columns in Logic channels list for non-applicable display types.
Fixed give unit selectors a minimum width, fixes performance timer config having unreadable units.
================================================================================
Version 2.2.61 - 05 February 2024
================================================================================
B4722: Prevent unhandled exception in Dash Programmer app if firmware file is missing.
B4657: Fixed issue with editing CAN Signal Bit Length in CAN setup editor after switching on CAN FD mode on the message.
Fixed crash when selecting setup file in Dash Programmer app.
================================================================================
Version 2.2.60 - 15 December 2023
================================================================================
Reworked project structure to improve release build duration & support building additional apps.
Added Dash Programmer app.
================================================================================
Version 2.2.59 - 12 December 2023
================================================================================
Fixed programming of locked setups to the display.
================================================================================
Version 2.2.58 - 12 December 2023
================================================================================
T4324: Branded Display: Added additional predefined channels + removed LSDs + Lap Timing setup.
T4649: CanTX: Grey out BRS if FD not enabled.
T4649: CanTX: Display setup check warning + highlight signal if it exceeds the message DLC.
T4668: Changed list of predefined CAN-FD Data Bit Rates.
If CAN-FD Data Bit Rate is not enabled then do not show CAN-FD columns in RX signals / TX messages grids.
T4667: Display error if CAN FD Data bit rate < CAN Bit rate (if not set to disabled).
Changed labels for CAN rates for consistency (Bit Rate + Data Bit Rate).
T4573: Locked Setup: Option to lock setup to a specific serial number on applicable display types.
Fixed UploadSetup via COM interface. Additionally added ways to program raw setup files that way.
Fixed progress bar when programming setups.
================================================================================
Version 2.2.57 - 01 December 2023
================================================================================
T4575: Add support for CAN-FD setups for CD6x generation displays.
Updated CAN message view to support CAN FD. Now includes a vertical zoom bar and some visual changes.
T4576: Add support for CAN-FD dbc import.
Updated DBC import to use v2 of sdb library (needed for CAN-FD).
T4597: Added menu options for exporting raw setups (packaged / unpackaged) and logger setup.
Updated to emerald_id 1.2.36.
Updated to C++17 standard.
================================================================================
Version 2.2.56 - 06 November 2023
================================================================================
T4513: Add support for error text filter channel (Error Text).
B4556: When exporting display setup binary, topologically order outputs so that
dependent outputs are calculated after their dependencies when the display
does an output channel processing pass.
================================================================================
Version 2.2.55 - 31 October 2023
================================================================================
T4478: Add support for 0-100% LED brightness control on applicable display types.
T4507: Added NO CAN Rx screen to branded display type that supports it.
Hide LED brightness control entirely on displays that do not support it.
When exporting setup binaries for displays, always convert images to PNG format.
New graphics are now inserted in setups in PNG format without storing dithered 16bpp versions.
Always clear halt on USB endpoint following a failed bulk write.
Fixed crash in LED setup page for displays that do not support rule based LED setups.
Reworked box sizers so that hiding items will also remove layout spacing.
B4471: Fixed flickering of tooltips.
T4442: Added option to rescale gauge layout / fonts / graphics when converting setups.
T4524: Remove CAN termination option from displays that do not support it.
T4525: Remove CAN Request tab from displays that do not support it.
B4485: Completed & tested implementation of XML setup import/export feature.
Changed behaviour when dealing with output channels that are using the same raw CAN
source to insert an intermediate channel instead of duplicating the source.
Optimized handling of unit IDs to drastically reduce copying and parsing.
SetupCheck: auto-rename Log Mem Total to Log Mem Free to add (kB) suffix as per v1 software.
Fixed range clamping in BoundedIntProperty.
Default shape corner radius to 0 instead of 10 to avoid modifying legacy setups that did not define it.
Modified auto sensor / channel naming for better consistency between rename operations vs creation.
Fixed error in parsing unit IDs that have a quantity but not a unit (e.g. "unitless:").
Fixed "Audio Volume Text" source.
Control screen: changed monitor channels to use channel name rather than 'CDG' to disambiguate during file comparison in unit tests.
Fixed handling of graphics with BMP format in some cases.
T4550: Added support for latchable logic channels (requires updated display firmware).
Update to Emerald 5.5.4.
Update to emerald_id 1.2.34.
================================================================================
Version 2.2.54 - 27 September 2023
================================================================================
Adjusted display type support.
================================================================================
Version 2.2.53 - 26 September 2023
================================================================================
Adjusted display type support.
Write libusb read/write errors to application log.
Increased timeouts for libusb read/write operations.
Fixed issue with interpolated LED patterns where if some LEDs were initially set to a colour and then turned off, they would be considered for interpolation.
================================================================================
Version 2.2.52 - 22 September 2023
================================================================================
Branded Build: Added rule-based LED setup for new product.
Added tooltips for LEDs on LED Mask and LED Colours row header in rule-based LED setup.
Improved behaviour of LED Mask selector strip when drag-selecting.
Updated SimHost to version 1.06. Tentative fix for access denied error when starting simulator seen by some users.
B4429: Fixed inverted button logic for R3 and R4 in GLW-43 simulator (fixed for version 15x24+).
Fixed sorting by priority in LED Rules tree.
Fixed update of priority column in LED Rules tree if edited in LED Rule dialog or updated by undo/redo.
================================================================================
Version 2.2.51 - 15 September 2023
================================================================================
Fixed invalid licensing error for newly added display types.
================================================================================
Version 2.2.50 - 14 September 2023
================================================================================
Fixed crash showing setup page for displays that do not support rule-based LED setup.
================================================================================
Version 2.2.49 - 13 September 2023
================================================================================
T4062: New Rules based setup for GLW-43 LED control.
T4318: Add support for CD6-43 + Branded build display.
Fixed buttons in GLW-43 simulator. Requires updated firmware plugin version.
Fixed bug in font selection dialog where vector font Y offset would not be populated correctly.
Fixed performance issue rendering icons with alpha channel on toolbars.
Fixed bug where general preferences would be blank of preferences dialog opened for a second time.
================================================================================
Version 2.2.48 - 29 August 2023
================================================================================
Fixed bounding rectangle for embedded vector fonts.
Fixed issue with font sizes for fonts that do not use legacy font mapping.
New tooltips will now automatically dismiss after a timeout and if mouse is moved away from the control.
Added preferences menu item + preferences to control tooltip behaviour.
================================================================================
Version 2.2.47 - 22 August 2023
================================================================================
T4093: Import/Export of setups as XML.
T0518: Added Track Database feature.
T3959: Add analogues to GLW-43 setups.
T3960: Add buttons to GLW-43 setups.
T3970: Add low side drivers to GLW-43 setups + setup page to configure them.
T4223: Add rotary switches to GLW-43 setups.
T4242: Updated property system infrastructure.
T4237: Support 8 analogues on LDS4 instead of 4.
T4251: Force specific DIP scaling on screen render + add workaround for automatic DPI scaling of fonts introduced by wxWidgets 3.2.2.1 update.
T2868: Rebrand application.
T4095: Branded Build: Display driver support flags.
T4104: Added Countdown timer adjustment delta configuration.
T4102: Enable configuration of events for predefined timers on the timers page for some display types.
T4100: Dynamic Channel type & Filter type restriction for some display types.
T4096: Branded Build: Resolve ambiguous display type in setups from prior application versions.
T4102: Added configuration of Fuel / Distance Trip outputs. Odomoeter/Speed page also offers configuration of these outputs.
T4098: Branded Build: Validation of setup with regulatory restrictions.
Adjusted splash screen layout / fixed tiny text size on HighDPI.
Fix icon sizes on some HighDPI settings.
Setup converter: copy VIDs for predefined outputs.
Use a slightly different colour for predefined channels in channel lists.
Fixed regression that prevented logic/notification/graphic selector channels being added.
Include event configuration link on Toggle channel type editor.
Fixed auto-naming of cross-hair gauge.
================================================================================
Version 2.2.46 - 08 June 2023
================================================================================
B#4195: Fixed screen thumbnails not showing up on 'screens' page any longer.
Updated to wxWidgets 3.2.2.1 from 3.1.4 to workaround compiler bug in wxImage resize algorithm when compiled for x64/release with MSVC2022 17.5.4, could have significant knock-on changes.
Updated MSVC2022 to 17.6.2.
Added setupcheck to ensure that audio volume control outputs are added to the monitor gauge.
B#4181: Fixed handling of rotary switch states for GLW-43.
Always init rotary switches to the first position when starting simulator.
Updated GLW-43 simulator shell to reverse A2D values for the rotary switches.
Updated simulator host to deal with reversed A2D values for rotary switches.
Custom tooltips: improved minimum width.
Fix for very rare crash during shutdown.
Added missing 'convert' icon.
T4148: Added regression testing for DisplayType setups.
================================================================================
Version 2.2.45 - 10 May 2023
================================================================================
Added explicit file flush following file write for displays that use mass storage devices for setup programming.
Updated to Visual Studio 2022
Updated to zlib 1.2.13
Updated to boost 1.81.0
================================================================================
Version 2.2.44 - 18 April 2023
================================================================================
Fixed installation of GEMS display drivers on Win7 x64.
Added GLW-43 15x21 Simulator.
B4058: Fixed issue where changing CAN TX message name would stop it being
transmitted.
Added setup check to ensure that CAN TX messages have a monitor gauge added
for them in case they were unknowingly broken in prior versions.
T1040: Added locked setup file type.
Locked setups are not editable but they fo include low-resolution
thumbnails of the screens in the setup, notes and screen tags.
Locked setups can be loaded into the editor but only the 'Screens' page
is available.
B3947: GEMS build: Fixed Export Screen feature.
+ changed screen package file extension to gddscreen.
Enabled screen packages to be dropped onto the application when either the
Screens or Design pages are shown to import the screen.
T515: (179) Move CAN channel timeout setting to the CAN tab.
Added Filter picker to the Channels tab for setting filter chain on
non-filtered channels (.e.g CAN).
Setup Checker: Added check for CAN channels that share the same underlying
source. If such channels are identified then the source is now duplicated
to prevent editing of one channel affecting the other.
T317: (188) Create a new Value Gauge special format for a selected
channels display units.
T267: (DD-130) CAN Request: disable editing of bytes that exceed the DLC.
T2503: (DD-308) Re-implemented Windows tooltips so that they do not obscure text
edit controls etc. This also opens up the possibility of html content in
future.
Tooltips prefixed with are interpreted as inline html.
T2666: Show warning if uploading a setup to a display of a different type.
T318: (224) - Add "Replace" Function to Import CAN.
================================================================================
Version 2.2.43 - 31 March 2023
================================================================================
T3193: LED setup for wheel display.
T3914/T3915: Simulator: Support rotary buttons + rework to make button / analogs
configuration more straightforward & flexible.
Simulator: Fixed position of button hover areas when scrolled.
Fixed potential crash if display driver information is updated before UI is
fully loaded.
B3818: Alpha-sort "New Setup" display type list.
T4040: Add support for 'setup name' display feature.
Updated to emerald_id/1.2.28.
================================================================================
Version 2.2.42 - 14 February 2023
================================================================================
Fixed display not licensed error for new Wheel display.
Added wheel drivers to installer.
Avoid popup message if application is started in automated mode and the last
setup cannot be found to avoid issues with automated release.
================================================================================
Version 2.2.41 - 13 February 2023
================================================================================
T3875: Add support for Wheel type displays.
================================================================================
Version 2.2.40 - 07 February 2023
================================================================================
B3896: Added missing column 'Wait for All' to CAN Transmit setup.
Various updates to internal libraries (bug fixes / performance).
Updated CAN Bus / Message icons.
================================================================================
Version 2.2.39 - 16 January 2023
================================================================================
Fixed regression on layout locked icon background colour.
B3852: Remove unreferenced modifier channels that were missed with bugfix B2241.
B3851: Fixed issue with some screen events (e.g. revert screen) being removed
under some circumstances (e.g. when creating a stopwatch timer).
B3850: Monitored channels list has an empty item that can be deleted multiple
times before disappearing.
Fixed add monitored channel button.
================================================================================
Version 2.2.38 - 14 December 2022
================================================================================
SDU2 - Direct colour mode option for value text gauge.
#3719: Add LDS4_DisplayLogger drivers to GEMS installer.
================================================================================
Version 2.2.37 - 07 December 2022
================================================================================
Include file size in raw setup export for raw setup uploader tool.
Include raw setup export for additional display types sdu1, smdu1.
Updated to emerald 5.5.2.
================================================================================
Version 2.2.36 - 03 November 2022
================================================================================
B3704: Fixed simulator frequently raising a CreateFile failure (timing related).
B3703: CD32 Displays not detected by DashDesign.
UT: New Setup: display screen resolution in tooltip.
================================================================================
Version 2.2.35 - 31 October 2022
================================================================================
T3523: GEMS version: remove help file menu item until the help system has been
completed.
================================================================================
Version 2.2.34 - 01 September 2022
================================================================================
T3327: Simulator for LDS35 Landscape (LDS35_L 15x18).
LDS35 Landscape is now called LDS35_L, in line with the firmware name.
The file extension has changed from lds35-ls to LDS35_L - any existing
setups will need to be manually changed in Windows file explorer.
================================================================================
Version 2.2.33 - 30 August 2022
================================================================================
B3328: Show brightness input setup for LDS4 setups.
UT : Added additional info to setup export about which gauges invalid output
references are removed from.
UT : Remove event gauges with dangling output references via setup check.
Avoids messages during setup export and unnecessary setup bloat.
B3330: Setup Check: Remove invalid user events from screens to avoid them
appearing to have active events on the events editor tab without
having any items in the 'Action' column.
================================================================================
Version 2.2.32 - 22 August 2022
================================================================================
B3288: Fixed title of upload firmware dialog box.
Include custom / predefined screen name in event effects, e.g. "Open Screen 10".
Fixed bug relating to naming of some event effects.
Events tab: select 'All Screens' by default / fix actions grid appearing to
correspond to All Screens when in fact there was no screen selection,
leading to the event effects list being empty.
Updated to Emerald 5.4.6 (improves performance).
Include screen number in caption for screens with a custom name.
================================================================================
Version 2.2.31 - 01 August 2022
================================================================================
T3280: Add LDS35 landscape display type.
================================================================================
Version 2.2.30 - 19 July 2022
================================================================================
T3151: Add support for flash mode to Warning bar.
T3127: Add rounded rectangle option for square bar gauges.
UT: CAN Receive: Added cut,copy,delete,select all, select none handling.
Paste not supported yet. Copy converts to tab separated format for paste
into MS Excel etc.
UT: CAN Receive: Highlight ID/start bit/size cells if signal is aliased and
provide tooltip indicating the aliased channels to help identify signals
that are unintentionally aliased.
UT: Corrected CD32 display size to 800x480.
UT: CAN Receive / Transmit grids: Show display units in units column.
Updated CD5x plugin to 03x06.
================================================================================
Version 2.2.28 - 15 June 2022
================================================================================
T3133: Export Raw Setup Package feature (for applicable display types).
Update simulator plugin 03x04
================================================================================
Version 2.2.27 - 13 June 2022
================================================================================
B3120: Stop simulator when setup file closed.
UT: Fixed issue with restoring self-test delay value on graphic selectors.
UT: Fixed disabled state for toolbar icons (use grey colour).
UT: (internal) Build speed optimizations (unity builds for some code libraries).
================================================================================
Version 2.2.26 - 09 June 2022
================================================================================
T3077: CD5x Simulator. Updated simulator host application and plugins.
T3071: Text destined for displays using vector fonts is now in utf-8 format
so that all unicode characters can be rendered. Latin-1 codepage for
vector fonts is no longer used. This will require the display firmware to
be updated for correct text rendering.
B3069: Render vector fonts using FreeType in the DashDesign UI. There are
inconsistencies in text placement when rendering using FreeType compared to
Windows GDI. Existing setups may require some positional adjustments of
text to account for this difference. This is easier now that the editor
is now more representative of how the setup will look on the physical
display / simulator.
T3073: Multi-face vector fonts are now supported by the display & simulator.
UT: Setup export: Fail if embedded font references are invalid rather than
exporting a potentially non-functional setup.
UT: Fixed page select source not showing up in editor even though present
in the setup for some display types.
UT: Modified decision on if display supports embedded fonts during setup
programming.
B0084: Fixed copy/paste of colour map and other input modifiers on gauges.
Fix also applied for copying of screens. Fixed source reference IDs
when copying input chains on screens.
UT: Fixed loading of colour map on Value gauges.
T2667: Added missing self test delay feature for Image Selectors.
================================================================================
Version 2.2.25 - 01 June 2022
================================================================================
T1021: Added setup conversion feature.
T3064: Add support for embedded fonts (resolved issues in development version).
T3072: Modified codepage behaviour. Prefer latin-1 codepage for bitmap fonts
as this is more compatible with vector fonts on displays that do not
support utf-8.
Added setup check for charset issues where text outputs are routed to a
mixture if bitmap/vector font gauges.
Setup export will now convert text depending upon the codepage used by
output gauges.
================================================================================
Version 2.2.24 - 17 May 2022
================================================================================
*** Development Release ***
T3064: Add support for embedded fonts.
T3061: Include background colour option for dynamic text gauge.
Fixed serialization of 'justify' property on dynamic text gauge.
Added options to offset / crop fonts to workaround issues where font bounding
boxes are oversized for the range of characters being used.
Added additional options for controlling font rendering.
Added display rendering emulation to font dialog.
Added Unique Fonts dialog to identify fonts that have separate font data within
the setup. Includes find feature.
Added display of font table to font dialog preview with zoom / scroll.
Show memory usage of fonts in the font dialog.
================================================================================
Version 2.2.23 - 24 May 2022
================================================================================
B3050: Fixed positioning of marching ants / resize handles on screen editor when
zoomed in + scrolled.
B2935: Fixed PDU Tab issues when switching CAN ports.
T2940: Branded build: Hide some functions from math editor.
T2938: Added min/max functions to math editor.
UT : Ensure that newly added Lap Timing outputs are marked predefined.
UT : Fixed issue with save setup dialog not adding file extension.
UT : Fixed serialization of corner radius on shape / warning gauges.
UT : Added corner radius option to bit gauge.
UT : Fixed keyboard handling on math script editor so that keyboard shortcuts
do not override keys used for editing (e.g. DEL).
UT : Improved responsiveness of math editor.
================================================================================
Version 2.2.22 - 20 May 2022
================================================================================
T3019: Added support for round bit gauge.
T3021: Added support for rounded rectangles on shape gauges and warning gauges.
B3029: Font mapping: Some fonts do not get correct sizes due to the way that
font mapping works to retain compatibility with existing DDv1 setups.
Some hardcoded exclusions have been added. Further exclusions can be added
by listing them in C:/ProgramData/GEMS/DashDesign/logfontbypass.txt.
B3028: Bit Gauge: ensure that item bitmasks are correctly populated.
B2947: Fixed: Dash Math Channels do not show up correctly in log analysis s/w.
B2928: Fixed some GPS signal names not showing up when added on CAN transmit tab
This issue also affected CAN transmit signals that have scaling / units.
T2855: Fixed window focus handling when changing between tabs - means that
Select All option is available when switching to the design tab.
UT : Fixed selection of latest simulator plugin when plugin list is filtered.
UT : Fixed: Clear on CAN transmit was removing read-only channels
(e.g. PDU control channels).
Updated to emerald 5.4.4 / emerald_id 1.2.4 (now via package manager).
Updated gems libraries.
================================================================================
Version 2.2.21 - 16 March 2022
================================================================================
UT : Use a different value ID for enable of PDU channels to avoid disabled
channels being removed during setup export.
Added unit tests.
================================================================================
Version 2.2.20 - 15 March 2022
================================================================================
UT : Fixed issues with PDU Control channel sources and singleton sensor.
================================================================================
Version 2.2.19 - 15 March 2022
================================================================================
R0101: (DD-278) - Add support for PDU-8 Configuraton (AEM only).
T2783: GEMS: Install libusb drivers for LDS4 (v1,v2,v3), CD32 and LDS35.
UT : GEMS: Include graphics files / LDS4 firmware / demo setup as in v1 editor.
B2782: Fixed enumeration of drive based displays if LibUsb driver not installed
or malfunctioning. Displays a warning in the device selection dialog.
T2668: Raise setup check error if setup uses a graphic that is larger than the
screen size.
T2691: (DD-275) Reworked behaviour of rate selection / selection movement on
Logger channel list.
B2839: (DD-313) Fixed: "Clear" Button on CAN Receive Tab was also deleting
CAN Transmit.
T2867: Create tabs on-demand to improve startup time.
UT : Fixed erase of CAN channels could leave some CAN source channels in the
setup.
UT : Fixed bug in update of dependent outputs list for channels if referers
had been erased.
UT : Fixed drag-value on floating point spin boxes dropping fractional value.
UT : Fixed crash on Images page if importing an image that can't be loaded.
UT : Performance enhancements.
UT : Close DBC / OBDII import dialogs if new setup created / loaded.
================================================================================
Version 2.2.18 - 04 March 2022
================================================================================
B2693: (DD-312) CAN Transmit Tab: changing signal source channels could result
in original channel being erased from the setup.
B2847(1): Fixed handling of legacy can setups that do not use DBC style bit
offsets where multi-byte big-endian values would have incorrect offsets.
B2847(2): Legacy setups with no outputs from a single CAN source
would result in a confused CAN setup in DDv2. Setup check at startup
will fix these channels by adding an output to the setup.
UT : Remove legacy '_string' channels that are not strings and also are not
used by any other outputs or gauges.
UT : Do not raise error about missing GPSi speed input on some display types.
UT : Odometer input issue a warning instead of an error if the standard
Speed Input does not itself have an input, rather than an error about
speed units.
================================================================================
Version 2.2.17 - 05 January 2022
================================================================================
T2691: (DD-275) Changed how rates are selected for channels in the Logger setup.
Streamlines keyboard & mouse editing of logging rates.
Clicking the rate column will now pop up a rate selection menu instead
of using a grid editor. The keyboard will pop up this menu if the
return / enter key is pressed.
B2665: Fixed update of lists of 'used' screens when screens are modified to
become 'used'.
B2690: Fixed display of 'Insert Function' button in Maths editor.
(T2487/DD307): 'No Warning Text Channels' => 'No Notification Channels'
DD-110: Added additional metrics: on change, alarm triggers + obdii pids.
================================================================================
Version 2.2.16 - 22 December 2021
================================================================================
B2685: GDD Maths editor - fixed issue where input controls were not cleaned up
correctly leading to 'corruption' of the UI.
B2688: Fixed: PI constant was not working in simulator for maths channels.
Constants are now added as literal values to display math equations.
UT: Fixed colour of text on file address bar drop down menus.
UT: Fixed scrolling of file address bar drop down menus.
UT: Added channels drop down menu in math channel editor.
UT: Added constants drop down menu in math channel editor.
UT: Fixed problem when converting channel types to 'toggle', 'if', 'on change' or 'case'.
UT: App update dialog - relayout window when showing 'install' button as
when hidden its position is not otherwise updated if the window is resized.
UT: Support dropping of files with .gdd extension in GEMS version.
================================================================================
Version 2.2.15 - 21 December 2021
================================================================================
T2624: Enable GIF support for SMDU4 (except in the simulator) + add VID_COUNT
option (SMDU4 only at present).
B2603: Fixed crash rendering GIF gauges.
B2652: (DD-280) Maths Channels: Add parenthesis around exponent of ** operator
when converting from text form to display setup format. Fixes incorrect
operation on the display.
B2638: Fixed display of simulator (regression since 2.2.14).
UT : Fixed positioning of FPS counter on simulator screen when scrolled.
T2511: Add support for CAN Initial Value in CAN setup editor.
T2510: Update multiplex + CAN message diagram when selecting a signal.
UT: Also update diagram if CAN signal is modified as this was not
always happening correctly (e.g. changing CAN ID).
B2669: Fixed crash ungrouping tacho + label group.
T0988: Maths Channels: Syntax highlighting.
T0990: Maths: Added function call tips (mouse hover).
T2496: Math Channels: Add buttons for inserting operators.
T0989: Math Channels: Added drop-down menu of functions for insertion.
T0991: Maths Channels: Allow channel names to be referenced in maths scripts
directly instead of only variable placeholders.
UT : Fixed size of units mode combobox to avoid clipping of text.
================================================================================
Version 2.2.14 - 26 November 2021
================================================================================
B2618: Fixed scrollbars on some views when not using Dark theme.
================================================================================
Version 2.2.13 - 24 November 2021
================================================================================
T2586: Added VIDEO_PLAYBACK_PLAYING display info output.
T2587: Added Video Seek Offset input to file_explorer_gauge.
B2497: Activating an expired license will now report an error instead of
succeeding (but silently failing).
T2585: Warn user if license expiring.
T2515: Refactoring: Use common UnitSystem implementation.
T2487: Rename Alarm Channels to Logic Channels and Warning Text to Notifications.
UT : Licensing: store original machine key with license activations. When
deactivating licenses, use the original machine key, where possible.
UT : Display expired licenses in License Manager view.
UT : Fixed some typos in COM interface documentation.
UT : Fixed COM interface InvokeAction which would always return an error when
invoking a non-toggle action.
UT : Fixed possible crash when using Javascipt property bags via COM interface.
UT : Extended COM interface in preparation for automated help system generator.
DD-250 related: Resolved flicker issue on grid scrollbars.
DD-269: Re-enable math channels.
================================================================================
Version 2.2.12 - 20 October 2021
================================================================================
UT : Fixed connection to Simulator - Updated Simulator host to use boost
1.77.1 due to IPC incompatibility.
DD-250: Defer header position update following column resize.
================================================================================
Version 2.2.11 - 19 October 2021
================================================================================
B2241: (DD-305) Fixed: Deleted CAN channels still show up in setup check.
These will now be removed and an info message will be shown in setup check.
For some of these that have a physical gauge, the correct gauge will be
identified instead of any hidden monitor gauges.
T0321: (DD-110) AEM: Anonymous user feedback usage metrics.
T0305: (DD-274) Set Log rate on multiple channels simultaneously via context menu.
B0103: (DD-288) Import Screen Dialog not working:
Reset cache database if for some reason the file was readonly.
Added button to clear the cache to the import dialog.
UT : For cdscreen files, use the file name as the screen name in the
'Import Screen' dialog, unless a user-defined name for the screen was
given.
UT : Fixed typo in default tooltip for Square Mode property.
B1989: (DD-302) Fixed: Square Mode for bar graphs was not being loaded from
saved setup correctly.
B2240: (DD-304) Fixed crash clearing OnChange page.
T0505: (DD-275) Logging Setup: Tab / Shift+Tab now moves rate editor down/up.
B0106: (DD-283 + DD-290) Convert Predefined 'Status' channels to 'Flags' type.
Some legacy setups used bit-string style outputs and would show up in
the editor as 'Error in Input'.
B0104: (DD-301) Fixed crash when exporting screens with alarm that has no input.
B0109: (DD-219) Constrain Limiter gauge count/height to avoid control being
larger than the screen.
UT : Updated to boost 1.77.0.
================================================================================
Version 2.2.10 - 13 October 2021
================================================================================
T2408: Added display info output for multimedia display for compatible display
types.
================================================================================
Version 2.2.9 - 08 October 2021
================================================================================
UT : FileExplorerGauge: fixed typo in video seek interval property name.
UT : FileExplorerGauge: Adjust line height per-item based upon font size.
================================================================================
Version 2.2.8 - 08 October 2021
================================================================================
T2381: FileExplorerGauge: Add Video Seek Interval.
B2383: FileExplorerGauge: Fixed some issues with handling of gauge properties,
changed default title to "File Explorer".
UT : FileExplorerGauge: changed default unsupported text colour to named
colour 'Dim Gray'.
================================================================================
Version 2.2.7 - 05 October 2021
================================================================================
T0321: Branded Build: app metrics can now use SSL.
UT : Display last setup file name in startup setup selection dialog.
T2261: Added SMDU4 15X13 simulator to simulate Audio Control output.
T0321: (DD-110) Resolved some HTTP issues in branded build data collector.
UT : Include full 24bit colours in setup export.
T2371: Add FileExplorer Gauge.
T2370: SMDU4: Add new DisplayInfoOutput outputs.
UT : Developer Mode: Added option to edit file structure in EFM tool.
UT : Developer Mode: Added option to view setup node graph in vscode
(requires graphviz).
T0079: GEMS: Allow predefined ScreenSel sensor to be edited. Note that loading
modified setups into prior versions of DashDesign will overwrite any
edits.
T2181: GEMS: Added option to check for updates via beta channel.
================================================================================
Version 2.2.6 - 17 September 2021
================================================================================
B2188: Fixed: Channels: Switching to a Maths channel could modify some of
the inputs to those in a previously selected maths channel.
B2239: (DD-303) Fixed default configuration not being added to the first CAN
Transmit signal in a message.
Added a setup check that runs at startup to fix setups that have this
problem.
T0047: Added Audio Control channel type for displays that support them.
Note: audio control channels will not work in the simulator yet.
T2259: If DashDesign did not shut down properly, user should be offered more
options for subsequent behaviour.
Added option to always select what to do at startup instead of loading
last setup.
UT : Clean up default setup of Lap Timing inputs. Split Time / Num should
now be added as predefined channels on LDS4.
================================================================================
Version 2.2.5 - 20 August 2021
================================================================================
B0080: Fixed 'Save' always behaving like 'Save As' for some display types.
B0089: Do not display LEDs sub-page in Setup tab if display does not support
LEDs and that page was previously selected.
T0035: Added internal temperature on new display type.
T0040: Added Status outputs for USB and SD card on applicable displays.
UT : Reworked handling of default Analogue channels. For new setups it was
possible that the internal temperature / battery voltage would fail to
be created properly if on an input channel < 10.
================================================================================
Version 2.2.4 - 29 June 2021
================================================================================
Fixed issue preventing connection to LDS35.
Added LDS35 15x12 simulator.
Added CD35 15x12 simulator.
AEM / Emtron: Added version 15x12 simulator.
#4699: Restrict list of simulator options based upon setup display type.
================================================================================
Version 2.2.3 - 22 June 2021
================================================================================
#4861: (DD-297) Fixed issue with enable/disable screen menu item when showing
Design tab and the editor window is focused.
#4885: (DD-298) Fixed export of screens when a screen is disabled (fixes alarm page
being shown when cycling pages).
#4894: (DD-299) Fixed bug where changing the filter type on a channel could modify the
wrong channel.
#4860: GEMS media based displays: only add display drivers if the display info
file is valid.
#4660: GEMS DD: Add support for LDS35.
================================================================================
Version 2.2.2 - 11 June 2021
================================================================================
Updated compiler to VS2019 16.10, fixes code generation bug seen in other apps.
#4808: (DD-293): Open Setup: Fixed 'file not found' when using OS file dialog.
#4856: (DD-296): Fixed crash when selecting "Page Select" channel.
#4651: (DD-268): Emtron: configured application update checking URL.
#4854: (DD-295): Screen "Enabled" property changed to "Screen Enabled" and
hidden for screens that do not allow being hidden.
#4855: (DD-294): Fixed triggers for On-Change and Alarm screens (since 2.1.20).
#4753: (DD-290): Auto-fix broken 'Log Status' channel from old display setup.
#4801: (DD-292): Added setup check error for invalid use of time channels on
bar gauges. Use of time channels on value gauges that do not have a
time format is now an error rather than a warning.
Lap timing channels & ETA are now identified as being 'time' channels so
that setup check can identify configuration issues.
Browse setup: altered styling of 'notes' control (dark theme).
================================================================================
Version 2.2.1 - 25 May 2021
================================================================================
#4761: (DD-291) Fixed setup upgrade to fix "x1 scalar" vs "x1 Scalar" problem.
#4819: GDD: Add provisional support for displays that use removable disks or
present as mass storage devices.
================================================================================
Version 2.2.0 - 11 May 2021
================================================================================
Branded Build: Release candidate.
================================================================================
Version 2.1.24 - 07 May 2021
================================================================================
Added additional information to application log.
#4403: Asynchronously launch update & close application following acceptance of
software update dialog. Tentative fix for crash report.
================================================================================
Version 2.1.23 - 06 May 2021
================================================================================
#4544: (DD-277) Simulator: Fixed Motec M800 channels on CAN2.
#4698: Fixed Page Select input on some display types.
#3196: (DD-217): Adjusted default CAN configuration for GPSi CAN Tx.
#4703: Improved initial column widths for various grid editors.
#4482: Menu option to toggle hexadecimal display of CAN IDs globally.
================================================================================
Version 2.1.22 - 30 April 2021
================================================================================
#4270: (DD-212) Added CAN transmit tab to CAN setup section.
CAN transmit channels can be individually enabled.
Added scaling & unit conversion feature for CAN transmit feature via
hidden proxy channels.
#3196: (DD-217) Add iGPS CAN output for displays that have internal GPS.
Added button the CAN transmit page to add the appropriate messages which
may be individually enabled and edited.
#4661: (DD-285) Occasional error opening setup from file dialog due to
concurrent file hasher opening the setup file with exclusive access.
Tentative fix for crash report for access violation during setup unloading.
Windows API errors - if text could not be formatted then print the error code.
================================================================================
Version 2.1.21 - 23 April 2021
================================================================================
#4641: (282) Fixed issue with channel logging rates in logger setup leading to
incorrect logs. The logging table builder has changed and there is now
also better time-coherence between samples that are logged at the same
rate.
#4403: (DD-268) Alert users if there is a software update.
#4544: (DD-277) Fixed Motec M800 channels in simulator - added CAN stream
simulators for data set formats & compute value range for motec raw
sources.
#3483: (DD-247) Lap Time Input Preview Value is now interpreted in
(floating point) seconds. Also corrected formatter.
Added additional application logging.
Updated to Emerald 5.0.5 which gives different error if file in use cause of
open failure.
================================================================================
Version 2.1.20 - 09 April 2021
================================================================================
#4422: (DD-273) - Setup check false positive for alarm always active if its
source is another alarm with an input with a lower limit greater than zero.
#4390: (DD-272) - Fixed hang - setup check shouldn't set Reset Button Hold
as the reset source for the Reset Button Hold channel.
#4328: (DD-271) - Changing CAN signal names where an override unit is specified
should rename its source channel.
#4394: GDD: Configure system for licensing in installer.
#3014: GDD: Add Freeze Channel.
#4629: Increase maximum gauge font size to 999.
#3215: (DD-228) - Allow Specific Pages in Setup to be Hidden.
#4586: Fixed: Updating Math equation should update inputs list.
#4591: BB: new simulator version 15x09 and 15x10.
Added additional error information if opening of setup file fails.
Alarm always active setup check message missing word 'will'.
BB: Remove maths channels for now until finessed.
SMDU4: show brightness input page.
Fixed signing process for installer.
================================================================================
Version 2.1.19 - 16 March 2021
================================================================================
Added some additional application logging.
Flush log when event loop idles.
================================================================================
Version 2.1.18 - 13 March 2021
================================================================================
Updated to wxWidgets 3.1.4 from 3.0.4.
#4394: License dialog: always display machine key in case there was a problem
that could lead to activation failure.
#4546: Fixed addition of 'Open Screen' event to an alarm input on an individual
screen.
#4398: Events Tab: highlight screens + actions that have effects in some way.
#4533: (DD-276) Fixed floating point text input validator regression.
#3486: (DD-249) Fixed scroll bar mouse drag on grid based combo box popups.
#3018: Added "On Change" channel type.
Internal feature: CAN port simulator binding now supports pcan and kvaser.
================================================================================
Version 2.1.17 - 29 January 2021
================================================================================
#3016: Add "If" channel type.
#3011: Add "Case" channel type.
#3020: Add "Toggle" channel type.
#3017: Add "Integrator" channel type.
#3019: Enhancements to timer event configuration to reflect additional
flexibility in GEMS displays.
Fixed layout of "Math" channel type selection button in branded build.
Adjust layout of timer channel editor slightly (added a small gap before the
timer type selector).
Restrict available key actions based upon display type (most displays do not have 'long hold').
#4510: Fixed: Event Tab: assignment of alarms to allocated keypad IDs.
#4272: (263) Not require inputting "0" before decimal values <1.
#3945: (261) Do not delete channels when pressing backspace key on simulator page.
#4509: Developer feature: export setup binary.
#4498: "Create LED Config" should not show up in undo history.
================================================================================
Version 2.1.16 - 20 January 2021
================================================================================
Milestone GDD-S3
#3007: Added Bitmask channels.
#2999: Added Bit Gauge.
#3009: Added Differential channels.
#3003: Hide items on CAN tab depending upon application level support.
#2187: GDD: Upgrade DDv1 setups on first opening a save as DDv2. File now
stores a compatibility version.
#2926: GDD: Setups append the .gdd file extension to differentiate DDv2
setups from DDv1.
#2668: GDD: Convert strings to UTF-8 in emerald setup files where appropriate.
#2730: (DD-94) Implement gradient fill feature for Shape Gauge.
#2869: Can now cycle through gauges in the screen editor with the keyboard
with Alt-left/Alt-right. Additionally the Enter key focuses the
properties grid, with ESC moving focus back to the screen editor.
#2870: Fixed issue with tab traversal stopping at colour picker controls on
properties form.
Channels tab: prevent position of sensor type selection moving when changing
sensor type.
GDD: Option to hide default pages in screens selector.
Fixed: use "ETA_SSR" instead of "ETA SSR" as per DDv1.
#4342: [Shift Lights Setup].
Fixed some property attributes (stored/editable/default).
#3000: Added support for short version label format strings.
Added support for boot version format strings.
Added support for setup version format strings.
GDD: Added gems licence management.
GDD: Rework of setup file extension handling. File filter lists are modified
depending upon installed licenses.
#4338: Serial locked license check.
#4340: Removed display type dropdown from toolbar. The attached display
is now indicated in the status bar. If the hardware does not support logging
then it will display a warning on the logging tab.
Implicity resolves #3203 (DD-223).
#3006: Added reset triggering mode for min/max/avg filters.
#4314: SDU2 support.
#3200: (DD-220) - increased simulator input channel frequency to 10Hz to fix
problem with limit flash rate on Bar tachometer gauge.
#2993: Added 'Square Mode' for H/V bar gauges.
#2986: Made grid column header clearer with a thick dividing line between the
header and the grid.
(DD-269): Enable maths channels in branded build.
#3201: (DD-221) - More accurately render cross-hair gauge in editor.
#3207: (DD-226) File dialog: Fixed drag/drop over empty row would remove file.
#3015: Added ETA channel type.
#3140: Animated GIF gauge for 4th Gen displays.
#3338: (DD-239) - Format string of "0." would result in application crash due to
division by zero.
#2554: Alarm / Warning Text pages: hide editor if no channel selected + added
text in grid background if list is empty.
#3008: Added ECU Text channel type.
#2952: Persist zoom state & snap state in screen editor. For manual zoom,
scaling is stored individually depending upon screen dimensions.
Auto-scale zoom setting now makes the view slightly smaller than the available
area to improve appearance.
#2847: CD4X: support colour map option for Direct colour drive secondary input
on text style gauges.
#4361: Load setup: Avoid setting a null setup if loading fails to avoid
leaving application in a dangerous state.
#3023: Add Setup for CAN Page select and CAN button source.
#4396: Events Tab: Add 'output' actions.
#4397: Events Tab: Effects model for selected action.
#4399: Events Tab: Dialog to add new effects to an action.
#4400: Events Tab: Remove effect items.
#4487: Events Tab: take into account item priority.
#4488: Events Tab: Up/Down buttons.
================================================================================
Version 2.1.15 - 30 September 2020
================================================================================
#4181, #4203: Fixed application of protected mode DBC setup to logger setup.
#3776: Fixed deletion of Warning messages from the middle of the list.
#3775: Fixed error running simulator / exporting setup with many warning
messages.
#4245: When removing a CAN channel the underlying source is also removed to
avoid having a hidden CAN source that causes various problems later on.
#3388: Setup check does not remove dangling source references in some cases now
to facilitate re-association. Instead it issues warnings that such issues
have been detected.
Fixed memory leak.
Tentative fix for crash report when saving setup - possibly due to windows
shell folder enumeration request succeeding but returning a null enumerator.
================================================================================
Version 2.1.14 - 23 April 2020
================================================================================
#3798: (258) Fixed MoTeC M800 dataset CAN IDs - IDs were being stored
incorrectly in setup files. Existing setups that were created with DDv2
will require having their CAN ID reset (0x5F0 for set 1 and 0x0E8 for set 3).
#3736: (254) Logged channels referencing the sensor library would not display
correctly in data analysis software.
#3811: (259) Made reset button for min/max/avg channel filters configurable.
Also added setup check to ensure that a reset button is set for some types
of display (otherwise warn that one has not been set).
#3882: (260) Fixed simulator when using protected CAN setups.
#3627: Fixed issue with hot-tracking on config page strip/sidebar.
#3628: Fixed highlight state not getting cleared on dark mode combobox in some
cases.
Increased speed of sidebar flyout animation.
Fixed a currenly benign build configuration issue, which could have lead to
future build problems (translation system).
Do not issue display type units mismatch setup check warning for channels that
do not have display units (e.g. performance timers).
Added simulator firmware version selector.
Fixed strange behaviour of dial editors for GPSi channels (e.g. speed) where
trying to set a negative value would set the value to maximum.
================================================================================
Version 2.1.13 - 11 February 2020
================================================================================
#3386: Upgrade to VS2019 toolchain.
Updates to internal libraries, includes some theming tweaks.
#3594: Update to emerald 5.01.04. Fixes crash following undo of graphic
selector removal, seen in crash reports from 2.1.11.
Changed update transaction scoping to avoid incorrect setup check errors in
some cases.
#3565: (253) - Customer setup file opens in DD1, crashes in DD2 due to invalid
alarm/sensor configuration.
Performance timers should not show any units in channel selectors.
Vectorized gems logo.
Display 'non-dbc' CAN in CAN Receive tab - removed the distinction between
dbc/legacy can channels, internally.
Save setup: generate filter based upon display type in setup file.
GEMS DD: Added LDS4v3 simulator.
Don't depend upon case of dropped setup file extensions.
================================================================================
Version 2.1.12 - 26 October 2019
================================================================================
Fixed possible crash relating to cache database.
Updated to Emerald 5.01.03 - tentative fix for crash seen in crash report.
Updates to gems libraries - includes some visual enhancements to dark mode
(e.g. sub-menu disclosure icon).
Use alternative toolbar implementation to avoid white box when opening
application.
Use loading page to avoid white boxes when opening application.
================================================================================
Version 2.1.11 - 25 October 2019
================================================================================
#3464: (245) Fix DBC import when bitstring channels are overwritten leading
to invalid setup structure.
+ Improved error message if setup is corrupted in this way.
#3305: (232) Can ID editor - retain shared editor on CAN RX/TX grids so that
switching standard/extended works as expected.
SpinBox: don't focus individual buttons on tab key.
Grid editors: when tracking base selection, do not close editor if it can be
moved instead.
Grid editors: If open and the position is moved due to e.g. sorting, alter the
scroll position so that the editor remains in the same place on the screen
if possible.
================================================================================
Version 2.1.10 - 24 October 2019
================================================================================
#3464: (245) Fixed duplicate name resolution in DBC import which could cause
the application to crash.
#3202: (222) Added setup check warnings when delay == retrigger time on alarms.
#3305: (232) S/E switch on Can ID editor in grid should retain extended value.
Fixed setting ID with value 0 to extended mode.
If pasting ID values that are higher than the max standard ID value then
set the ID to extended format.
If pasting ID values with the extended bit set (0x20000000) then set the
ID to extended format.
Do not include button status channels in logging list (they can't be logged
by the display).
Setup Check: If any channels are not loggable but are configured for logging,
reset their logging rate.
Update gems lib.
Fixed some code analysis warnings.
================================================================================
Version 2.1.9 - 4 October 2019
================================================================================
#3410/#3411: Fixed crash loading setup with invalid multilexor setup
(multiplexor channel missing).
#2838: Automatically remove orphaned CAN sources.
Avoid debug assert if setup contains an invalid image file.
Do not add CAN1_1 or CAN2_1 sources to new setups that are never connected to
outputs.
Avoid modified state on new setup files.
Channel lists: if view is sorted, do not track unsorted selection when removing
items.
================================================================================
Version 2.1.8 - 4 October 2019
================================================================================
#3408: Fix applied for crash when building screen library.
#3409: Fixed: Display Setup can fail to load if there is a modifier channel
that precedes any of its associated channels.
#3410: (not fixed): abort if setup change notification depth gets too high to
result in more useful crash report.
================================================================================
Version 2.1.7 - 2 October 2019
================================================================================
#3387: Fixed conflict between simulator analogues and AEM buttons, prevents long
press etc from working.
Also button state channels will now update in simulator channel list when
buttons are pressed.
#3383: (240) Fixed regression wrt. dark theme toggle.
#3335: (237) - Add support for Toggle event to countdown timer.
Updated to boost 1.71.
================================================================================
Version 2.1.6 - 25 September 2019
================================================================================
#3214: Allow OBDII scan on displays running legacy bootloader.
#3372: DBC import: correctly apply multiplex data to imported channels.
Added setup check to detect & fix CAN channels with a broken multiplex setup.
================================================================================
Version 2.1.5 - 13 September 2019
================================================================================
#3298: (231) Update size hints of tags editor so that selected tags are not
hidden.
Tags picker - show all auto-complete options when input match is empty.
Fixed disabled state images on toolbar for icons that have a mask instead of
an alpha channel (they would otherwise appear to be a grey square). Would
only occur on some systems.
#3313: Fixed missing Initial Value for countdown timer (regression since
Performance timer implementation).
#3314: Performance Timer option should not be enabled for predefined timers.
#3317: (235) Fixed branded splash screen text.
#3319: (233) Optionally display text for config page sidebar (with flyout).
#3316: (234) Adjust dark theme for Emtron.
#2711: AEM DD: usage statistics upload to server + opt-out (preview).
Default to dark theme.
================================================================================
Version 2.1.4 - 26 August 2019
================================================================================
#3162: (215) - Fixed invalid application of output units to performance timer
outputs.
No longer displaying timer channels on the Channels tab.
#3164: (216) - Honour minimum height of property form editors. Fixes
un-editable alarm page triggers box.
#2888: Added test to confirm that setup update events are not generated if
logging throughput is re-calculated but there were no changes to the
logging setup.
#2950: Setup check warnings/errors/info are now shown in a status bar area
instead of popping up the setup check window. Double clicking this area
will then show the setup checker frame.
Implemented auto-reset mode for most setup check items so that
once the warning/error has been resolved, the item will automatically
disappear.
#2787: MoTeC M800: Default ID to 0x5F0 for Set 1 and 0x0E8 for Set 3.
Hide MoTeC ID field if a data set is not in use.
Fixed update of MoTeC data set UI etc following undo/redo (and possibly some
other items).
#2787: Default Address Mask value to 0x1FFFF800 when masking is enabled.
#2787: Grey out the CAN Layout Multiplexor dropdown if the message displayed
is not a multiplexed message.
ComboBox/Dark Theme: use gray text when disabled.
CAN ID Editor: Standard/Extended state is now identified by S / E label instead
pf difficult to see highlight.
CAN ID Editor: Follow light/dark theme for extended toggle.
CAN ID Editor: Retain extended value so when toggling it will restore
extended bits unless otherwise changed.
CAN ID Editor: Moved extended toggle to right hand side so that ID text does
not move when used as a grid editor.
#2787: Grey out the Transmit Delay [ms] input box if there are no CAN requests
triggered on startup conditions.
Fixed undo transaction scoping of CAN request item value changes.
Added setup check warning for value gauges that have a timer input but do not
have a time format string.
CAN RX/TX setup grids: Retain scroll position following value change.
CAN RX/TX setup grids: Improved performance of model updates in come cases.
#3142: (214) DD1 Function table not being seen in DD2 for CAN channels
(stop-gap solution).
#3202: Setup check warning if alarm cannot trigger due to having a retrigger
time that is less than the delay before trigger value (unless zero).
#3214: Avoid GET_LOGGER_INFO command on displays that do not support it.
If OBDII scan is not possible then suggest that it is possible to upgrade
the bootloader by sending the display to the vendor.
Fixed possible crash when drag-adjusting property values.
#3198: (218) Fixed Warning Bar preview when a gradient is selected.
#3100: Remove alpha channel from bitmaps so they will look more like they will
on the display / in the simulator.
#2916: Autocomplete in GaugeFontSelector control.
Modified font grid renderer to display face name in both a consistent font and
in the font face for the given item.
Double click font in font selection dialog now accepts the dialog.
#2649: Simulator: option to only show 'used' channels in the channel list.
Display busy cursor when loading/setup files.
Changing units of a channel that is an alarm input will now update the alarm
limits instead of potentially leaving the alarm input incorrectly connected.
Alarm units are now tracked so changes in units will automatically adjust the
limit.
Setup check will now raise warnings if alarm conditions cannot be met or
will always be active (where possible).
Simulator channel list will no longer jump scroll position when changing
filtering settings.
Fixed tooltips on themed spinboxes.
#2812: Fixed tooltips on some controls.
#2812: Tooltips for filter types in filter selection dialog.
Changed Value Limit and Rate Limit filter types => Value Reject and Rate Reject
to make it clearer what they do from looking at the name alone
(Changes also applied to help ID database).
#2812: Added tooltips for grid header columns.
external lib: Fixed regression in file listing routine.
Fixed data folder name for Emtron build => DisplayEditor.
Emtron build: Fixed drag/drop of ed5cf files.
#3265: Fixed issue with grid editor size (header column sizing) in final column
of grids when there is a scrollbar. Could cause clipping of the editor.
Regression since v2.1.0 fix for scrollbar flicker when grid height
marginally bigger then the window height.
#3272 (230) Fixed stack overflow when loading some DBC files due to undo
transaction post processing.
Optimized insertion of channels into channel model.
Optimized updates to channel models following state changes in setup.
Optimized lookup of channels from their underlying setup nodes.
Optimized DBC + OBDII import (faster duplicates checking).
Optimization: Avoid notifications following undo transactions that did not
make any setup changes.
Added unit test for import of large DBC file.
Changed target windows version in build defines to avoid build warning.
Support drag/drop of *.dbc, *.aemcan, *.obdiiscan.
#3253: Add support for CAN multiplex indexes greater than 15.
Changed UI for CAN Multiplex selection in signals grid.
Can Frame view multiplex drop-down is now restricted to only show possible
index values.
#2902: (168) Add 'Export Graphic(s)...' button to allow export of selected image(s).
================================================================================
Version 2.1.3 - 08 August 2019
================================================================================
#3181: Emtron rebrand.
#2647: (64) Fixed filtering in screen library if either 'hide duplicates' or
'hide full setups' are not enabled.
Fixed All/Any selector for tags filter which should be mutually exclusive.
#2901: (167) Fixed regression regarding Odometer channel setup for new setup
files due to missing sensor.
Use invisible undo scope for logger setup validation (avoids getting an item in
the undo history for new setups).
Fixed AemPageButton ID value.
Don't add 'resource not found' warnings to log for 'missing' dark icon overrides.
Fixed undo scoping issue when adding a rescaled bitmap to an image gauge.
================================================================================
Version 2.1.2 - 20 June 2019
================================================================================
#2722: (80) New file type (*.cdscreen) that contains a single screen for sharing
purposes & library import.
Option to hide full setup files in screen import list.
Default to recursive mode (loses old preference value).
#3115: (206) Added Performance Timer type to display firmware.
Enables timers for distance and value ranges (e.g. 0-60mph).
Added quick setup 'wizards' for configuring such types of timer.
#2719,#2646,#2901:
Predefined ODOMETER channel needs to follow global units selection.
Added Unit preference for distance.
Allow Display Units to be configured on predefined channels e.g. Odometer).
Reworked channel update strategy to update when implicit units change.
Channel dependency graph improves update performance.
Added Input Units option.
Added 'Match Output' units mode.
Some channels now have implicit input/output units - the units track the
primary source if the channel is a unit scalar or is a sensor type that
does not change scaling.
Automatic upgrade of setup to use unit aware Odometer + Distance Trip.
Added Speed Input predefined channel to use as common input to channels
requiring a speed input.
Added configuration of Speed Input channel to "Speed / Odometer" setup page.
Default Lap Timing speed input to 'Speed Input' if not already configure.
Speed Input defaults to GPSi_Speed.
#2991: Reduced CPU usage when gauge selected (drawing of Marching Ants no
longer blits entire view).
#3112: (203) - Configurable Count Down timers now available for value gauges.
Note: countdown timers created with v2.1.1 are not fixed up so will remain
invisible unless the type is changed.
#3113: (204) Removed countdown timer setup page now that it can be configured
under the timers tab.
#3119,#3128: (210) Alarm limit values not displayed correctly on timers tab.
#3117: (208) Timers: When changing timer type, remove any inapplicable events.
#3118: (209) Changed icon used for Static Text (label) Gauge.
#3116: (207) Allow built-in keypad buttons to be used as Timer triggers.
#2524: (75) Option to hide visually identical pages in screen library view.
#2647: (64) Added predefined tags & globally defined user tags files
(see tags.xml in ProgramData/User AppData).
Changed the tags editor in the properties form from a list to a set of
tags that can be individually removed.
Fixed issue where empty tags could get added and lock up the application.
#2813: (137) Don't reset preview value on some gauges (e.g. Needle) when
updating from the setup model.
#2243: (74) Added gauge preview values to H/V S/T Bars.
#3111: Fixed rendering of square bar gauges where separators drew over the
border unlike the actual display.
#3105: (199) Enable shift light limits to be entered individually.
#2959: (181) Streamline filter selection.
#2896: (165) Added button to copy input units from primary source.
If input units are set and there are no output units set then
the output units now implicitly match the input units.
#2557: Added ability to click-place gauges.
#UT: Fixed erroneous thumbnail generation in screen library due to bug in
wxWidgets handling of alpha channels.
#UT: Added disk cache version number and invalidate entire cache if not
compatible (screen library). This will clear the cache generated with
DDv2 versions before 2.1.2.
#UT: Changed icon for Shape Gauge.
#3106: (200) Adjust min size of property form editors to avoid sidebar
changing width when properties change.
#UT: Reduced overly wide layout of setup tab pages.
#UT: Channels: Fixed enable state of Primary Input selector (it was enabled for
predefined channels in some cases).
#UT: Extend input range of function table graph so that the effect of
out of range input values is clearly visible.
#UT: Calculate function added to linear scalar setup page to calculate scalar
from 2 I/O values.
#UT: Linear scalar chart range now works when no primary input selected.
#UT: Chart view: Display [X,Y] values in status bar for mouse X position.
#UT: Channel picker - only hide units if text editor subcontrol has focus.
#UT: Avoid creation of no-op undo commands during log throughput calc.
#UT: Hidden modifier channels: Do not wrap with UnifiedChannel - they are
conceptually part of another channel.
#UT: Dark mode: Fixed text colour in filter config dialog when displaying
'No properties'.
#UT: Optimization: Cached fetch of unified channel display units.
#UT: Optimization: Cached lookup of channel sensor references.
#UT: Moved Brightness setup next to Night Mode.
#UT: AEM: hide increase/decrease trigger options for countdown timers.
#UT: Fixed issue with icon for 'all screens' tab.
#UT: Added Miles/Second speed unit.
#UT: Position locked layout warning at top left of screen editor view where
the gauge palette would normally be as this is a more obvious location.
This is now also no longer a floating frame so changing layout lock
does not affect the layout of the screen editor view.
The lock icon remains when unlocked and can be used to re-lock the layout.
Removed layout lock from the toolbar as it is now surplus to requirements.
#UT: Fixed channel selectors that allow both sources AND outputs (e.g.
monitor setup).
#UT: Increased buffer size for simulator file transfers to improve startup time.
#UT: Added 'None' option to unit selector dialog to clear the units selection.
In some cases this allows units inheritance.
Changed 'None' units name to 'Unitless'.
#UT: Display warning triangle for display units if 'Match Preferences' mode is
selected but auto units application is not selected in unit preferences.
#UT: Optimization applied to updates of sorted models.
#UT: All Screens View: Added clear/duplicate/import screen menu items.
#UT: All Screens View: Update tags when setup changes.
#UT: All Screens View: Do not draw overlays on gauges (e.g. selected needle
gauge) for preview.
#UT: Tags Selector: changed All/Any selector to new selector strip control
(looks better in dark mode).
#UT: Changed allowed character in tag names (removed space)
#UT: Screen import - do not copy in graphic items if an item with the same
original path already exists in the setup.
#UT: Screen Import - copy gauge input filter chains.
#UT: Screen Library dialog - use arrow-wait cursor instead of wait cursor
when background tasks busy.
#UT: Channels tab could show the linear sensor editor when no channel was
initially selected - this should now be hidden.
#UT: Adjusted copy/paste/cut/undo/redo icons.
#UT: Increased scroll rate on screen editor / simulator / graphic views.
#UT: Added Ctrl-Wheel behaviour to zoom screen editor view.
#UT: Improve spin box appearance in dark mode.
================================================================================
Version 2.1.1 - 29 May 2019
================================================================================
#2942: Performance Timer Channels
#2879: Add support for Mode22 ODBII PIDs, added parsing of attributes to sdbapi.
Sharpened up a few icons at 16x16 resolution.
#UT: Streamlining: Auto add a blank entry to new alarms and warning messages.
#UT: Fixed window flag for paged controls which could result in application hang
in Windows code when a modal dialog is displayed during window deactivation.
#UT: Use modelsss dialog for channel picker popup.
#UT: Added ability to create new alarms/warning messages from channel selection
dialog when target must be an alarm (e.g. performance timers).
#3109: (201) Show contents of desktop folder in file browser.
#2556: Change the default gauge colours.
#UT: Fixed missing undo scope selecting needle gauge background.
================================================================================
Version 2.1.0 - 22 May 2019
================================================================================
Dark Theme.
New UI layout design.
Redesigned some action icons.
Fixed undo scoping when setting CAN address mask.
Fixed possible crash ungrouping gauges.
Show name in tooltips on gauge stucture tree.
Fix layout of controls in bottom right of screen editor view (vertical stretch).
Fixed mousewheel in file addressbar dropdown items.
Fixed scrollbar visibility issue for grids in some cases.
File browser is now using a new implementation for the file list/tree so that
the dark theme could be applied - possible behavioural changes.
Improved layout of about box.
Added button to about box to browse OSS licenses.
#2562: Removed close button from layout locked window.
Got rid of status bar flicker.
================================================================================
Version 2.0.35 - 17 May 2019
================================================================================
Store OBDII scans in /OBDII
Do not persist last OBDII import folder; always default to /OBDII.
#3102: (197) Change AEM icon.
#3103: (198) Items from sensor library dont seem to work in the simulator.
#UT: Display channel units in alarm/warning setup.
#3094: (195) Fix alarms with malformed input references.
#3094: (195) Fixed alarm condition removal algorithm. Added unit test.
#3101: (196) Increased resolution of min/max values on crosshair gauge.
================================================================================
Version 2.0.34 - 09 May 2019
================================================================================
#3092: Fixed alarm page & on change page triggering.
#3072: Now handling negative center offset values on Needle Gauge correctly when
calculating/drawing bounds.
#2670: Add mouse handler for property labels to enable dragging of values
up/down. Makes adjusting values less cumbersome (esp. preview values).
#UT: Ensure event manager is created when opening setups (otherwise display can
fail).
#UT: Possible corruption when saving setup files has been reported. The save
operation will now save to a temporary file and verify the file before
overwriting existing files.
#UT: Fixed error in lap timing setup which would always result in 'automatic
fixes applied' to appear in undo history and set the file to the modified
state.
#UT: Reduce changes to setup when updating logging runtime.
#UT: Modified event processing deadline for simulator to avoid response lag.
================================================================================
Version 2.0.33 - 08 May 2019
================================================================================
#2941: (177) Added configuration of Count Down Timer to setup page.
#2906: (170) Added Loop Logging option.
#2915: (174) Display units in simulator channels list.
#2948: Default to ascending sort mode in channel selection dialog.
#2727: Option to sort sensor library list, defaults to ascending order.
#UT: Fixed missing header text on channels tab channel list.
================================================================================
Version 2.0.32 - 08 May 2019
================================================================================
#2796: Colour Picker: Single-clicking a swatch now selects colour in the list.
#2932: Improve error message if connection to data analysis telemetry fails.
GDA 4.01.89+ in admin mode will now allow connections from non-elevated
processes.
#2642: Simulator: Use momentary button for beacon input.
#2803: Firmware Upload: Filter file selector on *.bin.
#2645: Screen import confirmation: fixed handling of user choice.
#2780: (119) Screen Editor: Added Cut/Copy/Paste/Delete to context menu.
#2960: (182) Add filter channels to the monitor page. These will be hidden from
the monitor setup UI.
#2895: Value display off the screen area crashes the simulator.
#3073: (191) Lap timing setup: Default to GPSi channels.
#3071: (189) Tentative fix for buttons hidden on CAN tab.
#2884: (160) Simulator: Fixed setting A2D channels that are actually GPIO pins.
#3072: (190) Fixed bounds calculation for needle gauge to avoid setup check
error. Needle gauge now draws the bounds when selected and the path/limits
of the pointer.
#2643: (61) Paste of gauge when a group is selected now inserts after the group
instead of inside it.
#2914: (173) Value gauges now base their display value in the editor on their
format text unless a preview value is given.
#UT: Updated AEM codriver setup validation as it was based upon old
version of DDv1 and was not triggering timer start/reset from long
press/hold events.
#UT: Updated simulator shell image.
#UT: Fixed column sizes in alarms list.
================================================================================
Version 2.0.31 - 25 April 2019
================================================================================
#2985: Reorder channel types and names + default to Function type.
#3005: Corrected input timeout fallback filter - both parameters were called
fallback whereas one should be called timeout value.
#3069: Fixed crash setting lat/lon channels in lap timing setup in some cases.
Fixed more general issue relating to #3069 regarding filtered channel lists
which could result in setup validation errors and incorrect automatic
adjustments to the setup.
#3070: Fixed bug when normalizing alarm page trigger input reference indices -
which was leading to an unwarranted setup check error.
Setup export: fixed issue where incorrect bitmap selector image could be
displayed for selectors that do not have an input assigned.
Setup check: Added checking that graphic selectors are assigned an input.
Updated sensor library.
#3048: Allow program to run if unsupported help ids are specified.
Do not fail setup upload if get logger info request fails due to old bootloader.
================================================================================
Version 2.0.30 - 03/04/2019
================================================================================
#UT : Correctly demangle Simulator protected CAN IDs - previously extended
protected IDs did not work in the simulator.
================================================================================
Version 2.0.29 - 01/04/2019
================================================================================
#UT : Run simulator plugin with highest version number.
================================================================================
Version 2.0.28 - 01/04/2019
================================================================================
#UT : Prevented Long variable string types from being exported to raw file.
This maintains backwards compatibility with older firmware.
#2969: Fixed bug in simulator where protected CAN IDs were incorrectly mangled
which prevented setups imported from aemcan files from working in the
simulator.
================================================================================
Version 2.0.27 - 20/03/2019
================================================================================
#2779: Paste Gauge: Offset pasted position if it looks like it is a duplicate.
#2822: (141) Change default names of z-order operations.
Added icons for z-order operations.
Setup Check: Fixed formatting of invalid math channel inputs error.
Setup Check: Check Alarm Page Trigger & fix problems to avoid Display/Sim crash.
Alarm Page Trigger: Could not set any items if no items already checked.
Fixed crash relating to cleanup of alarm trigger model.
Fixed undo/redo of alarm trigger model - if undo removed all items then
redo would not update the trigger list.
================================================================================
Version 2.0.26 - 13/03/2019
================================================================================
Rework of UI to move gauge palette underneath gauge structure tree. The
screen preview tab has now been removed and the screen picker now displays
an overlay panel for the purposes of selecting the screen to edit. Also
accessible via ctrl-tab. The mouse wheel works on the button also.
#2933: (176) Disable bold/italic buttons in font selector if int {Multiple} mode
to avoid setting invalid fonts on gauges and resulting in failure.
Internal: SCM Index debug symbols + add to symbol store.
Changed save/discard dialog to a task dialog.
Fixed issue with scrollbar not showing on property form in some cases.
Fixed some issues setting up channel/gauge filters resulting in loss of items
from the filter list.
Support input filters on all gauges.
Changed input filter property to pop-up a dialog in order to take up less
property form real-estate.
Moved refresh button on setup check view.
Click-outside of autohide popup window will now immediately dismiss it -
setup check view in auto-hide mode would otherwise get in the way of the UI.
================================================================================
Version 2.0.25 - 08/03/2019
================================================================================
#2173: Screens Tab: Add data filters at point of use in the gauge.
Implemented filter chain optimizer to share identical filter chains when
exporting the setup for the display.
#2908: Channels Tab: Fixed update of sensor view when changing selection if
sensor type did not change.
Fixed missing undo scopes when modifying channel linear scaling options.
Fixed issue where setup checker would remove sensor template if channel
switched to a library sensor.
#2860: Setup Validator: Validate that Needle gauge can't result in out of
bounds rendering.
#1022: Add support for bold + italic fonts.
#2913: Added setup check algorithm to fix button events on screens.
#1035: Include more detailed error messages for invalid format strings. Added
checking of format strings to setup checker.
#2918: Right click on screen view should focus it to ensure the correct menu
items are enabled.
#2919: Fixed Paste Sensor feature.
#2912: Releaser: deal with multiple architectures better (x86+x64).
================================================================================
Version 2.0.24 - 04/03/2019
================================================================================
#2903: (169) Display base units for CAN channels in CAN Receive grid. Renamed
column to "Base Units" to make the intent clearer.
#2898: Fixed (166) Predefined GPS channels are not available for selection on
the GPS Setup tab.
#2907: Fixed crash loading some setup files that contain invalid references.
Modified help file path.
Use a docked window for the setup checker.
Load/save workspace config (now also remembers undo history docking config).
================================================================================
Version 2.0.23 - 22/02/2019
================================================================================
#2716: For all gauge properties sidebars, moved input channel/preview below
the gauge name.
#2671: Make it clearer if inputs to gauges are not hooked up.
#2889: Improved cleanup of invalid references. Affects lap timing setup,
on change triggers, alarms.
Invalid alarms result in errors being reported by the setup checker.
#2882: Enable lap timing mode when loading setup.
#2880: Validate text gauge alarm colour - insert if missing.
#2871: Tentative fix for unresponsive UI in upload setup dialog.
#2874: Fixed handling of alarm leds which could have resulted in them not
functioning on the display. Added unit tests.
#2868: Graphic Selector setup: fixed count adjustment which would add 2 items.
#2872: Fixed crash setting colour map property.
#2883: Fixed crash entering duplicate name in CAN grid.
#2890: Fixed max font size in font picker.
#2881: Setup check - remove unused font tables. These are always re-generated
when uploading to the display and do not need to be saved to disk.
#2214: Setup validation - largely complete, retargeted to 2.0.x.
#2723: Change order of gauges in gauge picker grid.
Fixed selection tracking when toggling predefined channels in channels tab.
Setup Check: remove unreferenced auto-defined sensors.
If removing Left/Right LED alarm, also remove its associated sensor.
Added option to associate *.aemcd7 files in the installer.
Enabled extended selection in CAN grids.
Added more stringent checks on undo scope use.
Fixed crash if item selected in logging list and a new setup is loaded.
Fixed crash in bitstring editor if redo causes item deletion whilst grid
editor has focus.
Fixed a number of issues in bitstring editor when tabbing through the grid to
edit/add items (editor would be destroyed).
Rewrite of bitstring data model.
Fixed incorrect event type for idle/updateui events.
Use default warning colour when setting Alarm colour mode on text gauges.
Only show colour mode properties that are applicable to the selected mode.
Validate warning colour for value gauges in limit mode.
Indicate if automatic fixes were applied in the undo history.
Categorise Auto_Shift_Light_* channels as predefined.
If input is removed from a gauge, do not rename it - it is handy to be able
to see what used to be hooked up to the gauge.
Improve defaults for filter parameters.
Update text of filter picker if changed.
Added refresh button to setup checker.
================================================================================
Version 2.0.22 - 20/02/2019
================================================================================
#2236: Filter selector.
#2237: Add data filters to outputs.
#2875: Remove Legacy DD1 Graphic Selectors from main channels list.
#2873: Remove alarm page trigger mux when it is empty to avoid problems.
Setup Checker: If empty event mux channels are detected at startup, remove
them and post a warning.
Refactored code dealing with event triggers (Alarm Page Trigger + On Change Page
Trigger).
Show tooltips in undo history view where text is often too long to fit.
Fixed bug in unique name generator + added additional unit test case.
================================================================================
Version 2.0.21 - 19/02/2019
================================================================================
#2724: Changed icons for bar gauges and needle.
#2849: Add unit preferences button to toolbar & menu.
#2861: CAN tab - changing channel units should change the base units instead
of setting an override.
#2848: Unit preferences: make global override optional. Existing setups
default to OFF, new setups default to ON.
#1063: Added check/fix when opening setup to prevent circular references in
outputs and dangling input references.
#2214: Setup Validation - main UI for listing errors with double-click
/ return key to goto location.
#2845: Prevent removal of predefined channels with error message if attempted.
#2807: Implmented "Download From Display" feature.
#2809: Enable text-based channel calibration for CAN channels (+ copy & paste).
#2789: If internal left/right LED alarms are blank, remove them to avoid the
physical LEDs on the display being forced to ON.
#2854: Fixed units name for volume:cm3/min.
#2831: The properties in the Needle item lacks boundary checking.
In general changed the way some integer based properties are dealt with to
also limit to the maximum range of the underlying storage. This
means that such properties now display as a spin box.
Draw needle gauge centre.
Only create one instance of the shift light setup manager - avoids the
possibility of its validation step appearing in undo history.
If loading an old setup that defines special LED alarm names then rename the
extant outputs rather than modifying them.
Prevent user setting invalid channel names - either because they are predefined,
empty or would result in a duplicate. Displays an error in such cases and
reverts the change.
Added back missing 'Limit' option for value gauge colour mode.
When preparing setup for the display, delete maths outputs with dangling sources
which are capable of crashing the display firmware.
Refactoring of setup preparation process.
Added help id: AppMainFrame/displayTypeSelector.
Reduce flicker when switching between channels on channels page.
Fixed 'advanced' mode for text channel editor (check box would be immediately
cleared when trying to set it).
Update unit preferences editor upon undo/redo.
Added option to select SI/US presets to unit preferences dialog.
Removed general preferences menu item for time being as there is nothing
to configure yet.
Changed unit preferences icon.
Removed extraneous separator from Configure menu.
Added confirmation dialog when enabling auto-units.
Improve colour consistency of gauge icons.
================================================================================
Version 2.0.20 - 13 February 2019
================================================================================
#2821: Fixed bug when copy/pasting groups which could lead to it looking like
screen import was broken.
#2842: Fixed strange characters appearing in Gauge tree. Also fixes a similar
issue in CAN DBC import. A related class of errors also found + fixed.
#2804: Closed: Removed 'Direct' option from text gauge colour mode as this
is only supported on CD4X cores.
#2846: Fixed broken grouped gauge inputs wheen running on display.
Fixed crash dealing with input modifier chain when no input is selected.
SetupChannel: fixed some possible issues in paste sensor function
(prevent merging, avoid modifying caller value).
Fixed bug when adding some types of channel with unicode names.
Resolved a number of issues with implicit string codepage conversions, will also
fix some as-yet unseen issues with filepaths.
Refactored code dealing with format strings.
================================================================================
Version 2.0.19 - 12 February 2019
================================================================================
#2725: Help IDs: Support
and ignore other formatting.
#2802: Simulator: handle GPIO pullups.
#2820: Only offer 'output' channels in input selectors.
#2733: Fixed size properties for limiter & round tacho gauges.
#2729: Fixed validation of bar tacho segment size + default label frequency.
#2786: Remove graphic selectors & warning text items from the Channels list.
#2734: Fixed typo in default splash screen text.
#2830: Install & pick up OBDII definitions in ProgramData instead of %AppData%.
#2810: Shift light legend column could have zero width.
#2832: Invisible Global Unit Preference Descriptions column.
#2804: Changed name of 'Direct' property in Warning gauge.
#2801: Channels tab: Exclude selected channel from primary input selector.
#2806: Fixed crash editing a graphics selector name.
#2811: Fixed issue assigning channels to Graph gauge lines.
#2715: Added editing of CAN channel display units from channels tab.
#2804: Colour Map setting on alarm bar (Warning Gauge). TODO: apply to other
applicable gauges.
Channel base units are now displayed below the display units where applicable
and have been removed from individual sensor editing forms.
Changed priority of unified channel collapsing to favour units override channel
over sensor output channel.
Display units in channel selectors & elide when editing text.
Prevent Ctrl-A accelerator key from overriding default text edit select all.
Fixed some issues relating to undo & Graph gauge state.
Apply minimum column size to grids and prevent dragging of grid headers
from setting column widths to zero.
Refactoring & simplification of Channel classification & filtering mechanisms.
Only show outputs in Channel:Primary Input.
Added internal flag to identify 'ordinary' channels.
Implemented much faster algorithm for generating unique names that only does a
single pass over the setup.
Modified filtering rules for outputs and sources.
Improved debug visualization of channel flags.
Title bar colour for undo history window.
Fixed button icons/appearance on undo history window.
Handle DPI in title bar of undo history window better.
Fixed crash when drag-docking undo history window.
New docking HUD icons / layout that works better on high DPI screens.
Do not include background property for value gauges.
Changed column resize mode for warning text setup grid.
Check for circular references when setting the primary source on a channel
to avoid later stack overflow.
Show tooltips on property form checkboxes and editors that do not already have
a tooltip.
================================================================================
Version 2.0.18 - 07 February 2019
================================================================================
#2726,#2736,#2737,#2738,#2752: Mitigate resizing bug as a result of KB2664641.
#2788: Removed duplicate 'Signed' checkbox from non-linear channel scaling setup.
#2728: Width property for Warning gauge.
#2733: Changes to width/height gauge properties were not being applied.
#2735: Do not display hidden / event gauges.
#2731: Changing name of channel should propagate to gauge names where
applicable.
#2747: Validate position of graphic gauge when the image is changed to avoid it
being placed off-screen.
#2790: Allow alarm inputs to be selected for value gauges,
Allow Warning Text inputs to be selected for text gauges.
Added option for loading of JPEG images.
When opening images that are larger than the screen, offer resize.
Show busy cursor when generating preview in graphic resize dialog.
Changed column title for Warning Text Channel list.
Installer - fix start menu / desktop links.
================================================================================
Version 2.0.17 - 06 February 2019
================================================================================
#2800, #2732: Fixed delayed crash when modifying line count on graph gauge.
Splitter views: Fixed broken minimum panel size since v2.0.16.
Adjusted the way page container panels are sized - based upon client size
rather than window size due to possible alternate path through
UI framework deferred resize handling.
Page container: avoid initial internal page sizing until a resize event has
occurred on the parent container.
Changed column resizing mode on CAN grids and Logger grid.
#2703: Installer: Visual studio runtime issues:
Installer now limited to Win7 SP1.
quiet + norestart options applied to installs.
Improved checks for whether or not runtime should be installed.
Updated CRT installer version.
================================================================================
Version 2.0.16 - 02 February 2019
================================================================================
#2718: Screen Import: Confirm overwrite of screen if not empty / default.
Reduce compute cost of loading setup when purely for screen preview purposes.
Views with many screen previews could lock up the UI. Updates are now
throttled back in a way that reduces load on the UI.
Screen preview lists: track the originally selected items when the list is
asynchronously updated.
Modified the way splitter windows size their panes to avoid negative sizes.
Added additional debug instrumentation to splitter class.
Build: run autover to insert correct build date etc in application resources.
Fixed some possible issues identified through static analysis.
================================================================================
Version 2.0.15 - 01 February 2019
================================================================================
Fixed bug copying function tables to clipboard (all sites would have the same
value).
Fixed bug pasting function tables from clipboard (paste sensor) where
existing function table elements were not removed first.
Include help ID for "hexadecimal ids" checkbox.
Fix help IDs on the CanPortPanel.
Installer: fixed source path for user app data files.
Fixed crash during OBDII import.
Pipe wx log messages to application log file.
Fixed seemingly benign error regarding bitmap handle during splash frame
creation.
Fixed winapi warning in PropertyForm constructor.
Added verbose logging to investigate resize issue.
================================================================================
Version 2.0.14 - 16 January 2019
================================================================================
#1050: Bitmap thumbnails when selecting bitmaps via properties.
#2201: Graphics Tab - Graphics Library (completed merge function).
#2203: Graphics Tab - Graphic Selector Setup.
#2549: CAN message view - tool-tips when hovering over signal.
#2548: CAN message view - deal with overlapping labels.
#2186: Add Display type selector.
#2394: Improve consistency of property editor appearance - now using windows
edit border theme in some places which now also changes colour if focused.
Internal: Modified the way grids update column header sizes.
Added ability to vertically center text in single-line text edit controls.
Rework of the way channels are selected via channel picker and represented in
properties.
Fixed issue relating to undo of creating text-based channels or graphic selectors.
================================================================================
Version 2.0.13 - 20 December 2018
================================================================================
Handle unicode better when exporting to the display. Export will attempt to
use an existing codepage if possible otherwise it will create a custom
codepage for the font table. Emoji now supported ;)
Run help-ids through translator so any defaults get translated.
#2653: Translate strings in enum based property editors.
#2636: Reworked the way channels are selected for gauge inputs. It was possible
for source channels with the same name as outputs to be selected. This would
not run correctly in the display following setup export.
e.g. Battery Volts (Internal).
#2226: Simulator: Input stimulus: completed.
Implemented UBLOX GPS simulation (Enables GPSi channels to work in simulator).
Filter out channels that cannot be simulated/displayed.
Multiplexed CAN outputs now work in simulator.
Text lookup channels now working in simulator. There was an issue in the
editor which would add multiple types of bitmask and would prevent the
display functioning correctly.
Fixed issue regarding import of OBDII standard can IDs from pidscan file.
Implemented single frame OBDII outputs in simulator.
Rounding of can dbc + analogue simulator values.
#2296: Fixed preview colour of warning gauge in direct mode.
Store editor version in setup.
#2644: Screen Editor: Fixed arrow keys when snap enabled. Ctrl-arrows now also
moves gauges by single pixels even when snap enabled.
#2650: AEM: do not auto add some sms/codriver associated outputs normally
associated with other display types.
Display error message when property errors occur.
Bar 'fill from center' property no longer in 'preview' category.
Fixed incorrect scaling of gauge border drag when zoomed in on screen editor.
#2641: Made rendering of bar tacho more like actual display.
#2655: Added properties to bars/tachos for smooth edges / separator bars as
appropriate.
Implemented preview value for bar tacho gauge.
#2638: Fixed exception adding key events (could happen importing screens).
#2639: Open setup dialog now displays file notes.
Implemented get/set of notes on setup files.
Added screen preview to open setup dialog.
Separated settings for open/save setup dialogs.
#2196: Setup Tab - Lap timing setup.
#2198: Setup Tab - page select source.
#2199: Setup Tab - Night mode.
#2200: Setup Tab - Monitor page setup.
#2197: Setup Tab - Odometer setup.
#2651: Fixed typo 'Unroup' => 'Ungroup'.
#2640: Fixed backspace key in setup file browser dialog. Generally affects all
menus which may have had a name that could be translated to an accelerator.
#2648: Add ability to hide predefined channels on simulator.
Added hover images for start/stop buttons in simulator.
Fixed issue in word-based translator with unicode characters.
#2240: Program Clock feature.
Added Tools>Firmware Upload.
#2239: Scan Vehicle OBDII procedure.
#2547: Fixed tabbing through grids with checkbox cells.
#2678: Escape key should close grid editors.
#2637: Import Screen: default value form Tag Filter should be None
Modified tag filter setup to include 'enable' checkbox. Persistence of tag
filters now works correctly.
Changed the way tag filter item count is displayed to avoid horizontal
scrollbar in tag filter list.
Added alternative syntax for sensor library attribute values (will make
embedded html more pleasant to write by hand).
#2654: Sensor library: support basic html formatting.
#2478: Added Interpolated + Signed options to function tables + setup export.
#2201: Graphics tab - graphics library. (incomplete - merge function requires
choosing which image to merge).
================================================================================
Version 2.0.12 - 03 December 2018
================================================================================
Simulator: Send all valid CAN data after starting firmware and every 500ms.
(Changed values are sent ASAP).
Modified layout of simulator tab to work better on smaller screens.
Implemented zoom/auto fit.
================================================================================
Version 2.0.11 - 29 November 2018
================================================================================
Simulator fixed abort when changing pages on some setups.
Implemented non-linear (function table) forward/inverse for simulator channel
values.
Fixed FunctionTable::rawFromReal (inverse lookup).
Editing/display of text based channels in simulator channels list.
Avoid duplicate names for auto-generated channels (e.g. hidden raw value outputs).
Fixed some issues relating to Text based channels not being unified with their
auto-generated raw channel correctly.
Reworked the way unified channel cross references are stored in setup files
to prevent circular output references being generated in DDv1 setup export.
Fixed some issues relating to replacement of channel references in gauges when
changing output sensor types / overriding units.
Update all rows of simulator channel list upon receiving telemetry.
Display warning text in simulator channel values list.
Fixed simulator handling of standard CAN IDs.
Simulator button presses can now handle long-press. Note - very short button
presses MAY get missed by the display.
================================================================================
Version 2.0.10 - 28 November 2018
================================================================================
Fixed a number of possible crashes relating to channel references.
When adding channels to channel list, create it with a linear scalar by default
which allows the channel type to be changed.
When tracking selection on sorted grids, ensure the selection remains visible if
already visible.
Stop the simulator if the setup is modified.
Fixed: Manually added CAN channels should not be editable on the channels tab.
Connect to data analysis cursor / log playback. Requires version 4.1.73+.
================================================================================
Version 2.0.9 - 27 November 2018
================================================================================
#2225: Simulator Tab.
#2230: Simulator: Ignition Switch => Start/Stop buttons.
#2220: Simulator: display presentation.
#2215: Simulator: build / install / load / release simulator components.
#2221: Simulator: buttons.
#2219: Simulator: programming of setup direct to NAND.
#2224: Simulator: Outputs list [partial implementation]
#2232: Simulator outputs: Display calculated alarm state.
#2223: Simulator: Alarm/shift lights.
#2185: Logger Tab.
#2194: Setup Tab - Shift lights including Auto setup.
#2195: Setup Tab - Brightness control.
#2351: Code simplifications.
#2558: Fixed slow scroll speed on the screen preview list.
#2575: Round tacho size is incorrect after loading setup.
Upgraded to Visual Studio 2017
Upgraded to wxWidgets 3.0.4
Upgraded to boost 1.68
================================================================================
Version 2.0.8 - 26 October 2018
================================================================================
#2188: CAN Tab - CAN Receive channels.
#2190: CAN Tab - Request message tab.
#2181: Alarms Tab - Initial creation.
#2182: Alarms Tab - Alarm setup inc warning light selection.
#2183: Alarms Tab - Warning Message Setup.
#2316: Imported outputs from DBCs should store comments and use them for
tooltips.
#2523: All/Any option for tags filter in screen library.
#2041: Implemented config file handling for fonts that require cleartype.
#2508: Add additional screen validation items.
#1023: Implement snap to grid.
#1079: Add ability to set grid size for snap to grid.
UT: 64bit version of application.
UT: Fixed stale images appearing from prior loaded setup in screen preview list.
UT: Fixed issue with gauge position properties not updating when moved.
UT: Fixed issue drag-resize of top-left corner of gauges.
================================================================================
Version 2.0.7 - 12 September 2018
================================================================================
#2158: Screen Library (Import Screen).
#2486: Move over to Emerald v5.
#2170: Added splash screen duration property.
#2171: Screens Tab - Alarm page customisation in right hand side bar.
#2167: Duplicate Screen feature.
#UT: option for minimum decimal places in property editor.
#UT: Fixed update of screen page properties after undo/redo.
#UT: Default name for Alarm / On Change screens.
#2235: Channel List Selector.
#2172: Screens Tab - On Change Page Config in Side bar.
#UT: Added unit km/s.
#UT: Persist size/layout of setup file browser window.
Fixed undo/redo when consecutively inserting same value ID into two different
setup nodes during an undo scope.
Fixed issue with selection state update following undo/redo.
Fixed issue with selection state following group/ungroup and undo/redo.
Fixed crash with property form update following gauge deletion in some cases.
Fixed issue with center justified text gauges following undo of delete.
Fixed crash during stack unwinding if exception is thrown opening a setup.
Fixed issue with creation of units channel incorrectly setting up references
for the sensor channel, leading to multiple ':Sensor' extensions on names
appearing in the unified channel list.
Fixed crash if channel with a linear scalar editor is selected followed by
opening another setup and selecting a channel of the same style.
Fixed formatting issue of some messages in application log.
================================================================================
Version 2.0.6 - 20 July 2018
================================================================================
#UT: Fixed a couple of issues in the installer.
#UT: Display pixel position of mouse cursor in status bar.
#UT: Fixed issue with position of static text labels when justified.
#UT: Don't store width/height in setup for text gauges.
================================================================================
Version 2.0.5 - 20 July 2018
================================================================================
#2080: Channels Tab.
#2174: Channels Tab - Basic Properties.
#2175: Channels Tab - Channel type selector.
#2176: Channels Tab - Add Linear channel configuration.
#2177: Channels Tab - Add 2D lookup channel configuration.
#2179: Channels Tab - Channel Based Text setup.
#2178: Channels Tab - Add Sensor Library.
#2161: Overridden per channel units & hidden automatic scaling chain.
#2159: Unit preferences.
#2247: Added COM automation interface.
#2142: Automated Release: Integration tests as precondition to actual release.
Added some integration tests, including testing that setup file opens.
#2392: Gauge groups should be re-namable.
#2393: Fixed regression in colour properties.
#2376: Screens should be renamable.
#2377: Grouping a large number of gauges should avoid updating UI until complete.
#1011: Add cut and paste support for function tables in editor.
#2442: Optimized slow startup time due to new changes - much faster lookup
all references to a particular setup item, amongst other optimizations.
#UT: Add justify property to text gauge.
#UT: Display {None} for NULL item in channel picker popup. Added custom
sorting policy so the null item is always at the head of the list.
#UT: Fixed bug in handling of cached location path following undo/redo of
item insertion/deletion.
#UT: text value gauge should have justify instead of direction property.
#UT: justify property was not being loaded correctly for some gauges.
#UT: Improved feedback when dragging gauges.
#UT: Added copy/paste of sensor values (precursor to #2178 sensor library).
#UT: Fixed some issues with property editors - in particular following
redefinition of properties was not working correctly.
#UT: Fixed enable state / disabled bitmaps on toolbar.
#UT: Fixed issue with update of resize handle geometry in some cases.
#UT: Fixed movement of gauges with arrow keys.
#UT: Fixed issue with positioning of selection handles when zoomed in on screen.
#UT: Major rework of setup model structure & change notifications.
================================================================================
Version 2.0.4 - 15 June 2018
================================================================================
Milestone: Dash Design Development Build 2
#2162: New help / string resource system generated from inline code comments.
#2082: Program display with setup.
Firmware upgrade checks + firmware upload,
RAM size warning,
Original setup upload,
Logger setup upload,
Device Selection UI
Upload UI,
Async driver back-end.
#2065: Gauge Groups: display properties from sub-objects where appropriate.
Edit properties for multiple gauge selections.
#2322: Gauge Toolbox: Use icons instead of renderings of actual gauges.
#2321: Gauge Toolbox: if text does not fit then reduce column count.
#2320: Horizontal resize of PropertyForm does not resize the contained controls.
#2242: Lock Layout function (menu + toolbutton). Also added warning overlay to
screen editor.
#2314: Update gauge names for all screens following load of setup to avoid
later updates appearing in the undo stack.
#2166: Clear Screen (added as menu & context menu option).
#2068: Drag/Drop of groups in GaugeTree should not collapse the group.
================================================================================
Version 2.0.3 - 08 May 2018
================================================================================
Milestone: Dash Design Development Build 1
#2035: Implement missing gauges.
#2076: Auto-generate Gauge names from main value + type.
#2077: Gauge inputs should use a picker control instead of text edit.
#2234: Channel Selector Property.
#2072: Fix high-dpi issues & icons in file dialog.
#2302: Fixed issue with gauge size reducing by 1 when starting a drag resize.
#2042: Escape key should cancel drag/resize.
#2093: Fixed scrollbars on dash editor window.
#2312: Handle bitmap gauges that use a bitmap selector output correctly.
Added preview value to bitmap selector.
Fixed issue with 'corrupted' repaint during scrolling of dash editor.
#2078: Fixed scrollbar on property form - sometimes it was not being set up when
adding/changing view to one with many properties.
Scrollbar set to always visible to avoid controls changing width (avoids
issues editing spinbox values that could change the number of properies
displayed).
#2310: File filter for browse setup dialog not defined. Also does not set
extension of save file if not specified.
Fixed: Reversed logic for save action operating as save-as without existing
filename.
Fixed: Expire gauge properties when gauges are destroyed in case of retained
shared references.
Use null padding in alignment offset for font tables in display binary export.
#2039: Graphic::convertTo16bpp().
================================================================================
Version 2.0.2 - 16 March 2018
================================================================================
#2090: Raise/Lower functions for Gauge z-order management.
#2100: Add an 'UnknownGauge' type for gauges that DashDesign doesn't know how
to deal with.
Fixed issues when undoing a gauge deletion due to a bug in Emerald4.dll.
Reworked internal notifications of structural/value changes arising from
undo/redo.
Implemented selection change undo.
Stability & performance fixes.
Bootstrap/build/release automation.
================================================================================
Version 2.0.1 - 21 February 2018
================================================================================
#2074: Undo (incomplete).
#2089: Cut/Copy/Paste Gauges and Groups.
#2066: Fix resize behaviour following addition of a gauge (e.g. HS Bar Tacho).
#2067: Fixed resizing of multi-level gauge groups.
#2075: Fixed problem selecting gauges when zoomed and translated.
#2070: Moving gauges and groups in the GaugeTree should update their ordering
in the emerald file.
#2069: Groups are now placed in the correct place fllowing load of setup.
The way groups are implemented has changed slightly & empty groups are now
potentially allowed.
Unit testing / fuzzing of GaugeModel + optimizations.
FontMetrics: added caching of metrics implementation to improve performance
(including unit test performance).
Gauge: removed name generator as this will not be required an was causing
performance issues in unit tests.
================================================================================
Version 0.0.0 - 09 February 2018
================================================================================
Initial Early Alpha Preview.
================================================================================
End of File
================================================================================