Question
X-CUBE-TOUCHGFX 4.18.0 is out
4.18.0 was released 20th of October.
Release notes (which can be found here: https://support.touchgfx.com/docs/miscellaneous/changelog) is as follows:
- New TouchGFX Designer Features:
- New Widget: Video.
- Added support for new .xml text database.
- Removed TextEntries database from .touchgfx file.
- Added support for XRGB.
- Added full path of applications in recent applications list.
- Added various animations to icons.
- Bugfixes in TouchGFX Designer:
- Fixed missing proxy dialog.
- Fixed Gauge widget code generation error when placed in Custom Container Definition.
- Fixed TouchGFX Designer reporting file changes on disk, when files were opened in other editors.
- Fixed Analog Clock being able to resize.
- Fixed typography selector in text manager not resizing correctly.
- Fixed drop down controls sometimes autoselecting.
- Improved performance of text manager.
- Improved performance of color pickers.
- Improved UX behaviour of alpha slider controls.
- Fixed numeric property up/down controls not working after using mouse wheel.
- Fixed tabbing between property controls.
- Fixed dither algorithm selector items missing their names.
- Fixed ScrollWheel widget erroneous state after deleting the custom container used for Selected Style template.
- Fixed crash when trying to open recent application that has been deleted on disk.
- New TouchGFX Core Features:
- Texts and Languages (translations) are now stored in texts.xml instead of texts.xlsx (Excel format). Tool for exporting and importing translations have been added (touchgfx/framework/tools/textconvert/translation.rb).
- New Widget: VideoWidget.
- Added libjpeg libraries for Linux and Windows in 3rdparty/libjpeg (note that Red and Blue are swapped compared to official libjpeg).
- The simulator can now handle display size not equal to framebuffer size. After call to touchgfx_generic_init() use HAL::setFrameBufferSize() to set the (larger) framebuffer size.
- Added Drawable::center(), centerX(), centerY() to center a drawable inside its parent.
- Added Drawable::expand() to make a Drawable the same size as its parent, optionally with a margin around the edge.
- Added LCD::fillBuffer() to fill a color pattern in any memory buffer.
- Added ScrollableContainer::getChildrenContainedArea().
- Faster drawing of ARGB8888 images on 16bpp LCD's.
- Application::getCurrentScreen() is now static for ease of use.
- Updated Freetype 2.10.4 to 2.11.0 (used by the font convert utility).
- Updated nlohmann json 3.9.1 to 3.10.2 (used by the image convert utility).
- Updated Ruby 1.9.3 to 3.0.2 (used by the text convert utility).
- ScrollableContainer::doScroll() is now public and ensures that scrolling is valid.
- The position and size of the root Container in a Screen can now be set.
- All Bitmap Painters can offset the bitmap, and can tile the bitmap (to help save memory).
- Bugfixes in TouchGFX Core:
- TextArea automatic wordwrapping (WideTextAction) did not take indentation into account.
- ImageConvert would not allow writing to another drive or a full path.
- TextProvider::initalize() with ... parameter could generate unexpected results.
- All extern declarations in generated files now match the actual declarations.
- Possible mess up of FRAME_BUFFER_WIDTH and FRAME_BUFFER_HEIGHT when performing display orientation change.
- ProgressIndicators and Gauges could not be used with mixins with a timer.
- PixelDataWidget::getSolidRect() now returns empty Rect when no pixel data buffer has been set.
- PixelDataWidget::getPixelData() and PixelDataWidget::getBitmapFormat() added.
- Made simulator applications more responsive to mouse and keyboard events.
- ScrollableContainer::moveChildrenRelative() now updates values for getScrolledX() and getScrolledY(), but does not update scrollbars. However, moveChildrenRelative() is scheduled to be deprecated, please use doScroll() instead.
- Fix incorrect use of relative coordinates in ScrollableContainer.
- Fixed EasingEquations::elasticEaseIn(), EasingEquations::elasticEaseOut() and EasingEquations::elasticEaseInOut().
- Some 8bpp painters would use the wrong color and in rare cases L8_RGB888 on 32bpp displays would be wrong.
- LCD16bpp::blitCopy() did not support RGB888.
- LCD16bpp::fillRect() and LCD16bpp::drawGlyph() now passes 24bit color instead of native 16bit color to DMA.
- Deprecated TouchGFX Core Features:
- TouchGFX will soon have support for RGB565 with alpha channel removed. ImageConvert will report this to help a move to e.g. ARGB8888.
- SDL2 for Linux is no longer included in TouchGFX. Please install package libsdl2-dev and libsdl2-image-dev in your Linux environment.
I'm looking forward to give the new version a testdrive :)
What do you think of the new version? Bugs? nice features? Let ST know in the comments
(I'm not affilitated with ST - This post was simply missing so I made it)
