C

<platforminterface/platforminterface.h> - Interfaces of the Qt Quick Ultralite core library

Provides basic interfaces from the Qt Quick Ultralite core library to be used by the platform implementation. More...

Header: #include <platforminterface/platforminterface.h>

Types

enum KeyEventType { KeyPressEvent, KeyReleaseEvent }
enum KeyboardModifier { NoKeyboardModifier, ShiftKeyboardModifier, ControlKeyboardModifier, AltKeyboardModifier, MetaKeyboardModifier, …, GroupSwitchKeyboardModifier }

Functions

void handleKeyEvent(uint64_t timestamp, Qul::PlatformInterface::KeyEventType type, int key, uint32_t nativeScanCode = 0, unsigned int modifiers = NoKeyboardModifier, const char *textUtf8 = nullptr, bool autoRepeat = false)
void handleTouchCancelEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp)
void handleTouchEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp, const Qul::PlatformInterface::TouchPoint *touchPoints, unsigned int numTouchPoints)
void init16bppRendering()
void init24bppRendering()
void init32bppRendering()
void init8bppRendering()
void updateEngine(uint64_t timestamp)

Detailed Description

Classes

Qul::PlatformInterface::TouchPoint

Represents single touch point

Type Documentation

[since Qt Quick Ultralite (Platform) 1.5] enum KeyEventType

An enum representing the possible key event types.

ConstantValueDescription
KeyPressEvent0Represents a key press event
KeyReleaseEvent1Represents a key release event

This enum was introduced or modified in Qt Quick Ultralite (Platform) 1.5.

[since Qt Quick Ultralite (Platform) 1.5] enum KeyboardModifier

ConstantValueDescription
NoKeyboardModifier0x00000000No modifier is pressed
ShiftKeyboardModifier0x02000000A Shift key on the keyboard is pressed
ControlKeyboardModifier0x04000000A Ctrl key on the keyboard is pressed
AltKeyboardModifier0x08000000An Alt key on the keyboard is pressed
MetaKeyboardModifier0x10000000A Meta key on the keyboard is pressed
KeypadKeyboardModifier0x20000000A keypad button is pressed
GroupSwitchKeyboardModifier0x40000000A Mode_switch key on the keyboard is pressed.

This enum was introduced or modified in Qt Quick Ultralite (Platform) 1.5.

Function Documentation

[since Qt Quick Ultralite (Platform) 1.5] void handleKeyEvent(uint64_t timestamp, Qul::PlatformInterface::KeyEventType type, int key, uint32_t nativeScanCode = 0, unsigned int modifiers = NoKeyboardModifier, const char *textUtf8 = nullptr, bool autoRepeat = false)

Handles key events

The received key events from the platform layer have to be passed to the core engine through this function. timestamp is the time at which the event occured. This is usually the time read from the platform's native timestamp function. type specifies whether this is a key press or a key release event. key is the actual key identifier, according to the Qul::PlatformInterface::Key enum values. nativeScanCode is a native scan code identifier, useful in combination with key value Qul::Key_unknown for custom platform specific keys. modifiers specifies which key modifiers are held down at the time of the key event, by using an or'ed combination of the Qul::PlatformInterface::KeyModifier values.

textUtf8 is a UTF-8 representation of the text that the key represents, useful for various international keyboard support. It should be left as nullptr for control keys, or if full text input support is not desired (the key event delivered to QML will have an empty text property then, but it's still possible to choose actions based on the key and nativeScanCode values). autoRepeat specifies whether this is an auto-repeating key, it should be false if the event comes from an initial key press.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::Platform::PlatformContext::currentTimestamp.

[since Qt Quick Ultralite (Platform) 1.5] void handleTouchCancelEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp)

Cancels touch events

Cancels the touch events for screen. timestamp is the time at which the event occurred. This is usually the time read from the platform's native timestamp function. If screen is nullptr the platform primary screen will be used.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::Platform::PlatformContext::currentTimestamp and Qul::Platform::PlatformContext::availableScreens.

[since Qt Quick Ultralite (Platform) 1.5] void handleTouchEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp, const Qul::PlatformInterface::TouchPoint *touchPoints, unsigned int numTouchPoints)

