diff options
author | Mitch Curtis <[email protected]> | 2021-08-12 14:39:51 +0200 |
---|---|---|
committer | Mitch Curtis <[email protected]> | 2021-08-16 12:52:59 +0200 |
commit | 809339d1484cf556512534367b8170bc26baf072 (patch) | |
tree | 12871313b658f36d058b5ef25af1e247e9c46ce9 /src/quickcontrols2/fusion/impl | |
parent | b01b4f00eae8022c6a97d90f54dac395144ae095 (diff) |
Now that qtquickcontrols2 has been merged into qtdeclarative,
we should make it obvious that this repo should no longer be
used, by preventing it from being built.
Task-number: QTBUG-95173
Pick-to: 6.2
Change-Id: I95bd6a214f3d75a865ab163ee0a1f9ffbeb7a051
Reviewed-by: Alexandru Croitor <[email protected]>
Reviewed-by: Volker Hilsheimer <[email protected]>
Diffstat (limited to 'src/quickcontrols2/fusion/impl')
-rw-r--r-- | src/quickcontrols2/fusion/impl/ButtonPanel.qml | 76 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/CMakeLists.txt | 39 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/CheckIndicator.qml | 91 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/RadioIndicator.qml | 77 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/SliderGroove.qml | 93 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/SliderHandle.qml | 85 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/SwitchIndicator.qml | 136 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/qquickfusionbusyindicator.cpp | 111 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/qquickfusionbusyindicator_p.h | 84 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/qquickfusiondial.cpp | 139 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/qquickfusiondial_p.h | 76 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/qquickfusionknob.cpp | 88 | ||||
-rw-r--r-- | src/quickcontrols2/fusion/impl/qquickfusionknob_p.h | 69 |
13 files changed, 0 insertions, 1164 deletions
diff --git a/src/quickcontrols2/fusion/impl/ButtonPanel.qml b/src/quickcontrols2/fusion/impl/ButtonPanel.qml deleted file mode 100644 index ffe87003..00000000 --- a/src/quickcontrols2/fusion/impl/ButtonPanel.qml +++ /dev/null @@ -1,76 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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 -import QtQuick.Controls.impl -import QtQuick.Controls.Fusion -import QtQuick.Controls.Fusion.impl - -Rectangle { - id: panel - - property Item control - property bool highlighted: control.highlighted - - visible: !control.flat || control.down || control.checked - - color: Fusion.buttonColor(control.palette, panel.highlighted, control.down || control.checked, control.hovered) - gradient: control.down || control.checked ? null : buttonGradient - - Gradient { - id: buttonGradient - GradientStop { - position: 0 - color: Fusion.gradientStart(Fusion.buttonColor(panel.control.palette, panel.highlighted, panel.control.down, panel.control.hovered)) - } - GradientStop { - position: 1 - color: Fusion.gradientStop(Fusion.buttonColor(panel.control.palette, panel.highlighted, panel.control.down, panel.control.hovered)) - } - } - - radius: 2 - border.color: Fusion.buttonOutline(control.palette, panel.highlighted || control.visualFocus, control.enabled) - - Rectangle { - x: 1; y: 1 - width: parent.width - 2 - height: parent.height - 2 - border.color: Fusion.innerContrastLine - color: "transparent" - radius: 2 - } -} diff --git a/src/quickcontrols2/fusion/impl/CMakeLists.txt b/src/quickcontrols2/fusion/impl/CMakeLists.txt deleted file mode 100644 index 8aca54d5..00000000 --- a/src/quickcontrols2/fusion/impl/CMakeLists.txt +++ /dev/null @@ -1,39 +0,0 @@ -##################################################################### -## qtquickcontrols2fusionstyleimplplugin Plugin: -##################################################################### - -set(qml_files - "ButtonPanel.qml" - "CheckIndicator.qml" - "RadioIndicator.qml" - "SliderGroove.qml" - "SliderHandle.qml" - "SwitchIndicator.qml" -) -set_source_files_properties(${qml_files} PROPERTIES - QT_QML_SOURCE_VERSION "2.3" -) - -qt_internal_add_qml_module(qtquickcontrols2fusionstyleimplplugin - URI "QtQuick.Controls.Fusion.impl" - VERSION "${PROJECT_VERSION}" - CLASS_NAME QtQuickControls2FusionStyleImplPlugin - PLUGIN_TARGET qtquickcontrols2fusionstyleimplplugin - NO_PLUGIN_OPTIONAL - SOURCES - qquickfusionbusyindicator.cpp qquickfusionbusyindicator_p.h - qquickfusiondial.cpp qquickfusiondial_p.h - qquickfusionknob.cpp qquickfusionknob_p.h - QML_FILES - ${qml_files} - DEFINES - QT_NO_CAST_FROM_ASCII - QT_NO_CAST_TO_ASCII - LIBRARIES - Qt::CorePrivate - Qt::Gui - Qt::QmlPrivate - Qt::QuickControls2ImplPrivate - Qt::QuickPrivate - Qt::QuickTemplates2Private -) diff --git a/src/quickcontrols2/fusion/impl/CheckIndicator.qml b/src/quickcontrols2/fusion/impl/CheckIndicator.qml deleted file mode 100644 index 3a083653..00000000 --- a/src/quickcontrols2/fusion/impl/CheckIndicator.qml +++ /dev/null @@ -1,91 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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 -import QtQuick.Controls.impl -import QtQuick.Controls.Fusion -import QtQuick.Controls.Fusion.impl - -Rectangle { - id: indicator - - property Item control - readonly property color pressedColor: Fusion.mergedColors(control.palette.base, control.palette.windowText, 85) - readonly property color checkMarkColor: Qt.darker(control.palette.text, 1.2) - - implicitWidth: 14 - implicitHeight: 14 - - color: control.down ? indicator.pressedColor : control.palette.base - border.color: control.visualFocus ? Fusion.highlightedOutline(control.palette) - : Qt.lighter(Fusion.outline(control.palette), 1.1) - - Rectangle { - x: 1; y: 1 - width: parent.width - 2 - height: 1 - color: Fusion.topShadow - visible: indicator.control.enabled && !indicator.control.down - } - - ColorImage { - x: (parent.width - width) / 2 - y: (parent.height - height) / 2 - color: Color.transparent(indicator.checkMarkColor, 210 / 255) - source: "qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/images/checkmark.png" - visible: indicator.control.checkState === Qt.Checked || (indicator.control.checked && indicator.control.checkState === undefined) - } - - Rectangle { - x: 3; y: 3 - width: parent.width - 6 - height: parent.width - 6 - - visible: indicator.control.checkState === Qt.PartiallyChecked - - gradient: Gradient { - GradientStop { - position: 0 - color: Color.transparent(indicator.checkMarkColor, 80 / 255) - } - GradientStop { - position: 1 - color: Color.transparent(indicator.checkMarkColor, 140 / 255) - } - } - border.color: Color.transparent(indicator.checkMarkColor, 180 / 255) - } -} diff --git a/src/quickcontrols2/fusion/impl/RadioIndicator.qml b/src/quickcontrols2/fusion/impl/RadioIndicator.qml deleted file mode 100644 index d459a2e8..00000000 --- a/src/quickcontrols2/fusion/impl/RadioIndicator.qml +++ /dev/null @@ -1,77 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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 -import QtQuick.Controls.impl -import QtQuick.Controls.Fusion -import QtQuick.Controls.Fusion.impl - -Rectangle { - id: indicator - - property Item control - readonly property color pressedColor: Fusion.mergedColors(control.palette.base, control.palette.windowText, 85) - readonly property color checkMarkColor: Qt.darker(control.palette.text, 1.2) - - implicitWidth: 14 - implicitHeight: 14 - - radius: width / 2 - color: control.down ? indicator.pressedColor : control.palette.base - border.color: control.visualFocus ? Fusion.highlightedOutline(control.palette) - : Qt.darker(control.palette.window, 1.5) - - Rectangle { - y: 1 - width: parent.width - height: parent.height - 1 - radius: width / 2 - color: "transparent" - border.color: Fusion.topShadow - visible: indicator.control.enabled && !indicator.control.down - } - - Rectangle { - x: (parent.width - width) / 2 - y: (parent.height - height) / 2 - width: parent.width / 2.32 - height: parent.height / 2.32 - radius: width / 2 - color: Color.transparent(indicator.checkMarkColor, 180 / 255) - border.color: Color.transparent(indicator.checkMarkColor, 200 / 255) - visible: indicator.control.checked - } -} diff --git a/src/quickcontrols2/fusion/impl/SliderGroove.qml b/src/quickcontrols2/fusion/impl/SliderGroove.qml deleted file mode 100644 index 76b7156a..00000000 --- a/src/quickcontrols2/fusion/impl/SliderGroove.qml +++ /dev/null @@ -1,93 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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 -import QtQuick.Controls.impl -import QtQuick.Controls.Fusion -import QtQuick.Controls.Fusion.impl - -Rectangle { - id: groove - - property Item control - property real offset - property real progress - property real visualProgress - - x: control.horizontal ? 0 : (control.availableWidth - width) / 2 - y: control.horizontal ? (control.availableHeight - height) / 2 : 0 - - implicitWidth: control.horizontal ? 160 : 5 - implicitHeight: control.horizontal ? 5 : 160 - width: control.horizontal ? control.availableWidth : implicitWidth - height: control.horizontal ? implicitHeight : control.availableHeight - - radius: 2 - border.color: Fusion.outline(control.palette) - scale: control.horizontal && control.mirrored ? -1 : 1 - - gradient: Gradient { - GradientStop { - position: 0 - color: Qt.darker(Fusion.grooveColor(groove.control.palette), 1.1) - } - GradientStop { - position: 1 - color: Qt.lighter(Fusion.grooveColor(groove.control.palette), 1.1) - } - } - - Rectangle { - x: groove.control.horizontal ? groove.offset * parent.width : 0 - y: groove.control.horizontal ? 0 : groove.visualProgress * parent.height - width: groove.control.horizontal ? groove.progress * parent.width - groove.offset * parent.width : 5 - height: groove.control.horizontal ? 5 : groove.progress * parent.height - groove.offset * parent.height - - radius: 2 - border.color: Qt.darker(Fusion.highlightedOutline(groove.control.palette), 1.1) - - gradient: Gradient { - GradientStop { - position: 0 - color: Fusion.highlight(groove.control.palette) - } - GradientStop { - position: 1 - color: Qt.lighter(Fusion.highlight(groove.control.palette), 1.2) - } - } - } -} diff --git a/src/quickcontrols2/fusion/impl/SliderHandle.qml b/src/quickcontrols2/fusion/impl/SliderHandle.qml deleted file mode 100644 index 00a955b9..00000000 --- a/src/quickcontrols2/fusion/impl/SliderHandle.qml +++ /dev/null @@ -1,85 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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 -import QtQuick.Controls.impl -import QtQuick.Controls.Fusion -import QtQuick.Controls.Fusion.impl - -Rectangle { - id: handle - - property var palette - property bool pressed - property bool hovered - property bool vertical - property bool visualFocus - - implicitWidth: 13 - implicitHeight: 13 - - gradient: Gradient { - GradientStop { - position: 0 - color: Fusion.gradientStart(Fusion.buttonColor(handle.palette, handle.visualFocus, handle.pressed, handle.hovered)) - } - GradientStop { - position: 1 - color: Fusion.gradientStop(Fusion.buttonColor(handle.palette, handle.visualFocus, handle.pressed, handle.hovered)) - } - } - rotation: handle.vertical ? -90 : 0 - border.width: 1 - border.color: "transparent" - radius: 2 - - Rectangle { - width: parent.width - height: parent.height - border.color: handle.visualFocus ? Fusion.highlightedOutline(handle.palette) : Fusion.outline(handle.palette) - color: "transparent" - radius: 2 - - Rectangle { - x: 1; y: 1 - width: parent.width - 2 - height: parent.height - 2 - border.color: Fusion.innerContrastLine - color: "transparent" - radius: 2 - } - } -} diff --git a/src/quickcontrols2/fusion/impl/SwitchIndicator.qml b/src/quickcontrols2/fusion/impl/SwitchIndicator.qml deleted file mode 100644 index 5a561913..00000000 --- a/src/quickcontrols2/fusion/impl/SwitchIndicator.qml +++ /dev/null @@ -1,136 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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 -import QtQuick.Controls.impl -import QtQuick.Controls.Fusion -import QtQuick.Controls.Fusion.impl - -Rectangle { - id: indicator - - property Item control - readonly property color pressedColor: Fusion.mergedColors(control.palette.base, control.palette.windowText, 85) - readonly property color checkMarkColor: Qt.darker(control.palette.text, 1.2) - - implicitWidth: 40 - implicitHeight: 16 - - radius: 2 - border.color: Fusion.outline(control.palette) - - gradient: Gradient { - GradientStop { - position: 0 - color: Qt.darker(Fusion.grooveColor(indicator.control.palette), 1.1) - } - GradientStop { - position: 1 - color: Qt.lighter(Fusion.grooveColor(indicator.control.palette), 1.1) - } - } - - Rectangle { - x: indicator.control.mirrored ? handle.x : 0 - width: indicator.control.mirrored ? parent.width - handle.x : handle.x + handle.width - height: parent.height - - opacity: indicator.control.checked ? 1 : 0 - Behavior on opacity { - enabled: !indicator.control.down - NumberAnimation { duration: 80 } - } - - radius: 2 - border.color: Qt.darker(Fusion.highlightedOutline(indicator.control.palette), 1.1) - border.width: indicator.control.enabled ? 1 : 0 - - gradient: Gradient { - GradientStop { - position: 0 - color: Fusion.highlight(indicator.control.palette) - } - GradientStop { - position: 1 - color: Qt.lighter(Fusion.highlight(indicator.control.palette), 1.2) - } - } - } - - Rectangle { - id: handle - x: Math.max(0, Math.min(parent.width - width, indicator.control.visualPosition * parent.width - (width / 2))) - y: (parent.height - height) / 2 - width: 20 - height: 16 - radius: 2 - - gradient: Gradient { - GradientStop { - position: 0 - color: Fusion.gradientStart(Fusion.buttonColor(indicator.control.palette, indicator.control.visualFocus, indicator.control.pressed, indicator.control.hovered)) - } - GradientStop { - position: 1 - color: Fusion.gradientStop(Fusion.buttonColor(indicator.control.palette, indicator.control.visualFocus, indicator.control.pressed, indicator.control.hovered)) - } - } - border.width: 1 - border.color: "transparent" - - Rectangle { - width: parent.width - height: parent.height - border.color: indicator.control.visualFocus ? Fusion.highlightedOutline(indicator.control.palette) : Fusion.outline(indicator.control.palette) - color: "transparent" - radius: 2 - - Rectangle { - x: 1; y: 1 - width: parent.width - 2 - height: parent.height - 2 - border.color: Fusion.innerContrastLine - color: "transparent" - radius: 2 - } - } - - Behavior on x { - enabled: !indicator.control.down - SmoothedAnimation { velocity: 200 } - } - } -} diff --git a/src/quickcontrols2/fusion/impl/qquickfusionbusyindicator.cpp b/src/quickcontrols2/fusion/impl/qquickfusionbusyindicator.cpp deleted file mode 100644 index a9b75d27..00000000 --- a/src/quickcontrols2/fusion/impl/qquickfusionbusyindicator.cpp +++ /dev/null @@ -1,111 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ - -#include "qquickfusionbusyindicator_p.h" - -#include <QtGui/qpainter.h> - -QT_BEGIN_NAMESPACE - -QQuickFusionBusyIndicator::QQuickFusionBusyIndicator(QQuickItem *parent) - : QQuickPaintedItem(parent) -{ -} - -QColor QQuickFusionBusyIndicator::color() const -{ - return m_color; -} - -void QQuickFusionBusyIndicator::setColor(const QColor &color) -{ - if (color == m_color) - return; - - m_color = color; - update(); -} - -bool QQuickFusionBusyIndicator::isRunning() const -{ - return isVisible(); -} - -void QQuickFusionBusyIndicator::setRunning(bool running) -{ - if (running) { - setVisible(true); - update(); - } -} - -void QQuickFusionBusyIndicator::paint(QPainter *painter) -{ - const qreal w = width(); - const qreal h = height(); - if (w <= 0 || h <= 0 || !isRunning()) - return; - - const qreal sz = qMin(w, h); - const qreal dx = (w - sz) / 2; - const qreal dy = (h - sz) / 2; - const int hpw = qRound(qMax(qreal(1), sz / 14)) & -1; - const int pw = 2 * hpw; - const QRectF bounds(dx + hpw, dy + hpw, sz - pw - 1, sz - pw - 1); - - QConicalGradient gradient; - gradient.setCenter(QPointF(dx + sz / 2, dy + sz / 2)); - gradient.setColorAt(0, m_color); - gradient.setColorAt(0.1, m_color); - gradient.setColorAt(1, Qt::transparent); - - painter->translate(0.5, 0.5); - painter->setRenderHint(QPainter::Antialiasing, true); - painter->setPen(QPen(gradient, pw, Qt::SolidLine)); - painter->drawArc(bounds, 0, 360 * 16); - painter->setPen(QPen(m_color, pw, Qt::SolidLine, Qt::RoundCap)); - painter->drawArc(bounds, 0, 20 * 16); -} - -void QQuickFusionBusyIndicator::itemChange(ItemChange change, const ItemChangeData &data) -{ - QQuickPaintedItem::itemChange(change, data); - - if (change == ItemOpacityHasChanged && qFuzzyIsNull(data.realValue)) - setVisible(false); -} - -QT_END_NAMESPACE diff --git a/src/quickcontrols2/fusion/impl/qquickfusionbusyindicator_p.h b/src/quickcontrols2/fusion/impl/qquickfusionbusyindicator_p.h deleted file mode 100644 index 5aeea6c4..00000000 --- a/src/quickcontrols2/fusion/impl/qquickfusionbusyindicator_p.h +++ /dev/null @@ -1,84 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ - -#ifndef QQUICKFUSIONBUSYINDICATOR_P_H -#define QQUICKFUSIONBUSYINDICATOR_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtGui/qcolor.h> -#include <QtQuick/qquickpainteditem.h> - -QT_BEGIN_NAMESPACE - -class QQuickFusionBusyIndicator : public QQuickPaintedItem -{ - Q_OBJECT - Q_PROPERTY(QColor color READ color WRITE setColor FINAL) - Q_PROPERTY(bool running READ isRunning WRITE setRunning) - QML_NAMED_ELEMENT(BusyIndicatorImpl) - QML_ADDED_IN_VERSION(2, 3) - -public: - explicit QQuickFusionBusyIndicator(QQuickItem *parent = nullptr); - - QColor color() const; - void setColor(const QColor &color); - - bool isRunning() const; - void setRunning(bool running); - - void paint(QPainter *painter) override; - -protected: - void itemChange(ItemChange change, const ItemChangeData &data) override; - -private: - QColor m_color; -}; - -QT_END_NAMESPACE - -#endif // QQUICKFUSIONBUSYINDICATOR_P_H diff --git a/src/quickcontrols2/fusion/impl/qquickfusiondial.cpp b/src/quickcontrols2/fusion/impl/qquickfusiondial.cpp deleted file mode 100644 index eb6f21ad..00000000 --- a/src/quickcontrols2/fusion/impl/qquickfusiondial.cpp +++ /dev/null @@ -1,139 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ - -#include "qquickfusiondial_p.h" - -#include <QtGui/qpainter.h> -#include <QtGui/private/qmath_p.h> -#include <QtQuick/private/qquickpalette_p.h> -#include <QtQuick/private/qquickitem_p.h> - -QT_BEGIN_NAMESPACE - -QQuickFusionDial::QQuickFusionDial(QQuickItem *parent) - : QQuickPaintedItem(parent) -{ -} - -bool QQuickFusionDial::highlight() const -{ - return m_highlight; -} - -void QQuickFusionDial::setHighlight(bool highlight) -{ - if (m_highlight == highlight) - return; - - m_highlight = highlight; - update(); -} - -// based on QStyleHelper::drawDial() -void QQuickFusionDial::paint(QPainter *painter) -{ - const int width = QQuickItem::width(); - const int height = QQuickItem::height(); - if (width <= 0 || height <= 0 || !isVisible()) - return; - - QColor buttonColor = QQuickItemPrivate::get(this)->palette()->button(); - const bool enabled = isEnabled(); - qreal r = qMin(width, height) / 2.0; - r -= r/50; - const qreal penSize = r/20.0; - - painter->setRenderHint(QPainter::Antialiasing); - - const qreal d_ = r / 6; - const qreal dx = d_ + (width - 2 * r) / 2 + 1; - const qreal dy = d_ + (height - 2 * r) / 2 + 1; - - QRectF br = QRectF(dx + 0.5, dy + 0.5, - int(r * 2 - 2 * d_ - 2), - int(r * 2 - 2 * d_ - 2)); - buttonColor.setHsv(buttonColor .hue(), - qMin(140, buttonColor .saturation()), - qMax(180, buttonColor.value())); - - if (enabled) { - // Drop shadow - qreal shadowSize = qMax(1.0, penSize/2.0); - QRectF shadowRect= br.adjusted(-2*shadowSize, -2*shadowSize, - 2*shadowSize, 2*shadowSize); - QRadialGradient shadowGradient(shadowRect.center().x(), - shadowRect.center().y(), shadowRect.width()/2.0, - shadowRect.center().x(), shadowRect.center().y()); - shadowGradient.setColorAt(qreal(0.91), QColor(0, 0, 0, 40)); - shadowGradient.setColorAt(qreal(1.0), Qt::transparent); - painter->setBrush(shadowGradient); - painter->setPen(Qt::NoPen); - painter->translate(shadowSize, shadowSize); - painter->drawEllipse(shadowRect); - painter->translate(-shadowSize, -shadowSize); - - // Main gradient - QRadialGradient gradient(br.center().x() - br.width()/3, dy, - br.width()*1.3, br.center().x(), - br.center().y() - br.height()/2); - gradient.setColorAt(0, buttonColor.lighter(110)); - gradient.setColorAt(qreal(0.5), buttonColor); - gradient.setColorAt(qreal(0.501), buttonColor.darker(102)); - gradient.setColorAt(1, buttonColor.darker(115)); - painter->setBrush(gradient); - } else { - painter->setBrush(Qt::NoBrush); - } - - painter->setPen(QPen(buttonColor.darker(280))); - painter->drawEllipse(br); - painter->setBrush(Qt::NoBrush); - painter->setPen(buttonColor.lighter(110)); - painter->drawEllipse(br.adjusted(1, 1, -1, -1)); - - if (m_highlight) { - QColor highlight = QQuickItemPrivate::get(this)->palette()->highlight(); - highlight.setHsv(highlight.hue(), - qMin(160, highlight.saturation()), - qMax(230, highlight.value())); - highlight.setAlpha(127); - painter->setPen(QPen(highlight, 2.0)); - painter->setBrush(Qt::NoBrush); - painter->drawEllipse(br.adjusted(-1, -1, 1, 1)); - } -} - -QT_END_NAMESPACE diff --git a/src/quickcontrols2/fusion/impl/qquickfusiondial_p.h b/src/quickcontrols2/fusion/impl/qquickfusiondial_p.h deleted file mode 100644 index c320527a..00000000 --- a/src/quickcontrols2/fusion/impl/qquickfusiondial_p.h +++ /dev/null @@ -1,76 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ - -#ifndef QQUICKFUSIONDIAL_P_H -#define QQUICKFUSIONDIAL_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtQuick/qquickpainteditem.h> - -QT_BEGIN_NAMESPACE - -class QQuickFusionDial : public QQuickPaintedItem -{ - Q_OBJECT - Q_PROPERTY(bool highlight READ highlight WRITE setHighlight FINAL) - QML_NAMED_ELEMENT(DialImpl) - QML_ADDED_IN_VERSION(2, 3) - -public: - explicit QQuickFusionDial(QQuickItem *parent = nullptr); - - bool highlight() const; - void setHighlight(bool highlight); - - void paint(QPainter *painter) override; - -private: - bool m_highlight = false; -}; - -QT_END_NAMESPACE - -#endif // QQUICKFUSIONDIAL_P_H diff --git a/src/quickcontrols2/fusion/impl/qquickfusionknob.cpp b/src/quickcontrols2/fusion/impl/qquickfusionknob.cpp deleted file mode 100644 index 27ac54d3..00000000 --- a/src/quickcontrols2/fusion/impl/qquickfusionknob.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ - -#include "qquickfusionknob_p.h" - -#include <QtCore/qmath.h> -#include <QtGui/qpainter.h> -#include <QtQuick/private/qquickpalette_p.h> -#include <QtQuick/private/qquickitem_p.h> - -QT_BEGIN_NAMESPACE - -QQuickFusionKnob::QQuickFusionKnob(QQuickItem *parent) - : QQuickPaintedItem(parent) -{ - connect(this, &QQuickItem::paletteChanged, this, [this](){ update(); }); -} - -// extracted from QStyleHelper::drawDial() -void QQuickFusionKnob::paint(QPainter *painter) -{ - const qreal w = width(); - const qreal h = height(); - if (w <= 0 || h <= 0) - return; - - QColor color = QQuickItemPrivate::get(this)->palette()->button(); - color.setHsv(color.hue(), - qMin(140, color .saturation()), - qMax(180, color.value())); - color = color.lighter(104); - color.setAlphaF(0.8f); - - const qreal sz = qMin(w, h); - QRectF rect(0, 0, sz, sz); - rect.moveCenter(QPointF(w / 2.0, h / 2.0)); - const QPointF center = rect.center(); - - QRadialGradient gradient(center.x() + rect.width() / 2, - center.y() + rect.width(), - rect.width() * 2, - center.x(), center.y()); - gradient.setColorAt(1, color.darker(140)); - gradient.setColorAt(qreal(0.4), color.darker(120)); - gradient.setColorAt(0, color.darker(110)); - - painter->setRenderHint(QPainter::Antialiasing); - painter->setBrush(gradient); - painter->setPen(QColor(255, 255, 255, 150)); - painter->drawEllipse(rect); - painter->setPen(QColor(0, 0, 0, 80)); - painter->drawEllipse(rect.adjusted(1, 1, -1, -1)); -} - -QT_END_NAMESPACE diff --git a/src/quickcontrols2/fusion/impl/qquickfusionknob_p.h b/src/quickcontrols2/fusion/impl/qquickfusionknob_p.h deleted file mode 100644 index b9b9c377..00000000 --- a/src/quickcontrols2/fusion/impl/qquickfusionknob_p.h +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ - -#ifndef QQUICKFUSIONKNOB_P_H -#define QQUICKFUSIONKNOB_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtQuick/qquickpainteditem.h> - -QT_BEGIN_NAMESPACE - -class QQuickFusionKnob : public QQuickPaintedItem -{ - Q_OBJECT - QML_NAMED_ELEMENT(KnobImpl) - QML_ADDED_IN_VERSION(2, 3) - -public: - explicit QQuickFusionKnob(QQuickItem *parent = nullptr); - - void paint(QPainter *painter) override; -}; - -QT_END_NAMESPACE - -#endif // QQUICKFUSIONKNOB_P_H |