What's New in 1.8

Qt Quick Ultralite maintains source compatibility between minor releases. However, some changes may require you to adapt the application code accordingly. The following sections highlight such changes:

New features

  • Added API to drive main loop from application code
  • Added QtQuick Ultralite Shapes API for vector graphics, with implementation for NXP's i.MX RT1170.
  • Added support for Renesas EK-RA6M3G Evaluation Kit. Use the QUL_PLATFORM=EK-RA6M3G-baremetal CMake option to configure your project for this platform.
  • Added IAR compiler toolchain support for i.MX RT1170.
  • Added support for building Qt Quick Ultralite as a static library to enable integrating with an existing project.
  • Added RGB332 pixel format to support 8-bit images.
  • Added the QUL_GLYPHS_COPY_TO_RAM and QUL_FONT_FILES_COPY_TO_RAM CMake target properties to configure glyph and font file run-time storage.

Fixed issues

  • Removed the refreshInterval variable on i.MX RT1170 to avoid compilation failure using the IAR toolchain.
  • Removed expiry time for Renesas RH850-D1M1A binaries built using Green Hills.
  • Refactored input event handling, separating the event filtering and acceptance logic.
  • Documented the FreeRTOS directory name changes between the NXP SDK versions.
  • Fixed flickering on STM32H750B-Disco.
  • Changed example kit extension in the shipped packages.
  • Added the fallback renderer as default for the blendImage function on STM32.
  • Fixed issue where the Monotype Spark font engine integration was bypassing glyph cache and therfore would affect run-time performance.

Other changes

  • Fixed the version number in the kit description files for the Arm GCC and GreenHills toolchain.

New APIs

APIs for application development

New Member Functions

Class Application:

uint64_t update()

New QML Types

APIs for platform development

New Classes

New Member Functions

Class Screen:

Qul::PixelFormat colorFormat() const

Class DrawingEngine:

virtual Qul::PlatformInterface::DrawingEngine::Path *allocatePath(const Qul::PlatformInterface::PathData *pathData, Qul::PlatformInterface::PathFillRule fillRule)
virtual void blendPath(Qul::PlatformInterface::DrawingDevice *drawingDevice, Qul::PlatformInterface::DrawingEngine::Path *path, const Qul::PlatformInterface::Transform &transform, const Qul::PlatformInterface::Rect &clipRect, const Qul::PlatformInterface::Brush *fillBrush, const Qul::PlatformInterface::Brush *strokeBrush, int sourceOpacity, Qul::PlatformInterface::DrawingEngine::BlendMode blendMode = BlendMode_SourceOver)
virtual void setStrokeProperties(Qul::PlatformInterface::DrawingEngine::Path *path, const Qul::PlatformInterface::StrokeProperties &strokeProperties)

Class Path:

virtual void free() = 0

New Global Functions

void init8bppRendering()
void pathArcToBeziers(Qul::PlatformInterface::cubicToPath func, void *data, float radiusX, float radiusY, float xAxisRotation, bool useLargeArc, bool clockwise, const Qul::PlatformInterface::PointF &source, const Qul::PlatformInterface::PointF &target)

New Enum Types

enum LineCapStyle { FlatCap, RoundCap, SquareCap }
enum LineJoinStyle { MiterJoin, RoundJoin, BevelJoin }
enum PathOptimizationHints { PathOptimizationHints_None, PathOptimizationHints_NotSelfIntersecting, PathOptimizationHints_NoOverlappingSubPaths }
enum SegmentType { CloseSegment, MoveSegment, LineSegment, QuadraticBezierSegment, CubicBezierSegment, …, PathSeparatorSegment }
enum PathFillRule { PathOddEvenFill, PathWindingFill }

New Type Aliases

Changes in Previous Versions

What's New in 1.1

Changes in v1.1.0

What's New in 1.2

Changes in v1.2.0

What's New in 1.3

Changes in v1.3.0

What's New in 1.4

Changes in v1.4.0

What's New in 1.5

Changes in v1.5.0

What's New in 1.6

Changes in v1.6.0

What's New in 1.7

Changes in v1.7.0

What's New in 1.8

Changes in v1.8.0

What's New in 1.9

Changes in v1.9.0

What's New in 2.0

Changes in v2.0.0

What's New in 2.1

Changes in v2.1

What's New in 2.2

Changes in v2.2

What's New in 2.3

Changes in v2.3

What's New in 2.4

Changes in v2.4.0

What's New in 2.5

Changes in v2.5

What's New in 2.6

Changes in v2.6.0

What's New in 2.7

Changes in v2.7.0

Available under certain Qt licenses.
Find out more.