diff options
Diffstat (limited to 'examples/demos/colorpaletteclient/QtExampleStyle')
6 files changed, 185 insertions, 0 deletions
diff --git a/examples/demos/colorpaletteclient/QtExampleStyle/Button.qml b/examples/demos/colorpaletteclient/QtExampleStyle/Button.qml new file mode 100644 index 000000000..6b3f922a1 --- /dev/null +++ b/examples/demos/colorpaletteclient/QtExampleStyle/Button.qml @@ -0,0 +1,48 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +import QtQuick +import QtQuick.Controls +import QtQuick.Controls.impl +import QtQuick.Templates as T + +T.Button { + id: control + + property alias buttonColor: rect.color + property alias textColor: label.color + + implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, + implicitContentWidth + leftPadding + rightPadding) + implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, + implicitContentHeight + topPadding + bottomPadding) + + leftPadding: 15 + rightPadding: 15 + topPadding: 10 + bottomPadding: 10 + + background: Rectangle { + id: rect + radius: 8 + border.color: "#E0E2E7" + border.width: 1 + color: "#FFFFFF" + } + + icon.width: 24 + icon.height: 24 + icon.color: control.palette.buttonText + + contentItem: IconLabel { + id: label + spacing: control.spacing + mirrored: control.mirrored + display: control.display + + icon: control.icon + text: control.text + font.pixelSize: 14 + color: "#667085" + } +} diff --git a/examples/demos/colorpaletteclient/QtExampleStyle/CMakeLists.txt b/examples/demos/colorpaletteclient/QtExampleStyle/CMakeLists.txt new file mode 100644 index 000000000..a911f8742 --- /dev/null +++ b/examples/demos/colorpaletteclient/QtExampleStyle/CMakeLists.txt @@ -0,0 +1,54 @@ +# Copyright (C) 2023 The Qt Company Ltd. +# SPDX-License-Identifier: BSD-3-Clause + +cmake_minimum_required(VERSION 3.16) +project(qtexamplestyle LANGUAGES CXX) + +set(CMAKE_AUTOMOC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/quickcontrols/colorpaletteclient/QtExampleStyle") + +find_package(Qt6 REQUIRED COMPONENTS Core Gui Quick QuickControls2) + +set_source_files_properties(UIStyle.qml + PROPERTIES + QT_QML_SINGLETON_TYPE TRUE +) + +qt_policy(SET QTP0001 NEW) +qt_add_qml_module(qtexamplestyle + URI QtExampleStyle + PLUGIN_TARGET qtexamplestyle + QML_FILES + Button.qml + Popup.qml + UIStyle.qml + TextField.qml +) + +target_link_libraries(qtexamplestyle PUBLIC + Qt6::Core + Qt6::Gui + Qt6::Quick + Qt6::QuickControls2 +) + +if(UNIX AND NOT APPLE AND CMAKE_CROSSCOMPILING) + find_package(Qt6 REQUIRED COMPONENTS QuickTemplates2) + + # Work around QTBUG-86533 + target_link_libraries(qtexamplestyle PRIVATE Qt6::QuickTemplates2) +endif() + +install(TARGETS qtexamplestyle + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmldir + DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/demos/colorpaletteclient/QtExampleStyle/Popup.qml b/examples/demos/colorpaletteclient/QtExampleStyle/Popup.qml new file mode 100644 index 000000000..a3132bcea --- /dev/null +++ b/examples/demos/colorpaletteclient/QtExampleStyle/Popup.qml @@ -0,0 +1,27 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +import QtQuick +import QtQuick.Templates as T + +T.Popup { + id: control + + implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, + implicitContentWidth + leftPadding + rightPadding) + implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, + implicitContentHeight + topPadding + bottomPadding) + + leftPadding: 15 + rightPadding: 15 + topPadding: 10 + bottomPadding: 10 + + background: Rectangle { + id: bg + radius: 8 + border.color: "#E0E2E7" + border.width: 2 + color: "#FFFFFF" + } +} diff --git a/examples/demos/colorpaletteclient/QtExampleStyle/TextField.qml b/examples/demos/colorpaletteclient/QtExampleStyle/TextField.qml new file mode 100644 index 000000000..7db2d4f98 --- /dev/null +++ b/examples/demos/colorpaletteclient/QtExampleStyle/TextField.qml @@ -0,0 +1,22 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +import QtQuick +import QtQuick.Templates as T + +T.TextField { + id: control + placeholderText: "" + + implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, contentWidth + leftPadding + rightPadding) + implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, + contentHeight + topPadding + bottomPadding) + + background: Rectangle { + implicitWidth: 200 + implicitHeight: 40 + radius: 8 + color: control.enabled ? "transparent" : "#353637" + border.color: "#E0E2E7" + } +} diff --git a/examples/demos/colorpaletteclient/QtExampleStyle/UIStyle.qml b/examples/demos/colorpaletteclient/QtExampleStyle/UIStyle.qml new file mode 100644 index 000000000..3c4741d7f --- /dev/null +++ b/examples/demos/colorpaletteclient/QtExampleStyle/UIStyle.qml @@ -0,0 +1,29 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +pragma Singleton + +import QtQuick + +QtObject { + id: uiStyle + + // Font Sizes + readonly property int fontSizeXXS: 10 + readonly property int fontSizeXS: 15 + readonly property int fontSizeS: 20 + readonly property int fontSizeM: 25 + readonly property int fontSizeL: 30 + readonly property int fontSizeXL: 35 + readonly property int fontSizeXXL: 40 + + // Color Scheme + // Green + readonly property color colorQtPrimGreen: "#41cd52" + readonly property color colorQtAuxGreen1: "#21be2b" + readonly property color colorQtAuxGreen2: "#17a81a" + + function iconPath(baseImagePath) { + return `qrc:/qt/qml/ColorPalette/icons/${baseImagePath}.svg` + } +} diff --git a/examples/demos/colorpaletteclient/QtExampleStyle/qmldir b/examples/demos/colorpaletteclient/QtExampleStyle/qmldir new file mode 100644 index 000000000..7bdfb44d8 --- /dev/null +++ b/examples/demos/colorpaletteclient/QtExampleStyle/qmldir @@ -0,0 +1,5 @@ +module QtExampleStyle +Button 1.0 Button.qml +Popup 1.0 Popup.qml +TextField 1.0 TextField.qml +singleton UIStyle 1.0 UIStyle.qml |