Question
X-CUBE-TOUCHGFX 4.19.1 is out
TouchGFX 4.19.1 is now online.
Release notes (which can be found in the online documentation) are as follows:
- Bugfixes in TouchGFX Designer:
- Fixed missing color properties for Text Button Style on a Flex Button Widget.
- Fixed erroneous wildcard code generation for Text Button Style on a Flex Button Widget.
- Fixed erroneous code generation when using a Flex Button in InteractionEndedCallBacks.
- Fixed erroneous 'Text' property label for Dynamic- & Static Graph labels.
- Fixed touchgfx_components folder not being deleted after version upgrade.
- When a cell lost focus in the text grid, it would sometimes result in a crash
- Bugfixes in TouchGFX Core:
- Fixed FontConvert not generating new code if only change was ellipsis character.
- Fixed bug in Video Widget destructor that could cause failure in some applications.
You can find the post for the release of TouchGFX 4.19.0 and its questions here. Please continue commenting on what could be missing or to report bugs.
Reminder of the TouchGFX 4.19.0 release notes:
- New TouchGFX Designer Features:
- New and improved interface for text and typography handling for easier overview and management of large amounts of text.
- Added features for text and typography management include:
- Merging of single use and resources to one grid.
- Easy conversion of texts.
- Grouping.
- Rearrange and copy texts in grid.
- Search.
- Hide language columns in grid.
- Language settings for typographies.
- Added features for text and typography management include:
- New widget: Static Graph
- New and improved interface for text and typography handling for easier overview and management of large amounts of text.
- New TouchGFX Core Features:
- New widget: Graph.
- New texts.xml format supporting texts in groups and language specific settings for typographies.
- Added HAL::setAnimationStorage().
- Added ScrollBase::setOvershootPercentage(), and getOvershootPercentage(), for drag events at end of lists that are not circular. This works for ScrollLists and ScrollWheels.
- Event::getEventType() is now const.
- Pressing F5 in the simulator will call Application::changeToStartScreen() which can be implemented in FrontendApplication.
- The simulator ability to flash each invalidated area can be set from code using HALSDL2::setFlashInvalidatedAreas().
- New function invalidateContent() to only invalidate the part of a widget that contains a graphical element, has been added to Drawable, Containers, Widgets and Mixins. Using this new function instead of invalidate() can result in performance improvements.
- Added TextureMapper::updateScale() which will invalidate to ensure correct update of the screen when scaling. AnimationTextureMapper has been updated accordingly.
- FadeAnimator only invalidates if the alpha changes. The Widget being faded must have function getAlpha().
- Some internal graph classes have been renamed:
- AbstractDataGraphWithY -> DynamicDataGraph
- DataGraphScroll -> GraphScrollData
- DataGraphWrapAndClear -> GraphWrapAndClearData
- DataGraphWrapAndOverwrite -> GraphWrapAndOverwriteData
- New functions in graph classes allow an already scaled value to be added. If scale is 10, adding a scaled value of 15 is equivalent to adding the floating point value 1.5f. This can avoid introducing floating point arithmetics. The new functions all end in the word "Scaled".
- Added Video::showFrame() to show a specific frame in a video.
- Added LCD::copyAreaFromTFTToClientBuffer() copy new pixels between TFT and client buffer.
- LCDNemaP renamed to LCDGPU2D.
- Added support for Microsoft Visual Studio 2022.
- Renamed existing Keil libraries from "touchgfx_core.lib" to "touchgfx_core_wchar32.lib".
- Added Keil libraries compiled for short enum/wchar: "touchgfx_core_wchar16.lib".
- Bugfixes in TouchGFX Core:
- Proper handling if the ellipsis character for a text does not exist.
- LCD16bppSerialFlash::blitCopyRGB888() did not check if the image could be read from flash.
- Function HAL::copyFrameBufferRegionToMemory() would sometimes set a wrong SolidRect.
- On rotated display with a framebuffer height larger than the display width, the wrong part of the framebuffer would be written to.
- ScrollList::setWindowSize() will be limited to the number of entirely visible items (including margins).
- EasingEquations::backEaseInOut() had a rounding bug when the change was an odd number.
- Deprecated TouchGFX Core Features:
- TextureMapper::invalidateBoundingRect() is deprecated. Use invalidateContent().
- Application::cacheDrawOperations() is removed. Use clearCachedAreas() and drawCachedAreas().
- Function setXAxisScale() on Dynamic Graphs is now called setXAxisFactor().
- Function getXAxisScaleAsInt() on Dynamic Graphs is now called getXAxisFactorAsInt().
- Function getXAxisScaleAsFloat() on Dynamic Graphs is now called getXAxisFactorAsFloat().
- GraphElementArea::setBaseline() and GraphElementHistogram::setBaseline() no longer automatically redraws the graph. An explicit call to e.g. invalidateGraphArea() is required.
Link to the 4.20.0 release post here.