Handles touch events

The received touch events from the platform layer have to be passed to the core engine through this function. screen is the screen on which the touch event is issued. timestamp is the time at which the event occurred. This is usually the time read from the platform's native timestamp function. touchPoints and numTouchPoints contain the list of currently active touch points. The ownership of the touch points stays at the calling function. If screen is nullptr the platform primary screen will be used.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::Platform::PlatformContext::currentTimestamp and Qul::Platform::PlatformContext::availableScreens.

[since Qt Quick Ultralite (Platform) 1.5] void init16bppRendering()

Initializes Qt Quick Ultralite for 16 BPP rendering.

By default, Qt Quick Ultralite does not reference the fallback renderer, allowing it to be discarded if it is not used.

This function sets up the fallback renderer for 16 BPP drawing devices.

Currently this function assumes that 16 BPP means the RGB565 format.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::PlatformInterface::init8bppRendering, Qul::PlatformInterface::init24bppRendering, and Qul::PlatformInterface::init32bppRendering.

[since Qt Quick Ultralite (Platform) 1.5] void init24bppRendering()

Initializes Qt Quick Ultralite for 24 BPP rendering.

By default, Qt Quick Ultralite does not reference the fallback renderer, allowing it to be discarded if it is not used.

This function sets up the fallback renderer for 24 BPP drawing devices.

Currently this function assumes that 24 BPP devices are in RGB888 format.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::PlatformInterface::init8bppRendering, Qul::PlatformInterface::init16bppRendering, and Qul::PlatformInterface::init32bppRendering.

[since Qt Quick Ultralite (Platform) 1.5] void init32bppRendering()

Initializes Qt Quick Ultralite for 32 BPP rendering.

By default, Qt Quick Ultralite does not reference the fallback renderer, allowing it to be discarded if it is not used.

This function sets up the fallback renderer for 32 BPP drawing devices.

Currently this function assumes that the 32 BPP devices are in ARGB32 format.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::PlatformInterface::init8bppRendering, Qul::PlatformInterface::init24bppRendering, and Qul::PlatformInterface::init16bppRendering.

[since Qt Quick Ultralite (Platform) 1.8] void init8bppRendering()

Initializes Qt Quick Ultralite for 8 BPP rendering.

By default, Qt Quick Ultralite does not reference the fallback renderer, allowing it to be discarded if it is not used.

This function sets up the fallback renderer for 8 BPP drawing devices.

Currently this function assumes that 8 BPP means the RGB332 format.

This function was introduced in Qt Quick Ultralite (Platform) 1.8.

See also Qul::PlatformInterface::init16bppRendering, Qul::PlatformInterface::init24bppRendering, and Qul::PlatformInterface::init32bppRendering.

[since Qt Quick Ultralite (Platform) 1.5] void updateEngine(uint64_t timestamp)

Updates the Qt Quick Ultralite engine

The Qt Quick Ultralite engine needs to be updated regularly to update its timers and showing animations.

The timestamp parameter is the current platform timestamp in milliseconds, as reported by Qul::Platform::PlatformContext::currentTimestamp().

This example shows a typical section for performing the engine updates from a main loop.

static uint64_t nextUpdate = 0;

void scheduleEngineUpdate(uint64_t timeout) {
   nextUpdate = timeout;
}

while_loop {
    const uint64_t timestamp = Qul::Platform::PlatformContext::currentTimestamp();
    if (timestamp >= nextUpdate) {
        Qul::PlatformInterface::updateEngine(timestamp);
    } else {
        // Device could sleep until time in 'nextUpdate'.
        enterSleepMode(nextUpdate);
    }
}

The callback Qul::Platform::PlatformContext::scheduleEngineUpdate informs the platform implementation about the next time Qt Quick Ultralite engine needs updating via Qul::PlatformInterface::updateEngine.

This function was introduced in Qt Quick Ultralite (Platform) 1.5.

See also Qul::Platform::PlatformContext::scheduleEngineUpdate and Qul::Platform::PlatformContext::currentTimestamp.

Available under certain Qt licenses.
Find out more.