Skip to content

Releases: Spirik/GEM

1.6.0

04 Oct 18:57
Compare
Choose a tag to compare
  • GEMSpinner menu item for increment/decrement of numeric variables;
  • Public ::isEditMode() method that shows whether menu is currently in edit mode or not;
  • Rotary encoder examples updated for more consistent detection of rotation;
  • Readme updated accordingly.

1.5.4

05 Aug 17:32
Compare
Choose a tag to compare
  • Support for setting sprites 'magnification' size (i.e. scale factor) for Adafruit GFX version via ::setSpriteSize() regardless of text magnification size set via ::setTextSize() method;
  • Readme updated accordingly;
  • Cleanup of redundant code.

1.5.3

05 Jul 11:50
Compare
Choose a tag to compare
  • Addresses #96 and #97 error either all initializer clauses should be designated or none of them should be that appear if compiled for ESP32 boards with the most recently updated Boards via Arduino IDE;
  • Minor Readme wording update.

1.5.2

03 Feb 13:51
Compare
Choose a tag to compare
  • AppContext struct renamed to GEMContext (with backwards compatibility with previous name);
  • New methods ::setDrawMenuCallback() and ::removeDrawMenuCallback() for managing optional callback that is invoked at the end of ::drawMenu() call;
  • Method ::getCurrentAppearance() made public;
  • private access specifiers changed to protected to make it possible to access internal fields and methods from within user-defined derived (inherited) classes, allowing to extend functionality of GEM;
  • Optional "Advanced Mode" introduced, disabled by default but can be enabled via config.h or GEM_ENABLE_ADVANCED_MODE flag; when enabled some of the internal methods are made virtual to make it possible to override those methods in own sketch, allowing further customization and modification of GEM; more features of Advanced Mode may be added in the future;
  • Readme updated accordingly.

1.5.1

03 Jan 19:07
Compare
Choose a tag to compare
  • Support for custom fonts via ::setFontBig() and ::setFontSmall() methods of U8g2 and Adafruit GFX versions of GEM;
  • Support for UTF8 fonts for U8g2 version of GEM via GEM_u8g2::enableUTF8() method (only for menu titles and menu item labels);
  • Readme updated accordingly.

1.5.0

25 Dec 19:32
Compare
Choose a tag to compare
  • Possible breaking change: AltSerialGraphicLCD version disabled by default, but can be enabled explicitly via config.h or build flag GEM_ENABLE_GLCD;
  • GEMAppearance struct, ::setAppearance() methods added; ability to set appearance for menu pages individually and change it at a runtime;
  • GEMPage::getMenuItem() and GEMItem::getMenuItemNext() methods made public for easy menu items traversing from the sketch;
  • ::getCurrentMenuPage(), GEMPage::getCurrentMenuItem(), GEMPage::getCurrentMenuItemIndex() methods added to target currently selected menu item (can be useful for certain callback functions);
  • GEMItem::setAdjustedASCIIOrder() method added for more suitable order of characters when editing text variables in certain use cases;
  • Example 06: Todo List added;
  • Readme updated accordingly.

1.4.7

05 Dec 18:37
Compare
Choose a tag to compare
  • Ability to remove menu item from menu page via GEMItem::remove() method;
  • Ability to re-add menu item to menu page (same or different) via subsequent call to GEMPage::addMenuItem() method;
  • Passing additional parameters to GEMPage::addMenuItem() method allow to add menu item at a specified index pos out of total (total set to true) or only visible (total set to false) items of the menu page;
  • Correctly handle attempts to add menu page to multiple parent menu pages (now it is possible to change parent menu page);
  • Available constructor options clarified in Readme and examples;
  • Readme updated accordingly.

1.4.6

18 Nov 07:33
Compare
Choose a tag to compare
  • Support for chaining of method calls;
  • Ability to specify parent menu page via GEMPage constructor;
  • Readme updated accordingly.

1.4.5

11 Nov 17:13
Compare
Choose a tag to compare

This release contains code refactoring, there is no functional changes.

  • -Wmissing-field-initializers warning fix;
  • boolean data type ditched in favor of bool;
  • Readme clarifications.

1.4.4

28 Sep 10:02
Compare
Choose a tag to compare
  • Examples on how to control menu with rotary encoder.