Releases: Spirik/GEM
Releases · Spirik/GEM
1.7.0
- Support for preview callbacks that are called in edit mode when intermediate values of associated variable is changed;
GEMItem::setPreviewCallback()andGEMItem::removePreviewCallback()methods;GEMPreviewCallbackDatastruct that contains preview value of a variable;- Public
GEMItem::getSpinner()method for getting range spinner (GEMSpinner) object; - Method
GEMSpinner::getOptionNameByIndex()made public, allows to get value of a spinner (asGEMSpinnerValuestruct); - Readme updated accordingly.
1.6.5
1.6.4
- Bugfix for select/spinner arrows sprite overlapping option label when non-supported value of
_spriteSize(> 2) is set throughGEM_adafruit_gfx::setSpriteSize(); titleargument made optional in GEMPage constructor: now it is possible to callGEMPage menuPageto create menu page with empty title (instead of passing empty string, e.g.GEMPage menuPage(""));- Optional
loopsetting for selects (GEMSelect) and spinners (GEMSpinner) added to allow endless loop through the options; - Clarification on PlatformIO installation (contributed by @thijstriemstra);
- Readme updated accordingly.
1.6.3
GEM_ITEM_LABELnon-interactive menu item that displays basic text information. Previously there were somewhat cumbersome ways to create simple label menu items with the use of readonly variables or buttons with dummy action, now it is possible to simply callGEMItem menuItemLabel("I am a text label!");and non-interactive menu item with onlytitlewill be created;- Readme updated accordingly.
1.6.2
GEMPage::getItemsCount()method to get items count of the menu page;GEMItem::getType()andGEMItem::getLinkedType()methods to get type of menu item and type of linked variable;GEMItem::getParentPage()andGEMItem::getLinkedPage()methods to get pointer to parent and linked menu pages;- Readme updated accordingly;
- Note on optional custom shields implementation for easier GEM development and prototyping of projects (available in wiki).
1.6.1
- Better support for menu traversing in user-defined callbacks (addresses #110);
- Public
GEMPage::setCurrentMenuItemIndex()method for explicitly setting current menu item from sketch; - Behavior of
::invertKeysDuringEdit()adjusted to affect GEMSpinner menu items (addresses #112); - Readme updated accordingly.
1.6.0
1.5.4
1.5.3
1.5.2
AppContextstruct renamed toGEMContext(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; privateaccess specifiers changed toprotectedto 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.horGEM_ENABLE_ADVANCED_MODEflag; when enabled some of the internal methods are madevirtualto 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.