| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- // Copyright (C) 2016 The Qt Company Ltd.
- // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
- import QtQuick
- import QtQuick.Layouts
- /*!
- \qmltype TraceInputKey
- \inqmlmodule QtQuick.VirtualKeyboard.Components
- \ingroup qmlclass
- \ingroup qtvirtualkeyboard-components-qml
- \ingroup qtvirtualkeyboard-key-types
- \inherits Item
- \since QtQuick.VirtualKeyboard 2.0
- \brief A specialized key for collecting touch input data.
- This type can be placed in the keyboard layout. It collects
- and renders touch input data (trace) from the key area.
- */
- Item {
- id: traceInputKey
- /*! Sets the key weight value which determines the relative size of the key.
- Use this property to change the key size in the layout.
- The default value is inherited from the parent element
- of the key in the layout hierarchy.
- */
- property real weight: parent.keyWeight
- /*! Pattern recognition mode of this input area.
- The default value is \l {InputEngine::patternRecognitionModes} {InputEngine.PatternRecognitionMode.None}.
- */
- property alias patternRecognitionMode: traceInputArea.patternRecognitionMode
- /*! List of horizontal rulers in the input area.
- The rulers are defined as a number of pixels from the top edge of the bounding box.
- Here is an example that demonstrates how to define rulers:
- \code
- horizontalRulers: [boundingBox.height / 3, boundingBox.height / 3 * 2]
- verticalRulers: [boundingBox.width / 3, boundingBox.width / 3 * 2]
- \endcode
- */
- property alias horizontalRulers: traceInputArea.horizontalRulers
- /*! List of vertical rulers in the input area.
- The rulers are defined as a number of pixels from the left edge of the bounding box.
- */
- property alias verticalRulers: traceInputArea.verticalRulers
- /*! Bounding box for the trace input.
- This property is readonly and is automatically updated based on the item size
- and margins.
- */
- readonly property alias boundingBox: traceInputArea.boundingBox
- /*! Canvas type of this trace input area.
- This property can be used to distinguish between different types of canvases.
- The default value is \c "keyboard".
- */
- property alias canvasType: traceInputArea.canvasType
- Layout.minimumWidth: traceInputKeyPanel.implicitWidth
- Layout.minimumHeight: traceInputKeyPanel.implicitHeight
- Layout.preferredWidth: weight
- Layout.fillWidth: true
- Layout.fillHeight: true
- canvasType: "keyboard"
- Loader {
- id: traceInputKeyPanel
- sourceComponent: keyboard.style.traceInputKeyPanelDelegate
- anchors.fill: parent
- onLoaded: traceInputKeyPanel.item.control = traceInputKey
- }
- TraceInputArea {
- id: traceInputArea
- anchors.fill: traceInputKeyPanel
- anchors.margins: traceInputKeyPanel.item ? traceInputKeyPanel.item.traceMargins : 0
- }
- }
|