Skip to content

Releases: davetcc/tcMenuLib

4.2.1 - Fixes, simplifications and stability improvements

31 Jan 12:57
Compare
Choose a tag to compare
  • Theme builder introduced to drastically simplify custom layout of items, creating simple ways to change colors, layouts, and render icons.
  • 2BPP and 4BPP drawable icons are now supported IE palette-based images with 4 or 16 colors. These can be easily generated in designer.
  • Embedded form support is now available. These forms can be embedded by the designer and will be available in embed control. More on this when the mobile embed control is fully released.
  • Continuing the general cleanup of rendering, more fixes.

4.1.1 Fixes and improvements all round

26 Aug 07:15
64e4ece
Compare
Choose a tag to compare

This release goes with TcMenu UI V4.1.1. https://github.com/davetcc/tcMenu, it has gone through a significant testing cycle, but there are few if any changes that would prevent an immediate rollback to 4.0.0.

We have doubled down on rendering and library-level bugs in this release, some of the most important are:

  • We have added a root item that works pretty much like it does in the Java API (and designer). We'll slowly transition everything to use it.
  • Two buttons menu control can now be supported
  • All layout modes should now work properly with rendering, a large-scale refactor of rendering code should make it more reliable.
  • Card layout is now fully supported.
  • Cleaned up many examples, including fixing the row ordering in ones with custom layouts.

4.0.0 Multi language menus, serial ID, runtime tidy up

23 May 07:07
Compare
Choose a tag to compare

Release notes:

  • Support for multi-language menus is now stable enough and available from designer.
  • Serial ID has been added to the board, so that serial numbers can be sent remotely / shown in designer.
  • Huge runtime item upgrade, it is now far easier to create runtime items yourself, and they share the info block support.
  • Upgraded to 1.0 of tcMenuUnicode, will require you round trip code through the designer.
  • Many other small fixes.

3.1.0 - Improved touch support, start of i18n support, UI improvements

12 Feb 11:43
Compare
Choose a tag to compare

TcMenu 3.1.0 is a major release including some important features and bug fixes. It includes major changes to the touch support, and will require you to reconfigure any touch plugins. We've tried to default everything as sensibly as possible, but if in doubt check the examples. Note that this requires the designer, tcMenu library, and IoAbstraction be at V3.1.x.

As usual, any issues with this release just rollback to 3.0.x and let us know.

  • The rendering of items has been improved in the library
  • Support for booleans that display as checkbox
  • Lists now have an activated callback as selections change when active
  • Helper methods to get/set navigation history
  • The severe bug with AdafruitGFX not rendering is fixed
  • Major improvements to touch screen support
  • It is now possible to use a sized storage for EEPROM
  • Ability to provide custom text fields with filtering
  • Ability to store any items static data in RAM instead of FLASH

See the main repository for the associated designer: https://github.com/davetcc/tcMenu

3.0.1 - Fix navigation issue, fix constructor ordering issue

06 Jan 18:07
Compare
Choose a tag to compare

Fixes an issue with navigation where the wrong item was active upon return from menu.
Fixes a constructor order issue in 3.0.0 that caused a compiler warning that some treat as an error.

3.0.0 - tcUnicode, dashboards, many fixes

31 Dec 16:29
Compare
Choose a tag to compare

Summary

TcMenu 3.0.0 puts in place a few long-needed features in both designer and library, significantly improving the performance of menus based on Adafruit GFX, providing a consistent Unicode API that works even standalone outside of tcMenu, fixing more bugs in the designer, and adds the ability to create fonts and bitmaps directly within designer.

Important notice: Projects WILL need to be run once through the designer/code generator to update the plugins. Make sure you upgrade IoAbstraction to the latest 3.0.x release and also ensure that you get tcUnicodeHelper from library manager if not automatically picked up.

If you're new to TcMenu, please take a look at the getting started guide here: https://www.thecoderscorner.com/products/arduino-libraries/tc-menu/tcmenu-overview-quick-start/

