diff options
Diffstat (limited to 'src/plugins/studiowelcome/qml/welcomepage')
33 files changed, 1021 insertions, 0 deletions
diff --git a/src/plugins/studiowelcome/qml/welcomepage/AccountImage.qml b/src/plugins/studiowelcome/qml/welcomepage/AccountImage.qml new file mode 100644 index 0000000000..719ff05546 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/AccountImage.qml @@ -0,0 +1,55 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.9 +import welcome 1.0 +import StudioFonts 1.0 + +Image { + id: account_icon + + source: "images/" + (mouseArea.containsMouse ? "icon_hover.png" : "icon_default.png") + + Text { + id: account + color: mouseArea.containsMouse ? Constants.textHoverColor + : Constants.textDefaultColor + text: qsTr("Account") + anchors.top: parent.bottom + anchors.horizontalCenter: parent.horizontalCenter + font.family: StudioFonts.titilliumWeb_regular + font.pixelSize: 16 + renderType: Text.NativeRendering + } + + MouseArea { + id: mouseArea + anchors.fill: parent + anchors.margins: -25 + hoverEnabled: true + + onClicked: Qt.openUrlExternally("https://login.qt.io/login/") + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/ExamplesModel.qml b/src/plugins/studiowelcome/qml/welcomepage/ExamplesModel.qml new file mode 100644 index 0000000000..3f8ce9bc82 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/ExamplesModel.qml @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.0 + +ListModel { + ListElement { + projectName: "ClusterTutorial" + qmlFileName: "Cluster_Art.ui.qml" + thumbnail: "images/tutorialclusterdemo_thumbnail.png" + displayName: "Cluster Tutorial" + } + + ListElement { + projectName: "CoffeeMachine" + qmlFileName: "ApplicationFlowForm.ui.qml" + thumbnail: "images/coffeemachinedemo_thumbnail.png" + displayName: "Coffee Machine" + } + + ListElement { + projectName: "SideMenu" + qmlFileName: "MainFile.ui.qml" + thumbnail: "images/sidemenu_demo.png" + displayName: "Side Menu" + } + + ListElement { + projectName: "WebinarDemo" + qmlFileName: "MainApp.ui.qml" + thumbnail: "images/webinardemo_thumbnail.png" + displayName: "Webinar Demo" + } + + ListElement { + projectName: "EBikeDesign" + qmlFileName: "Screen01.ui.qml" + thumbnail: "images/ebike_demo_thumbnail.png" + displayName: "E-Bike Design" + } + + ListElement { + projectName: "ProgressBar" + qmlFileName: "ProgressBar.ui.qml" + thumbnail: "images/progressbar_demo.png" + displayName: "Progress Bar" + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/HoverOverDesaturate.qml b/src/plugins/studiowelcome/qml/welcomepage/HoverOverDesaturate.qml new file mode 100644 index 0000000000..e160a1f70e --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/HoverOverDesaturate.qml @@ -0,0 +1,189 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.9 +import QtQuick.Timeline 1.0 +import welcome 1.0 +import StudioFonts 1.0 + +Item { + visible: true + width: 270 + height: 175 + property alias imageSource: image.source + property alias labelText: label.text + + onVisibleChanged: { + animateOpacity.start() + animateScale.start() + } + + NumberAnimation { + id: animateOpacity + property: "opacity" + from: 0 + to: 1.0 + duration: 400 + } + NumberAnimation { + id: animateScale + property: "scale" + from: 0 + to: 1.0 + duration: 400 + } + + Rectangle { + id: rectangle + x: 0 + y: 0 + width: 270 + height: 146 + + MouseArea { + x: 17 + y: 12 + height: 125 + anchors.bottomMargin: -label.height + anchors.fill: parent + hoverEnabled: true + onHoveredChanged: { + if (saturationEffect.desaturation === 1) + saturationEffect.desaturation = 0 + if (saturationEffect.desaturation === 0) + saturationEffect.desaturation = 1 + if (saturationEffect.desaturation === 0) + rectangle.color = "#262728" + if (saturationEffect.desaturation === 1) + rectangle.color = "#404244" + if (saturationEffect.desaturation === 0) + label.color = "#686868" + if (saturationEffect.desaturation === 1) + label.color = Constants.textDefaultColor + } + + onExited: { + saturationEffect.desaturation = 1 + rectangle.color = "#262728" + label.color = "#686868" + } + } + } + + SaturationEffect { + id: saturationEffect + x: 15 + y: 10 + width: 240 + height: 125 + desaturation: 0 + antialiasing: true + Behavior on desaturation { + PropertyAnimation { + } + } + + Image { + id: image + width: 240 + height: 125 + fillMode: Image.PreserveAspectFit + } + } + + Timeline { + id: animation + startFrame: 0 + enabled: true + endFrame: 1000 + + KeyframeGroup { + target: saturationEffect + property: "desaturation" + + Keyframe { + frame: 0 + value: 1 + } + + Keyframe { + frame: 1000 + value: 0 + } + } + + KeyframeGroup { + target: label + property: "color" + + Keyframe { + value: "#686868" + frame: 0 + } + + Keyframe { + value: Constants.textDefaultColor + frame: 1000 + } + } + + KeyframeGroup { + target: rectangle + property: "color" + + Keyframe { + value: "#262728" + frame: 0 + } + + Keyframe { + value: "#404244" + frame: 1000 + } + } + } + + PropertyAnimation { + id: propertyAnimation + target: animation + property: "currentFrame" + running: false + duration: 1000 + to: animation.endFrame + from: animation.startFrame + loops: 1 + } + + Text { + id: label + x: 1 + y: 145 + color: "#686868" + + renderType: Text.NativeRendering + font.pixelSize: 14 + font.family: StudioFonts.titilliumWeb_regular + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/MyButton.qml b/src/plugins/studiowelcome/qml/welcomepage/MyButton.qml new file mode 100644 index 0000000000..304adc31c3 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/MyButton.qml @@ -0,0 +1,51 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.9 +import QtQuick.Controls 2.3 +import welcome 1.0 +import StudioFonts 1.0 + +Button { + id: button + + property color hoverColor: Constants.textHoverColor + property color defaultColor: Constants.textDefaultColor + property color checkedColor: Constants.textDefaultColor + + contentItem: Text { + id: textButton + text: button.text + color: checked ? button.checkedColor : + button.hovered ? button.hoverColor : + button.defaultColor + font.family: StudioFonts.titilliumWeb_regular + renderType: Text.NativeRendering + font.pixelSize: 18 + } + + background: Item { + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/MyTabButton.qml b/src/plugins/studiowelcome/qml/welcomepage/MyTabButton.qml new file mode 100644 index 0000000000..420b3a2b67 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/MyTabButton.qml @@ -0,0 +1,33 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.9 + +MyButton { + checkable: true + autoExclusive: true + defaultColor: "#686868" + hoverColor: "#79797C" +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/ProjectsGrid.qml b/src/plugins/studiowelcome/qml/welcomepage/ProjectsGrid.qml new file mode 100644 index 0000000000..6faf3a6554 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/ProjectsGrid.qml @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.9 +import welcome 1.0 + +GridView { + id: root + cellHeight: 180 + cellWidth: 285 + + clip: true + + signal itemSelected(int index, variant item) + + delegate: HoverOverDesaturate { + id: hoverOverDesaturate + imageSource: typeof(thumbnail) === "undefined" ? "images/thumbnail_test.png" : thumbnail; + labelText: displayName + + SequentialAnimation { + id: animation + running: hoverOverDesaturate.visible + + PropertyAction { + target: hoverOverDesaturate + property: "scale" + value: 0.0 + } + PauseAnimation { + duration: model.index > 0 ? 100 * model.index : 0 + } + NumberAnimation { + target: hoverOverDesaturate + property: "scale" + from: 0.0 + to: 1.0 + duration: 200 + easing.type: Easing.InOutExpo + } + } + + MouseArea { + anchors.fill: parent + onClicked: root.itemSelected(index, root.model.get(index)) + } + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/SaturationEffect.qml b/src/plugins/studiowelcome/qml/welcomepage/SaturationEffect.qml new file mode 100644 index 0000000000..4f85e681a4 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/SaturationEffect.qml @@ -0,0 +1,37 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.0 +import QtGraphicalEffects 1.0 + +Item { + id: root + + property real desaturation: 1.0 + layer.enabled: true + layer.effect: Desaturate { + desaturation: root.desaturation + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/TutorialsModel.qml b/src/plugins/studiowelcome/qml/welcomepage/TutorialsModel.qml new file mode 100644 index 0000000000..aa797b0752 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/TutorialsModel.qml @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.0 + +ListModel { + ListElement { + displayName: "Learn to use Qt Design Studio (Part 1)" + thumbnail: "images/tutorial1.png" + url: "https://www.youtube.com/watch?v=aV6kFxH3Xws" + } + + ListElement { + displayName: "Learn to use Qt Design Studio (Part 2)" + thumbnail: "images/tutorial2.png" + url: "https://www.youtube.com/watch?v=Z3uPoe-4UAw" + } + + ListElement { + displayName: "Learn to use Qt Design Studio (Part 3)" + thumbnail: "images/tutorial3.png" + url: "https://www.youtube.com/watch?v=9AjvxoeqAKo" + } + + ListElement { + displayName: "Learn to use Qt Design Studio (Part 4)" + thumbnail: "images/tutorial4.png" + url: "https://www.youtube.com/watch?v=8pJpdMwLaAg" + } + + ListElement { + displayName: "Learn to use Qt Design Studio (Part 5)" + thumbnail: "images/tutorial5.png" + url: "https://www.youtube.com/watch?v=U91nAFReAoU" + } + + ListElement { + displayName: "The Designer Tool Developers Love" + thumbnail: "images/webinar1.png" + url: "https://youtu.be/gU_tDbebAzM" + } + + ListElement { + displayName: "From Photoshop to Prototype" + thumbnail: "images/webinar2.png" + url: "https://youtu.be/ZzbucmQPU44" + } + + ListElement { + displayName: "Qt for Designers and Developers" + thumbnail: "images/designer_and_developers.png" + url: "https://www.youtube.com/watch?v=EgjCvZWEPWk" + } + + ListElement { + displayName: "Qt Design Studio: 1.0 and Ready to Go!" + thumbnail: "images/ready_to_go.png" + url: "https://www.youtube.com/watch?v=i9ToZ_04kTk" + } + + ListElement { + displayName: "QTWS - Designer and Developer Workflow" + thumbnail: "images/qtws_video_thumbnail.png" + url: "https://www.youtube.com/watch?v=4ug0EUdS2RM" + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/coffeemachinedemo_thumbnail.png b/src/plugins/studiowelcome/qml/welcomepage/images/coffeemachinedemo_thumbnail.png Binary files differnew file mode 100644 index 0000000000..565b1d62b1 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/coffeemachinedemo_thumbnail.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/designer_and_developers.png b/src/plugins/studiowelcome/qml/welcomepage/images/designer_and_developers.png Binary files differnew file mode 100644 index 0000000000..870a597282 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/designer_and_developers.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/ebike_demo_thumbnail.png b/src/plugins/studiowelcome/qml/welcomepage/images/ebike_demo_thumbnail.png Binary files differnew file mode 100644 index 0000000000..67cf3b9bff --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/ebike_demo_thumbnail.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/icon_default.png b/src/plugins/studiowelcome/qml/welcomepage/images/icon_default.png Binary files differnew file mode 100644 index 0000000000..82b852a408 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/icon_default.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/icon_hover.png b/src/plugins/studiowelcome/qml/welcomepage/images/icon_hover.png Binary files differnew file mode 100644 index 0000000000..693fdaf7b5 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/icon_hover.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/progressbar_demo.png b/src/plugins/studiowelcome/qml/welcomepage/images/progressbar_demo.png Binary files differnew file mode 100644 index 0000000000..b1af2d8f41 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/progressbar_demo.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/qtws_video_thumbnail.png b/src/plugins/studiowelcome/qml/welcomepage/images/qtws_video_thumbnail.png Binary files differnew file mode 100644 index 0000000000..e24783aee0 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/qtws_video_thumbnail.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/ready_to_go.png b/src/plugins/studiowelcome/qml/welcomepage/images/ready_to_go.png Binary files differnew file mode 100644 index 0000000000..af81a8a1d3 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/ready_to_go.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/sidemenu_demo.png b/src/plugins/studiowelcome/qml/welcomepage/images/sidemenu_demo.png Binary files differnew file mode 100644 index 0000000000..b577ed4a0d --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/sidemenu_demo.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/thumbnail_test.png b/src/plugins/studiowelcome/qml/welcomepage/images/thumbnail_test.png Binary files differnew file mode 100644 index 0000000000..3c4834e644 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/thumbnail_test.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/tutorial1.png b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial1.png Binary files differnew file mode 100644 index 0000000000..6d8d8bbe61 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial1.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/tutorial2.png b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial2.png Binary files differnew file mode 100644 index 0000000000..753e5d0937 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial2.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/tutorial3.png b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial3.png Binary files differnew file mode 100644 index 0000000000..82c5e1cdd5 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial3.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/tutorial4.png b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial4.png Binary files differnew file mode 100644 index 0000000000..1e1180fddb --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial4.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/tutorial5.png b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial5.png Binary files differnew file mode 100644 index 0000000000..f0cefc0e6d --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/tutorial5.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/tutorialclusterdemo_thumbnail.png b/src/plugins/studiowelcome/qml/welcomepage/images/tutorialclusterdemo_thumbnail.png Binary files differnew file mode 100644 index 0000000000..925a1247ca --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/tutorialclusterdemo_thumbnail.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/webinar1.png b/src/plugins/studiowelcome/qml/welcomepage/images/webinar1.png Binary files differnew file mode 100644 index 0000000000..ba24ffc3bf --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/webinar1.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/webinar2.png b/src/plugins/studiowelcome/qml/welcomepage/images/webinar2.png Binary files differnew file mode 100644 index 0000000000..325c7cdc33 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/webinar2.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/images/webinardemo_thumbnail.png b/src/plugins/studiowelcome/qml/welcomepage/images/webinardemo_thumbnail.png Binary files differnew file mode 100644 index 0000000000..3cd777ab3f --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/images/webinardemo_thumbnail.png diff --git a/src/plugins/studiowelcome/qml/welcomepage/imports/welcome/Constants.qml b/src/plugins/studiowelcome/qml/welcomepage/imports/welcome/Constants.qml new file mode 100644 index 0000000000..84f8da8d10 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/imports/welcome/Constants.qml @@ -0,0 +1,37 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +pragma Singleton + +import QtQuick 2.6 +import StudioFonts 1.0 + +QtObject { + readonly property color backgroundColor: "#443224" + + readonly property color textDefaultColor: "#b9b9ba" + + readonly property color textHoverColor: "#ffffff" +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/imports/welcome/qmldir b/src/plugins/studiowelcome/qml/welcomepage/imports/welcome/qmldir new file mode 100644 index 0000000000..616ac20353 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/imports/welcome/qmldir @@ -0,0 +1 @@ +singleton Constants 1.0 Constants.qml diff --git a/src/plugins/studiowelcome/qml/welcomepage/main.qml b/src/plugins/studiowelcome/qml/welcomepage/main.qml new file mode 100644 index 0000000000..759ac45923 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/main.qml @@ -0,0 +1,204 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.10 +import QtQuick.Controls 2.4 +import QtQuick.Layouts 1.3 +import welcome 1.0 +import projectmodel 1.0 +import StudioFonts 1.0 + +Item { + width: 1024 + height: 786 + + Rectangle { + id: rectangle + anchors.fill: parent + visible: true + color: "#2d2e30" + + StackLayout { + id: stackLayout + anchors.margins: 10 + anchors.top: topLine.bottom + anchors.bottom: bottomLine.top + anchors.right: parent.right + anchors.left: parent.left + + ScrollView{ + ProjectsGrid { + model: ProjectModel { + id: projectModel + } + onItemSelected: projectModel.openProjectAt(index) + } + } + + ScrollView { + ProjectsGrid { + model: ExamplesModel {} + onItemSelected: projectModel.openExample(item.projectName, item.qmlFileName) + } + } + + ScrollView{ + ProjectsGrid { + model: TutorialsModel {} + onItemSelected: Qt.openUrlExternally(item.url) + } + } + } + Rectangle { + id: topLine + height: 1 + color: "#bababa" + anchors.right: parent.right + anchors.rightMargin: 10 + anchors.left: parent.left + anchors.leftMargin: 10 + anchors.top: parent.top + anchors.topMargin: 200 + } + + Rectangle { + id: bottomLine + height: 1 + color: "#bababa" + anchors.left: topLine.left + anchors.right: topLine.right + anchors.bottom: parent.bottom + anchors.bottomMargin: 60 + } + + Row { + x: 8 + y: 160 + spacing: 26 + + MyTabButton { + text: qsTr("Recent Projects") + bottomPadding: 6 + topPadding: 6.8 + checked: true + onClicked: stackLayout.currentIndex = 0 + } + + MyTabButton { + text: qsTr("Examples") + onClicked: stackLayout.currentIndex = 1 + } + + MyTabButton { + text: qsTr("Tutorials") + onClicked: stackLayout.currentIndex = 2 + } + } + + AccountImage { + id: account + x: 946 + y: 29 + anchors.right: parent.right + anchors.rightMargin: 40 + } + + GridLayout { + y: 78 + anchors.horizontalCenter: parent.horizontalCenter + columnSpacing: 10 + rows: 2 + columns: 2 + + Text { + id: welcomeTo + color: Constants.textDefaultColor + text: qsTr("Welcome to") + renderType: Text.NativeRendering + font.pixelSize: 22 + font.family: StudioFonts.titilliumWeb_regular + } + + Text { + id: qtDesignStudio + color: "#4cd265" + text: qsTr("Qt Design Studio") + renderType: Text.NativeRendering + font.family: StudioFonts.titilliumWeb_regular + font.pixelSize: 22 + } + + MyButton { + text: qsTr("Create New") + onClicked: projectModel.createProject() + } + + MyButton { + text: qsTr("Open Project") + onClicked: projectModel.openProject() + Layout.alignment: Qt.AlignRight | Qt.AlignVCenter + } + } + + RowLayout { + y: 732 + height: 28 + anchors.horizontalCenter: parent.horizontalCenter + anchors.bottom: parent.bottom + anchors.bottomMargin: 26 + spacing: 50 + + MyButton { + text: qsTr("Help") + onClicked: projectModel.showHelp() + } + + MyButton { + text: qsTr("Community") + onClicked: Qt.openUrlExternally("https://forum.qt.io/") + } + + MyButton { + text: qsTr("Blog") + onClicked: Qt.openUrlExternally("http://blog.qt.io/") + } + } + + Text { + id: qtDesignStudio1 + x: 891 + y: 171 + color: "#ffffff" + text: qsTr("Community Edition") + anchors.right: parent.right + anchors.rightMargin: 23 + font.weight: Font.Light + font.pixelSize: 14 + font.family: StudioFonts.titilliumWeb_regular + renderType: Text.NativeRendering + visible: projectModel.communityVersion + } + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/mockData/projectmodel/ProjectModel.qml b/src/plugins/studiowelcome/qml/welcomepage/mockData/projectmodel/ProjectModel.qml new file mode 100644 index 0000000000..bca1783d42 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/mockData/projectmodel/ProjectModel.qml @@ -0,0 +1,138 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QtQuick 2.0 + +ListModel { + + property bool communityVersion: true + ListElement { + displayName: "Project 01" + prettyFilePath: "my_file_1" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 02" + prettyFilePath: "my_file_2" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 03" + prettyFilePath: "my_file_3" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 04" + prettyFilePath: "my_file_4" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 05" + prettyFilePath: "my_file_5" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 06" + prettyFilePath: "my_file_6" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 07" + prettyFilePath: "my_file_7" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 08" + filename: "my_file_8" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 09" + filename: "my_file_9" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 10" + prettyFilePath: "my_file_10" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 11" + filename: "my_file_11" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 12" + prettyFilePath: "my_file_12" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 13" + filename: "my_file_13" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 14" + prettyFilePath: "my_file_14" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 15" + filename: "my_file_15" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 16" + filename: "my_file_16" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 17" + filename: "my_file_17" + thumbnail: "images/thumbnail_test.png" + } + + ListElement { + displayName: "Project 18" + prettyFilePath: "my_file_18" + thumbnail: "images/thumbnail_test.png" + } +} diff --git a/src/plugins/studiowelcome/qml/welcomepage/mockData/projectmodel/qmldir b/src/plugins/studiowelcome/qml/welcomepage/mockData/projectmodel/qmldir new file mode 100644 index 0000000000..0d7bc345c2 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/mockData/projectmodel/qmldir @@ -0,0 +1 @@ +ProjectModel 1.0 ProjectModel.qml diff --git a/src/plugins/studiowelcome/qml/welcomepage/welcomepage.qmlproject b/src/plugins/studiowelcome/qml/welcomepage/welcomepage.qmlproject new file mode 100644 index 0000000000..de393d88b0 --- /dev/null +++ b/src/plugins/studiowelcome/qml/welcomepage/welcomepage.qmlproject @@ -0,0 +1,47 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** 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 https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +import QmlProject 1.1 + +Project { + mainFile: "main.qml" + + /* Include .qml, .js, and image files from current directory and subdirectories */ + QmlFiles { + directory: "." + } + JavaScriptFiles { + directory: "." + } + ImageFiles { + directory: "." + } + /* List of plugin directories passed to QML runtime */ + importPaths: [ "imports", "mockData", "../../../../share/3rdparty/studiofonts" ] + + Environment { + QT_AUTO_SCREEN_SCALE_FACTOR: "1" + } +} |