GUIslice 0.16.0

A lightweight GUI framework for embedded displays Design your GUI with a drag & drop builder, then apply the same code to a wide range of displays, libraries and controllers with the cross-platform Arduino framework supporting Windows, OS X and LINUX. Open source MIT license. Features: - Pure C library, no dynamic memory allocation - Widgets: text, images, buttons, checkboxes, radio buttons, sliders, keypad, listbox, radial controls, scrolling textbox / terminal, graphs, etc. plus extensions and multiple pages. Cross-platform GUIslice Builder application to generate GUI layouts Platform-independent GUI core currently supports: - Adafruit-GFX, TFT_eSPI, mcufriend, UTFT, SDL1.2, SDL2.0 Devices: - Raspberry Pi, Arduino, ESP8266 / NodeMCU, ESP32, M5stack, Teensy 3, Feather M0 (Cortex-M0), nRF52 (Cortex-M4F), LINUX, Beaglebone Black, STM32, Due, etc. Typical displays: - PiTFT, Adafruit TFT 3.5" / 2.8" / 2.4" / 2.2" / 1.44", FeatherWing TFT, OLED 0.96", mcufriend, BuyDisplay / EastRising 4.3" 5" 7", Waveshare, 4D Cape Display drivers include: - ILI9341, ST7735, SSD1306, HX8347D, HX8357, PCD8544, RA8875, ILI9341_t3, ILI9341_due - Dynamic display rotation Touchscreen control including: - STMPE610, FT6206, XPT2046, 4-wire, tslib, URTouch, Adafruit Seesaw - GPIO / pin / keyboard / Adafruit Seesaw control for non-touchscreen devices

Tags gui arduino embedded-systems user-interfaces cross-platform library hardware-driver c tft
License MITL
State development

Recent Releases

0.16.009 Nov 2020 06:45 minor feature: Enhance: Utilize fast TFT_eSPI clip / viewport rendering. Enhance: Major updates for XKeypad, support of custom keyapds. Add: Support for PlatformIO. Add: transparency in image draw from RAM. Add: new configs (LCDGFX #248, ILI9226, SDL2). Change: Removed GUIslice_config_ard/linux.h. transparent text. pgmspace compatibility. compiler warnings (#248. toggle button rounded corners, swap left/right. GFX font offset. XGraph math ranges. GSLC_LOCAL_STR mode. Changes to the XKeyPad API may require updates to existing sketches that utilize the widget. Please refer to the XKeyPad Migration Notes for details.
0.15.024 Aug 2020 01:25 minor feature: Enhance: major updates improvements to the Builder (download separately from the GUIslice-Builder repo). Add: widget: XTogglebtn. Add: widget: XSeekbar. Add: Touch driver for RA8875_SUMO. Add: Display driver support for Wavershare_ILI9486 v2. Add: dynamic element moves #246. Add: background redraw for modeless dialogs #227. Add: dynamic updates for XListbox. Add: API for XKeyPadInputGet() to return string. color conversion #219. XSlider range #238. pin-sharing with 4-wire touch (Due, Nano 33 IOT). compilation warnings. Enhance: optimize redraw for ElemSetCol, ElemSetGlowCol. Change: API for XCheckbox to always return its ID #244 (see migration notes). Enhance: demessaging for element creation. A minor breaking change was added to XCheckbox. This only impacts a minor subset of users that are detecting a checkbox disable event action. If the user code has a checkbox callback function that tests for nSelId == GSLC_ID_NONE and then determines which checkbox was responsible for this event (via pvElemRef), a simpler method is now available: determine the checkbox that triggered an event (via nSelId) and then test the bChecked state.