Open
Description
This issue will be used to summarize the latest features, updates and prioritized work-in-progress.
Consider subscribing to this issue to follow summarized updates to the library.
Latest Updates
The following lists a few of the recent changes, with the latest entry at the top
- Released 0.12.1
- Fix TFT_eSPI internal XPT2046 touch handling mode (DRV_TOUCH_TFT_ESPI) DRV_TOUCH_TFT_ESPI v0.12.0 touch not working #149
- Fix HX8357 initialization (DRV_DISP_ADAGFX_HX8357)
- Released 0.12.0
- Enhance TFT_eSPI internal touch to support dynamic rotation, calibration Adapt TFT_eSPI integrated touch to use raw capture #143
- Optimizing redraw with invalidated regions
- Add XRingGauge element XRingGauge #145
- Add XKeyPad element Request: Create keypad element #5
- Add support for rounded buttons / round rects Add support for rounded buttons / rects #142
- Add XSpinner element
- Add support for Adafruit Seesaw controller
- Resolve 8-bit parallel TFT + 4-wire touch + TFT_eSPI Touchscreen support with 9341 8-bit parallel on ESP32 #130
- Add support for Teensy Teensy + Audio Adaptor #136
- Add support for RA8875 display & touch driver (Arduino DUE + RA8875 Compatability #125 )
- Add listbox control (Request: Element ComboBox #46)
- Enhance ease of creating custom widgets (Simplified creation of new GUI widgets #120 )
- Support for popup dialog boxes (Request: Support for Pop-UP Dialogs #81)
- Support for page stacks (Request: Support for sub-pages / layouts #71 )
- Add API ElemSetVisibleEn() to change visibility, along with partial redraw Request: Element visibility #24
- Released Builder 0.11.0-rc2
- Add support for overriding MCUFRIEND ID (
DRV_TOUCH_ADAGFX_MCUFRIEND_FORCE
) - Enhanced calibration with support for touch controllers using swapped X&Y (XPT2046 displays with swapped coords #113)
- Automated build versioning (X.Y.Z.build)
- Add API ElemSetClickEn() to change click-enable attribute
- Released v0.11.0
- Fix Z-order touch detection with overlapping elements
- Add ElemCreateLine_P() for line elements in Flash
- Created a number of example shield configs
- Significant updates to all wiki documentation on configuration & touch
- Extensive cleanup of example configuration files using consistent sectioning.
- Rework the touch orientation code Dynamic Display Orientation vs Touch #98
- Create diagnostic / touch calibration sketches Revise touch & orientation #105
- Add support for checkbox / radio button callbacks Add checkbox/radio toggle callback #74
- Add support for drawing images from memory (FLASH) Draw color images from RAM / Flash #101
- Rewrote Installation guide for Raspberry Pi
- Made errors in touch driver initialization non-fatal and show visual error message
- Improve 4-wire resistive touch controller handling (DRV_TOUCH_ADA_SIMPLE: Multiple touch events for component #96)
- Change config strategy to enable single-line selection between configs in
GUIslice_config.h
Revamp Config Strategy #86 - Add support for Adafruit FeatherWing TFT
- HUZZAH ESP8266, HUZZAH32 ESP-32 and Feather M0. See /configs/misc-featherwing.h
- Add support for additional shields: Adafruit 1.8" Color TFT shield
- Released Builder 0.10.4-beta7 (GUIslice Builder - tool for GUI code generation #79 (comment)) along with source code
- Add support for more STM32 cores, DUE, Arduino Zero (Add new device targets #88)
- Add support for GPIO / pin control for
DRV_TOUCH_NONE
mode (related to Support Keyboard / Switch instead of Touch #66) - Support for MCUFRIEND displays with mcufriend_kbv (Support for MCUFRIEND_kbv #82)
- Started adding device-specific example configurations to
/configs
- Included so far: M5stack, more to come shortly
- Initial focus will be on shields, but example breakout board wiring options will also be provided
- The intention is to enable plug & play configuration with a variety of devices, as the current master config file (GUIslice_config_ard/linux) can be intimidating for new users.
- Support for M5stack should be complete as fixes applied now that I have the hardware on-hand to test
- Integrated API documentation now automatically deployed online
- All examples renamed to make them clearer about function and screenshots provided. (Wiki documentation for examples & elements #78).
- Keyboard / GPIO Pin control over the GUI (Support Keyboard / Switch instead of Touch #66). This is particularly useful on non-touch displays.
Work in Progress
In an effort to give users some idea of the work that is currently in development, the following are a few of the features / changes in development.
- GUIslice Builder release 0.13.0
- Update calibration sketch to report ADATOUCH_PRESS_MIN/MAX guidance
- Revise checkbox / radio button grouping flexibility
- Add dropdown combobox control Request: Element ComboBox #46
- Add support for SdFat library (SD SW SPI for mcufriend ATmega)
- Optimize XSlider redraw
- Split XGauge into XSlider, XRadial, XRamp
- Optimize compound element handling
- Add clipping support to DrvDrawTxt()
- Automate RPi example config generation as done for all other targets
- Rewrite & simplify configuration guides for STM32 and Raspberry Pi Revamp Config Strategy #86
- Resistive touch debounce filtering Request: Resistive touch debounce filtering #102
Other features under consideration
- Support for UTFT
- Support visual themes (ie. consistent GUI element color scheme, etc.)
- Support gradients (eg. buttons)
- Support for RA8875 ROM fonts
- Support for sumotoy/RA8875