Library release notes

  • TcMenu 3.0.0 has dependencies on tcUnicodeHelper and IoAbstraction V3.0.0.
  • Initial support for tcUnicode, this is very new and not set as the default in this release. Allows for UTF8 stream-based decoding on all graphical plugins.
  • Initialising a renderer is now safer and does not lose previous settings
  • Saving single items to EEPROM
  • More menu mgr notifications - now can be notified of active item changes.
  • Fixed most edit cursor problems
  • Far more control over compile time settings for advanced users.
  • First step toward formalizing the dashboard support that was in the Simhub example.
  • First pass at formalizing the dashboard support for custom layout read-only presentation screens.

UI release notes

  • TcUnicode support - new UI for generating tcUnicode and Adafruit fonts from a desktop font, themes now allow tcUnicode for all rendering.
  • Fix for embedCONTROL to ensure removed item does not cause loading of layout to fail
  • Support for AW9523 IoExpanders in the UI
  • UI small fixes - copy and paste fix, item is visible checkbox fix, a number of other small fixes and improvements.
  • Memory buffer support for Adafruit_GFX library. When using TFT displays, a memory buffer can be created large enough to present one menu item, it both reduces flicker and improves performance.
  • First pass at new UI for creating bitmaps and title widgets from most regular image formats as C++ code.
  • Improvements to Java API

You can get the designer UI from https://github.com/davetcc/tcMenu/releases

2.5.0 - Initial values, rendering fixes, more boards, some refactoring.

26 Oct 15:57
Compare
Choose a tag to compare

Important note: Best to upgrade to designer 2.5.x at the same time as upgrading the library.

  • Now builds for any RPI Pico core, Due and Uno Wifi R2.
  • Initial values are supported on nearly all types now.
  • Fixes to the priority of rendering to ensure dialogs always take precedence.
  • Starting to put low-power support into the display logic.
  • Fixes to how active items are handled to ensure that only one item is active at once, and the right one initially.
  • Cursor support has been fixed up to ensure the font used is correct.
  • Improvement in example arrangement.

2.4.0 fixes in many areas, project restructuring

05 Oct 07:19
Compare
Choose a tag to compare

Important note:

Release 2.4.0 of TcMenu Library requires tcMenu designer version 2.4 along with the most recent versions of dependant libraries (IoAbstraction, SimpleCollections, TaskManagerIO). Please make sure before proceeding that you have installed these first. This rare non-backward compatible change is to simplify the library going forward. For new users this is not an issue as the library manager will install the right version.

Release notes:

  • Multi-item editor improvements where there is now a real cursor instead of the brackets.
  • Support for a step value on analog items so they can increment by a step instead of 1.
  • Fix the start-up behaviour where the number of items was out by 1 causing wrapping
  • Matrix Keyboard support has been improved significantly for all types.
  • Major logging improvements, logging is now controlled by level.
  • Fix to Analog item WholeAndFraction where integers could not go negative.

Further, as part of this release we've broken out a new advanced networking layer, that in the future will all far more asynchronous networking with a subset of devices using either LwIP or different asynchronous drivers.

Custom protocol messages, keyboard and renderer improvements

01 Jun 14:30
Compare
Choose a tag to compare
  • Ability to change the frequency of the renderer at any time, takes place almost immediately - using renderer.setUpdatesPerSecond
  • Custom protocol messages can now be added for both sending and receiving allowing you to add a custom message from the Java/TS API through to the device. The performance of ID lookup has been improved.
  • Major keyboard improvements, there is now a plugin that autogenerates keyboard code, and all known cases edit better.

2.3.0 Exit callback, fixing bugs

11 May 08:04
Compare
Choose a tag to compare
  • It is now possible for integer AnalogMenuItems to get the current value including offset using getIntValueIncludingOffset
  • The menu manager observer is now told when a submenu is exited for another menu.
  • List items now work better with a rotary encoder and selection is more reliable
  • More edge cases around editable large number editing
  • List response now implemented so that embedCONTROL UI can now tell the remote that a list item was selected.