Улучшен дизайн кнопок SpinBox: добавлены современные стили, улучшена визуальная обратная связь, добавлены SVG иконки, оптимизированы размеры и отступы, улучшена читаемость значени

This commit is contained in:
kromskii2 committed 2025-03-14 19:25:58 +07:00
1 parent 2b9165771b
commit 29dce906c5
6110 files changed
+775979

No files matched your search

@@ -0,0 +1,512 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "qpermissions.h"
name: "QBluetoothPermission"
accessSemantics: "value"
Enum {
name: "CommunicationModes"
alias: "CommunicationMode"
isFlag: true
type: "quint8"
values: ["Access", "Advertise", "Default"]
}
}
Component {
file: "qpermissions.h"
name: "QCalendarPermission"
accessSemantics: "value"
Enum {
name: "AccessMode"
type: "quint8"
values: ["ReadOnly", "ReadWrite"]
}
}
Component {
file: "qpermissions.h"
name: "QContactsPermission"
accessSemantics: "value"
Enum {
name: "AccessMode"
type: "quint8"
values: ["ReadOnly", "ReadWrite"]
}
}
Component {
file: "qpermissions.h"
name: "QLocationPermission"
accessSemantics: "value"
Enum {
name: "Accuracy"
type: "quint8"
values: ["Approximate", "Precise"]
}
Enum {
name: "Availability"
type: "quint8"
values: ["WhenInUse", "Always"]
}
}
Component {
file: "private/qqmlpermissions_p.h"
name: "QQmlBluetoothPermission"
accessSemantics: "reference"
prototype: "QObject"
extension: "QBluetoothPermission"
extensionIsNamespace: true
exports: ["QtCore/BluetoothPermission 6.6"]
exportMetaObjectRevisions: [1542]
Property {
name: "status"
type: "Qt::PermissionStatus"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Property {
name: "communicationModes"
type: "QBluetoothPermission::CommunicationModes"
read: "communicationModes"
write: "setCommunicationModes"
notify: "communicationModesChanged"
index: 1
}
Signal { name: "statusChanged" }
Signal { name: "communicationModesChanged" }
Method { name: "request" }
}
Component {
file: "private/qqmlpermissions_p.h"
name: "QQmlCalendarPermission"
accessSemantics: "reference"
prototype: "QObject"
extension: "QCalendarPermission"
extensionIsNamespace: true
exports: ["QtCore/CalendarPermission 6.6"]
exportMetaObjectRevisions: [1542]
Property {
name: "status"
type: "Qt::PermissionStatus"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Property {
name: "accessMode"
type: "QCalendarPermission::AccessMode"
read: "accessMode"
write: "setAccessMode"
notify: "accessModeChanged"
index: 1
}
Signal { name: "statusChanged" }
Signal { name: "accessModeChanged" }
Method { name: "request" }
}
Component {
file: "private/qqmlpermissions_p.h"
name: "QQmlCameraPermission"
accessSemantics: "reference"
prototype: "QObject"
exports: ["QtCore/CameraPermission 6.6"]
exportMetaObjectRevisions: [1542]
Property {
name: "status"
type: "Qt::PermissionStatus"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Signal { name: "statusChanged" }
Method { name: "request" }
}
Component {
file: "private/qqmlpermissions_p.h"
name: "QQmlContactsPermission"
accessSemantics: "reference"
prototype: "QObject"
extension: "QContactsPermission"
extensionIsNamespace: true
exports: ["QtCore/ContactsPermission 6.6"]
exportMetaObjectRevisions: [1542]
Property {
name: "status"
type: "Qt::PermissionStatus"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Property {
name: "accessMode"
type: "QContactsPermission::AccessMode"
read: "accessMode"
write: "setAccessMode"
notify: "accessModeChanged"
index: 1
}
Signal { name: "statusChanged" }
Signal { name: "accessModeChanged" }
Method { name: "request" }
}
Component {
file: "private/qqmlpermissions_p.h"
name: "QQmlMicrophonePermission"
accessSemantics: "reference"
prototype: "QObject"
exports: ["QtCore/MicrophonePermission 6.6"]
exportMetaObjectRevisions: [1542]
Property {
name: "status"
type: "Qt::PermissionStatus"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Signal { name: "statusChanged" }
Method { name: "request" }
}
Component {
file: "private/qqmlpermissions_p.h"
name: "QQmlQLocationPermission"
accessSemantics: "reference"
prototype: "QObject"
extension: "QLocationPermission"
extensionIsNamespace: true
exports: ["QtCore/LocationPermission 6.6"]
exportMetaObjectRevisions: [1542]
Property {
name: "status"
type: "Qt::PermissionStatus"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Property {
name: "availability"
type: "QLocationPermission::Availability"
read: "availability"
write: "setAvailability"
notify: "availabilityChanged"
index: 1
}
Property {
name: "accuracy"
type: "QLocationPermission::Accuracy"
read: "accuracy"
write: "setAccuracy"
notify: "accuracyChanged"
index: 2
}
Signal { name: "statusChanged" }
Signal { name: "availabilityChanged" }
Signal { name: "accuracyChanged" }
Method { name: "request" }
}
Component {
file: "private/qqmlsettings_p.h"
name: "QQmlSettings"
accessSemantics: "reference"
prototype: "QObject"
interfaces: ["QQmlParserStatus"]
exports: ["QtCore/Settings 6.5"]
exportMetaObjectRevisions: [1541]
Property {
name: "category"
type: "QString"
read: "category"
write: "setCategory"
notify: "categoryChanged"
index: 0
isFinal: true
}
Property {
name: "location"
type: "QUrl"
read: "location"
write: "setLocation"
notify: "locationChanged"
index: 1
isFinal: true
}
Signal {
name: "categoryChanged"
Parameter { name: "arg"; type: "QString" }
}
Signal {
name: "locationChanged"
Parameter { name: "arg"; type: "QUrl" }
}
Method { name: "_q_propertyChanged" }
Method {
name: "value"
type: "QVariant"
Parameter { name: "key"; type: "QString" }
Parameter { name: "defaultValue"; type: "QVariant" }
}
Method {
name: "value"
type: "QVariant"
isCloned: true
Parameter { name: "key"; type: "QString" }
}
Method {
name: "setValue"
Parameter { name: "key"; type: "QString" }
Parameter { name: "value"; type: "QVariant" }
}
Method { name: "sync" }
}
Component {
file: "private/qqmlstandardpaths_p.h"
name: "QQmlStandardPaths"
accessSemantics: "reference"
prototype: "QObject"
extension: "QStandardPaths"
extensionIsNamespace: true
exports: ["QtCore/StandardPaths 6.2"]
isCreatable: false
isSingleton: true
exportMetaObjectRevisions: [1538]
Method {
name: "displayName"
type: "QString"
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
}
Method {
name: "findExecutable"
type: "QUrl"
Parameter { name: "executableName"; type: "QString" }
Parameter { name: "paths"; type: "QStringList" }
}
Method {
name: "findExecutable"
type: "QUrl"
isCloned: true
Parameter { name: "executableName"; type: "QString" }
}
Method {
name: "locate"
type: "QUrl"
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
Parameter { name: "fileName"; type: "QString" }
Parameter { name: "options"; type: "QStandardPaths::LocateOptions" }
}
Method {
name: "locate"
type: "QUrl"
isCloned: true
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
Parameter { name: "fileName"; type: "QString" }
}
Method {
name: "locateAll"
type: "QUrl"
isList: true
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
Parameter { name: "fileName"; type: "QString" }
Parameter { name: "options"; type: "QStandardPaths::LocateOptions" }
}
Method {
name: "locateAll"
type: "QUrl"
isList: true
isCloned: true
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
Parameter { name: "fileName"; type: "QString" }
}
Method {
name: "standardLocations"
type: "QUrl"
isList: true
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
}
Method {
name: "writableLocation"
type: "QUrl"
Parameter { name: "type"; type: "QStandardPaths::StandardLocation" }
}
}
Component {
file: "private/qqmlsysteminformation_p.h"
name: "QQmlSystemInformation"
accessSemantics: "reference"
prototype: "QObject"
exports: ["QtCore/SystemInformation 6.4"]
isCreatable: false
isSingleton: true
exportMetaObjectRevisions: [1540]
Enum {
name: "Endian"
isScoped: true
values: ["Big", "Little"]
}
Property {
name: "wordSize"
type: "int"
read: "wordSize"
index: 0
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "byteOrder"
type: "QQmlSystemInformation::Endian"
read: "byteOrder"
index: 1
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buildCpuArchitecture"
type: "QString"
read: "buildCpuArchitecture"
index: 2
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "currentCpuArchitecture"
type: "QString"
read: "currentCpuArchitecture"
index: 3
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buildAbi"
type: "QString"
read: "buildAbi"
index: 4
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "kernelType"
type: "QString"
read: "kernelType"
index: 5
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "kernelVersion"
type: "QString"
read: "kernelVersion"
index: 6
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "productType"
type: "QString"
read: "productType"
index: 7
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "productVersion"
type: "QString"
read: "productVersion"
index: 8
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "prettyProductName"
type: "QString"
read: "prettyProductName"
index: 9
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "machineHostName"
type: "QString"
read: "machineHostName"
index: 10
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "machineUniqueId"
type: "QByteArray"
read: "machineUniqueId"
index: 11
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "bootUniqueId"
type: "QByteArray"
read: "bootUniqueId"
index: 12
isReadonly: true
isFinal: true
isConstant: true
}
}
Component {
file: "qstandardpaths.h"
name: "QStandardPaths"
accessSemantics: "value"
Enum {
name: "StandardLocation"
values: [
"DesktopLocation",
"DocumentsLocation",
"FontsLocation",
"ApplicationsLocation",
"MusicLocation",
"MoviesLocation",
"PicturesLocation",
"TempLocation",
"HomeLocation",
"AppLocalDataLocation",
"CacheLocation",
"GenericDataLocation",
"RuntimeLocation",
"ConfigLocation",
"DownloadLocation",
"GenericCacheLocation",
"GenericConfigLocation",
"AppDataLocation",
"AppConfigLocation",
"PublicShareLocation",
"TemplatesLocation",
"StateLocation",
"GenericStateLocation"
]
}
Enum {
name: "LocateOptions"
alias: "LocateOption"
isFlag: true
values: ["LocateFile", "LocateDirectory"]
}
}
}
@@ -0,0 +1,9 @@
module QtCore
linktarget Qt6::qtqmlcoreplugin
optional plugin qtqmlcoreplugin
classname QtQmlCorePlugin
designersupported
typeinfo plugins.qmltypes
depends QtQml auto
prefer :/qt-project.org/imports/QtCore/
@@ -0,0 +1,377 @@
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtMultimedia
/*!
\qmltype Video
\inherits Item
\ingroup multimedia_qml
\ingroup multimedia_video_qml
\inqmlmodule QtMultimedia
\brief A convenience type for showing a specified video.
\c Video is a convenience type combining the functionality
of a \l MediaPlayer and a \l VideoOutput into one. It provides
simple video playback functionality without having to declare multiple
types.
The following is sample code to implement video playback in a scene.
\qml
Video {
id: video
width : 800
height : 600
source: "video.avi"
MouseArea {
anchors.fill: parent
onClicked: {
video.play()
}
}
focus: true
Keys.onSpacePressed: video.playbackState == MediaPlayer.PlayingState ? video.pause() : video.play()
Keys.onLeftPressed: video.position = video.position - 5000
Keys.onRightPressed: video.position = video.position + 5000
}
\endqml
The source file, \c video.avi, plays when you click the parent
of MouseArea. The video plays in an area of 800 by 600 pixels, and its \c id
property has the value \b{video}.
Notice that because signals for the \l Keys have been defined pressing the:
\list
\li \uicontrol Spacebar toggles the pause button.
\li \uicontrol{Left Arrow} moves the current position in the video to 5 seconds
previously.
\li \uicontrol{Right Arrow} advances the current position in the video by 5 seconds.
\endlist
Video supports un-transformed, stretched, and uniformly scaled
video presentation. For a description of stretched uniformly scaled
presentation, see the \l fillMode property description.
\sa MediaPlayer, VideoOutput
\omit
\section1 Screen Saver
If it is likely that an application will be playing video for an extended
period of time without user interaction, it may be necessary to disable
the platform's screen saver. The \l ScreenSaver (from \l QtSystemInfo)
may be used to disable the screensaver in this fashion:
\qml
import QtSystemInfo 5.0
ScreenSaver { screenSaverEnabled: false }
\endqml
\endomit
*/
// TODO: Restore Qt System Info docs when the module is released
Item {
id: video
implicitWidth: videoOut.implicitWidth
implicitHeight: videoOut.implicitHeight
/*** Properties of VideoOutput ***/
/*!
\qmlproperty enumeration Video::fillMode
Set this property to define how the video is scaled to fit the target
area.
\list
\li VideoOutput.Stretch - the video is scaled to fit
\li VideoOutput.PreserveAspectFit - the video is scaled uniformly to fit without
cropping
\li VideoOutput.PreserveAspectCrop - the video is scaled uniformly to fill, cropping
if necessary
\endlist
Because this type is for convenience in QML, it does not
support enumerations directly, so enumerations from \c VideoOutput are
used to access the available fill modes.
The default fill mode is preserveAspectFit.
*/
property alias fillMode: videoOut.fillMode
/*!
\qmlproperty int Video::orientation
This property determines the angle, in degrees, at which the displayed video
is rotated clockwise in video coordinates, where the Y-axis points
downwards on the display.
Only multiples of \c 90 degrees are supported, that is 0, 90, -90, 180, 270, etc.,
otherwise, the specified value is ignored.
The default value is \c 0.
*/
property alias orientation: videoOut.orientation
/*** Properties of MediaPlayer ***/
/*!
\qmlproperty enumeration Video::playbackState
This read only property indicates the playback state of the media.
\list
\li MediaPlayer.PlayingState - the media is playing
\li MediaPlayer.PausedState - the media is paused
\li MediaPlayer.StoppedState - the media is stopped
\endlist
The default state is MediaPlayer.StoppedState.
*/
property alias playbackState: player.playbackState
/*!
\qmlproperty real Video::bufferProgress
This property holds how much of the data buffer is currently filled,
from 0.0 (empty) to 1.0
(full).
*/
property alias bufferProgress: player.bufferProgress
/*!
\qmlproperty int Video::duration
This property holds the duration of the media in milliseconds.
If the media doesn't have a fixed duration (a live stream for example)
this will be 0.
*/
property alias duration: player.duration
/*!
\qmlproperty int Video::loops
Determines how often the media is played before stopping.
Set to MediaPlayer.Infinite to loop the current media file forever.
The default value is \c 1. Setting this property to \c 0 has no effect.
*/
property alias loops: player.loops
/*!
\qmlproperty enumeration Video::error
This property holds the error state of the video. It can be one of:
\list
\li MediaPlayer.NoError - there is no current error.
\li MediaPlayer.ResourceError - the video cannot be played due to a problem
allocating resources.
\li MediaPlayer.FormatError - the video format is not supported.
\li MediaPlayer.NetworkError - the video cannot be played due to network issues.
\li MediaPlayer.AccessDenied - the video cannot be played due to insufficient
permissions.
\li MediaPlayer.ServiceMissing - the video cannot be played because the media
service could not be
instantiated.
\endlist
*/
property alias error: player.error
/*!
\qmlproperty string Video::errorString
This property holds a string describing the current error condition in more detail.
*/
property alias errorString: player.errorString
/*!
\qmlproperty bool Video::hasAudio
This property holds whether the current media has audio content.
*/
property alias hasAudio: player.hasAudio
/*!
\qmlproperty bool Video::hasVideo
This property holds whether the current media has video content.
*/
property alias hasVideo: player.hasVideo
/*!
\qmlproperty mediaMetaData Video::metaData
This property holds the meta data for the current media.
See \l{MediaPlayer::metaData}{MediaPlayer.metaData} for details about each meta data key.
\sa {mediaMetaData}
*/
property alias metaData: player.metaData
/*!
\qmlproperty bool Video::muted
This property holds whether the audio output is muted.
*/
property alias muted: audioOutput.muted
/*!
\qmlproperty real Video::playbackRate
This property holds the rate at which video is played at as a multiple
of the normal rate.
*/
property alias playbackRate: player.playbackRate
/*!
\qmlproperty int Video::position
This property holds the current playback position in milliseconds.
*/
property alias position: player.position
/*!
\qmlproperty bool Video::seekable
This property holds whether the playback position of the video can be
changed.
If true, calling the \l seek() method or changing the \l position property
will cause playback to seek to the new position.
*/
property alias seekable: player.seekable
/*!
\qmlproperty url Video::source
This property holds the source URL of the media.
*/
property alias source: player.source
/*!
\since 6.7
\qmlproperty bool Video::autoPlay
This property controls whether the media begins to play automatically after it gets loaded.
Defaults to \c false.
*/
property alias autoPlay: player.autoPlay
/*!
\qmlproperty real Video::volume
This property holds the audio volume.
The volume is scaled linearly from \c 0.0 (silence) to \c 1.0
(full volume). Values outside this range will be clamped.
The default volume is \c 1.0.
UI volume controls should usually be scaled nonlinearly. For example,
using a logarithmic scale will produce linear changes in perceived
loudness, which is what a user would normally expect from a volume
control. See \l {QtAudio::convertVolume()} for more details.
*/
property alias volume: audioOutput.volume
/*!
\qmlsignal Video::paused()
This signal is emitted when playback is paused.
*/
signal paused
/*!
\qmlsignal Video::stopped()
This signal is emitted when playback is stopped.
*/
signal stopped
/*!
\qmlsignal Video::playing()
This signal is emitted when playback is started or continued.
*/
signal playing
/*!
\qmlsignal Video::errorOccurred(error, errorString)
This signal is emitted when an \a error has occurred. The \a errorString
parameter may contain more detailed information about the error.
*/
signal errorOccurred(int error, string errorString)
VideoOutput {
id: videoOut
anchors.fill: video
}
MediaPlayer {
id: player
onPlaybackStateChanged: function(newState) {
if (newState === MediaPlayer.PausedState)
video.paused();
else if (newState === MediaPlayer.StoppedState)
video.stopped();
else
video.playing();
}
onErrorOccurred: function(error, errorString) {
video.errorOccurred(error, errorString);
}
videoOutput: videoOut
audioOutput: AudioOutput {
id: audioOutput
}
}
/*!
\qmlmethod Video::play()
Starts playback of the media.
*/
function play() {
player.play();
}
/*!
\qmlmethod Video::pause()
Pauses playback of the media.
*/
function pause() {
player.pause();
}
/*!
\qmlmethod Video::stop()
Stops playback of the media.
*/
function stop() {
player.stop();
}
/*!
\qmlmethod Video::seek(offset)
If the \l seekable property is true, seeks the current
playback position to \a offset.
\sa seekable, position
*/
function seek(offset) {
player.position = offset;
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,10 @@
module QtMultimedia
linktarget Qt6::quickmultimedia
plugin quickmultimediaplugin
classname QMultimediaQuickModule
typeinfo plugins.qmltypes
depends QtQuick
prefer :/qt-project.org/imports/QtMultimedia/
Video 6.0 Video.qml
Video 5.0 Video.qml
@@ -0,0 +1,538 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "qabstractsocket.h"
name: "QAbstractSocket"
accessSemantics: "reference"
prototype: "QIODevice"
Enum {
name: "SocketType"
values: [
"TcpSocket",
"UdpSocket",
"SctpSocket",
"UnknownSocketType"
]
}
Enum {
name: "NetworkLayerProtocol"
values: [
"IPv4Protocol",
"IPv6Protocol",
"AnyIPProtocol",
"UnknownNetworkLayerProtocol"
]
}
Enum {
name: "SocketError"
values: [
"ConnectionRefusedError",
"RemoteHostClosedError",
"HostNotFoundError",
"SocketAccessError",
"SocketResourceError",
"SocketTimeoutError",
"DatagramTooLargeError",
"NetworkError",
"AddressInUseError",
"SocketAddressNotAvailableError",
"UnsupportedSocketOperationError",
"UnfinishedSocketOperationError",
"ProxyAuthenticationRequiredError",
"SslHandshakeFailedError",
"ProxyConnectionRefusedError",
"ProxyConnectionClosedError",
"ProxyConnectionTimeoutError",
"ProxyNotFoundError",
"ProxyProtocolError",
"OperationError",
"SslInternalError",
"SslInvalidUserDataError",
"TemporaryError",
"UnknownSocketError"
]
}
Enum {
name: "SocketState"
values: [
"UnconnectedState",
"HostLookupState",
"ConnectingState",
"ConnectedState",
"BoundState",
"ListeningState",
"ClosingState"
]
}
Enum {
name: "SocketOption"
values: [
"LowDelayOption",
"KeepAliveOption",
"MulticastTtlOption",
"MulticastLoopbackOption",
"TypeOfServiceOption",
"SendBufferSizeSocketOption",
"ReceiveBufferSizeSocketOption",
"PathMtuSocketOption"
]
}
Signal { name: "hostFound" }
Signal { name: "connected" }
Signal { name: "disconnected" }
Signal {
name: "stateChanged"
Parameter { type: "QAbstractSocket::SocketState" }
}
Signal {
name: "errorOccurred"
Parameter { type: "QAbstractSocket::SocketError" }
}
Signal {
name: "proxyAuthenticationRequired"
Parameter { name: "proxy"; type: "QNetworkProxy" }
Parameter { name: "authenticator"; type: "QAuthenticator"; isPointer: true }
}
Method { name: "_q_connectToNextAddress" }
Method {
name: "_q_startConnecting"
Parameter { type: "QHostInfo" }
}
Method { name: "_q_abortConnectionAttempt" }
Method { name: "_q_testConnection" }
}
Component {
file: "qiodevice.h"
name: "QIODevice"
accessSemantics: "reference"
prototype: "QObject"
Signal { name: "readyRead" }
Signal {
name: "channelReadyRead"
Parameter { name: "channel"; type: "int" }
}
Signal {
name: "bytesWritten"
Parameter { name: "bytes"; type: "qlonglong" }
}
Signal {
name: "channelBytesWritten"
Parameter { name: "channel"; type: "int" }
Parameter { name: "bytes"; type: "qlonglong" }
}
Signal { name: "aboutToClose" }
Signal { name: "readChannelFinished" }
}
Component {
file: "private/qqmlnetworkinformation_p.h"
name: "QNetworkInformation"
accessSemantics: "reference"
prototype: "QObject"
exports: ["QtNetwork/NetworkInformation 6.7"]
isCreatable: false
isSingleton: true
enforcesScopedEnums: true
exportMetaObjectRevisions: [1543]
Enum {
name: "Reachability"
isScoped: true
values: ["Unknown", "Disconnected", "Local", "Site", "Online"]
}
Enum {
name: "TransportMedium"
isScoped: true
values: ["Unknown", "Ethernet", "Cellular", "WiFi", "Bluetooth"]
}
Enum {
name: "Features"
alias: "Feature"
isFlag: true
isScoped: true
values: [
"Reachability",
"CaptivePortal",
"TransportMedium",
"Metered"
]
}
Property {
name: "reachability"
type: "Reachability"
read: "reachability"
notify: "reachabilityChanged"
index: 0
isReadonly: true
}
Property {
name: "isBehindCaptivePortal"
type: "bool"
read: "isBehindCaptivePortal"
notify: "isBehindCaptivePortalChanged"
index: 1
isReadonly: true
}
Property {
name: "transportMedium"
type: "TransportMedium"
read: "transportMedium"
notify: "transportMediumChanged"
index: 2
isReadonly: true
}
Property {
name: "isMetered"
type: "bool"
read: "isMetered"
notify: "isMeteredChanged"
index: 3
isReadonly: true
}
Signal {
name: "reachabilityChanged"
Parameter { name: "newReachability"; type: "QNetworkInformation::Reachability" }
}
Signal {
name: "isBehindCaptivePortalChanged"
Parameter { name: "state"; type: "bool" }
}
Signal {
name: "transportMediumChanged"
Parameter { name: "current"; type: "QNetworkInformation::TransportMedium" }
}
Signal {
name: "isMeteredChanged"
Parameter { name: "isMetered"; type: "bool" }
}
}
Component {
file: "private/qqmlsslconfiguration_p.h"
name: "QQmlSslConfiguration"
accessSemantics: "value"
Property { name: "ciphers"; type: "QString"; read: "ciphers"; write: "setCiphers"; index: 0 }
Property {
name: "sslOptions"
type: "QSsl::SslOption"
isList: true
read: "sslOptions"
write: "setSslOptions"
index: 1
}
Property {
name: "protocol"
type: "QSsl::SslProtocol"
read: "protocol"
write: "setProtocol"
index: 2
}
Property {
name: "peerVerifyMode"
type: "QSslSocket::PeerVerifyMode"
read: "peerVerifyMode"
write: "setPeerVerifyMode"
index: 3
}
Property {
name: "peerVerifyDepth"
type: "int"
read: "peerVerifyDepth"
write: "setPeerVerifyDepth"
index: 4
}
Property {
name: "sessionTicket"
type: "QByteArray"
read: "sessionTicket"
write: "setSessionTicket"
index: 5
}
Method {
name: "setCertificateFiles"
Parameter { name: "certificateFiles"; type: "QStringList" }
}
Method {
name: "setPrivateKey"
Parameter { name: "privateKey"; type: "QQmlSslKey" }
}
}
Component {
file: "private/qqmlsslconfiguration_p.h"
name: "QQmlSslDefaultConfiguration"
accessSemantics: "value"
prototype: "QQmlSslConfiguration"
exports: ["QtNetwork/sslConfiguration 6.7"]
isCreatable: false
exportMetaObjectRevisions: [1543]
}
Component {
file: "private/qqmlsslconfiguration_p.h"
name: "QQmlSslDefaultDtlsConfiguration"
accessSemantics: "value"
prototype: "QQmlSslConfiguration"
exports: ["QtNetwork/sslDtlsConfiguration 6.7"]
isCreatable: false
exportMetaObjectRevisions: [1543]
}
Component {
file: "private/qqmlsslkey_p.h"
name: "QQmlSslKey"
accessSemantics: "value"
exports: ["QtNetwork/sslKey 6.7"]
isCreatable: false
exportMetaObjectRevisions: [1543]
Property { name: "keyFile"; type: "QString"; read: "keyFile"; write: "setKeyFile"; index: 0 }
Property {
name: "keyAlgorithm"
type: "QSsl::KeyAlgorithm"
read: "keyAlgorithm"
write: "setKeyAlgorithm"
index: 1
}
Property {
name: "keyFormat"
type: "QSsl::EncodingFormat"
read: "keyFormat"
write: "setKeyFormat"
index: 2
}
Property {
name: "keyPassPhrase"
type: "QByteArray"
read: "keyPassPhrase"
write: "setKeyPassPhrase"
index: 3
}
Property { name: "keyType"; type: "QSsl::KeyType"; read: "keyType"; write: "setKeyType"; index: 4 }
}
Component {
file: "private/qqmlsslnamespace_p.h"
name: "QSsl"
accessSemantics: "none"
exports: ["QtNetwork/Ssl 6.7"]
isCreatable: false
exportMetaObjectRevisions: [1543]
Enum {
name: "KeyType"
values: ["PrivateKey", "PublicKey"]
}
Enum {
name: "EncodingFormat"
values: ["Pem", "Der"]
}
Enum {
name: "KeyAlgorithm"
values: ["Opaque", "Rsa", "Dsa", "Ec", "Dh"]
}
Enum {
name: "AlternativeNameEntryType"
values: ["EmailEntry", "DnsEntry", "IpAddressEntry"]
}
Enum {
name: "SslProtocol"
values: [
"TlsV1_0",
"TlsV1_1",
"TlsV1_2",
"AnyProtocol",
"SecureProtocols",
"TlsV1_0OrLater",
"TlsV1_1OrLater",
"TlsV1_2OrLater",
"DtlsV1_0",
"DtlsV1_0OrLater",
"DtlsV1_2",
"DtlsV1_2OrLater",
"TlsV1_3",
"TlsV1_3OrLater",
"UnknownProtocol"
]
}
Enum {
name: "SslOption"
values: [
"SslOptionDisableEmptyFragments",
"SslOptionDisableSessionTickets",
"SslOptionDisableCompression",
"SslOptionDisableServerNameIndication",
"SslOptionDisableLegacyRenegotiation",
"SslOptionDisableSessionSharing",
"SslOptionDisableSessionPersistence",
"SslOptionDisableServerCipherPreference"
]
}
Enum {
name: "AlertLevel"
isScoped: true
values: ["Warning", "Fatal", "Unknown"]
}
Enum {
name: "AlertType"
isScoped: true
values: [
"CloseNotify",
"UnexpectedMessage",
"BadRecordMac",
"RecordOverflow",
"DecompressionFailure",
"HandshakeFailure",
"NoCertificate",
"BadCertificate",
"UnsupportedCertificate",
"CertificateRevoked",
"CertificateExpired",
"CertificateUnknown",
"IllegalParameter",
"UnknownCa",
"AccessDenied",
"DecodeError",
"DecryptError",
"ExportRestriction",
"ProtocolVersion",
"InsufficientSecurity",
"InternalError",
"InappropriateFallback",
"UserCancelled",
"NoRenegotiation",
"MissingExtension",
"UnsupportedExtension",
"CertificateUnobtainable",
"UnrecognizedName",
"BadCertificateStatusResponse",
"BadCertificateHashValue",
"UnknownPskIdentity",
"CertificateRequired",
"NoApplicationProtocol",
"UnknownAlertMessage"
]
}
Enum {
name: "ImplementedClass"
isScoped: true
values: [
"Key",
"Certificate",
"Socket",
"DiffieHellman",
"EllipticCurve",
"Dtls",
"DtlsCookie"
]
}
Enum {
name: "SupportedFeature"
isScoped: true
values: [
"CertificateVerification",
"ClientSideAlpn",
"ServerSideAlpn",
"Ocsp",
"Psk",
"SessionTicket",
"Alerts"
]
}
}
Component {
file: "qtcpsocket.h"
name: "QTcpSocket"
accessSemantics: "reference"
prototype: "QAbstractSocket"
}
Component {
file: "private/qqmlsslsocketnamespace_p.h"
name: "QSslSocket"
accessSemantics: "none"
prototype: "QTcpSocket"
exports: ["QtNetwork/SslSocket 6.7"]
isCreatable: false
exportMetaObjectRevisions: [1543]
Enum {
name: "SslMode"
values: ["UnencryptedMode", "SslClientMode", "SslServerMode"]
}
Enum {
name: "PeerVerifyMode"
values: [
"VerifyNone",
"QueryPeer",
"VerifyPeer",
"AutoVerifyPeer"
]
}
Signal { name: "encrypted" }
Signal {
name: "peerVerifyError"
Parameter { name: "error"; type: "QSslError" }
}
Signal {
name: "sslErrors"
Parameter { name: "errors"; type: "QSslError"; isList: true }
}
Signal {
name: "modeChanged"
Parameter { name: "newMode"; type: "QSslSocket::SslMode" }
}
Signal {
name: "encryptedBytesWritten"
Parameter { name: "totalBytes"; type: "qlonglong" }
}
Signal {
name: "preSharedKeyAuthenticationRequired"
Parameter { name: "authenticator"; type: "QSslPreSharedKeyAuthenticator"; isPointer: true }
}
Signal { name: "newSessionTicketReceived" }
Signal {
name: "alertSent"
Parameter { name: "level"; type: "QSsl::AlertLevel" }
Parameter { name: "type"; type: "QSsl::AlertType" }
Parameter { name: "description"; type: "QString" }
}
Signal {
name: "alertReceived"
Parameter { name: "level"; type: "QSsl::AlertLevel" }
Parameter { name: "type"; type: "QSsl::AlertType" }
Parameter { name: "description"; type: "QString" }
}
Signal {
name: "handshakeInterruptedOnError"
Parameter { name: "error"; type: "QSslError" }
}
Method { name: "startClientEncryption" }
Method { name: "startServerEncryption" }
Method { name: "ignoreSslErrors" }
Method { name: "_q_connectedSlot" }
Method { name: "_q_hostFoundSlot" }
Method { name: "_q_disconnectedSlot" }
Method {
name: "_q_stateChangedSlot"
Parameter { type: "QAbstractSocket::SocketState" }
}
Method {
name: "_q_errorSlot"
Parameter { type: "QAbstractSocket::SocketError" }
}
Method { name: "_q_readyReadSlot" }
Method {
name: "_q_channelReadyReadSlot"
Parameter { type: "int" }
}
Method {
name: "_q_bytesWrittenSlot"
Parameter { type: "qlonglong" }
}
Method {
name: "_q_channelBytesWrittenSlot"
Parameter { type: "int" }
Parameter { type: "qlonglong" }
}
Method { name: "_q_readChannelFinishedSlot" }
Method { name: "_q_flushWriteBuffer" }
Method { name: "_q_flushReadBuffer" }
Method { name: "_q_resumeImplementation" }
}
}
@@ -0,0 +1,9 @@
module QtNetwork
linktarget Qt6::QmlNetworkplugin
optional plugin qmlnetworkplugin
classname QtNetworkPlugin
designersupported
typeinfo plugins.qmltypes
depends QtQml auto
prefer :/qt-project.org/imports/QtNetwork/
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,8 @@
module QtPositioning
linktarget Qt6::positioningquickplugin
plugin positioningquickplugin
classname QtPositioningDeclarativeModule
typeinfo plugins.qmltypes
depends QtQuick auto
prefer :/qt-project.org/imports/QtPositioning/
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,9 @@
module QtQml.Models
linktarget Qt6::modelsplugin
optional plugin modelsplugin
classname QtQmlModelsPlugin
designersupported
typeinfo plugins.qmltypes
depends QML 1.0
prefer :/qt-project.org/imports/QtQml/Models/
@@ -0,0 +1,425 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "private/finalstate_p.h"
name: "FinalState"
accessSemantics: "reference"
defaultProperty: "children"
prototype: "QFinalState"
exports: [
"QtQml.StateMachine/FinalState 1.0",
"QtQml.StateMachine/FinalState 6.0"
]
exportMetaObjectRevisions: [256, 1536]
Property {
name: "children"
type: "QObject"
isList: true
bindable: "bindableChildren"
read: "children"
notify: "childrenChanged"
index: 0
isReadonly: true
}
Signal { name: "childrenChanged" }
}
Component {
file: "private/statemachineforeign_p.h"
name: "QAbstractState"
accessSemantics: "reference"
prototype: "QObject"
exports: [
"QtQml.StateMachine/QAbstractState 1.0",
"QtQml.StateMachine/QAbstractState 6.0"
]
isCreatable: false
exportMetaObjectRevisions: [256, 1536]
Property {
name: "active"
type: "bool"
bindable: "bindableActive"
read: "active"
notify: "activeChanged"
index: 0
isReadonly: true
}
Signal { name: "entered" }
Signal { name: "exited" }
Signal {
name: "activeChanged"
Parameter { name: "active"; type: "bool" }
}
}
Component {
file: "qabstracttransition.h"
name: "QAbstractTransition"
accessSemantics: "reference"
prototype: "QObject"
Enum {
name: "TransitionType"
values: ["ExternalTransition", "InternalTransition"]
}
Property {
name: "sourceState"
type: "QState"
isPointer: true
read: "sourceState"
index: 0
isReadonly: true
}
Property {
name: "targetState"
type: "QAbstractState"
isPointer: true
read: "targetState"
write: "setTargetState"
notify: "targetStateChanged"
index: 1
}
Property {
name: "targetStates"
type: "QList<QAbstractState*>"
read: "targetStates"
write: "setTargetStates"
notify: "targetStatesChanged"
index: 2
}
Property {
name: "transitionType"
revision: 257
type: "TransitionType"
bindable: "bindableTransitionType"
read: "transitionType"
write: "setTransitionType"
index: 3
}
Signal { name: "triggered" }
Signal { name: "targetStateChanged" }
Signal { name: "targetStatesChanged" }
}
Component {
file: "qfinalstate.h"
name: "QFinalState"
accessSemantics: "reference"
prototype: "QAbstractState"
}
Component {
file: "private/statemachineforeign_p.h"
name: "QHistoryState"
accessSemantics: "reference"
prototype: "QAbstractState"
exports: [
"QtQml.StateMachine/HistoryState 1.0",
"QtQml.StateMachine/HistoryState 6.0"
]
exportMetaObjectRevisions: [256, 1536]
Enum {
name: "HistoryType"
values: ["ShallowHistory", "DeepHistory"]
}
Property {
name: "defaultState"
type: "QAbstractState"
isPointer: true
read: "defaultState"
write: "setDefaultState"
notify: "defaultStateChanged"
index: 0
}
Property {
name: "defaultTransition"
type: "QAbstractTransition"
isPointer: true
bindable: "bindableDefaultTransition"
read: "defaultTransition"
write: "setDefaultTransition"
notify: "defaultTransitionChanged"
index: 1
}
Property {
name: "historyType"
type: "HistoryType"
bindable: "bindableHistoryType"
read: "historyType"
write: "setHistoryType"
notify: "historyTypeChanged"
index: 2
}
Signal { name: "defaultTransitionChanged" }
Signal { name: "defaultStateChanged" }
Signal { name: "historyTypeChanged" }
}
Component {
file: "private/statemachineforeign_p.h"
name: "QSignalTransition"
accessSemantics: "reference"
prototype: "QAbstractTransition"
exports: [
"QtQml.StateMachine/QSignalTransition 1.0",
"QtQml.StateMachine/QSignalTransition 1.1",
"QtQml.StateMachine/QSignalTransition 6.0"
]
isCreatable: false
exportMetaObjectRevisions: [256, 257, 1536]
Property {
name: "senderObject"
type: "QObject"
isPointer: true
isConstant: true
bindable: "bindableSenderObject"
read: "senderObject"
write: "setSenderObject"
notify: "senderObjectChanged"
index: 0
}
Property {
name: "signal"
type: "QByteArray"
bindable: "bindableSignal"
read: "signal"
write: "setSignal"
notify: "signalChanged"
index: 1
}
Signal { name: "senderObjectChanged" }
Signal { name: "signalChanged" }
}
Component {
file: "private/statemachineforeign_p.h"
name: "QState"
accessSemantics: "reference"
prototype: "QAbstractState"
exports: [
"QtQml.StateMachine/QState 1.0",
"QtQml.StateMachine/QState 6.0"
]
isCreatable: false
exportMetaObjectRevisions: [256, 1536]
Enum {
name: "ChildMode"
values: ["ExclusiveStates", "ParallelStates"]
}
Enum {
name: "RestorePolicy"
values: ["DontRestoreProperties", "RestoreProperties"]
}
Property {
name: "initialState"
type: "QAbstractState"
isPointer: true
bindable: "bindableInitialState"
read: "initialState"
write: "setInitialState"
notify: "initialStateChanged"
index: 0
}
Property {
name: "errorState"
type: "QAbstractState"
isPointer: true
bindable: "bindableErrorState"
read: "errorState"
write: "setErrorState"
notify: "errorStateChanged"
index: 1
}
Property {
name: "childMode"
type: "ChildMode"
bindable: "bindableChildMode"
read: "childMode"
write: "setChildMode"
notify: "childModeChanged"
index: 2
}
Signal { name: "finished" }
Signal { name: "propertiesAssigned" }
Signal { name: "childModeChanged" }
Signal { name: "initialStateChanged" }
Signal { name: "errorStateChanged" }
}
Component {
file: "qstatemachine.h"
name: "QStateMachine"
accessSemantics: "reference"
prototype: "QState"
Property {
name: "errorString"
type: "QString"
bindable: "bindableErrorString"
read: "errorString"
index: 0
isReadonly: true
}
Property {
name: "globalRestorePolicy"
type: "QState::RestorePolicy"
bindable: "bindableGlobalRestorePolicy"
read: "globalRestorePolicy"
write: "setGlobalRestorePolicy"
index: 1
}
Property {
name: "running"
type: "bool"
read: "isRunning"
write: "setRunning"
notify: "runningChanged"
index: 2
}
Property {
name: "animated"
type: "bool"
bindable: "bindableAnimated"
read: "isAnimated"
write: "setAnimated"
index: 3
}
Signal { name: "started" }
Signal { name: "stopped" }
Signal {
name: "runningChanged"
Parameter { name: "running"; type: "bool" }
}
Method { name: "start" }
Method { name: "stop" }
Method {
name: "setRunning"
Parameter { name: "running"; type: "bool" }
}
Method { name: "_q_start" }
Method { name: "_q_process" }
Method { name: "_q_animationFinished" }
Method {
name: "_q_startDelayedEventTimer"
Parameter { type: "int" }
Parameter { type: "int" }
}
Method {
name: "_q_killDelayedEventTimer"
Parameter { type: "int" }
Parameter { type: "int" }
}
}
Component {
file: "private/signaltransition_p.h"
name: "SignalTransition"
accessSemantics: "reference"
prototype: "QSignalTransition"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml.StateMachine/SignalTransition 1.0",
"QtQml.StateMachine/SignalTransition 1.1",
"QtQml.StateMachine/SignalTransition 6.0"
]
hasCustomParser: true
exportMetaObjectRevisions: [256, 257, 1536]
Property {
name: "signal"
type: "QJSValue"
bindable: "bindableSignal"
read: "signal"
write: "setSignal"
notify: "qmlSignalChanged"
index: 0
}
Property {
name: "guard"
type: "QQmlScriptString"
bindable: "bindableGuard"
read: "guard"
write: "setGuard"
notify: "guardChanged"
index: 1
}
Signal { name: "guardChanged" }
Signal { name: "invokeYourself" }
Signal { name: "qmlSignalChanged" }
Method { name: "invoke" }
}
Component {
file: "private/state_p.h"
name: "State"
accessSemantics: "reference"
defaultProperty: "children"
prototype: "QState"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml.StateMachine/State 1.0",
"QtQml.StateMachine/State 6.0"
]
exportMetaObjectRevisions: [256, 1536]
Property {
name: "children"
type: "QObject"
isList: true
bindable: "bindableChildren"
read: "children"
notify: "childrenChanged"
index: 0
isReadonly: true
}
Signal { name: "childrenChanged" }
}
Component {
file: "private/statemachine_p.h"
name: "StateMachine"
accessSemantics: "reference"
defaultProperty: "children"
prototype: "QStateMachine"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml.StateMachine/StateMachine 1.0",
"QtQml.StateMachine/StateMachine 6.0"
]
exportMetaObjectRevisions: [256, 1536]
Property {
name: "children"
type: "QObject"
isList: true
bindable: "bindableChildren"
read: "children"
notify: "childrenChanged"
index: 0
isReadonly: true
}
Property {
name: "running"
type: "bool"
read: "isRunning"
write: "setRunning"
notify: "qmlRunningChanged"
index: 1
}
Signal { name: "childrenChanged" }
Signal { name: "qmlRunningChanged" }
Method { name: "checkChildMode" }
}
Component {
file: "private/timeouttransition_p.h"
name: "TimeoutTransition"
accessSemantics: "reference"
prototype: "QSignalTransition"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml.StateMachine/TimeoutTransition 1.0",
"QtQml.StateMachine/TimeoutTransition 1.1",
"QtQml.StateMachine/TimeoutTransition 6.0"
]
exportMetaObjectRevisions: [256, 257, 1536]
Property {
name: "timeout"
type: "int"
bindable: "bindableTimeout"
read: "timeout"
write: "setTimeout"
index: 0
}
}
}
@@ -0,0 +1,8 @@
module QtQml.StateMachine
linktarget Qt6::qtqmlstatemachine
optional plugin qtqmlstatemachineplugin
classname QtQmlStateMachinePlugin
typeinfo plugins.qmltypes
depends QtQml
prefer :/qt-project.org/imports/QtQml/StateMachine/
@@ -0,0 +1,46 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "private/qquickworkerscript_p.h"
name: "QQuickWorkerScript"
accessSemantics: "reference"
prototype: "QObject"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml.WorkerScript/WorkerScript 2.0",
"QtQml.WorkerScript/WorkerScript 2.15",
"QtQml.WorkerScript/WorkerScript 6.0"
]
exportMetaObjectRevisions: [512, 527, 1536]
Property {
name: "source"
type: "QUrl"
read: "source"
write: "setSource"
notify: "sourceChanged"
index: 0
}
Property {
name: "ready"
revision: 527
type: "bool"
read: "ready"
notify: "readyChanged"
index: 1
isReadonly: true
}
Signal { name: "sourceChanged" }
Signal { name: "readyChanged"; revision: 527 }
Signal {
name: "message"
Parameter { name: "messageObject"; type: "QJSValue" }
}
Method { name: "sendMessage"; isJavaScriptFunction: true }
}
}
@@ -0,0 +1,9 @@
module QtQml.WorkerScript
linktarget Qt6::workerscriptplugin
optional plugin workerscriptplugin
classname QtQmlWorkerScriptPlugin
designersupported
typeinfo plugins.qmltypes
depends QML 1.0
prefer :/qt-project.org/imports/QtQml/WorkerScript/
@@ -0,0 +1,143 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "private/qqmlxmllistmodel_p.h"
name: "QQmlXmlListModel"
accessSemantics: "reference"
defaultProperty: "roles"
prototype: "QAbstractListModel"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml.XmlListModel/XmlListModel 6.0",
"QtQml.XmlListModel/XmlListModel 6.4"
]
exportMetaObjectRevisions: [1536, 1540]
Enum {
name: "Status"
values: ["Null", "Ready", "Loading", "Error"]
}
Property {
name: "status"
type: "Status"
read: "status"
notify: "statusChanged"
index: 0
isReadonly: true
}
Property {
name: "progress"
type: "double"
read: "progress"
notify: "progressChanged"
index: 1
isReadonly: true
}
Property {
name: "source"
type: "QUrl"
read: "source"
write: "setSource"
notify: "sourceChanged"
index: 2
}
Property {
name: "query"
type: "QString"
read: "query"
write: "setQuery"
notify: "queryChanged"
index: 3
}
Property {
name: "roles"
type: "QQmlXmlListModelRole"
isList: true
read: "roleObjects"
index: 4
isReadonly: true
}
Property {
name: "count"
type: "int"
read: "count"
notify: "countChanged"
index: 5
isReadonly: true
}
Signal {
name: "statusChanged"
Parameter { type: "QQmlXmlListModel::Status" }
}
Signal {
name: "progressChanged"
Parameter { name: "progress"; type: "double" }
}
Signal { name: "countChanged" }
Signal { name: "sourceChanged" }
Signal { name: "queryChanged" }
Method { name: "reload" }
Method { name: "requestFinished" }
Method {
name: "requestProgress"
Parameter { type: "qlonglong" }
Parameter { type: "qlonglong" }
}
Method { name: "dataCleared" }
Method {
name: "queryCompleted"
Parameter { type: "QQmlXmlListModelQueryResult" }
}
Method {
name: "queryError"
Parameter { name: "object"; type: "void"; isPointer: true }
Parameter { name: "error"; type: "QString" }
}
Method { name: "errorString"; type: "QString" }
}
Component {
file: "private/qqmlxmllistmodel_p.h"
name: "QQmlXmlListModelQueryResult"
accessSemantics: "value"
}
Component {
file: "private/qqmlxmllistmodel_p.h"
name: "QQmlXmlListModelRole"
accessSemantics: "reference"
prototype: "QObject"
exports: ["QtQml.XmlListModel/XmlListModelRole 6.0"]
exportMetaObjectRevisions: [1536]
Property {
name: "name"
type: "QString"
read: "name"
write: "setName"
notify: "nameChanged"
index: 0
}
Property {
name: "elementName"
type: "QString"
read: "elementName"
write: "setElementName"
notify: "elementNameChanged"
index: 1
}
Property {
name: "attributeName"
type: "QString"
read: "attributeName"
write: "setAttributeName"
notify: "attributeNameChanged"
index: 2
}
Signal { name: "nameChanged" }
Signal { name: "elementNameChanged" }
Signal { name: "attributeNameChanged" }
}
}
@@ -0,0 +1,8 @@
module QtQml.XmlListModel
linktarget Qt6::qmlxmllistmodelplugin
optional plugin qmlxmllistmodelplugin
classname QtQmlXmlListModelPlugin
typeinfo plugins.qmltypes
depends QtQml auto
prefer :/qt-project.org/imports/QtQml/XmlListModel/
@@ -0,0 +1,207 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "private/qqmlbind_p.h"
name: "QQmlBind"
accessSemantics: "reference"
prototype: "QObject"
interfaces: ["QQmlParserStatus", "QQmlPropertyValueSource"]
immediateNames: [
"objectName",
"target",
"property",
"value",
"when",
"delayed",
"restoreMode"
]
exports: [
"QtQml/Binding 2.0",
"QtQml/Binding 2.8",
"QtQml/Binding 2.14",
"QtQml/Binding 6.0"
]
exportMetaObjectRevisions: [512, 520, 526, 1536]
Enum {
name: "RestorationMode"
values: [
"RestoreNone",
"RestoreBinding",
"RestoreValue",
"RestoreBindingOrValue"
]
}
Property {
name: "target"
type: "QObject"
isPointer: true
read: "object"
write: "setObject"
index: 0
}
Property { name: "property"; type: "QString"; read: "property"; write: "setProperty"; index: 1 }
Property { name: "value"; type: "QVariant"; read: "value"; write: "setValue"; index: 2 }
Property { name: "when"; type: "bool"; read: "when"; write: "setWhen"; index: 3 }
Property {
name: "delayed"
revision: 520
type: "bool"
read: "delayed"
write: "setDelayed"
index: 4
}
Property {
name: "restoreMode"
revision: 526
type: "RestorationMode"
read: "restoreMode"
write: "setRestoreMode"
notify: "restoreModeChanged"
index: 5
}
Signal { name: "restoreModeChanged" }
Method { name: "targetValueChanged" }
}
Component {
file: "private/qqmlconnections_p.h"
name: "QQmlConnections"
accessSemantics: "reference"
prototype: "QObject"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml/Connections 2.0",
"QtQml/Connections 2.3",
"QtQml/Connections 6.0"
]
hasCustomParser: true
exportMetaObjectRevisions: [512, 515, 1536]
Property {
name: "target"
type: "QObject"
isPointer: true
read: "target"
write: "setTarget"
notify: "targetChanged"
index: 0
}
Property {
name: "enabled"
revision: 515
type: "bool"
read: "isEnabled"
write: "setEnabled"
notify: "enabledChanged"
index: 1
}
Property {
name: "ignoreUnknownSignals"
type: "bool"
read: "ignoreUnknownSignals"
write: "setIgnoreUnknownSignals"
index: 2
}
Signal { name: "targetChanged" }
Signal { name: "enabledChanged"; revision: 515 }
}
Component {
file: "private/qqmllocaleenums_p.h"
name: "QQmlLocaleEnums"
accessSemantics: "none"
prototype: "QQmlLocale"
exports: ["QtQml/Locale 2.2", "QtQml/Locale 6.0"]
isCreatable: false
exportMetaObjectRevisions: [514, 1536]
}
Component {
file: "private/qqmlloggingcategory_p.h"
name: "QQmlLoggingCategory"
accessSemantics: "reference"
prototype: "QQmlLoggingCategoryBase"
interfaces: ["QQmlParserStatus"]
exports: [
"QtQml/LoggingCategory 2.8",
"QtQml/LoggingCategory 2.12",
"QtQml/LoggingCategory 6.0"
]
exportMetaObjectRevisions: [520, 524, 1536]
Enum {
name: "DefaultLogLevel"
values: ["Debug", "Info", "Warning", "Critical", "Fatal"]
}
Property { name: "name"; type: "QString"; read: "name"; write: "setName"; index: 0 }
Property {
name: "defaultLogLevel"
revision: 524
type: "DefaultLogLevel"
read: "defaultLogLevel"
write: "setDefaultLogLevel"
index: 1
}
}
Component {
file: "private/qqmltimer_p.h"
name: "QQmlTimer"
accessSemantics: "reference"
parentProperty: "parent"
prototype: "QObject"
interfaces: ["QQmlParserStatus"]
exports: ["QtQml/Timer 2.0", "QtQml/Timer 6.0"]
exportMetaObjectRevisions: [512, 1536]
Property {
name: "interval"
type: "int"
read: "interval"
write: "setInterval"
notify: "intervalChanged"
index: 0
}
Property {
name: "running"
type: "bool"
read: "isRunning"
write: "setRunning"
notify: "runningChanged"
index: 1
}
Property {
name: "repeat"
type: "bool"
read: "isRepeating"
write: "setRepeating"
notify: "repeatChanged"
index: 2
}
Property {
name: "triggeredOnStart"
type: "bool"
read: "triggeredOnStart"
write: "setTriggeredOnStart"
notify: "triggeredOnStartChanged"
index: 3
}
Property {
name: "parent"
type: "QObject"
isPointer: true
read: "parent"
index: 4
isReadonly: true
isConstant: true
}
Signal { name: "triggered" }
Signal { name: "runningChanged" }
Signal { name: "intervalChanged" }
Signal { name: "repeatChanged" }
Signal { name: "triggeredOnStartChanged" }
Method { name: "start" }
Method { name: "stop" }
Method { name: "restart" }
Method { name: "ticked" }
}
}
@@ -0,0 +1,12 @@
module QtQml
linktarget Qt6::qmlplugin
optional plugin qmlplugin
classname QtQmlPlugin
designersupported
system
typeinfo plugins.qmltypes
import QML 1.0
import QtQml.Models auto
import QtQml.WorkerScript auto
prefer :/qt-project.org/imports/QtQml/
@@ -0,0 +1,14 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.AbstractButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
}
@@ -0,0 +1,7 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.Action { }
@@ -0,0 +1,7 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.ActionGroup { }
@@ -0,0 +1,12 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ApplicationWindow {
id: window
color: window.palette.window
}
@@ -0,0 +1,29 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.Basic.impl
import QtQuick.Templates as T
T.BusyIndicator {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
contentItem: BusyIndicatorImpl {
implicitWidth: 48
implicitHeight: 48
pen: control.palette.dark
fill: control.palette.dark
running: control.running
opacity: control.running ? 1 : 0
Behavior on opacity { OpacityAnimator { duration: 250 } }
}
}
@@ -0,0 +1,46 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Button {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
horizontalPadding: padding + 2
spacing: 6
icon.width: 24
icon.height: 24
icon.color: control.checked || control.highlighted ? control.palette.brightText :
control.flat && !control.down ? (control.visualFocus ? control.palette.highlight : control.palette.windowText) : control.palette.buttonText
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
icon: control.icon
text: control.text
font: control.font
color: control.checked || control.highlighted ? control.palette.brightText :
control.flat && !control.down ? (control.visualFocus ? control.palette.highlight : control.palette.windowText) : control.palette.buttonText
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
visible: !control.flat || control.down || control.checked || control.highlighted
color: Color.blend(control.checked || control.highlighted ? control.palette.dark : control.palette.button,
control.palette.mid, control.down ? 0.5 : 0.0)
border.color: control.palette.highlight
border.width: control.visualFocus ? 2 : 0
}
}
@@ -0,0 +1,7 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.ButtonGroup { }
@@ -0,0 +1,8 @@
// Copyright (C) 2021 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
pragma Singleton
import QtQuick.Templates as T
T.Calendar {}
@@ -0,0 +1,6 @@
// Copyright (C) 2021 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick.Templates as T
T.CalendarModel {}
@@ -0,0 +1,59 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.CheckBox {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
// keep in sync with CheckDelegate.qml (shared CheckIndicator.qml was removed for performance reasons)
indicator: Rectangle {
implicitWidth: 28
implicitHeight: 28
x: control.text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2
y: control.topPadding + (control.availableHeight - height) / 2
color: control.down ? control.palette.light : control.palette.base
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.palette.mid
ColorImage {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
defaultColor: "#353637"
color: control.palette.text
source: "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/check.png"
visible: control.checkState === Qt.Checked
}
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: 16
height: 3
color: control.palette.text
visible: control.checkState === Qt.PartiallyChecked
}
}
contentItem: CheckLabel {
leftPadding: control.indicator && !control.mirrored ? control.indicator.width + control.spacing : 0
rightPadding: control.indicator && control.mirrored ? control.indicator.width + control.spacing : 0
text: control.text
font: control.font
color: control.palette.windowText
}
}
@@ -0,0 +1,76 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.CheckDelegate {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 12
spacing: 12
icon.width: 24
icon.height: 24
icon.color: control.palette.text
contentItem: IconLabel {
leftPadding: control.mirrored ? control.indicator.width + control.spacing : 0
rightPadding: !control.mirrored ? control.indicator.width + control.spacing : 0
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: control.display === IconLabel.IconOnly || control.display === IconLabel.TextUnderIcon ? Qt.AlignCenter : Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.palette.text
}
// keep in sync with CheckBox.qml (shared CheckIndicator.qml was removed for performance reasons)
indicator: Rectangle {
implicitWidth: 28
implicitHeight: 28
x: control.mirrored ? control.leftPadding : control.width - width - control.rightPadding
y: control.topPadding + (control.availableHeight - height) / 2
color: control.down ? control.palette.light : control.palette.base
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.palette.mid
ColorImage {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
defaultColor: "#353637"
color: control.palette.text
source: "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/check.png"
visible: control.checkState === Qt.Checked
}
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: 16
height: 3
color: control.palette.text
visible: control.checkState === Qt.PartiallyChecked
}
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
visible: control.down || control.highlighted
color: control.down ? control.palette.midlight : control.palette.light
}
}
@@ -0,0 +1,112 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ComboBox {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
leftPadding: padding + (!control.mirrored || !indicator || !indicator.visible ? 0 : indicator.width + spacing)
rightPadding: padding + (control.mirrored || !indicator || !indicator.visible ? 0 : indicator.width + spacing)
delegate: ItemDelegate {
required property var model
required property int index
width: ListView.view.width
text: model[control.textRole]
palette.text: control.palette.text
palette.highlightedText: control.palette.highlightedText
font.weight: control.currentIndex === index ? Font.DemiBold : Font.Normal
highlighted: control.highlightedIndex === index
hoverEnabled: control.hoverEnabled
}
indicator: ColorImage {
x: control.mirrored ? control.padding : control.width - width - control.padding
y: control.topPadding + (control.availableHeight - height) / 2
color: control.palette.dark
defaultColor: "#353637"
source: "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/double-arrow.png"
opacity: enabled ? 1 : 0.3
}
contentItem: T.TextField {
leftPadding: !control.mirrored ? 12 : control.editable && activeFocus ? 3 : 1
rightPadding: control.mirrored ? 12 : control.editable && activeFocus ? 3 : 1
topPadding: 6 - control.padding
bottomPadding: 6 - control.padding
text: control.editable ? control.editText : control.displayText
enabled: control.editable
autoScroll: control.editable
readOnly: control.down
inputMethodHints: control.inputMethodHints
validator: control.validator
selectByMouse: control.selectTextByMouse
color: control.editable ? control.palette.text : control.palette.buttonText
selectionColor: control.palette.highlight
selectedTextColor: control.palette.highlightedText
verticalAlignment: Text.AlignVCenter
background: Rectangle {
visible: control.enabled && control.editable && !control.flat
border.width: parent && parent.activeFocus ? 2 : 1
border.color: parent && parent.activeFocus ? control.palette.highlight : control.palette.button
color: control.palette.base
}
}
background: Rectangle {
implicitWidth: 140
implicitHeight: 40
color: control.down ? control.palette.mid : control.palette.button
border.color: control.palette.highlight
border.width: !control.editable && control.visualFocus ? 2 : 0
visible: !control.flat || control.down
}
popup: T.Popup {
y: control.height
width: control.width
height: Math.min(contentItem.implicitHeight, control.Window.height - topMargin - bottomMargin)
topMargin: 6
bottomMargin: 6
palette: control.palette
contentItem: ListView {
clip: true
implicitHeight: contentHeight
model: control.delegateModel
currentIndex: control.highlightedIndex
highlightMoveDuration: 0
Rectangle {
z: 10
width: parent.width
height: parent.height
color: "transparent"
border.color: control.palette.mid
}
T.ScrollIndicator.vertical: ScrollIndicator { }
}
background: Rectangle {
color: control.palette.window
}
}
}
@@ -0,0 +1,14 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.Container {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
}
@@ -0,0 +1,14 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.Control {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
}
@@ -0,0 +1,40 @@
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.AbstractDayOfWeekRow {
id: control
implicitWidth: Math.max(background ? background.implicitWidth : 0,
contentItem.implicitWidth + leftPadding + rightPadding)
implicitHeight: Math.max(background ? background.implicitHeight : 0,
contentItem.implicitHeight + topPadding + bottomPadding)
spacing: 6
topPadding: 6
bottomPadding: 6
font.bold: true
//! [delegate]
delegate: Text {
text: shortName
font: control.font
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
required property string shortName
}
//! [delegate]
//! [contentItem]
contentItem: Row {
spacing: control.spacing
Repeater {
model: control.source
delegate: control.delegate
}
}
//! [contentItem]
}
@@ -0,0 +1,71 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.DelayButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
horizontalPadding: padding + 2
transition: Transition {
NumberAnimation {
duration: control.delay * (control.pressed ? 1.0 - control.progress : 0.3 * control.progress)
}
}
contentItem: ItemGroup {
ClippedText {
clip: control.progress > 0
clipX: -control.leftPadding + control.progress * control.width
clipWidth: (1.0 - control.progress) * control.width
visible: control.progress < 1
text: control.text
font: control.font
opacity: enabled ? 1 : 0.3
color: control.palette.buttonText
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
elide: Text.ElideRight
}
ClippedText {
clip: control.progress > 0
clipX: -control.leftPadding
clipWidth: control.progress * control.width
visible: control.progress > 0
text: control.text
font: control.font
opacity: enabled ? 1 : 0.3
color: control.palette.brightText
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
elide: Text.ElideRight
}
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
color: Color.blend(control.palette.button, control.palette.mid, control.down ? 0.5 : 0.0)
border.color: control.palette.highlight
border.width: control.visualFocus ? 2 : 0
PaddedRectangle {
padding: control.visualFocus ? 2 : 0
width: control.progress * parent.width
height: parent.height
color: Color.blend(control.palette.dark, control.palette.mid, control.down ? 0.5 : 0.0)
}
}
}
@@ -0,0 +1,49 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Controls.Basic.impl
import QtQuick.Templates as T
T.Dial {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
background: DialImpl {
implicitWidth: 184
implicitHeight: 184
color: control.visualFocus ? control.palette.highlight : control.palette.dark
progress: control.position
opacity: control.enabled ? 1 : 0.3
startAngle: control.startAngle
endAngle: control.endAngle
}
handle: ColorImage {
x: control.background.x + control.background.width / 2 - width / 2
y: control.background.y + control.background.height / 2 - height / 2
width: 14
height: 10
defaultColor: "#353637"
color: control.visualFocus ? control.palette.highlight : control.palette.dark
source: "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/dial-indicator.png"
antialiasing: true
opacity: control.enabled ? 1 : 0.3
transform: [
Translate {
y: -Math.min(control.background.width, control.background.height) * 0.4
+ (control.handle ? control.handle.height / 2 : 0)
},
Rotation {
angle: control.angle
origin.x: control.handle ? control.handle.width / 2 : 0
origin.y: control.handle ? control.handle.height / 2 : 0
}
]
}
}
@@ -0,0 +1,52 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.Dialog {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding,
implicitHeaderWidth,
implicitFooterWidth)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding
+ (implicitHeaderHeight > 0 ? implicitHeaderHeight + spacing : 0)
+ (implicitFooterHeight > 0 ? implicitFooterHeight + spacing : 0))
padding: 12
background: Rectangle {
color: control.palette.window
border.color: control.palette.dark
}
header: Label {
text: control.title
visible: parent?.parent === Overlay.overlay && control.title
elide: Label.ElideRight
font.bold: true
padding: 12
background: Rectangle {
x: 1; y: 1
width: parent.width - 2
height: parent.height - 1
color: control.palette.window
}
}
footer: DialogButtonBox {
visible: count > 0
}
T.Overlay.modal: Rectangle {
color: Color.transparent(control.palette.shadow, 0.5)
}
T.Overlay.modeless: Rectangle {
color: Color.transparent(control.palette.shadow, 0.12)
}
}
@@ -0,0 +1,40 @@
// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.DialogButtonBox {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
(control.count === 1 ? implicitContentWidth * 2 : implicitContentWidth) + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
contentWidth: (contentItem as ListView)?.contentWidth
spacing: 1
padding: 12
alignment: count === 1 ? Qt.AlignRight : undefined
delegate: Button {
width: control.count === 1 ? control.availableWidth / 2 : undefined
}
contentItem: ListView {
implicitWidth: contentWidth
model: control.contentModel
spacing: control.spacing
orientation: ListView.Horizontal
boundsBehavior: Flickable.StopAtBounds
snapMode: ListView.SnapToItem
}
background: Rectangle {
implicitHeight: 40
x: 1; y: 1
width: parent.width - 2
height: parent.height - 2
color: control.palette.window
}
}
@@ -0,0 +1,45 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Drawer {
id: control
parent: T.Overlay.overlay
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
topPadding: control.edge === Qt.BottomEdge
leftPadding: control.edge === Qt.RightEdge
rightPadding: control.edge === Qt.LeftEdge
bottomPadding: control.edge === Qt.TopEdge
enter: Transition { SmoothedAnimation { velocity: 5 } }
exit: Transition { SmoothedAnimation { velocity: 5 } }
background: Rectangle {
color: control.palette.window
Rectangle {
readonly property bool horizontal: control.edge === Qt.LeftEdge || control.edge === Qt.RightEdge
width: horizontal ? 1 : parent.width
height: horizontal ? parent.height : 1
color: control.palette.dark
x: control.edge === Qt.LeftEdge ? parent.width - 1 : 0
y: control.edge === Qt.TopEdge ? parent.height - 1 : 0
}
}
T.Overlay.modal: Rectangle {
color: Color.transparent(control.palette.shadow, 0.5)
}
T.Overlay.modeless: Rectangle {
color: Color.transparent(control.palette.shadow, 0.12)
}
}
@@ -0,0 +1,22 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Frame {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
padding: 12
background: Rectangle {
color: "transparent"
border.color: control.palette.mid
}
}
@@ -0,0 +1,40 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.GroupBox {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding,
implicitLabelWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
spacing: 6
padding: 12
topPadding: padding + (implicitLabelWidth > 0 ? implicitLabelHeight + spacing : 0)
label: Text {
x: control.leftPadding
width: control.availableWidth
text: control.title
font: control.font
color: control.palette.windowText
elide: Text.ElideRight
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
y: control.topPadding - control.bottomPadding
width: parent.width
height: parent.height - control.topPadding + control.bottomPadding
color: "transparent"
border.color: control.palette.mid
}
}
@@ -0,0 +1,43 @@
// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Templates as T
T.HorizontalHeaderView {
id: control
implicitWidth: syncView ? syncView.width : 0
// The contentHeight of TableView will be zero at start-up, until the delegate
// items have been loaded. This means that even if the implicit height of
// HorizontalHeaderView should be the same as the content height in the end, we
// need to ensure that it has at least a height of 1 at start-up, otherwise
// TableView won't bother loading any delegates at all.
implicitHeight: Math.max(1, contentHeight)
delegate: Rectangle {
id: delegate
required property var model
// Qt6: add cellPadding (and font etc) as public API in headerview
readonly property real cellPadding: 8
implicitWidth: text.implicitWidth + (cellPadding * 2)
implicitHeight: Math.max(control.height, text.implicitHeight + (cellPadding * 2))
color: "#f6f6f6"
border.color: "#e4e4e4"
Label {
id: text
text: delegate.model[control.textRole]
width: delegate.width
height: delegate.height
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
color: "#ff26282a"
}
}
}
@@ -0,0 +1,43 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ItemDelegate {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 12
spacing: 8
icon.width: 24
icon.height: 24
icon.color: control.palette.text
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: control.display === IconLabel.IconOnly || control.display === IconLabel.TextUnderIcon ? Qt.AlignCenter : Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.highlighted ? control.palette.highlightedText : control.palette.text
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
visible: control.down || control.highlighted || control.visualFocus
color: Color.blend(control.down ? control.palette.midlight : control.palette.light,
control.palette.highlight, control.visualFocus ? 0.15 : 0.0)
}
}
@@ -0,0 +1,13 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Label {
id: control
color: control.palette.windowText
linkColor: control.palette.link
}
@@ -0,0 +1,47 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Menu {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
margins: 0
overlap: 1
delegate: MenuItem { }
contentItem: ListView {
implicitHeight: contentHeight
model: control.contentModel
interactive: Window.window
? contentHeight + control.topPadding + control.bottomPadding > control.height
: false
clip: true
currentIndex: control.currentIndex
ScrollIndicator.vertical: ScrollIndicator {}
}
background: Rectangle {
implicitWidth: 200
implicitHeight: 40
color: control.palette.window
border.color: control.palette.dark
}
T.Overlay.modal: Rectangle {
color: Color.transparent(control.palette.shadow, 0.5)
}
T.Overlay.modeless: Rectangle {
color: Color.transparent(control.palette.shadow, 0.12)
}
}
@@ -0,0 +1,29 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.MenuBar {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
delegate: MenuBarItem { }
contentItem: Row {
spacing: control.spacing
Repeater {
model: control.contentModel
}
}
background: Rectangle {
implicitHeight: 40
color: control.palette.button
}
}
@@ -0,0 +1,43 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.MenuBarItem {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
spacing: 6
padding: 6
leftPadding: 12
rightPadding: 16
icon.width: 24
icon.height: 24
icon.color: control.palette.buttonText
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.palette.buttonText
}
background: Rectangle {
implicitWidth: 40
implicitHeight: 40
color: control.down || control.highlighted ? control.palette.mid : "transparent"
}
}
@@ -0,0 +1,71 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.MenuItem {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
icon.width: 24
icon.height: 24
icon.color: control.palette.windowText
contentItem: IconLabel {
readonly property real arrowPadding: control.subMenu && control.arrow ? control.arrow.width + control.spacing : 0
readonly property real indicatorPadding: control.checkable && control.indicator ? control.indicator.width + control.spacing : 0
leftPadding: !control.mirrored ? indicatorPadding : arrowPadding
rightPadding: control.mirrored ? indicatorPadding : arrowPadding
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.palette.windowText
}
indicator: ColorImage {
x: control.mirrored ? control.width - width - control.rightPadding : control.leftPadding
y: control.topPadding + (control.availableHeight - height) / 2
visible: control.checked
source: control.checkable ? "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/check.png" : ""
color: control.palette.windowText
defaultColor: "#353637"
}
arrow: ColorImage {
x: control.mirrored ? control.leftPadding : control.width - width - control.rightPadding
y: control.topPadding + (control.availableHeight - height) / 2
visible: control.subMenu
mirror: control.mirrored
source: control.subMenu ? "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/arrow-indicator.png" : ""
color: control.palette.windowText
defaultColor: "#353637"
}
background: Rectangle {
implicitWidth: 200
implicitHeight: 40
x: 1
y: 1
width: control.width - 2
height: control.height - 2
color: control.down ? control.palette.midlight : control.highlighted ? control.palette.light : "transparent"
}
}
@@ -0,0 +1,24 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.MenuSeparator {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 2
verticalPadding: padding + 4
contentItem: Rectangle {
implicitWidth: 188
implicitHeight: 1
color: control.palette.mid
}
}
@@ -0,0 +1,42 @@
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.AbstractMonthGrid {
id: control
implicitWidth: Math.max(background ? background.implicitWidth : 0,
contentItem.implicitWidth + leftPadding + rightPadding)
implicitHeight: Math.max(background ? background.implicitHeight : 0,
contentItem.implicitHeight + topPadding + bottomPadding)
spacing: 6
//! [delegate]
delegate: Text {
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
opacity: model.month === control.month ? 1 : 0
text: model.day
font: control.font
required property var model
}
//! [delegate]
//! [contentItem]
contentItem: Grid {
rows: 6
columns: 7
rowSpacing: control.spacing
columnSpacing: control.spacing
Repeater {
model: control.source
delegate: control.delegate
}
}
//! [contentItem]
}
@@ -0,0 +1,23 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Page {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding,
implicitHeaderWidth,
implicitFooterWidth)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding
+ (implicitHeaderHeight > 0 ? implicitHeaderHeight + spacing : 0)
+ (implicitFooterHeight > 0 ? implicitFooterHeight + spacing : 0))
background: Rectangle {
color: control.palette.window
}
}
@@ -0,0 +1,41 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.PageIndicator {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
delegate: Rectangle {
implicitWidth: 8
implicitHeight: 8
radius: width / 2
color: control.palette.dark
opacity: index === control.currentIndex ? 0.95 : pressed ? 0.7 : 0.45
required property int index
Behavior on opacity { OpacityAnimator { duration: 100 } }
}
contentItem: Row {
spacing: control.spacing
Repeater {
model: control.count
delegate: control.delegate
}
}
}
@@ -0,0 +1,21 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Pane {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
padding: 12
background: Rectangle {
color: control.palette.window
}
}
@@ -0,0 +1,30 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Popup {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
padding: 12
background: Rectangle {
color: control.palette.window
border.color: control.palette.dark
}
T.Overlay.modal: Rectangle {
color: Color.transparent(control.palette.shadow, 0.5)
}
T.Overlay.modeless: Rectangle {
color: Color.transparent(control.palette.shadow, 0.12)
}
}
@@ -0,0 +1,33 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.Basic.impl
T.ProgressBar {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
contentItem: ProgressBarImpl {
implicitHeight: 6
implicitWidth: 116
scale: control.mirrored ? -1 : 1
progress: control.position
indeterminate: control.visible && control.indeterminate
color: control.palette.dark
}
background: Rectangle {
implicitWidth: 200
implicitHeight: 6
y: (control.height - height) / 2
height: 6
color: control.palette.midlight
}
}
@@ -0,0 +1,52 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.RadioButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
// keep in sync with RadioDelegate.qml (shared RadioIndicator.qml was removed for performance reasons)
indicator: Rectangle {
implicitWidth: 28
implicitHeight: 28
x: control.text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2
y: control.topPadding + (control.availableHeight - height) / 2
radius: width / 2
color: control.down ? control.palette.light : control.palette.base
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.palette.mid
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: 20
height: 20
radius: width / 2
color: control.palette.text
visible: control.checked
}
}
contentItem: CheckLabel {
leftPadding: control.indicator && !control.mirrored ? control.indicator.width + control.spacing : 0
rightPadding: control.indicator && control.mirrored ? control.indicator.width + control.spacing : 0
text: control.text
font: control.font
color: control.palette.windowText
}
}
@@ -0,0 +1,69 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.RadioDelegate {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 12
spacing: 12
icon.width: 24
icon.height: 24
icon.color: control.palette.text
contentItem: IconLabel {
leftPadding: control.mirrored ? control.indicator.width + control.spacing : 0
rightPadding: !control.mirrored ? control.indicator.width + control.spacing : 0
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: control.display === IconLabel.IconOnly || control.display === IconLabel.TextUnderIcon ? Qt.AlignCenter : Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.palette.text
}
// keep in sync with RadioButton.qml (shared RadioIndicator.qml was removed for performance reasons)
indicator: Rectangle {
implicitWidth: 28
implicitHeight: 28
x: control.mirrored ? control.leftPadding : control.width - width - control.rightPadding
y: control.topPadding + (control.availableHeight - height) / 2
radius: width / 2
color: control.down ? control.palette.light : control.palette.base
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.palette.mid
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: 20
height: 20
radius: width / 2
color: control.palette.text
visible: control.checked
}
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
visible: control.down || control.highlighted
color: control.down ? control.palette.midlight : control.palette.light
}
}
@@ -0,0 +1,62 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.RangeSlider {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
first.implicitHandleWidth + leftPadding + rightPadding,
second.implicitHandleWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
first.implicitHandleHeight + topPadding + bottomPadding,
second.implicitHandleHeight + topPadding + bottomPadding)
padding: 6
first.handle: Rectangle {
x: control.leftPadding + (control.horizontal ? control.first.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
y: control.topPadding + (control.horizontal ? (control.availableHeight - height) / 2 : control.first.visualPosition * (control.availableHeight - height))
implicitWidth: 28
implicitHeight: 28
radius: width / 2
border.width: activeFocus ? 2 : 1
border.color: activeFocus ? control.palette.highlight : control.enabled ? control.palette.mid : control.palette.midlight
color: control.first.pressed ? control.palette.light : control.palette.window
}
second.handle: Rectangle {
x: control.leftPadding + (control.horizontal ? control.second.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
y: control.topPadding + (control.horizontal ? (control.availableHeight - height) / 2 : control.second.visualPosition * (control.availableHeight - height))
implicitWidth: 28
implicitHeight: 28
radius: width / 2
border.width: activeFocus ? 2 : 1
border.color: activeFocus ? control.palette.highlight : control.enabled ? control.palette.mid : control.palette.midlight
color: control.second.pressed ? control.palette.light : control.palette.window
}
background: Rectangle {
x: control.leftPadding + (control.horizontal ? 0 : (control.availableWidth - width) / 2)
y: control.topPadding + (control.horizontal ? (control.availableHeight - height) / 2 : 0)
implicitWidth: control.horizontal ? 200 : 6
implicitHeight: control.horizontal ? 6 : 200
width: control.horizontal ? control.availableWidth : implicitWidth
height: control.horizontal ? implicitHeight : control.availableHeight
radius: 3
color: control.palette.midlight
scale: control.horizontal && control.mirrored ? -1 : 1
Rectangle {
x: control.horizontal ? control.first.position * parent.width + 3 : 0
y: control.horizontal ? 0 : control.second.visualPosition * parent.height + 3
width: control.horizontal ? control.second.position * parent.width - control.first.position * parent.width - 6 : 6
height: control.horizontal ? 6 : control.second.position * parent.height - control.first.position * parent.height - 6
color: control.palette.dark
}
}
}
@@ -0,0 +1,47 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.RoundButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
icon.width: 24
icon.height: 24
icon.color: control.checked || control.highlighted ? control.palette.brightText :
control.flat && !control.down ? (control.visualFocus ? control.palette.highlight : control.palette.windowText) : control.palette.buttonText
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
icon: control.icon
text: control.text
font: control.font
color: control.checked || control.highlighted ? control.palette.brightText :
control.flat && !control.down ? (control.visualFocus ? control.palette.highlight : control.palette.windowText) : control.palette.buttonText
}
background: Rectangle {
implicitWidth: 40
implicitHeight: 40
radius: control.radius
opacity: enabled ? 1 : 0.3
visible: !control.flat || control.down || control.checked || control.highlighted
color: Color.blend(control.checked || control.highlighted ? control.palette.dark : control.palette.button,
control.palette.mid, control.down ? 0.5 : 0.0)
border.color: control.palette.highlight
border.width: control.visualFocus ? 2 : 0
}
}
@@ -0,0 +1,42 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ScrollBar {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 2
visible: control.policy !== T.ScrollBar.AlwaysOff
minimumSize: orientation === Qt.Horizontal ? height / width : width / height
contentItem: Rectangle {
implicitWidth: control.interactive ? 6 : 2
implicitHeight: control.interactive ? 6 : 2
radius: width / 2
color: control.pressed ? control.palette.dark : control.palette.mid
opacity: 0.0
states: State {
name: "active"
when: control.policy === T.ScrollBar.AlwaysOn || (control.active && control.size < 1.0)
PropertyChanges { control.contentItem.opacity: 0.75 }
}
transitions: Transition {
from: "active"
SequentialAnimation {
PauseAnimation { duration: 450 }
NumberAnimation { target: control.contentItem; duration: 200; property: "opacity"; to: 0.0 }
}
}
}
}
@@ -0,0 +1,42 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ScrollIndicator {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 2
contentItem: Rectangle {
implicitWidth: 2
implicitHeight: 2
color: control.palette.mid
visible: control.size < 1.0
opacity: 0.0
states: State {
name: "active"
when: control.active
PropertyChanges { control.contentItem.opacity: 0.75 }
}
transitions: [
Transition {
from: "active"
SequentialAnimation {
PauseAnimation { duration: 450 }
NumberAnimation { target: control.contentItem; duration: 200; property: "opacity"; to: 0.0 }
}
}
]
}
}
@@ -0,0 +1,31 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ScrollView {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
ScrollBar.vertical: ScrollBar {
parent: control
x: control.mirrored ? 0 : control.width - width
y: control.topPadding
height: control.availableHeight
active: control.ScrollBar.horizontal.active
}
ScrollBar.horizontal: ScrollBar {
parent: control
x: control.leftPadding
y: control.height - height
width: control.availableWidth
active: control.ScrollBar.vertical.active
}
}
@@ -0,0 +1,28 @@
// Copyright (C) 2021 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Shapes
import QtQuick.Templates as T
T.SelectionRectangle {
id: control
topLeftHandle: Handle {}
bottomRightHandle: Handle {}
component Handle : Rectangle {
id: handle
width: 28
height: width
radius: width / 2
color: SelectionRectangle.dragging ? control.palette.light : control.palette.window
border.width: 1
border.color: control.enabled ? control.palette.mid : control.palette.midlight
visible: SelectionRectangle.control.active
property Item control: SelectionRectangle.control
}
}
@@ -0,0 +1,49 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Slider {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitHandleWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitHandleHeight + topPadding + bottomPadding)
padding: 6
handle: Rectangle {
x: control.leftPadding + (control.horizontal ? control.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
y: control.topPadding + (control.horizontal ? (control.availableHeight - height) / 2 : control.visualPosition * (control.availableHeight - height))
implicitWidth: 28
implicitHeight: 28
radius: width / 2
color: control.pressed ? control.palette.light : control.palette.window
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.enabled ? control.palette.mid : control.palette.midlight
}
background: Rectangle {
x: control.leftPadding + (control.horizontal ? 0 : (control.availableWidth - width) / 2)
y: control.topPadding + (control.horizontal ? (control.availableHeight - height) / 2 : 0)
implicitWidth: control.horizontal ? 200 : 6
implicitHeight: control.horizontal ? 6 : 200
width: control.horizontal ? control.availableWidth : implicitWidth
height: control.horizontal ? implicitHeight : control.availableHeight
radius: 3
color: control.palette.midlight
scale: control.horizontal && control.mirrored ? -1 : 1
Rectangle {
y: control.horizontal ? 0 : control.visualPosition * parent.height
width: control.horizontal ? control.position * parent.width : 6
height: control.horizontal ? 6 : control.position * parent.height
radius: 3
color: control.palette.dark
}
}
}
@@ -0,0 +1,98 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.SpinBox {
id: control
// Note: the width of the indicators are calculated into the padding
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentItem.implicitWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
up.implicitIndicatorHeight, down.implicitIndicatorHeight)
leftPadding: padding + (control.mirrored ? (up.indicator ? up.indicator.width : 0) : (down.indicator ? down.indicator.width : 0))
rightPadding: padding + (control.mirrored ? (down.indicator ? down.indicator.width : 0) : (up.indicator ? up.indicator.width : 0))
validator: IntValidator {
locale: control.locale.name
bottom: Math.min(control.from, control.to)
top: Math.max(control.from, control.to)
}
contentItem: TextInput {
z: 2
text: control.displayText
clip: width < implicitWidth
padding: 6
font: control.font
color: control.palette.text
selectionColor: control.palette.highlight
selectedTextColor: control.palette.highlightedText
horizontalAlignment: Qt.AlignHCenter
verticalAlignment: Qt.AlignVCenter
readOnly: !control.editable
validator: control.validator
inputMethodHints: control.inputMethodHints
Rectangle {
width: parent.width
height: parent.height
visible: control.activeFocus
color: "transparent"
border.color: control.palette.highlight
border.width: 2
}
}
up.indicator: Rectangle {
x: control.mirrored ? 0 : control.width - width
height: control.height
implicitWidth: 40
implicitHeight: 40
color: control.up.pressed ? control.palette.mid : control.palette.button
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: parent.width / 3
height: 2
color: enabled ? control.palette.buttonText : control.palette.mid
}
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: 2
height: parent.width / 3
color: enabled ? control.palette.buttonText : control.palette.mid
}
}
down.indicator: Rectangle {
x: control.mirrored ? parent.width - width : 0
height: control.height
implicitWidth: 40
implicitHeight: 40
color: control.down.pressed ? control.palette.mid : control.palette.button
Rectangle {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: parent.width / 3
height: 2
color: enabled ? control.palette.buttonText : control.palette.mid
}
}
background: Rectangle {
implicitWidth: 140
color: enabled ? control.palette.base : control.palette.button
border.color: control.palette.button
}
}
@@ -0,0 +1,21 @@
// Copyright (C) 2018 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.SplitView {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
handle: Rectangle {
implicitWidth: control.orientation === Qt.Horizontal ? 6 : control.width
implicitHeight: control.orientation === Qt.Horizontal ? control.height : 6
color: T.SplitHandle.pressed ? control.palette.mid
: (T.SplitHandle.hovered ? control.palette.midlight : control.palette.button)
}
}
@@ -0,0 +1,33 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.StackView {
id: control
popEnter: Transition {
XAnimator { from: (control.mirrored ? -1 : 1) * -control.width; to: 0; duration: 400; easing.type: Easing.OutCubic }
}
popExit: Transition {
XAnimator { from: 0; to: (control.mirrored ? -1 : 1) * control.width; duration: 400; easing.type: Easing.OutCubic }
}
pushEnter: Transition {
XAnimator { from: (control.mirrored ? -1 : 1) * control.width; to: 0; duration: 400; easing.type: Easing.OutCubic }
}
pushExit: Transition {
XAnimator { from: 0; to: (control.mirrored ? -1 : 1) * -control.width; duration: 400; easing.type: Easing.OutCubic }
}
replaceEnter: Transition {
XAnimator { from: (control.mirrored ? -1 : 1) * control.width; to: 0; duration: 400; easing.type: Easing.OutCubic }
}
replaceExit: Transition {
XAnimator { from: 0; to: (control.mirrored ? -1 : 1) * -control.width; duration: 400; easing.type: Easing.OutCubic }
}
}
@@ -0,0 +1,44 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.SwipeDelegate {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 12
spacing: 12
icon.width: 24
icon.height: 24
icon.color: control.palette.text
swipe.transition: Transition { SmoothedAnimation { velocity: 3; easing.type: Easing.InOutCubic } }
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: control.display === IconLabel.IconOnly || control.display === IconLabel.TextUnderIcon ? Qt.AlignCenter : Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.palette.text
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
color: Color.blend(control.down ? control.palette.midlight : control.palette.light,
control.palette.highlight, control.visualFocus ? 0.15 : 0.0)
}
}
@@ -0,0 +1,32 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.SwipeView {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
contentItem: ListView {
model: control.contentModel
interactive: control.interactive
currentIndex: control.currentIndex
focus: control.focus
spacing: control.spacing
orientation: control.orientation
snapMode: ListView.SnapOneItem
boundsBehavior: Flickable.StopAtBounds
highlightRangeMode: ListView.StrictlyEnforceRange
preferredHighlightBegin: 0
preferredHighlightEnd: 0
highlightMoveDuration: 250
maximumFlickVelocity: 4 * (control.orientation === Qt.Horizontal ? width : height)
}
}
@@ -0,0 +1,58 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.Switch {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
indicator: PaddedRectangle {
implicitWidth: 56
implicitHeight: 28
x: control.text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2
y: control.topPadding + (control.availableHeight - height) / 2
radius: 8
leftPadding: 0
rightPadding: 0
padding: (height - 16) / 2
color: control.checked ? control.palette.dark : control.palette.midlight
Rectangle {
x: Math.max(0, Math.min(parent.width - width, control.visualPosition * parent.width - (width / 2)))
y: (parent.height - height) / 2
width: 28
height: 28
radius: 16
color: control.down ? control.palette.light : control.palette.window
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.enabled ? control.palette.mid : control.palette.midlight
Behavior on x {
enabled: !control.down
SmoothedAnimation { velocity: 200 }
}
}
}
contentItem: CheckLabel {
leftPadding: control.indicator && !control.mirrored ? control.indicator.width + control.spacing : 0
rightPadding: control.indicator && control.mirrored ? control.indicator.width + control.spacing : 0
text: control.text
font: control.font
color: control.palette.windowText
}
}
@@ -0,0 +1,75 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Controls.impl
T.SwitchDelegate {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding,
implicitIndicatorHeight + topPadding + bottomPadding)
padding: 12
spacing: 12
icon.width: 24
icon.height: 24
icon.color: control.palette.text
indicator: PaddedRectangle {
implicitWidth: 56
implicitHeight: 28
x: control.text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2
y: control.topPadding + (control.availableHeight - height) / 2
radius: 8
leftPadding: 0
rightPadding: 0
padding: (height - 16) / 2
color: control.checked ? control.palette.dark : control.palette.midlight
Rectangle {
x: Math.max(0, Math.min(parent.width - width, control.visualPosition * parent.width - (width / 2)))
y: (parent.height - height) / 2
width: 28
height: 28
radius: 16
color: control.down ? control.palette.light : control.palette.window
border.width: control.visualFocus ? 2 : 1
border.color: control.visualFocus ? control.palette.highlight : control.enabled ? control.palette.mid : control.palette.midlight
Behavior on x {
enabled: !control.down
SmoothedAnimation { velocity: 200 }
}
}
}
contentItem: IconLabel {
leftPadding: control.mirrored ? control.indicator.width + control.spacing : 0
rightPadding: !control.mirrored ? control.indicator.width + control.spacing : 0
spacing: control.spacing
mirrored: control.mirrored
display: control.display
alignment: control.display === IconLabel.IconOnly || control.display === IconLabel.TextUnderIcon ? Qt.AlignCenter : Qt.AlignLeft
icon: control.icon
text: control.text
font: control.font
color: control.palette.text
}
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
visible: control.down || control.highlighted
color: control.down ? control.palette.midlight : control.palette.light
}
}
@@ -0,0 +1,36 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.TabBar {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
spacing: 1
contentItem: ListView {
model: control.contentModel
currentIndex: control.currentIndex
spacing: control.spacing
orientation: ListView.Horizontal
boundsBehavior: Flickable.StopAtBounds
flickableDirection: Flickable.AutoFlickIfNeeded
snapMode: ListView.SnapToItem
highlightMoveDuration: 0
highlightRangeMode: ListView.ApplyRange
preferredHighlightBegin: 40
preferredHighlightEnd: width - 40
}
background: Rectangle {
color: control.palette.window
}
}
@@ -0,0 +1,39 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.TabButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
icon.width: 24
icon.height: 24
icon.color: checked ? control.palette.windowText : control.palette.brightText
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
icon: control.icon
text: control.text
font: control.font
color: control.checked ? control.palette.windowText : control.palette.brightText
}
background: Rectangle {
implicitHeight: 40
color: Color.blend(control.checked ? control.palette.window : control.palette.dark,
control.palette.mid, control.down ? 0.5 : 0.0)
}
}
@@ -0,0 +1,41 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.TextArea {
id: control
implicitWidth: Math.max(contentWidth + leftPadding + rightPadding,
implicitBackgroundWidth + leftInset + rightInset,
placeholder.implicitWidth + leftPadding + rightPadding)
implicitHeight: Math.max(contentHeight + topPadding + bottomPadding,
implicitBackgroundHeight + topInset + bottomInset,
placeholder.implicitHeight + topPadding + bottomPadding)
padding: 6
leftPadding: padding + 4
color: control.palette.text
placeholderTextColor: control.palette.placeholderText
selectionColor: control.palette.highlight
selectedTextColor: control.palette.highlightedText
PlaceholderText {
id: placeholder
x: control.leftPadding
y: control.topPadding
width: control.width - (control.leftPadding + control.rightPadding)
height: control.height - (control.topPadding + control.bottomPadding)
text: control.placeholderText
font: control.font
color: control.placeholderTextColor
verticalAlignment: control.verticalAlignment
visible: !control.length && !control.preeditText && (!control.activeFocus || control.horizontalAlignment !== Qt.AlignHCenter)
elide: Text.ElideRight
renderType: control.renderType
}
}
@@ -0,0 +1,49 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.TextField {
id: control
implicitWidth: implicitBackgroundWidth + leftInset + rightInset
|| Math.max(contentWidth, placeholder.implicitWidth) + leftPadding + rightPadding
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding,
placeholder.implicitHeight + topPadding + bottomPadding)
padding: 6
leftPadding: padding + 4
color: control.palette.text
selectionColor: control.palette.highlight
selectedTextColor: control.palette.highlightedText
placeholderTextColor: control.palette.placeholderText
verticalAlignment: TextInput.AlignVCenter
PlaceholderText {
id: placeholder
x: control.leftPadding
y: control.topPadding
width: control.width - (control.leftPadding + control.rightPadding)
height: control.height - (control.topPadding + control.bottomPadding)
text: control.placeholderText
font: control.font
color: control.placeholderTextColor
verticalAlignment: control.verticalAlignment
visible: !control.length && !control.preeditText && (!control.activeFocus || control.horizontalAlignment !== Qt.AlignHCenter)
elide: Text.ElideRight
renderType: control.renderType
}
background: Rectangle {
implicitWidth: 200
implicitHeight: 40
border.width: control.activeFocus ? 2 : 1
color: control.palette.base
border.color: control.activeFocus ? control.palette.highlight : control.palette.mid
}
}
@@ -0,0 +1,20 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ToolBar {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
background: Rectangle {
implicitHeight: 40
color: control.palette.button
}
}
@@ -0,0 +1,41 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ToolButton {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: 6
spacing: 6
icon.width: 24
icon.height: 24
icon.color: visualFocus ? control.palette.highlight : control.palette.buttonText
contentItem: IconLabel {
spacing: control.spacing
mirrored: control.mirrored
display: control.display
icon: control.icon
text: control.text
font: control.font
color: control.visualFocus ? control.palette.highlight : control.palette.buttonText
}
background: Rectangle {
implicitWidth: 40
implicitHeight: 40
opacity: control.down ? 1.0 : 0.5
color: control.down || control.checked || control.highlighted ? control.palette.mid : control.palette.button
}
}
@@ -0,0 +1,24 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ToolSeparator {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
padding: vertical ? 6 : 2
verticalPadding: vertical ? 2 : 6
contentItem: Rectangle {
implicitWidth: control.vertical ? 1 : 30
implicitHeight: control.vertical ? 30 : 1
color: control.palette.mid
}
}
@@ -0,0 +1,35 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ToolTip {
id: control
x: parent ? (parent.width - implicitWidth) / 2 : 0
y: -implicitHeight - 3
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
margins: 6
padding: 6
closePolicy: T.Popup.CloseOnEscape | T.Popup.CloseOnPressOutsideParent | T.Popup.CloseOnReleaseOutsideParent
contentItem: Text {
text: control.text
font: control.font
wrapMode: Text.Wrap
color: control.palette.toolTipText
}
background: Rectangle {
border.color: control.palette.dark
color: control.palette.toolTipBase
}
}
@@ -0,0 +1,100 @@
// Copyright (C) 2021 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.TreeViewDelegate {
id: control
implicitWidth: leftMargin + __contentIndent + implicitContentWidth + rightPadding + rightMargin
implicitHeight: Math.max(indicator ? indicator.height : 0, implicitContentHeight) * 1.25
indentation: indicator ? indicator.width : 12
leftMargin: 4
rightMargin: 4
spacing: 4
topPadding: contentItem ? (height - contentItem.implicitHeight) / 2 : 0
leftPadding: !mirrored ? leftMargin + __contentIndent : width - leftMargin - __contentIndent - implicitContentWidth
highlighted: control.selected || control.current
|| ((control.treeView.selectionBehavior === TableView.SelectRows
|| control.treeView.selectionBehavior === TableView.SelectionDisabled)
&& control.row === control.treeView.currentRow)
required property int row
required property var model
readonly property real __contentIndent: !isTreeNode ? 0 : (depth * indentation) + (indicator ? indicator.width + spacing : 0)
indicator: Item {
// Create an area that is big enough for the user to
// click on, since the image is a bit small.
readonly property real __indicatorIndent: control.leftMargin + (control.depth * control.indentation)
x: !control.mirrored ? __indicatorIndent : control.width - __indicatorIndent - width
y: (control.height - height) / 2
implicitWidth: 20
implicitHeight: 40 // same as Button.qml
ColorImage {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
rotation: control.expanded ? 90 : (control.mirrored ? 180 : 0)
source: "qrc:/qt-project.org/imports/QtQuick/Controls/Basic/images/arrow-indicator.png"
color: control.palette.windowText
defaultColor: "#353637"
}
}
background: Rectangle {
implicitHeight: 40 // same as Button.qml
color: control.highlighted
? control.palette.highlight
: (control.treeView.alternatingRows && control.row % 2 !== 0
? control.palette.alternateBase : control.palette.base)
}
contentItem: Label {
clip: false
text: control.model.display
elide: Text.ElideRight
color: control.highlighted ? control.palette.highlightedText : control.palette.buttonText
visible: !control.editing
}
// The edit delegate is a separate component, and doesn't need
// to follow the same strict rules that are applied to a control.
// qmllint disable attached-property-reuse
// qmllint disable controls-attached-property-reuse
// qmllint disable controls-sanity
TableView.editDelegate: FocusScope {
width: parent.width
height: parent.height
readonly property int __role: {
let model = control.treeView.model
let index = control.treeView.index(row, column)
let editText = model.data(index, Qt.EditRole)
return editText !== undefined ? Qt.EditRole : Qt.DisplayRole
}
TextField {
id: textField
x: control.contentItem.x
y: (parent.height - height) / 2
width: control.contentItem.width
text: control.treeView.model.data(control.treeView.index(row, column), __role)
focus: true
}
TableView.onCommit: {
let index = TableView.view.index(row, column)
TableView.view.model.setData(index, textField.text, __role)
}
Component.onCompleted: textField.selectAll()
}
// qmllint enable attached-property-reuse
// qmllint enable controls-attached-property-reuse
// qmllint enable controls-sanity
}
@@ -0,0 +1,48 @@
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.Tumbler {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
readonly property real __delegateHeight: availableHeight / visibleItemCount
delegate: Text {
text: modelData
color: control.visualFocus ? control.palette.highlight : control.palette.text
font: control.font
opacity: 1.0 - Math.abs(Tumbler.displacement) / (control.visibleItemCount / 2)
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
// We use required property here to satisfy qmllint, but that means
// we also need to declare the index for the attached properties
// (see QQuickTumblerAttachedPrivate::init).
required property var modelData
required property int index
}
contentItem: TumblerView {
implicitWidth: 60
implicitHeight: 200
model: control.model
delegate: control.delegate
path: Path {
startX: control.contentItem.width / 2
startY: -control.__delegateHeight / 2
PathLine {
x: control.contentItem.width / 2
y: (control.visibleItemCount + 1) * control.__delegateHeight - control.__delegateHeight / 2
}
}
}
}
@@ -0,0 +1,43 @@
// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Templates as T
T.VerticalHeaderView {
id: control
// The contentWidth of TableView will be zero at start-up, until the delegate
// items have been loaded. This means that even if the implicit width of
// VerticalHeaderView should be the same as the content width in the end, we
// need to ensure that it has at least a width of 1 at start-up, otherwise
// TableView won't bother loading any delegates at all.
implicitWidth: Math.max(1, contentWidth)
implicitHeight: syncView ? syncView.height : 0
delegate: Rectangle {
id: delegate
required property var model
// Qt6: add cellPadding (and font etc) as public API in headerview
readonly property real cellPadding: 8
implicitWidth: Math.max(control.width, text.implicitWidth + (cellPadding * 2))
implicitHeight: text.implicitHeight + (cellPadding * 2)
color: "#f6f6f6"
border.color: "#e4e4e4"
Label {
id: text
text: delegate.model[control.textRole]
width: delegate.width
height: delegate.height
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
color: "#ff26282a"
}
}
}
@@ -0,0 +1,40 @@
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
T.AbstractWeekNumberColumn {
id: control
implicitWidth: Math.max(background ? background.implicitWidth : 0,
contentItem.implicitWidth + leftPadding + rightPadding)
implicitHeight: Math.max(background ? background.implicitHeight : 0,
contentItem.implicitHeight + topPadding + bottomPadding)
spacing: 6
leftPadding: 6
rightPadding: 6
font.bold: true
//! [delegate]
delegate: Text {
text: weekNumber
font: control.font
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
required property int weekNumber
}
//! [delegate]
//! [contentItem]
contentItem: Column {
spacing: control.spacing
Repeater {
model: control.source
delegate: control.delegate
}
}
//! [contentItem]
}
@@ -0,0 +1,109 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "private/qquickbasicbusyindicator_p.h"
name: "QQuickBasicBusyIndicator"
accessSemantics: "reference"
defaultProperty: "data"
parentProperty: "parent"
prototype: "QQuickItem"
exports: [
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 2.0",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 2.1",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 2.4",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 2.7",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 2.11",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 6.0",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 6.3",
"QtQuick.Controls.Basic.impl/BusyIndicatorImpl 6.7"
]
exportMetaObjectRevisions: [512, 513, 516, 519, 523, 1536, 1539, 1543]
Property { name: "pen"; type: "QColor"; read: "pen"; write: "setPen"; index: 0; isFinal: true }
Property { name: "fill"; type: "QColor"; read: "fill"; write: "setFill"; index: 1; isFinal: true }
Property { name: "running"; type: "bool"; read: "isRunning"; write: "setRunning"; index: 2 }
}
Component {
file: "private/qquickbasicdial_p.h"
name: "QQuickBasicDial"
accessSemantics: "reference"
prototype: "QQuickPaintedItem"
exports: [
"QtQuick.Controls.Basic.impl/DialImpl 2.0",
"QtQuick.Controls.Basic.impl/DialImpl 2.1",
"QtQuick.Controls.Basic.impl/DialImpl 2.4",
"QtQuick.Controls.Basic.impl/DialImpl 2.7",
"QtQuick.Controls.Basic.impl/DialImpl 2.11",
"QtQuick.Controls.Basic.impl/DialImpl 6.0",
"QtQuick.Controls.Basic.impl/DialImpl 6.3",
"QtQuick.Controls.Basic.impl/DialImpl 6.7"
]
exportMetaObjectRevisions: [512, 513, 516, 519, 523, 1536, 1539, 1543]
Property {
name: "progress"
type: "double"
read: "progress"
write: "setProgress"
index: 0
isFinal: true
}
Property {
name: "startAngle"
type: "double"
read: "startAngle"
write: "setStartAngle"
index: 1
isFinal: true
}
Property {
name: "endAngle"
type: "double"
read: "endAngle"
write: "setEndAngle"
index: 2
isFinal: true
}
Property { name: "color"; type: "QColor"; read: "color"; write: "setColor"; index: 3; isFinal: true }
}
Component {
file: "private/qquickbasicprogressbar_p.h"
name: "QQuickBasicProgressBar"
accessSemantics: "reference"
defaultProperty: "data"
parentProperty: "parent"
prototype: "QQuickItem"
exports: [
"QtQuick.Controls.Basic.impl/ProgressBarImpl 2.0",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 2.1",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 2.4",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 2.7",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 2.11",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 6.0",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 6.3",
"QtQuick.Controls.Basic.impl/ProgressBarImpl 6.7"
]
exportMetaObjectRevisions: [512, 513, 516, 519, 523, 1536, 1539, 1543]
Property {
name: "indeterminate"
type: "bool"
read: "isIndeterminate"
write: "setIndeterminate"
index: 0
isFinal: true
}
Property {
name: "progress"
type: "double"
read: "progress"
write: "setProgress"
index: 1
isFinal: true
}
Property { name: "color"; type: "QColor"; read: "color"; write: "setColor"; index: 2; isFinal: true }
}
}
@@ -0,0 +1,8 @@
module QtQuick.Controls.Basic.impl
linktarget Qt6::qtquickcontrols2basicstyleimplplugin
optional plugin qtquickcontrols2basicstyleimplplugin
classname QtQuickControls2BasicStyleImplPlugin
typeinfo plugins.qmltypes
depends QtQuick auto
prefer :/qt-project.org/imports/QtQuick/Controls/Basic/impl/
@@ -0,0 +1,459 @@
import QtQuick.tooling 1.2
// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by qmltyperegistrar.
Module {
Component {
file: "private/qquickbasicstyle_p.h"
name: "QQuickBasicStyle"
accessSemantics: "reference"
prototype: "QObject"
exports: [
"QtQuick.Controls.Basic/Basic 2.1",
"QtQuick.Controls.Basic/Basic 6.0"
]
isCreatable: false
isSingleton: true
exportMetaObjectRevisions: [513, 1536]
Property {
name: "backgroundColor"
type: "QColor"
read: "backgroundColor"
index: 0
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "overlayModalColor"
type: "QColor"
read: "overlayModalColor"
index: 1
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "overlayDimColor"
type: "QColor"
read: "overlayDimColor"
index: 2
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textColor"
type: "QColor"
read: "textColor"
index: 3
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textDarkColor"
type: "QColor"
read: "textDarkColor"
index: 4
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textLightColor"
type: "QColor"
read: "textLightColor"
index: 5
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textLinkColor"
type: "QColor"
read: "textLinkColor"
index: 6
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textSelectionColor"
type: "QColor"
read: "textSelectionColor"
index: 7
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textDisabledColor"
type: "QColor"
read: "textDisabledColor"
index: 8
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textDisabledLightColor"
type: "QColor"
read: "textDisabledLightColor"
index: 9
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "textPlaceholderColor"
type: "QColor"
read: "textPlaceholderColor"
index: 10
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "focusColor"
type: "QColor"
read: "focusColor"
index: 11
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "focusLightColor"
type: "QColor"
read: "focusLightColor"
index: 12
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "focusPressedColor"
type: "QColor"
read: "focusPressedColor"
index: 13
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buttonColor"
type: "QColor"
read: "buttonColor"
index: 14
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buttonPressedColor"
type: "QColor"
read: "buttonPressedColor"
index: 15
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buttonCheckedColor"
type: "QColor"
read: "buttonCheckedColor"
index: 16
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buttonCheckedPressedColor"
type: "QColor"
read: "buttonCheckedPressedColor"
index: 17
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "buttonCheckedFocusColor"
type: "QColor"
read: "buttonCheckedFocusColor"
index: 18
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "toolButtonColor"
type: "QColor"
read: "toolButtonColor"
index: 19
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "tabButtonColor"
type: "QColor"
read: "tabButtonColor"
index: 20
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "tabButtonPressedColor"
type: "QColor"
read: "tabButtonPressedColor"
index: 21
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "tabButtonCheckedPressedColor"
type: "QColor"
read: "tabButtonCheckedPressedColor"
index: 22
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "delegateColor"
type: "QColor"
read: "delegateColor"
index: 23
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "delegatePressedColor"
type: "QColor"
read: "delegatePressedColor"
index: 24
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "delegateFocusColor"
type: "QColor"
read: "delegateFocusColor"
index: 25
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "indicatorPressedColor"
type: "QColor"
read: "indicatorPressedColor"
index: 26
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "indicatorDisabledColor"
type: "QColor"
read: "indicatorDisabledColor"
index: 27
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "indicatorFrameColor"
type: "QColor"
read: "indicatorFrameColor"
index: 28
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "indicatorFramePressedColor"
type: "QColor"
read: "indicatorFramePressedColor"
index: 29
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "indicatorFrameDisabledColor"
type: "QColor"
read: "indicatorFrameDisabledColor"
index: 30
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "frameDarkColor"
type: "QColor"
read: "frameDarkColor"
index: 31
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "frameLightColor"
type: "QColor"
read: "frameLightColor"
index: 32
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "scrollBarColor"
type: "QColor"
read: "scrollBarColor"
index: 33
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "scrollBarPressedColor"
type: "QColor"
read: "scrollBarPressedColor"
index: 34
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "progressBarColor"
type: "QColor"
read: "progressBarColor"
index: 35
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "pageIndicatorColor"
type: "QColor"
read: "pageIndicatorColor"
index: 36
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "separatorColor"
type: "QColor"
read: "separatorColor"
index: 37
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "disabledDarkColor"
type: "QColor"
read: "disabledDarkColor"
index: 38
isReadonly: true
isFinal: true
isConstant: true
}
Property {
name: "disabledLightColor"
type: "QColor"
read: "disabledLightColor"
index: 39
isReadonly: true
isFinal: true
isConstant: true
}
}
Component {
file: "private/qtquickcontrols2basicforeign_p.h"
name: "QQuickOverlay"
accessSemantics: "reference"
defaultProperty: "data"
parentProperty: "parent"
prototype: "QQuickItem"
exports: [
"QtQuick.Controls.Basic/Overlay 2.3",
"QtQuick.Controls.Basic/Overlay 2.4",
"QtQuick.Controls.Basic/Overlay 2.7",
"QtQuick.Controls.Basic/Overlay 2.11",
"QtQuick.Controls.Basic/Overlay 6.0",
"QtQuick.Controls.Basic/Overlay 6.3",
"QtQuick.Controls.Basic/Overlay 6.7"
]
isCreatable: false
exportMetaObjectRevisions: [515, 516, 519, 523, 1536, 1539, 1543]
attachedType: "QQuickOverlayAttached"
Property {
name: "modal"
type: "QQmlComponent"
isPointer: true
read: "modal"
write: "setModal"
notify: "modalChanged"
index: 0
isFinal: true
}
Property {
name: "modeless"
type: "QQmlComponent"
isPointer: true
read: "modeless"
write: "setModeless"
notify: "modelessChanged"
index: 1
isFinal: true
}
Signal { name: "modalChanged" }
Signal { name: "modelessChanged" }
Signal { name: "pressed" }
Signal { name: "released" }
}
Component {
file: "private/qtquickcontrols2basicforeign_p.h"
name: "QQuickSplitHandleAttached"
accessSemantics: "reference"
prototype: "QObject"
exports: [
"QtQuick.Controls.Basic/SplitHandle 2.13",
"QtQuick.Controls.Basic/SplitHandle 6.0"
]
isCreatable: false
exportMetaObjectRevisions: [525, 1536]
attachedType: "QQuickSplitHandleAttached"
Property {
name: "hovered"
type: "bool"
read: "isHovered"
notify: "hoveredChanged"
index: 0
isReadonly: true
isFinal: true
}
Property {
name: "pressed"
type: "bool"
read: "isPressed"
notify: "pressedChanged"
index: 1
isReadonly: true
isFinal: true
}
Signal { name: "hoveredChanged" }
Signal { name: "pressedChanged" }
}
}
@@ -0,0 +1,131 @@
module QtQuick.Controls.Basic
linktarget Qt6::qtquickcontrols2basicstyleplugin
plugin qtquickcontrols2basicstyleplugin
classname QtQuickControls2BasicStylePlugin
typeinfo plugins.qmltypes
depends QtQuick auto
depends QtQuick.Templates auto
prefer :/qt-project.org/imports/QtQuick/Controls/Basic/
AbstractButton 6.0 AbstractButton.qml
AbstractButton 2.0 AbstractButton.qml
Action 2.3 Action.qml
Action 6.0 Action.qml
ActionGroup 2.3 ActionGroup.qml
ActionGroup 6.0 ActionGroup.qml
ApplicationWindow 6.0 ApplicationWindow.qml
ApplicationWindow 2.0 ApplicationWindow.qml
BusyIndicator 6.0 BusyIndicator.qml
BusyIndicator 2.0 BusyIndicator.qml
Button 6.0 Button.qml
Button 2.0 Button.qml
ButtonGroup 6.0 ButtonGroup.qml
ButtonGroup 2.0 ButtonGroup.qml
CheckBox 6.0 CheckBox.qml
CheckBox 2.0 CheckBox.qml
CheckDelegate 6.0 CheckDelegate.qml
CheckDelegate 2.0 CheckDelegate.qml
ComboBox 6.0 ComboBox.qml
ComboBox 2.0 ComboBox.qml
Container 6.0 Container.qml
Container 2.0 Container.qml
Control 6.0 Control.qml
Control 2.0 Control.qml
DelayButton 2.2 DelayButton.qml
DelayButton 6.0 DelayButton.qml
Dial 6.0 Dial.qml
Dial 2.0 Dial.qml
Dialog 2.1 Dialog.qml
Dialog 6.0 Dialog.qml
DialogButtonBox 2.1 DialogButtonBox.qml
DialogButtonBox 6.0 DialogButtonBox.qml
Drawer 6.0 Drawer.qml
Drawer 2.0 Drawer.qml
Frame 6.0 Frame.qml
Frame 2.0 Frame.qml
GroupBox 6.0 GroupBox.qml
GroupBox 2.0 GroupBox.qml
HorizontalHeaderView 2.15 HorizontalHeaderView.qml
HorizontalHeaderView 6.0 HorizontalHeaderView.qml
ItemDelegate 6.0 ItemDelegate.qml
ItemDelegate 2.0 ItemDelegate.qml
Label 6.0 Label.qml
Label 2.0 Label.qml
Menu 6.0 Menu.qml
Menu 2.0 Menu.qml
MenuBar 2.3 MenuBar.qml
MenuBar 6.0 MenuBar.qml
MenuBarItem 2.3 MenuBarItem.qml
MenuBarItem 6.0 MenuBarItem.qml
MenuItem 6.0 MenuItem.qml
MenuItem 2.0 MenuItem.qml
MenuSeparator 2.1 MenuSeparator.qml
MenuSeparator 6.0 MenuSeparator.qml
Page 6.0 Page.qml
Page 2.0 Page.qml
PageIndicator 6.0 PageIndicator.qml
PageIndicator 2.0 PageIndicator.qml
Pane 6.0 Pane.qml
Pane 2.0 Pane.qml
Popup 6.0 Popup.qml
Popup 2.0 Popup.qml
ProgressBar 6.0 ProgressBar.qml
ProgressBar 2.0 ProgressBar.qml
RadioButton 6.0 RadioButton.qml
RadioButton 2.0 RadioButton.qml
RadioDelegate 6.0 RadioDelegate.qml
RadioDelegate 2.0 RadioDelegate.qml
RangeSlider 6.0 RangeSlider.qml
RangeSlider 2.0 RangeSlider.qml
RoundButton 2.1 RoundButton.qml
RoundButton 6.0 RoundButton.qml
ScrollBar 6.0 ScrollBar.qml
ScrollBar 2.0 ScrollBar.qml
ScrollIndicator 6.0 ScrollIndicator.qml
ScrollIndicator 2.0 ScrollIndicator.qml
ScrollView 2.2 ScrollView.qml
ScrollView 6.0 ScrollView.qml
SelectionRectangle 6.2 SelectionRectangle.qml
Slider 6.0 Slider.qml
Slider 2.0 Slider.qml
SpinBox 6.0 SpinBox.qml
SpinBox 2.0 SpinBox.qml
SplitView 2.13 SplitView.qml
SplitView 6.0 SplitView.qml
StackView 6.0 StackView.qml
StackView 2.0 StackView.qml
SwipeDelegate 6.0 SwipeDelegate.qml
SwipeDelegate 2.0 SwipeDelegate.qml
Switch 6.0 Switch.qml
Switch 2.0 Switch.qml
SwitchDelegate 6.0 SwitchDelegate.qml
SwitchDelegate 2.0 SwitchDelegate.qml
SwipeView 6.0 SwipeView.qml
SwipeView 2.0 SwipeView.qml
TabBar 6.0 TabBar.qml
TabBar 2.0 TabBar.qml
TabButton 6.0 TabButton.qml
TabButton 2.0 TabButton.qml
TextArea 6.0 TextArea.qml
TextArea 2.0 TextArea.qml
TextField 6.0 TextField.qml
TextField 2.0 TextField.qml
ToolBar 6.0 ToolBar.qml
ToolBar 2.0 ToolBar.qml
ToolButton 6.0 ToolButton.qml
ToolButton 2.0 ToolButton.qml
ToolSeparator 2.1 ToolSeparator.qml
ToolSeparator 6.0 ToolSeparator.qml
ToolTip 6.0 ToolTip.qml
ToolTip 2.0 ToolTip.qml
Tumbler 6.0 Tumbler.qml
Tumbler 2.0 Tumbler.qml
VerticalHeaderView 2.15 VerticalHeaderView.qml
VerticalHeaderView 6.0 VerticalHeaderView.qml
singleton Calendar 6.3 Calendar.qml
CalendarModel 6.3 CalendarModel.qml
DayOfWeekRow 6.3 DayOfWeekRow.qml
MonthGrid 6.3 MonthGrid.qml
WeekNumberColumn 6.3 WeekNumberColumn.qml
TreeViewDelegate 6.0 TreeViewDelegate.qml
TreeViewDelegate 2.0 TreeViewDelegate.qml
@@ -0,0 +1,12 @@
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Controls.impl
import QtQuick.Templates as T
T.ApplicationWindow {
id: window
color: window.palette.window
}
@@ -0,0 +1,65 @@
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
import QtQuick
import QtQuick.Templates as T
import QtQuick.Shapes
T.BusyIndicator {
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
implicitContentHeight + topPadding + bottomPadding)
contentItem: Item {
implicitWidth: 32
implicitHeight: 32
x: (control.availableWidth - width) / 2
y: (control.availableHeight - height) / 2
property Shape ring: Shape {
parent: control.contentItem
x: (parent.width - width) / 2
y: (parent.height - height) / 2
implicitWidth: parent.implicitWidth
implicitHeight: parent.implicitHeight
width: Math.min(control.contentItem.width, control.contentItem.height)
height: width
preferredRendererType: Shape.CurveRenderer
antialiasing: true
ShapePath {
fillColor: "transparent"
strokeColor: control.palette.accent
strokeWidth: control.contentItem.ring.width >= 64 ? 6 : control.contentItem.ring.width <= 16 ? 1 : 3
capStyle: ShapePath.RoundCap
PathAngleArc {
centerX: control.contentItem.ring.width / 2
centerY: control.contentItem.ring.height / 2
radiusX: control.contentItem.ring.width / 2 - 2
radiusY: radiusX
startAngle: -90
sweepAngle: 120
SequentialAnimation on startAngle {
loops: Animation.Infinite
running: control.visible && control.running
NumberAnimation { from: 0; to: 450; duration: 1000 }
NumberAnimation { from: 450; to: 1080; duration: 1000 }
}
SequentialAnimation on sweepAngle {
loops: Animation.Infinite
running: control.visible && control.running
NumberAnimation { from: 0; to: 180; duration: 1000 }
NumberAnimation { from: 180; to: 0; duration: 1000 }
}
}
}
}
}
}
Loaded 100 of 6110 files, more files were not shown because too many files have changed in this diff. Show more