Complete GUI overhaul (from Qt Widgets to Qt Quick Controls 2)
Added chaperone profiles Added separate supersampling sliders for applications/compositor Added asynchronous reprojection on/off switch Merged in Microphone Control Overlay Added Push-to-Talk profiles Updated to OpenVR 1.0.3 Requires at least SteamVR beta 1477423729.
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
import QtQuick.Controls.Universal.impl 2.0
|
||||
|
||||
T.ApplicationWindow {
|
||||
id: window
|
||||
|
||||
color: Universal.background
|
||||
|
||||
overlay.modal: Rectangle {
|
||||
color: window.Universal.baseLowColor
|
||||
}
|
||||
|
||||
overlay.modeless: Rectangle {
|
||||
color: window.Universal.baseLowColor
|
||||
}
|
||||
|
||||
FocusRectangle {
|
||||
parent: window.activeFocusControl
|
||||
width: parent ? parent.width : 0
|
||||
height: parent ? parent.height : 0
|
||||
visible: parent && !!parent.useSystemFocusVisuals && !!parent.visualFocus
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
import QtQuick.Controls.Universal.impl 2.0
|
||||
|
||||
T.BusyIndicator {
|
||||
id: control
|
||||
|
||||
implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding
|
||||
implicitHeight: contentItem.implicitHeight + topPadding + bottomPadding
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: ProgressRing {
|
||||
id: ring
|
||||
|
||||
implicitWidth: 20
|
||||
implicitHeight: 20
|
||||
|
||||
readonly property real size: Math.min(control.availableWidth, control.availableHeight)
|
||||
|
||||
count: size < 60 ? 5 : 6 // "Small" vs. "Large"
|
||||
color: control.Universal.accent
|
||||
|
||||
ProgressRingAnimator {
|
||||
target: ring
|
||||
running: control.visible && control.running
|
||||
}
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Button {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 8
|
||||
topPadding: padding - 4
|
||||
bottomPadding: padding - 4
|
||||
|
||||
property bool useSystemFocusVisuals: true
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 32
|
||||
implicitHeight: 32
|
||||
|
||||
visible: !control.flat || control.down || control.checked || control.highlighted
|
||||
color: control.down ? control.Universal.baseMediumLowColor :
|
||||
control.enabled && (control.highlighted || control.checked) ? control.Universal.accent :
|
||||
control.Universal.baseLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
import QtQuick.Controls.Universal.impl 2.0
|
||||
|
||||
T.CheckBox {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 6
|
||||
spacing: 8
|
||||
|
||||
property bool useSystemFocusVisuals: true
|
||||
|
||||
//! [indicator]
|
||||
indicator: CheckIndicator {
|
||||
x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
control: control
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
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
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.CheckDelegate {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
spacing: 12
|
||||
|
||||
padding: 12
|
||||
topPadding: padding - 1
|
||||
bottomPadding: padding + 1
|
||||
|
||||
//! [indicator]
|
||||
indicator: CheckIndicator {
|
||||
x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
control: control
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: !control.mirrored ? 0 : control.indicator.width + control.spacing
|
||||
rightPadding: control.mirrored ? 0 : control.indicator.width + control.spacing
|
||||
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
visible: control.down || control.highlighted || control.visualFocus
|
||||
color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
Rectangle {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
visible: control.visualFocus || control.highlighted
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
Rectangle {
|
||||
implicitWidth: 20
|
||||
implicitHeight: 20
|
||||
|
||||
color: !control.enabled ? "transparent" :
|
||||
control.down && control.checkState !== Qt.PartiallyChecked ? control.Universal.baseMediumColor :
|
||||
control.checkState === Qt.Checked ? control.Universal.accent : "transparent"
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.baseMediumColor :
|
||||
control.checked ? control.Universal.accent : control.Universal.baseMediumHighColor
|
||||
border.width: 2 // CheckBoxBorderThemeThickness
|
||||
|
||||
property Item control
|
||||
|
||||
Image {
|
||||
x: (parent.width - width) / 2
|
||||
y: (parent.height - height) / 2
|
||||
|
||||
visible: control.checkState === Qt.Checked
|
||||
source: "image://universal/checkmark/" + (!control.enabled ? control.Universal.baseLowColor : control.Universal.chromeWhiteColor)
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
x: (parent.width - width) / 2
|
||||
y: (parent.height - height) / 2
|
||||
width: parent.width / 2
|
||||
height: parent.height / 2
|
||||
|
||||
visible: control.checkState === Qt.PartiallyChecked
|
||||
color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,143 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Window 2.2
|
||||
import QtQuick.Controls 2.0
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ComboBox {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
spacing: 10
|
||||
padding: 12
|
||||
topPadding: padding - 7
|
||||
rightPadding: padding - 2
|
||||
bottomPadding: padding - 5
|
||||
|
||||
//! [delegate]
|
||||
delegate: ItemDelegate {
|
||||
width: control.width
|
||||
text: control.textRole ? (Array.isArray(control.model) ? modelData[control.textRole] : model[control.textRole]) : modelData
|
||||
highlighted: control.highlightedIndex === index
|
||||
}
|
||||
//! [delegate]
|
||||
|
||||
//! [indicator]
|
||||
indicator: Image {
|
||||
x: control.mirrored ? control.leftPadding : control.width - width - control.rightPadding
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
source: "image://universal/downarrow/" + (!control.enabled ? control.Universal.baseLowColor : control.Universal.baseMediumHighColor)
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: control.mirrored && control.indicator ? control.indicator.width + control.spacing : 0
|
||||
rightPadding: !control.mirrored && control.indicator ? control.indicator.width + control.spacing : 0
|
||||
|
||||
text: control.displayText
|
||||
font: control.font
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
elide: Text.ElideRight
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 120
|
||||
implicitHeight: 32
|
||||
|
||||
border.width: 2 // ComboBoxBorderThemeThickness
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.pressed || popup.visible ? control.Universal.baseMediumLowColor : control.Universal.baseMediumLowColor
|
||||
color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.pressed || popup.visible ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
|
||||
Rectangle {
|
||||
x: 2
|
||||
y: 2
|
||||
width: parent.width - 4
|
||||
height: parent.height - 4
|
||||
|
||||
visible: control.visualFocus
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
}
|
||||
//! [background]
|
||||
|
||||
//! [popup]
|
||||
popup: T.Popup {
|
||||
width: control.width
|
||||
implicitHeight: Math.min(396, listview.contentHeight)
|
||||
topMargin: 8
|
||||
bottomMargin: 8
|
||||
|
||||
Universal.theme: control.Universal.theme
|
||||
Universal.accent: control.Universal.accent
|
||||
|
||||
contentItem: ListView {
|
||||
id: listview
|
||||
clip: true
|
||||
model: control.popup.visible ? control.delegateModel : null
|
||||
currentIndex: control.highlightedIndex
|
||||
|
||||
T.ScrollIndicator.vertical: ScrollIndicator { }
|
||||
}
|
||||
|
||||
background: Rectangle {
|
||||
color: control.Universal.chromeMediumLowColor
|
||||
border.color: control.Universal.chromeHighColor
|
||||
border.width: 1 // FlyoutBorderThemeThickness
|
||||
}
|
||||
}
|
||||
//! [popup]
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Dial {
|
||||
id: control
|
||||
|
||||
implicitWidth: 100
|
||||
implicitHeight: 100
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
x: control.width / 2 - width / 2
|
||||
y: control.height / 2 - height / 2
|
||||
width: Math.max(64, Math.min(control.width, control.height))
|
||||
height: width
|
||||
radius: width / 2
|
||||
color: "transparent"
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor : control.Universal.baseMediumColor
|
||||
border.width: 2
|
||||
}
|
||||
//! [background]
|
||||
|
||||
//! [handle]
|
||||
handle: Rectangle {
|
||||
implicitWidth: 20
|
||||
implicitHeight: 20
|
||||
|
||||
x: background.x + background.width / 2 - handle.width / 2
|
||||
y: background.y + background.height / 2 - handle.height / 2
|
||||
|
||||
radius: width / 2
|
||||
color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
|
||||
|
||||
transform: [
|
||||
Translate {
|
||||
y: -background.height * 0.4 + handle.height / 2
|
||||
},
|
||||
Rotation {
|
||||
angle: control.angle
|
||||
origin.x: handle.width / 2
|
||||
origin.y: handle.height / 2
|
||||
}
|
||||
]
|
||||
}
|
||||
//! [handle]
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Drawer {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0, contentWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0, contentHeight + topPadding + bottomPadding)
|
||||
|
||||
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
|
||||
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
|
||||
|
||||
topPadding: control.edge === Qt.BottomEdge
|
||||
leftPadding: control.edge === Qt.RightEdge
|
||||
rightPadding: control.edge === Qt.LeftEdge
|
||||
bottomPadding: control.edge === Qt.TopEdge
|
||||
|
||||
//! [enter]
|
||||
enter: Transition { SmoothedAnimation { velocity: 5 } }
|
||||
//! [enter]
|
||||
|
||||
//! [exit]
|
||||
exit: Transition { SmoothedAnimation { velocity: 5 } }
|
||||
//! [exit]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Item { }
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
color: control.Universal.chromeMediumLowColor
|
||||
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.Universal.chromeHighColor
|
||||
x: control.edge === Qt.LeftEdge ? parent.width - 1 : 0
|
||||
y: control.edge === Qt.TopEdge ? parent.height - 1 : 0
|
||||
}
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Frame {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0, contentWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0, contentHeight + topPadding + bottomPadding)
|
||||
|
||||
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
|
||||
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
|
||||
|
||||
padding: 12
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Item { }
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
color: "transparent"
|
||||
border.color: control.Universal.chromeDisabledLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.GroupBox {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
label ? label.implicitWidth + leftPadding + rightPadding : 0,
|
||||
contentWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0, contentHeight + topPadding + bottomPadding)
|
||||
|
||||
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
|
||||
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
|
||||
|
||||
spacing: 12
|
||||
padding: 12
|
||||
topPadding: padding + (label && label.implicitWidth > 0 ? label.implicitHeight + spacing : 0)
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Item { }
|
||||
//! [contentItem]
|
||||
|
||||
//! [label]
|
||||
label: Text {
|
||||
x: control.leftPadding
|
||||
width: control.availableWidth
|
||||
|
||||
text: control.title
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [label]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
y: control.topPadding - control.padding
|
||||
width: parent.width
|
||||
height: parent.height - control.topPadding + control.padding
|
||||
|
||||
color: "transparent"
|
||||
border.color: control.Universal.chromeDisabledLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ItemDelegate {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
spacing: 12
|
||||
|
||||
padding: 12
|
||||
topPadding: padding - 1
|
||||
bottomPadding: padding + 1
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: !control.mirrored ? (control.indicator ? control.indicator.width : 0) + control.spacing : 0
|
||||
rightPadding: control.mirrored ? (control.indicator ? control.indicator.width : 0) + control.spacing : 0
|
||||
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
visible: control.down || control.highlighted || control.visualFocus
|
||||
color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
Rectangle {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
visible: control.visualFocus || control.highlighted
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Label {
|
||||
id: control
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
linkColor: Universal.accent
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Controls 2.0
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Menu {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem ? contentItem.implicitWidth + leftPadding + rightPadding : 0)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem ? contentItem.implicitHeight : 0) + topPadding + bottomPadding
|
||||
|
||||
margins: 0
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: ListView {
|
||||
implicitHeight: contentHeight
|
||||
model: control.contentModel
|
||||
// TODO: improve this?
|
||||
interactive: ApplicationWindow.window ? contentHeight > ApplicationWindow.window.height : false
|
||||
clip: true
|
||||
keyNavigationWraps: false
|
||||
currentIndex: -1
|
||||
|
||||
ScrollIndicator.vertical: ScrollIndicator {}
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 200
|
||||
implicitHeight: 40
|
||||
color: control.Universal.chromeMediumLowColor
|
||||
border.color: control.Universal.chromeHighColor
|
||||
border.width: 1 // FlyoutBorderThemeThickness
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.MenuItem {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 12
|
||||
topPadding: padding - 1
|
||||
bottomPadding: padding + 1
|
||||
spacing: 12
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: !control.mirrored ? control.indicator.width + control.spacing : 0
|
||||
rightPadding: control.mirrored ? control.indicator.width + control.spacing : 0
|
||||
|
||||
text: control.text
|
||||
font: control.font
|
||||
color: !control.enabled ? control.Universal.baseLowColor : control.Universal.baseHighColor
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [indicator]
|
||||
indicator: Image {
|
||||
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
|
||||
|
||||
visible: control.checked
|
||||
source: !control.checkable ? "" : "image://universal/checkmark/" + (!control.enabled ? control.Universal.baseLowColor : control.down ? control.Universal.baseHighColor : control.Universal.baseMediumHighColor)
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 200
|
||||
implicitHeight: 40
|
||||
|
||||
color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
|
||||
Rectangle {
|
||||
x: 1; y: 1
|
||||
width: parent.width - 2
|
||||
height: parent.height - 2
|
||||
|
||||
visible: control.visualFocus
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Page {
|
||||
id: control
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Item { }
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
color: control.Universal.background
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.PageIndicator {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
padding: 6
|
||||
spacing: 7
|
||||
|
||||
//! [delegate]
|
||||
delegate: Rectangle {
|
||||
implicitWidth: 5
|
||||
implicitHeight: 5
|
||||
|
||||
radius: width / 2
|
||||
color: index === control.currentIndex ? control.Universal.baseMediumHighColor :
|
||||
pressed ? control.Universal.baseMediumLowColor : control.Universal.baseLowColor
|
||||
}
|
||||
//! [delegate]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Row {
|
||||
spacing: control.spacing
|
||||
|
||||
Repeater {
|
||||
model: control.count
|
||||
delegate: control.delegate
|
||||
}
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Pane {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0, contentWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0, contentHeight + topPadding + bottomPadding)
|
||||
|
||||
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
|
||||
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
|
||||
|
||||
padding: 12
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Item { }
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
color: control.Universal.background
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Popup {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentWidth > 0 ? contentWidth + leftPadding + rightPadding : 0)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentWidth > 0 ? contentHeight + topPadding + bottomPadding : 0)
|
||||
|
||||
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
|
||||
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
|
||||
|
||||
padding: 12
|
||||
|
||||
contentItem: Item { }
|
||||
|
||||
background: Rectangle {
|
||||
color: control.Universal.chromeMediumLowColor
|
||||
border.color: control.Universal.chromeHighColor
|
||||
border.width: 1 // FlyoutBorderThemeThickness
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
import QtQuick.Controls.Universal.impl 2.0
|
||||
|
||||
T.ProgressBar {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: ProgressStrip {
|
||||
id: strip
|
||||
implicitHeight: 10
|
||||
|
||||
scale: control.mirrored ? -1 : 1
|
||||
indeterminate: control.indeterminate
|
||||
color: control.Universal.accent
|
||||
progress: control.position
|
||||
clip: control.indeterminate
|
||||
|
||||
ProgressStripAnimator {
|
||||
target: strip
|
||||
running: control.visible && control.indeterminate
|
||||
}
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 100
|
||||
implicitHeight: 10
|
||||
|
||||
x: control.leftPadding
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
width: control.availableWidth
|
||||
height: 10
|
||||
|
||||
visible: !control.indeterminate
|
||||
color: control.Universal.baseLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
import QtQuick.Controls.Universal.impl 2.0
|
||||
|
||||
T.RadioButton {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 6
|
||||
spacing: 8
|
||||
|
||||
property bool useSystemFocusVisuals: true
|
||||
|
||||
//! [indicator]
|
||||
indicator: RadioIndicator {
|
||||
x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
control: control
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
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
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.RadioDelegate {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
spacing: 12
|
||||
|
||||
padding: 12
|
||||
topPadding: padding - 1
|
||||
bottomPadding: padding + 1
|
||||
|
||||
property Item control
|
||||
|
||||
//! [indicator]
|
||||
indicator: RadioIndicator {
|
||||
x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
control: control
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: !control.mirrored ? 0 : control.indicator.width + control.spacing
|
||||
rightPadding: control.mirrored ? 0 : control.indicator.width + control.spacing
|
||||
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
visible: control.down || control.highlighted || control.visualFocus
|
||||
color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
Rectangle {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
visible: control.visualFocus || control.highlighted
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
Rectangle {
|
||||
implicitWidth: 20
|
||||
implicitHeight: 20
|
||||
radius: width / 2
|
||||
color: "transparent"
|
||||
border.width: 2 // RadioButtonBorderThemeThickness
|
||||
border.color: control.checked ? "transparent" :
|
||||
!control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
|
||||
|
||||
property var control
|
||||
|
||||
Rectangle {
|
||||
id: checkOuterEllipse
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
|
||||
radius: width / 2
|
||||
opacity: control.checked ? 1 : 0
|
||||
color: "transparent"
|
||||
border.width: 2 // RadioButtonBorderThemeThickness
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.baseMediumColor : control.Universal.accent
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: checkGlyph
|
||||
x: (parent.width - width) / 2
|
||||
y: (parent.height - height) / 2
|
||||
width: parent.width / 2
|
||||
height: parent.height / 2
|
||||
|
||||
radius: width / 2
|
||||
opacity: control.checked ? 1 : 0
|
||||
color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.down ? control.Universal.baseMediumColor : control.Universal.baseMediumHighColor
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,118 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.RangeSlider {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
Math.max(background ? background.implicitWidth : 0,
|
||||
first.handle ? first.handle.implicitWidth : 0,
|
||||
second.handle ? second.handle.implicitWidth : 0) + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(background ? background.implicitHeight : 0,
|
||||
first.handle ? first.handle.implicitHeight : 0,
|
||||
second.handle ? second.handle.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
|
||||
padding: 6
|
||||
|
||||
//! [firstHandle]
|
||||
first.handle: Rectangle {
|
||||
implicitWidth: horizontal ? 8 : 24
|
||||
implicitHeight: horizontal ? 24 : 8
|
||||
|
||||
readonly property bool horizontal: control.orientation === Qt.Horizontal
|
||||
|
||||
x: control.leftPadding + (horizontal ? control.first.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
|
||||
y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : control.first.visualPosition * (control.availableHeight - height))
|
||||
|
||||
radius: 4
|
||||
color: control.first.pressed ? control.Universal.chromeHighColor : control.enabled ? control.Universal.accent : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
//! [firstHandle]
|
||||
|
||||
//! [secondHandle]
|
||||
second.handle: Rectangle {
|
||||
implicitWidth: horizontal ? 8 : 24
|
||||
implicitHeight: horizontal ? 24 : 8
|
||||
|
||||
readonly property bool horizontal: control.orientation === Qt.Horizontal
|
||||
|
||||
x: control.leftPadding + (horizontal ? control.second.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
|
||||
y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : control.second.visualPosition * (control.availableHeight - height))
|
||||
|
||||
radius: 4
|
||||
color: control.second.pressed ? control.Universal.chromeHighColor : control.enabled ? control.Universal.accent : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
//! [secondHandle]
|
||||
|
||||
//! [background]
|
||||
background: Item {
|
||||
implicitWidth: horizontal ? 200 : 18
|
||||
implicitHeight: horizontal ? 18 : 200
|
||||
|
||||
readonly property bool horizontal: control.orientation === Qt.Horizontal
|
||||
|
||||
x: control.leftPadding + (horizontal ? 0 : (control.availableWidth - width) / 2)
|
||||
y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : 0)
|
||||
width: horizontal ? control.availableWidth : implicitWidth
|
||||
height: horizontal ? implicitHeight : control.availableHeight
|
||||
|
||||
scale: horizontal && control.mirrored ? -1 : 1
|
||||
|
||||
Rectangle {
|
||||
x: parent.horizontal ? 0 : (parent.width - width) / 2
|
||||
y: parent.horizontal ? (parent.height - height) / 2 : 0
|
||||
width: parent.horizontal ? parent.width : 2 // SliderBackgroundThemeHeight
|
||||
height: !parent.horizontal ? parent.height : 2 // SliderBackgroundThemeHeight
|
||||
|
||||
color: control.enabled ? control.Universal.baseMediumLowColor : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
x: parent.horizontal ? control.first.position * parent.width : (parent.width - width) / 2
|
||||
y: parent.horizontal ? (parent.height - height) / 2 : control.second.visualPosition * parent.height
|
||||
width: parent.horizontal ? control.second.position * parent.width - control.first.position * parent.width : 2 // SliderBackgroundThemeHeight
|
||||
height: !parent.horizontal ? control.second.position * parent.height - control.first.position * parent.height : 2 // SliderBackgroundThemeHeight
|
||||
|
||||
color: control.enabled ? control.Universal.accent : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ScrollBar {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
// TODO: arrows
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Rectangle {
|
||||
implicitWidth: 12
|
||||
implicitHeight: 12
|
||||
|
||||
color: control.pressed ? control.Universal.baseMediumColor : control.Universal.chromeHighColor
|
||||
visible: control.size < 1.0
|
||||
opacity: 0.0
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 12
|
||||
implicitHeight: 12
|
||||
|
||||
color: control.Universal.chromeLowColor
|
||||
visible: control.size < 1.0
|
||||
opacity: 0.0
|
||||
}
|
||||
//! [background]
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "active"
|
||||
when: control.active
|
||||
}
|
||||
]
|
||||
|
||||
transitions: [
|
||||
Transition {
|
||||
to: "active"
|
||||
NumberAnimation { targets: [contentItem, background]; property: "opacity"; to: 1.0 }
|
||||
},
|
||||
Transition {
|
||||
from: "active"
|
||||
SequentialAnimation {
|
||||
PauseAnimation { duration: 3000 }
|
||||
NumberAnimation { targets: [contentItem, background]; property: "opacity"; to: 0.0 }
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ScrollIndicator {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Rectangle {
|
||||
id: indicator
|
||||
|
||||
implicitWidth: 6
|
||||
implicitHeight: 6
|
||||
|
||||
color: control.Universal.baseMediumLowColor
|
||||
visible: control.size < 1.0
|
||||
opacity: 0.0
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "active"
|
||||
when: control.active
|
||||
}
|
||||
]
|
||||
|
||||
transitions: [
|
||||
Transition {
|
||||
to: "active"
|
||||
NumberAnimation { target: indicator; property: "opacity"; to: 1.0 }
|
||||
},
|
||||
Transition {
|
||||
from: "active"
|
||||
SequentialAnimation {
|
||||
PauseAnimation { duration: 5000 }
|
||||
NumberAnimation { target: indicator; property: "opacity"; to: 0.0 }
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Slider {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
Math.max(background ? background.implicitWidth : 0,
|
||||
handle ? handle.implicitWidth : 0) + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(background ? background.implicitHeight : 0,
|
||||
handle ? handle.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
|
||||
padding: 6
|
||||
|
||||
property bool useSystemFocusVisuals: true
|
||||
|
||||
//! [handle]
|
||||
handle: Rectangle {
|
||||
implicitWidth: horizontal ? 8 : 24
|
||||
implicitHeight: horizontal ? 24 : 8
|
||||
|
||||
readonly property bool horizontal: control.orientation === Qt.Horizontal
|
||||
|
||||
x: control.leftPadding + (horizontal ? control.visualPosition * (control.availableWidth - width) : (control.availableWidth - width) / 2)
|
||||
y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : control.visualPosition * (control.availableHeight - height))
|
||||
|
||||
radius: 4
|
||||
color: control.pressed ? control.Universal.chromeHighColor : control.enabled ? control.Universal.accent : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
//! [handle]
|
||||
|
||||
//! [background]
|
||||
background: Item {
|
||||
implicitWidth: horizontal ? 200 : 18
|
||||
implicitHeight: horizontal ? 18 : 200
|
||||
|
||||
readonly property bool horizontal: control.orientation === Qt.Horizontal
|
||||
|
||||
x: control.leftPadding + (horizontal ? 0 : (control.availableWidth - width) / 2)
|
||||
y: control.topPadding + (horizontal ? (control.availableHeight - height) / 2 : 0)
|
||||
width: horizontal ? control.availableWidth : implicitWidth
|
||||
height: horizontal ? implicitHeight : control.availableHeight
|
||||
|
||||
scale: horizontal && control.mirrored ? -1 : 1
|
||||
|
||||
Rectangle {
|
||||
x: parent.horizontal ? 0 : (parent.width - width) / 2
|
||||
y: parent.horizontal ? (parent.height - height) / 2 : 0
|
||||
width: parent.horizontal ? parent.width : 2 // SliderTrackThemeHeight
|
||||
height: !parent.horizontal ? parent.height : 2 // SliderTrackThemeHeight
|
||||
|
||||
color: control.enabled ? control.Universal.baseMediumLowColor : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
x: parent.horizontal ? 0 : (parent.width - width) / 2
|
||||
y: parent.horizontal ? (parent.height - height) / 2 : control.visualPosition * parent.height
|
||||
width: parent.horizontal ? control.position * parent.width : 2 // SliderTrackThemeHeight
|
||||
height: !parent.horizontal ? control.position * parent.height : 2 // SliderTrackThemeHeight
|
||||
|
||||
color: control.enabled ? control.Universal.accent : control.Universal.chromeDisabledHighColor
|
||||
}
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,156 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.SpinBox {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + 16 +
|
||||
(up.indicator ? up.indicator.implicitWidth : 0) +
|
||||
(down.indicator ? down.indicator.implicitWidth : 0))
|
||||
implicitHeight: Math.max(contentItem.implicitHeight + topPadding + bottomPadding,
|
||||
background ? background.implicitHeight : 0,
|
||||
up.indicator ? up.indicator.implicitHeight : 0,
|
||||
down.indicator ? down.indicator.implicitHeight : 0)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
// TextControlThemePadding + 2 (border)
|
||||
padding: 12
|
||||
topPadding: padding - 7
|
||||
leftPadding: padding + (control.mirrored ? (up.indicator ? up.indicator.width : 0) : (down.indicator ? down.indicator.width : 0))
|
||||
rightPadding: padding - 4 + (control.mirrored ? (down.indicator ? down.indicator.width : 0) : (up.indicator ? up.indicator.width : 0))
|
||||
bottomPadding: padding - 5
|
||||
|
||||
Universal.theme: activeFocus ? Universal.Light : undefined
|
||||
|
||||
//! [validator]
|
||||
validator: IntValidator {
|
||||
locale: control.locale.name
|
||||
bottom: Math.min(control.from, control.to)
|
||||
top: Math.max(control.from, control.to)
|
||||
}
|
||||
//! [validator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: TextInput {
|
||||
text: control.textFromValue(control.value, control.locale)
|
||||
|
||||
font: control.font
|
||||
color: !enabled ? control.Universal.chromeDisabledLowColor :
|
||||
activeFocus ? control.Universal.chromeBlackHighColor : control.Universal.foreground
|
||||
selectionColor: control.Universal.accent
|
||||
selectedTextColor: control.Universal.chromeWhiteColor
|
||||
horizontalAlignment: Qt.AlignHCenter
|
||||
verticalAlignment: TextInput.AlignVCenter
|
||||
|
||||
readOnly: !control.editable
|
||||
validator: control.validator
|
||||
inputMethodHints: Qt.ImhFormattedNumbersOnly
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [up.indicator]
|
||||
up.indicator: Item {
|
||||
implicitWidth: 28
|
||||
height: parent.height + 4
|
||||
y: -2
|
||||
x: control.mirrored ? 0 : parent.width - width
|
||||
|
||||
Rectangle {
|
||||
x: 2; y: 4
|
||||
width: parent.width - 4
|
||||
height: parent.height - 8
|
||||
color: !control.up.pressed ? "transparent" :
|
||||
control.activeFocus ? control.Universal.accent
|
||||
: control.Universal.chromeDisabledLowColor
|
||||
}
|
||||
|
||||
Image {
|
||||
x: (parent.width - width) / 2
|
||||
y: (parent.height - height) / 2
|
||||
source: "image://universal/" + (control.mirrored ? "left" : "right") + "arrow/"
|
||||
+ (!enabled ? control.Universal.chromeDisabledLowColor :
|
||||
control.activeFocus ? control.Universal.chromeBlackHighColor : control.Universal.baseHighColor)
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
}
|
||||
}
|
||||
//! [up.indicator]
|
||||
|
||||
//! [down.indicator]
|
||||
down.indicator: Item {
|
||||
implicitWidth: 28
|
||||
height: parent.height + 4
|
||||
y: -2
|
||||
x: control.mirrored ? parent.width - width : 0
|
||||
|
||||
Rectangle {
|
||||
x: 2; y: 4
|
||||
width: parent.width - 4
|
||||
height: parent.height - 8
|
||||
color: !control.down.pressed ? "transparent" :
|
||||
control.activeFocus ? control.Universal.accent
|
||||
: control.Universal.chromeDisabledLowColor
|
||||
}
|
||||
|
||||
Image {
|
||||
x: (parent.width - width) / 2
|
||||
y: (parent.height - height) / 2
|
||||
source: "image://universal/" + (control.mirrored ? "right" : "left") + "arrow/"
|
||||
+ (!enabled ? control.Universal.chromeDisabledLowColor :
|
||||
control.activeFocus ? control.Universal.chromeBlackHighColor : control.Universal.baseHighColor)
|
||||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
}
|
||||
}
|
||||
//! [down.indicator]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 60 + 28 // TextControlThemeMinWidth - 4 (border)
|
||||
implicitHeight: 28 // TextControlThemeMinHeight - 4 (border)
|
||||
|
||||
border.width: 2 // TextControlBorderThemeThickness
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.activeFocus ? control.Universal.accent : control.Universal.chromeDisabledLowColor
|
||||
color: control.enabled ? control.Universal.background : control.Universal.baseLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.StackView {
|
||||
id: control
|
||||
|
||||
//! [popEnter]
|
||||
popEnter: Transition {
|
||||
ParallelAnimation {
|
||||
NumberAnimation { property: "opacity"; from: 0; to: 1; duration: 200; easing.type: Easing.InQuint }
|
||||
NumberAnimation { property: "x"; from: (control.mirrored ? -0.3 : 0.3) * -control.width; to: 0; duration: 400; easing.type: Easing.OutCubic }
|
||||
}
|
||||
}
|
||||
//! [popEnter]
|
||||
|
||||
//! [popExit]
|
||||
popExit: Transition {
|
||||
NumberAnimation { property: "opacity"; from: 1; to: 0; duration: 200; easing.type: Easing.OutQuint }
|
||||
}
|
||||
//! [popExit]
|
||||
|
||||
//! [pushEnter]
|
||||
pushEnter: Transition {
|
||||
ParallelAnimation {
|
||||
NumberAnimation { property: "opacity"; from: 0; to: 1; duration: 200; easing.type: Easing.InQuint }
|
||||
NumberAnimation { property: "x"; from: (control.mirrored ? -0.3 : 0.3) * control.width; to: 0; duration: 400; easing.type: Easing.OutCubic }
|
||||
}
|
||||
}
|
||||
//! [pushEnter]
|
||||
|
||||
//! [pushExit]
|
||||
pushExit: Transition {
|
||||
NumberAnimation { property: "opacity"; from: 1; to: 0; duration: 200; easing.type: Easing.OutQuint }
|
||||
}
|
||||
//! [pushExit]
|
||||
|
||||
//! [replaceEnter]
|
||||
replaceEnter: Transition {
|
||||
ParallelAnimation {
|
||||
NumberAnimation { property: "opacity"; from: 0; to: 1; duration: 200; easing.type: Easing.InQuint }
|
||||
NumberAnimation { property: "x"; from: (control.mirrored ? -0.3 : 0.3) * control.width; to: 0; duration: 400; easing.type: Easing.OutCubic }
|
||||
}
|
||||
}
|
||||
//! [replaceEnter]
|
||||
|
||||
//! [replaceExit]
|
||||
replaceExit: Transition {
|
||||
NumberAnimation { property: "opacity"; from: 1; to: 0; duration: 200; easing.type: Easing.OutQuint }
|
||||
}
|
||||
//! [replaceExit]
|
||||
}
|
||||
@@ -0,0 +1,109 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.SwipeDelegate {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
spacing: 12
|
||||
|
||||
padding: 12
|
||||
topPadding: padding - 1
|
||||
bottomPadding: padding + 1
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: !control.mirrored ? (control.indicator ? control.indicator.width : 0) + control.spacing : 0
|
||||
rightPadding: control.mirrored ? (control.indicator ? control.indicator.width : 0) + control.spacing : 0
|
||||
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
renderType: Text.NativeRendering
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
|
||||
Behavior on x {
|
||||
enabled: !control.down
|
||||
NumberAnimation {
|
||||
easing.type: Easing.InOutCubic
|
||||
duration: 400
|
||||
}
|
||||
}
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
color: control.Universal.background
|
||||
|
||||
Rectangle {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
Rectangle {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
visible: control.visualFocus || control.highlighted
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
}
|
||||
|
||||
Behavior on x {
|
||||
enabled: !control.down
|
||||
NumberAnimation {
|
||||
easing.type: Easing.InOutCubic
|
||||
duration: 400
|
||||
}
|
||||
}
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.Switch {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 5
|
||||
spacing: 8
|
||||
|
||||
property bool useSystemFocusVisuals: true
|
||||
|
||||
//! [indicator]
|
||||
indicator: SwitchIndicator {
|
||||
x: text ? (control.mirrored ? control.width - width - control.rightPadding : control.leftPadding) : control.leftPadding + (control.availableWidth - width) / 2
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
control: control
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
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
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.SwitchDelegate {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
Math.max(contentItem.implicitHeight,
|
||||
indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
spacing: 12
|
||||
|
||||
padding: 12
|
||||
topPadding: padding - 1
|
||||
bottomPadding: padding + 1
|
||||
|
||||
//! [indicator]
|
||||
indicator: SwitchIndicator {
|
||||
x: text ? (control.mirrored ? control.leftPadding : control.width - width - control.rightPadding) : control.leftPadding + (control.availableWidth - width) / 2
|
||||
y: control.topPadding + (control.availableHeight - height) / 2
|
||||
control: control
|
||||
}
|
||||
//! [indicator]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
leftPadding: !control.mirrored ? 0 : control.indicator.width + control.spacing
|
||||
rightPadding: control.mirrored ? 0 : control.indicator.width + control.spacing
|
||||
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
visible: control.text
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
visible: control.down || control.highlighted || control.visualFocus
|
||||
color: control.down ? control.Universal.listMediumColor : control.Universal.altMediumLowColor
|
||||
Rectangle {
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
visible: control.visualFocus || control.highlighted
|
||||
color: control.Universal.accent
|
||||
opacity: control.Universal.theme === Universal.Light ? 0.4 : 0.6
|
||||
}
|
||||
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
Rectangle {
|
||||
implicitWidth: 44
|
||||
implicitHeight: 20
|
||||
|
||||
radius: 10
|
||||
color: !control.enabled ? "transparent" :
|
||||
control.pressed ? control.Universal.baseMediumColor :
|
||||
control.checked ? control.Universal.accent : "transparent"
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.checked && !control.pressed ? control.Universal.accent : control.Universal.baseMediumColor
|
||||
border.width: 2
|
||||
|
||||
property Item control
|
||||
|
||||
Rectangle {
|
||||
width: 10
|
||||
height: 10
|
||||
radius: 5
|
||||
|
||||
color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.pressed || control.checked ? control.Universal.chromeWhiteColor : control.Universal.baseMediumHighColor
|
||||
|
||||
x: Math.max(5, Math.min(parent.width - width - 5,
|
||||
control.visualPosition * parent.width - (width / 2)))
|
||||
y: (parent.height - height) / 2
|
||||
|
||||
Behavior on x {
|
||||
enabled: !control.pressed
|
||||
SmoothedAnimation { velocity: 200 }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.7
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.TabBar {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: PathView {
|
||||
implicitWidth: 200
|
||||
implicitHeight: 48
|
||||
|
||||
model: control.contentModel
|
||||
currentIndex: control.currentIndex
|
||||
|
||||
interactive: false
|
||||
snapMode: PathView.SnapToItem
|
||||
movementDirection: PathView.Positive
|
||||
highlightMoveDuration: 100
|
||||
|
||||
path: Path {
|
||||
startX: control.count ? control.availableWidth / control.count / 2 : 0
|
||||
startY: control.availableHeight / 2
|
||||
PathLine {
|
||||
x: control.count ? control.availableWidth + (control.availableWidth / control.count / 2) : 0
|
||||
y: control.availableHeight / 2
|
||||
}
|
||||
}
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 200
|
||||
implicitHeight: 48
|
||||
color: control.Universal.background
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.TabButton {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 12 // PivotItemMargin
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: control.checked || control.down ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.TextArea {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(contentWidth + leftPadding + rightPadding,
|
||||
background ? background.implicitWidth : 0,
|
||||
placeholder.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(contentHeight + topPadding + bottomPadding,
|
||||
background ? background.implicitHeight : 0,
|
||||
placeholder.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
// TextControlThemePadding + 2 (border)
|
||||
padding: 12
|
||||
topPadding: padding - 7
|
||||
rightPadding: padding - 4
|
||||
bottomPadding: padding - 5
|
||||
|
||||
Universal.theme: activeFocus ? Universal.Light : undefined
|
||||
|
||||
color: !enabled ? Universal.chromeDisabledLowColor :
|
||||
activeFocus ? Universal.chromeBlackHighColor : Universal.foreground
|
||||
selectionColor: Universal.accent
|
||||
selectedTextColor: Universal.chromeWhiteColor
|
||||
|
||||
Text {
|
||||
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.enabled ? control.Universal.chromeDisabledLowColor :
|
||||
control.activeFocus ? control.Universal.chromeBlackMediumLowColor : control.Universal.baseMediumColor
|
||||
visible: !control.length && !control.preeditText && (!control.activeFocus || control.horizontalAlignment !== Qt.AlignHCenter)
|
||||
horizontalAlignment: control.horizontalAlignment
|
||||
verticalAlignment: control.verticalAlignment
|
||||
elide: Text.ElideRight
|
||||
}
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 60 // TextControlThemeMinWidth - 4 (border)
|
||||
implicitHeight: 28 // TextControlThemeMinHeight - 4 (border)
|
||||
|
||||
border.width: 2 // TextControlBorderThemeThickness
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.activeFocus ? control.Universal.accent : control.Universal.chromeDisabledLowColor
|
||||
color: control.enabled ? control.Universal.background : control.Universal.baseLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.TextField {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(contentWidth + leftPadding + rightPadding,
|
||||
background ? background.implicitWidth : 0,
|
||||
placeholder.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(contentHeight + topPadding + bottomPadding,
|
||||
background ? background.implicitHeight : 0,
|
||||
placeholder.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
// TextControlThemePadding + 2 (border)
|
||||
padding: 12
|
||||
topPadding: padding - 7
|
||||
rightPadding: padding - 4
|
||||
bottomPadding: padding - 5
|
||||
|
||||
Universal.theme: activeFocus ? Universal.Light : undefined
|
||||
|
||||
color: !enabled ? Universal.chromeDisabledLowColor :
|
||||
activeFocus ? Universal.chromeBlackHighColor : Universal.foreground
|
||||
selectionColor: Universal.accent
|
||||
selectedTextColor: Universal.chromeWhiteColor
|
||||
verticalAlignment: TextInput.AlignVCenter
|
||||
|
||||
Text {
|
||||
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.enabled ? control.Universal.chromeDisabledLowColor :
|
||||
control.activeFocus ? control.Universal.chromeBlackMediumLowColor : control.Universal.baseMediumColor
|
||||
visible: !control.length && !control.preeditText && (!control.activeFocus || control.horizontalAlignment !== Qt.AlignHCenter)
|
||||
horizontalAlignment: control.horizontalAlignment
|
||||
verticalAlignment: control.verticalAlignment
|
||||
elide: Text.ElideRight
|
||||
}
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 60 // TextControlThemeMinWidth - 4 (border)
|
||||
implicitHeight: 28 // TextControlThemeMinHeight - 4 (border)
|
||||
|
||||
border.width: 2 // TextControlBorderThemeThickness
|
||||
border.color: !control.enabled ? control.Universal.baseLowColor :
|
||||
control.activeFocus ? control.Universal.accent : control.Universal.chromeDisabledLowColor
|
||||
color: control.enabled ? control.Universal.background : control.Universal.baseLowColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ToolBar {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0, contentWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0, contentHeight + topPadding + bottomPadding)
|
||||
|
||||
contentWidth: contentItem.implicitWidth || (contentChildren.length === 1 ? contentChildren[0].implicitWidth : 0)
|
||||
contentHeight: contentItem.implicitHeight || (contentChildren.length === 1 ? contentChildren[0].implicitHeight : 0)
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Item { }
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitHeight: 48 // AppBarThemeCompactHeight
|
||||
color: control.Universal.chromeMediumColor
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ToolButton {
|
||||
id: control
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
baselineOffset: contentItem.y + contentItem.baselineOffset
|
||||
|
||||
padding: 6
|
||||
|
||||
property bool useSystemFocusVisuals: true
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
text: control.text
|
||||
font: control.font
|
||||
elide: Text.ElideRight
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
implicitWidth: 68
|
||||
implicitHeight: 48 // AppBarThemeCompactHeight
|
||||
|
||||
color: control.down ? control.Universal.listMediumColor :
|
||||
control.enabled && (control.highlighted || control.checked) ? control.Universal.accent : "transparent"
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
|
||||
T.ToolTip {
|
||||
id: control
|
||||
|
||||
x: parent ? (parent.width - implicitWidth) / 2 : 0
|
||||
y: -implicitHeight - 16
|
||||
|
||||
implicitWidth: Math.max(background ? background.implicitWidth : 0,
|
||||
contentItem.implicitWidth + leftPadding + rightPadding)
|
||||
implicitHeight: Math.max(background ? background.implicitHeight : 0,
|
||||
contentItem.implicitHeight + topPadding + bottomPadding)
|
||||
|
||||
margins: 8
|
||||
padding: 8
|
||||
topPadding: padding - 3
|
||||
bottomPadding: padding - 1
|
||||
|
||||
closePolicy: T.Popup.CloseOnEscape | T.Popup.CloseOnPressOutsideParent | T.Popup.CloseOnReleaseOutsideParent
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: Text {
|
||||
text: control.text
|
||||
font: control.font
|
||||
// TODO: wrapMode: Label.Wrap
|
||||
opacity: enabled ? 1.0 : 0.2
|
||||
color: control.Universal.foreground
|
||||
}
|
||||
//! [contentItem]
|
||||
|
||||
//! [background]
|
||||
background: Rectangle {
|
||||
color: control.Universal.chromeMediumLowColor
|
||||
border.color: control.Universal.chromeHighColor
|
||||
border.width: 1 // ToolTipBorderThemeThickness
|
||||
}
|
||||
//! [background]
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: http://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the Qt Quick Controls 2 module of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL3$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see http://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at http://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPLv3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or later as published by the Free
|
||||
** Software Foundation and appearing in the file LICENSE.GPL included in
|
||||
** the packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 2.0 requirements will be
|
||||
** met: http://www.gnu.org/licenses/gpl-2.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
import QtQuick 2.6
|
||||
import QtQuick.Templates 2.0 as T
|
||||
import QtQuick.Controls.Universal 2.0
|
||||
import QtQuick.Controls 2.0
|
||||
|
||||
T.Tumbler {
|
||||
id: control
|
||||
|
||||
implicitWidth: 60
|
||||
implicitHeight: 200
|
||||
|
||||
//! [delegate]
|
||||
delegate: Text {
|
||||
text: modelData
|
||||
font: control.font
|
||||
color: control.Universal.foreground
|
||||
opacity: (1.0 - Math.abs(Tumbler.displacement) / (visibleItemCount / 2)) * (control.enabled ? 1 : 0.6)
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
}
|
||||
//! [delegate]
|
||||
|
||||
//! [contentItem]
|
||||
contentItem: PathView {
|
||||
id: pathView
|
||||
model: control.model
|
||||
delegate: control.delegate
|
||||
clip: true
|
||||
pathItemCount: control.visibleItemCount + 1
|
||||
preferredHighlightBegin: 0.5
|
||||
preferredHighlightEnd: 0.5
|
||||
dragMargin: width / 2
|
||||
|
||||
path: Path {
|
||||
startX: pathView.width / 2
|
||||
startY: -pathView.delegateHeight / 2
|
||||
PathLine {
|
||||
x: pathView.width / 2
|
||||
y: pathView.pathItemCount * pathView.delegateHeight - pathView.delegateHeight / 2
|
||||
}
|
||||
}
|
||||
|
||||
property real delegateHeight: control.availableHeight / control.visibleItemCount
|
||||
}
|
||||
//! [contentItem]
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
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:
|
||||
// 'qmlplugindump -nonrelocatable QtQuick.Controls.Universal 2.0'
|
||||
|
||||
Module {
|
||||
dependencies: []
|
||||
Component { name: "QQuickStyle"; prototype: "QObject" }
|
||||
Component {
|
||||
name: "QQuickUniversalStyle"
|
||||
prototype: "QQuickStyle"
|
||||
exports: ["QtQuick.Controls.Universal/Universal 2.0"]
|
||||
isCreatable: false
|
||||
exportMetaObjectRevisions: [0]
|
||||
Enum {
|
||||
name: "Theme"
|
||||
values: {
|
||||
"Light": 0,
|
||||
"Dark": 1
|
||||
}
|
||||
}
|
||||
Enum {
|
||||
name: "Color"
|
||||
values: {
|
||||
"Lime": 0,
|
||||
"Green": 1,
|
||||
"Emerald": 2,
|
||||
"Teal": 3,
|
||||
"Cyan": 4,
|
||||
"Cobalt": 5,
|
||||
"Indigo": 6,
|
||||
"Violet": 7,
|
||||
"Pink": 8,
|
||||
"Magenta": 9,
|
||||
"Crimson": 10,
|
||||
"Red": 11,
|
||||
"Orange": 12,
|
||||
"Amber": 13,
|
||||
"Yellow": 14,
|
||||
"Brown": 15,
|
||||
"Olive": 16,
|
||||
"Steel": 17,
|
||||
"Mauve": 18,
|
||||
"Taupe": 19
|
||||
}
|
||||
}
|
||||
Property { name: "theme"; type: "Theme" }
|
||||
Property { name: "accent"; type: "QVariant" }
|
||||
Property { name: "foreground"; type: "QVariant" }
|
||||
Property { name: "background"; type: "QVariant" }
|
||||
Signal { name: "paletteChanged" }
|
||||
Method {
|
||||
name: "color"
|
||||
type: "QColor"
|
||||
Parameter { name: "color"; type: "Color" }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
module QtQuick.Controls.Universal
|
||||
plugin qtquickcontrols2universalstyleplugin
|
||||
classname QtQuickControls2UniversalStylePlugin
|
||||
depends QtQuick.Controls 2.0
|
||||
Binary file not shown.
Reference in New Issue
Block a user