Skip to content

4.0.0 - Multi language support, runtime item improvements

Compare
Choose a tag to compare
@davetcc davetcc released this 23 May 07:14

TcMenu 4.0 is a large release, it will likely take you a little time to work through the changes, although it is mainly backward compatible, we recommend you take this release when you have a little time. Make sure you upgrade all dependent libraries (TaskManagerIO, IoAbstraction, SimpleCollections and TcUnicodeHelper) as tcMenu 4.0 assumes the latest available.

Important

If you are using Arduino IDE/CLI (platformIO/cmake/mbed not affected), please note that when creating a new project the default build option will not work, this will be corrected in the next release. See #377

We recommend you take a backup of your projects before attempting to upgrade, especially if you intend to convert to a multi-language project as this will not be fully backward compatible given it is a new feature. As usual, any problems with this release, just go back to the previous version and raise an issue here.

Backups are now stored in the .backup directory of your project.

Major new features:

  • The designer UI itself is now capable of being translated, and instructions for this are within the package. Translations to French (partial), Slovak and Czech.
  • The menu application can be translated into multiple languages using resource bundles (properties files within the project). These are managed by designer and follow a simple fairly intuitive pattern. You can add your own text translations into these files.
  • runtime menu items can now have info blocks, which makes the creation of them within your own code much easier, list and scroll choice callback are now drastically simplified, to take advantage of this just regenerate the callback. Runtime lists can even be an array in RAM or even a predefined list in FLASH.
  • Card mode where a single item is presented at once is partly available in this release, it will not be fully implemented until a further 4.0 patch.
  • Java project code tidy-up, it is now much easier to check out and work with the Java code
  • Another performance boost to Adafruit GFX thanks to @NachtRaveVL who suggested improvements to the baseline calculation.
  • Move items in the Designer tree using drag and drop instead of the up and down buttons.
  • Source can be generated into a separate "generated" folder to separate generated source from your own.
  • Many small bug fixes - see the milestone.

Major thanks go out to all our sponsors and also special thanks to @vzahradnik for helping test and translate the designer to additional languages.