summaryrefslogtreecommitdiff
path: root/examples/quick
diff options
context:
space:
mode:
Diffstat (limited to 'examples/quick')
-rw-r--r--examples/quick/controls/gallery/content/Controls.qml280
-rw-r--r--examples/quick/controls/gallery/content/Styles.qml382
-rw-r--r--examples/quick/controls/gallery/gallery.pro25
-rw-r--r--examples/quick/controls/gallery/gallery.qmlproject16
-rw-r--r--examples/quick/controls/gallery/gallery.qrc12
-rw-r--r--examples/quick/controls/gallery/images/bubble.pngbin214 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/button-pressed.pngbin3094 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/button.pngbin3164 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/document-open.pngbin1550 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/document-open@2x.pngbin3355 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/document-save-as.pngbin1837 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/document-save-as@2x.pngbin4500 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/folder_new.pngbin1199 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/go-next.pngbin1219 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/go-previous.pngbin1200 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/preferences-system.pngbin2129 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/process-stop.pngbin1927 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/progress-background.pngbin456 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/progress-fill.pngbin507 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/slider-handle.pngbin3523 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/tab.pngbin9877 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/tab_selected.pngbin10184 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/textfield.pngbin3023 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/toplevel_window.pngbin3690 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/view-refresh.pngbin2024 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/images/window-new@2x.pngbin1900 -> 0 bytes
-rw-r--r--examples/quick/controls/gallery/main.cpp (renamed from examples/quick/controls/gallery/src/main.cpp)3
-rw-r--r--examples/quick/controls/gallery/main.qml84
-rw-r--r--examples/quick/controls/gallery/qml/+android/UI.js (renamed from examples/quick/controls/gallery/content/AboutDialog.qml)14
-rw-r--r--examples/quick/controls/gallery/qml/+ios/UI.js (renamed from examples/quick/controls/gallery/content/ImageViewer.qml)24
-rw-r--r--examples/quick/controls/gallery/qml/+osx/UI.js (renamed from examples/quick/controls/gallery/content/ModelView.qml)53
-rw-r--r--examples/quick/controls/gallery/qml/ButtonPage.qml128
-rw-r--r--examples/quick/controls/gallery/qml/InputPage.qml114
-rw-r--r--examples/quick/controls/gallery/qml/ProgressPage.qml90
-rw-r--r--examples/quick/controls/gallery/qml/UI.js45
-rw-r--r--examples/quick/controls/gallery/resources.qrc24
-rw-r--r--examples/quick/controls/gallery/src/src.pri2
-rw-r--r--examples/quick/controls/shared/shared.pri3
38 files changed, 459 insertions, 840 deletions
diff --git a/examples/quick/controls/gallery/content/Controls.qml b/examples/quick/controls/gallery/content/Controls.qml
deleted file mode 100644
index 54ee99b9..00000000
--- a/examples/quick/controls/gallery/content/Controls.qml
+++ /dev/null
@@ -1,280 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the Qt Quick Controls module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:BSD$
-** You may use this file under the terms of the BSD license as follows:
-**
-** "Redistribution and use in source and binary forms, with or without
-** modification, are permitted provided that the following conditions are
-** met:
-** * Redistributions of source code must retain the above copyright
-** notice, this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright
-** notice, this list of conditions and the following disclaimer in
-** the documentation and/or other materials provided with the
-** distribution.
-** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
-** of its contributors may be used to endorse or promote products derived
-** from this software without specific prior written permission.
-**
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-import QtQuick 2.2
-import QtQuick.Controls 1.2
-import QtQuick.Layouts 1.1
-import QtQuick.Controls.Styles 1.1
-
-Item {
- id: flickable
- anchors.fill: parent
- enabled: enabledCheck.checked
-
- property int tabPosition: tabPositionGroup.current === r2 ? Qt.BottomEdge : Qt.TopEdge
-
- property string loremIpsum:
- "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor "+
- "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor "+
- "incididunt ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud "+
- "exercitation ullamco laboris nisi ut aliquip ex ea commodo cosnsequat. ";
-
- ListModel {
- id: choices
- ListElement { text: "Banana" }
- ListElement { text: "Orange" }
- ListElement { text: "Apple" }
- ListElement { text: "Coconut" }
- }
-
- RowLayout {
- id: contentRow
- anchors.fill:parent
- anchors.margins: 8
- spacing: 16
- ColumnLayout {
- id: firstColumn
- Layout.minimumWidth: implicitWidth
- Layout.fillWidth: false
- RowLayout {
- id: buttonrow
- Button {
- id: button1
- text: "Button 1"
- tooltip:"This is an interesting tool tip"
- Layout.fillWidth: true
- }
- Button {
- id:button2
- text:"Button 2"
- Layout.fillWidth: true
- menu: Menu {
- MenuItem { text: "This Button" }
- MenuItem { text: "Happens To Have" }
- MenuItem { text: "A Menu Assigned" }
- }
- }
- }
- ComboBox {
- id: combo
- model: choices
- currentIndex: 2
- Layout.fillWidth: true
- }
- ComboBox {
- model: Qt.fontFamilies()
- Layout.fillWidth: true
- currentIndex: 47
- }
- ComboBox {
- id: editableCombo
- editable: true
- model: choices
- Layout.fillWidth: true
- currentIndex: 2
- onAccepted: {
- if (editableCombo.find(currentText) === -1) {
- choices.append({text: editText})
- currentIndex = editableCombo.find(editText)
- }
- }
- }
- RowLayout {
- SpinBox {
- id: t1
- Layout.fillWidth: true
- minimumValue: -50
- value: -20
- }
- SpinBox {
- id: t2
- Layout.fillWidth: true
- }
- }
- TextField {
- id: t3
- placeholderText: "This is a placeholder for a TextField"
- Layout.fillWidth: true
- }
- ProgressBar {
- // normalize value [0.0 .. 1.0]
- value: (slider.value - slider.minimumValue) / (slider.maximumValue - slider.minimumValue)
- Layout.fillWidth: true
- }
- ProgressBar {
- indeterminate: true
- Layout.fillWidth: true
- }
- Slider {
- id: slider
- value: 0.5
- Layout.fillWidth: true
- tickmarksEnabled: tickmarkCheck.checked
- stepSize: tickmarksEnabled ? 0.1 : 0
- }
- MouseArea {
- id: busyCheck
- Layout.fillWidth: true
- Layout.fillHeight: true
- hoverEnabled:true
- Layout.preferredHeight: busyIndicator.height
- BusyIndicator {
- id: busyIndicator
- running: busyCheck.containsMouse
- anchors.horizontalCenter: parent.horizontalCenter
- }
- }
- }
- ColumnLayout {
- id: rightcol
- Layout.fillWidth: true
- anchors {
- top: parent.top
- bottom: parent.bottom
- }
-
- GroupBox {
- id: group1
- title: "CheckBox"
- Layout.fillWidth: true
- RowLayout {
- Layout.fillWidth: true
- CheckBox {
- id: frameCheckbox
- text: "Text frame"
- checked: true
- Layout.minimumWidth: 100
- }
- CheckBox {
- id: tickmarkCheck
- text: "Tickmarks"
- checked: false
- Layout.minimumWidth: 100
- }
- CheckBox {
- id: wrapCheck
- text: "Word wrap"
- checked: true
- Layout.minimumWidth: 100
- }
- }
- }
- GroupBox {
- id: group2
- title:"Tab Position"
- Layout.fillWidth: true
- RowLayout {
- ExclusiveGroup { id: tabPositionGroup }
- RadioButton {
- id: r1
- text: "Top"
- checked: true
- exclusiveGroup: tabPositionGroup
- Layout.minimumWidth: 100
- }
- RadioButton {
- id: r2
- text: "Bottom"
- exclusiveGroup: tabPositionGroup
- Layout.minimumWidth: 100
- }
- }
- }
-
- TextArea {
- id: area
- frameVisible: frameCheckbox.checked
- text: loremIpsum + loremIpsum
- textFormat: Qt.RichText
- wrapMode: wrapCheck.checked ? TextEdit.WordWrap : TextEdit.NoWrap
- Layout.fillWidth: true
- Layout.fillHeight: true
- menu: editmenu
- }
- }
- }
-
- ExclusiveGroup {
- id: textFormatGroup
-
- Action {
- id: a1
- text: "Align &Left"
- checkable: true
- Component.onCompleted: checked = true
- }
-
- Action {
- id: a2
- text: "&Center"
- checkable: true
- }
-
- Action {
- id: a3
- text: "Align &Right"
- checkable: true
- }
- }
-
- Component {
- id: editmenu
- Menu {
- MenuItem { action: cutAction }
- MenuItem { action: copyAction }
- MenuItem { action: pasteAction }
- MenuSeparator {}
- Menu {
- title: "Text &Format"
- MenuItem { action: a1 }
- MenuItem { action: a2 }
- MenuItem { action: a3 }
- MenuSeparator { }
- MenuItem { text: "Allow &Hyphenation"; checkable: true }
- }
- Menu {
- title: "Font &Style"
- MenuItem { text: "&Bold"; checkable: true }
- MenuItem { text: "&Italic"; checkable: true }
- MenuItem { text: "&Underline"; checkable: true }
- }
- }
- }
-}
diff --git a/examples/quick/controls/gallery/content/Styles.qml b/examples/quick/controls/gallery/content/Styles.qml
deleted file mode 100644
index 03be93fd..00000000
--- a/examples/quick/controls/gallery/content/Styles.qml
+++ /dev/null
@@ -1,382 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the Qt Quick Controls module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:BSD$
-** You may use this file under the terms of the BSD license as follows:
-**
-** "Redistribution and use in source and binary forms, with or without
-** modification, are permitted provided that the following conditions are
-** met:
-** * Redistributions of source code must retain the above copyright
-** notice, this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright
-** notice, this list of conditions and the following disclaimer in
-** the documentation and/or other materials provided with the
-** distribution.
-** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
-** of its contributors may be used to endorse or promote products derived
-** from this software without specific prior written permission.
-**
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-import QtQuick 2.2
-import QtQuick.Controls 1.2
-import QtQuick.Controls.Styles 1.1
-import QtQuick.Particles 2.0
-import QtQuick.Layouts 1.0
-
-Item {
- id: root
- width: 300
- height: 200
-
- property int columnWidth: 120
- GridLayout {
- rowSpacing: 12
- columnSpacing: 30
- anchors.top: parent.top
- anchors.horizontalCenter: parent.horizontalCenter
- anchors.margins: 30
-
- Button {
- text: "Push me"
- style: ButtonStyle { }
- implicitWidth: columnWidth
- }
- Button {
- text: "Push me"
- style: ButtonStyle {
- background: BorderImage {
- source: control.pressed ? "../images/button-pressed.png" : "../images/button.png"
- border.left: 4 ; border.right: 4 ; border.top: 4 ; border.bottom: 4
- }
- }
- implicitWidth: columnWidth
- }
- Button {
- text: "Push me"
- style: buttonStyle
- implicitWidth: columnWidth
- }
-
- TextField {
- Layout.row: 1
- style: TextFieldStyle { }
- implicitWidth: columnWidth
- }
- TextField {
- style: TextFieldStyle {
- background: BorderImage {
- source: "../images/textfield.png"
- border.left: 4 ; border.right: 4 ; border.top: 4 ; border.bottom: 4
- }
- }
- implicitWidth: columnWidth
- }
- TextField {
- style: textfieldStyle
- implicitWidth: columnWidth
- }
-
- Slider {
- id: slider1
- Layout.row: 2
- value: 0.5
- implicitWidth: columnWidth
- style: SliderStyle { }
- }
- Slider {
- id: slider2
- value: 0.5
- implicitWidth: columnWidth
- style: SliderStyle {
- groove: BorderImage {
- height: 6
- border.top: 1
- border.bottom: 1
- source: "../images/progress-background.png"
- border.left: 6
- border.right: 6
- BorderImage {
- anchors.verticalCenter: parent.verticalCenter
- source: "../images/progress-fill.png"
- border.left: 5 ; border.top: 1
- border.right: 5 ; border.bottom: 1
- width: styleData.handlePosition
- height: parent.height
- }
- }
- handle: Item {
- width: 13
- height: 13
- Image {
- anchors.centerIn: parent
- source: "../images/slider-handle.png"
- }
- }
- }
- }
- Slider {
- id: slider3
- value: 0.5
- implicitWidth: columnWidth
- style: sliderStyle
- }
-
- ProgressBar {
- Layout.row: 3
- value: slider1.value
- implicitWidth: columnWidth
- style: ProgressBarStyle{ }
- }
- ProgressBar {
- value: slider2.value
- implicitWidth: columnWidth
- style: progressBarStyle
- }
- ProgressBar {
- value: slider3.value
- implicitWidth: columnWidth
- style: progressBarStyle2
- }
-
- CheckBox {
- text: "CheckBox"
- style: CheckBoxStyle{}
- Layout.row: 4
- implicitWidth: columnWidth
- }
- RadioButton {
- style: RadioButtonStyle{}
- text: "RadioButton"
- implicitWidth: columnWidth
- }
-
- ComboBox {
- model: ["Paris", "Oslo", "New York"]
- style: ComboBoxStyle{}
- implicitWidth: columnWidth
- }
-
- TabView {
- Layout.row: 5
- Layout.columnSpan: 3
- Layout.fillWidth: true
- implicitHeight: 30
- Tab { title: "One" ; Item {}}
- Tab { title: "Two" ; Item {}}
- Tab { title: "Three" ; Item {}}
- Tab { title: "Four" ; Item {}}
- style: TabViewStyle {}
- }
-
- TabView {
- Layout.row: 6
- Layout.columnSpan: 3
- Layout.fillWidth: true
- implicitHeight: 30
- Tab { title: "One" ; Item {}}
- Tab { title: "Two" ; Item {}}
- Tab { title: "Three" ; Item {}}
- Tab { title: "Four" ; Item {}}
- style: tabViewStyle
- }
- }
-
- // Style delegates:
-
- property Component buttonStyle: ButtonStyle {
- background: Rectangle {
- implicitHeight: 22
- implicitWidth: columnWidth
- color: control.pressed ? "darkGray" : control.activeFocus ? "#cdd" : "#ccc"
- antialiasing: true
- border.color: "gray"
- radius: height/2
- Rectangle {
- anchors.fill: parent
- anchors.margins: 1
- color: "transparent"
- antialiasing: true
- visible: !control.pressed
- border.color: "#aaffffff"
- radius: height/2
- }
- }
- }
-
- property Component textfieldStyle: TextFieldStyle {
- background: Rectangle {
- implicitWidth: columnWidth
- implicitHeight: 22
- color: "#f0f0f0"
- antialiasing: true
- border.color: "gray"
- radius: height/2
- Rectangle {
- anchors.fill: parent
- anchors.margins: 1
- color: "transparent"
- antialiasing: true
- border.color: "#aaffffff"
- radius: height/2
- }
- }
- }
-
- property Component sliderStyle: SliderStyle {
- handle: Rectangle {
- width: 18
- height: 18
- color: control.pressed ? "darkGray" : "lightGray"
- border.color: "gray"
- antialiasing: true
- radius: height/2
- Rectangle {
- anchors.fill: parent
- anchors.margins: 1
- color: "transparent"
- antialiasing: true
- border.color: "#eee"
- radius: height/2
- }
- }
-
- groove: Rectangle {
- height: 8
- implicitWidth: columnWidth
- implicitHeight: 22
-
- antialiasing: true
- color: "#ccc"
- border.color: "#777"
- radius: height/2
- Rectangle {
- anchors.fill: parent
- anchors.margins: 1
- color: "transparent"
- antialiasing: true
- border.color: "#66ffffff"
- radius: height/2
- }
- }
- }
-
- property Component progressBarStyle: ProgressBarStyle {
- background: BorderImage {
- source: "../images/progress-background.png"
- border.left: 2 ; border.right: 2 ; border.top: 2 ; border.bottom: 2
- }
- progress: Item {
- clip: true
- BorderImage {
- anchors.fill: parent
- anchors.rightMargin: (control.value < control.maximumValue) ? -4 : 0
- source: "../images/progress-fill.png"
- border.left: 10 ; border.right: 10
- Rectangle {
- width: 1
- color: "#a70"
- opacity: 0.8
- anchors.top: parent.top
- anchors.bottom: parent.bottom
- anchors.bottomMargin: 1
- anchors.right: parent.right
- visible: control.value < control.maximumValue
- anchors.rightMargin: -parent.anchors.rightMargin
- }
- }
- ParticleSystem{ id: bubbles; running: visible }
- ImageParticle{
- id: fireball
- system: bubbles
- source: "../images/bubble.png"
- opacity: 0.7
- }
- Emitter{
- system: bubbles
- anchors.bottom: parent.bottom
- anchors.margins: 4
- anchors.bottomMargin: -4
- anchors.left: parent.left
- anchors.right: parent.right
- size: 4
- sizeVariation: 4
- acceleration: PointDirection{ y: -6; xVariation: 3 }
- emitRate: 6 * control.value
- lifeSpan: 3000
- }
- }
- }
-
- property Component progressBarStyle2: ProgressBarStyle {
- background: Rectangle {
- implicitWidth: columnWidth
- implicitHeight: 24
- color: "#f0f0f0"
- border.color: "gray"
- }
- progress: Rectangle {
- color: "#ccc"
- border.color: "gray"
- Rectangle {
- color: "transparent"
- border.color: "#44ffffff"
- anchors.fill: parent
- anchors.margins: 1
- }
- }
- }
-
- property Component tabViewStyle: TabViewStyle {
- tabOverlap: 16
- frameOverlap: 4
- tabsMovable: true
-
- frame: Rectangle {
- gradient: Gradient{
- GradientStop { color: "#e5e5e5" ; position: 0 }
- GradientStop { color: "#e0e0e0" ; position: 1 }
- }
- border.color: "#898989"
- Rectangle { anchors.fill: parent ; anchors.margins: 1 ; border.color: "white" ; color: "transparent" }
- }
- tab: Item {
- property int totalOverlap: tabOverlap * (control.count - 1)
- implicitWidth: Math.min ((styleData.availableWidth + totalOverlap)/control.count - 4, image.sourceSize.width)
- implicitHeight: image.sourceSize.height
- BorderImage {
- id: image
- anchors.fill: parent
- source: styleData.selected ? "../images/tab_selected.png" : "../images/tab.png"
- border.left: 30
- smooth: false
- border.right: 30
- }
- Text {
- text: styleData.title
- anchors.centerIn: parent
- }
- }
- leftCorner: Item { implicitWidth: 12 }
- }
-}
diff --git a/examples/quick/controls/gallery/gallery.pro b/examples/quick/controls/gallery/gallery.pro
index 992dd891..f13f4213 100644
--- a/examples/quick/controls/gallery/gallery.pro
+++ b/examples/quick/controls/gallery/gallery.pro
@@ -1,17 +1,20 @@
-QT += qml quick
+TEMPLATE = app
TARGET = gallery
-!no_desktop: QT += widgets
-include(src/src.pri)
-include(../shared/shared.pri)
+SOURCES += \
+ main.cpp
+
+RESOURCES += \
+ gallery.qrc
OTHER_FILES += \
main.qml \
- content/AboutDialog.qml \
- content/Controls.qml \
- content/ImageViewer.qml \
- content/ModelView.qml \
- content/Styles.qml
+ qml/ButtonPage.qml \
+ qml/InputPage.qml \
+ qml/ProgressPage.qml \
+ qml/UI.js \
+ qml/+android/UI.js \
+ qml/+ios/UI.js \
+ qml/+osx/UI.js
-RESOURCES += \
- resources.qrc
+include(../shared/shared.pri)
diff --git a/examples/quick/controls/gallery/gallery.qmlproject b/examples/quick/controls/gallery/gallery.qmlproject
deleted file mode 100644
index e5a8bf02..00000000
--- a/examples/quick/controls/gallery/gallery.qmlproject
+++ /dev/null
@@ -1,16 +0,0 @@
-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: "."
- }
-}
diff --git a/examples/quick/controls/gallery/gallery.qrc b/examples/quick/controls/gallery/gallery.qrc
new file mode 100644
index 00000000..873c8b5c
--- /dev/null
+++ b/examples/quick/controls/gallery/gallery.qrc
@@ -0,0 +1,12 @@
+<RCC>
+ <qresource prefix="/">
+ <file>main.qml</file>
+ <file>qml/ButtonPage.qml</file>
+ <file>qml/InputPage.qml</file>
+ <file>qml/ProgressPage.qml</file>
+ <file>qml/UI.js</file>
+ <file>qml/+android/UI.js</file>
+ <file>qml/+ios/UI.js</file>
+ <file>qml/+osx/UI.js</file>
+ </qresource>
+</RCC>
diff --git a/examples/quick/controls/gallery/images/bubble.png b/examples/quick/controls/gallery/images/bubble.png
deleted file mode 100644
index 62aa1efe..00000000
--- a/examples/quick/controls/gallery/images/bubble.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/button-pressed.png b/examples/quick/controls/gallery/images/button-pressed.png
deleted file mode 100644
index d64cdaa7..00000000
--- a/examples/quick/controls/gallery/images/button-pressed.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/button.png b/examples/quick/controls/gallery/images/button.png
deleted file mode 100644
index 8ab41cc8..00000000
--- a/examples/quick/controls/gallery/images/button.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/document-open.png b/examples/quick/controls/gallery/images/document-open.png
deleted file mode 100644
index f35f2583..00000000
--- a/examples/quick/controls/gallery/images/document-open.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/document-open@2x.png b/examples/quick/controls/gallery/images/document-open@2x.png
deleted file mode 100644
index 9fdbb665..00000000
--- a/examples/quick/controls/gallery/images/document-open@2x.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/document-save-as.png b/examples/quick/controls/gallery/images/document-save-as.png
deleted file mode 100644
index 5c9f6b34..00000000
--- a/examples/quick/controls/gallery/images/document-save-as.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/document-save-as@2x.png b/examples/quick/controls/gallery/images/document-save-as@2x.png
deleted file mode 100644
index a15e34c9..00000000
--- a/examples/quick/controls/gallery/images/document-save-as@2x.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/folder_new.png b/examples/quick/controls/gallery/images/folder_new.png
deleted file mode 100644
index 8d8bb9bd..00000000
--- a/examples/quick/controls/gallery/images/folder_new.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/go-next.png b/examples/quick/controls/gallery/images/go-next.png
deleted file mode 100644
index a68e2db7..00000000
--- a/examples/quick/controls/gallery/images/go-next.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/go-previous.png b/examples/quick/controls/gallery/images/go-previous.png
deleted file mode 100644
index c37bc041..00000000
--- a/examples/quick/controls/gallery/images/go-previous.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/preferences-system.png b/examples/quick/controls/gallery/images/preferences-system.png
deleted file mode 100644
index 6e52db7c..00000000
--- a/examples/quick/controls/gallery/images/preferences-system.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/process-stop.png b/examples/quick/controls/gallery/images/process-stop.png
deleted file mode 100644
index e7a8d172..00000000
--- a/examples/quick/controls/gallery/images/process-stop.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/progress-background.png b/examples/quick/controls/gallery/images/progress-background.png
deleted file mode 100644
index 55a069df..00000000
--- a/examples/quick/controls/gallery/images/progress-background.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/progress-fill.png b/examples/quick/controls/gallery/images/progress-fill.png
deleted file mode 100644
index b588c958..00000000
--- a/examples/quick/controls/gallery/images/progress-fill.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/slider-handle.png b/examples/quick/controls/gallery/images/slider-handle.png
deleted file mode 100644
index ac4d4a0d..00000000
--- a/examples/quick/controls/gallery/images/slider-handle.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/tab.png b/examples/quick/controls/gallery/images/tab.png
deleted file mode 100644
index 74fefab7..00000000
--- a/examples/quick/controls/gallery/images/tab.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/tab_selected.png b/examples/quick/controls/gallery/images/tab_selected.png
deleted file mode 100644
index 665400cc..00000000
--- a/examples/quick/controls/gallery/images/tab_selected.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/textfield.png b/examples/quick/controls/gallery/images/textfield.png
deleted file mode 100644
index 1d4a38ab..00000000
--- a/examples/quick/controls/gallery/images/textfield.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/toplevel_window.png b/examples/quick/controls/gallery/images/toplevel_window.png
deleted file mode 100644
index 4dc6a8ce..00000000
--- a/examples/quick/controls/gallery/images/toplevel_window.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/view-refresh.png b/examples/quick/controls/gallery/images/view-refresh.png
deleted file mode 100644
index 606ea9eb..00000000
--- a/examples/quick/controls/gallery/images/view-refresh.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/images/window-new@2x.png b/examples/quick/controls/gallery/images/window-new@2x.png
deleted file mode 100644
index 36503018..00000000
--- a/examples/quick/controls/gallery/images/window-new@2x.png
+++ /dev/null
Binary files differ
diff --git a/examples/quick/controls/gallery/src/main.cpp b/examples/quick/controls/gallery/main.cpp
index 8971aa15..c456e1cb 100644
--- a/examples/quick/controls/gallery/src/main.cpp
+++ b/examples/quick/controls/gallery/main.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Qt Quick Controls module of the Qt Toolkit.
@@ -41,7 +41,6 @@
#include "qtquickcontrolsapplication.h"
#include <QtQml/QQmlApplicationEngine>
#include <QtGui/QSurfaceFormat>
-#include <QtQuick/QQuickWindow>
int main(int argc, char *argv[])
{
diff --git a/examples/quick/controls/gallery/main.qml b/examples/quick/controls/gallery/main.qml
index 4d013c8b..2de810d8 100644
--- a/examples/quick/controls/gallery/main.qml
+++ b/examples/quick/controls/gallery/main.qml
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Qt Quick Controls module of the Qt Toolkit.
@@ -39,37 +39,22 @@
****************************************************************************/
import QtQuick 2.2
+import QtQuick.Layouts 1.1
+import QtQuick.Dialogs 1.1
import QtQuick.Controls 1.2
-import QtQuick.Layouts 1.0
-import QtQuick.Dialogs 1.0
-import "content"
+import "qml/UI.js" as UI
+import "qml"
ApplicationWindow {
visible: true
title: "Qt Quick Controls Gallery"
- width: 640
- height: 420
- minimumHeight: 400
- minimumWidth: 600
-
- ImageViewer { id: imageViewer }
-
- FileDialog {
- id: fileDialog
- nameFilters: [ "Image files (*.png *.jpg)" ]
- onAccepted: imageViewer.open(fileUrl)
- }
-
- AboutDialog { id: aboutDialog }
-
- Action {
- id: openAction
- text: "&Open"
- shortcut: StandardKey.Open
- iconSource: "images/document-open.png"
- onTriggered: fileDialog.open()
- tooltip: "Open an image"
+ MessageDialog {
+ id: aboutDialog
+ icon: StandardIcon.Information
+ title: "About"
+ text: "Qt Quick Controls Gallery"
+ informativeText: "This example demonstrates most of the available Qt Quick Controls."
}
Action {
@@ -100,20 +85,15 @@ ApplicationWindow {
}
toolBar: ToolBar {
- id: toolbar
RowLayout {
- id: toolbarLayout
- spacing: 0
anchors.fill: parent
- ToolButton { action: openAction }
- ToolButton {
- Accessible.name: "Save as"
- iconSource: "images/document-save-as.png"
- tooltip: "(Pretend to) Save as..."
+ anchors.margins: spacing
+ Label {
+ text: UI.label
}
Item { Layout.fillWidth: true }
CheckBox {
- id: enabledCheck
+ id: enabler
text: "Enabled"
checked: true
}
@@ -123,7 +103,6 @@ ApplicationWindow {
menuBar: MenuBar {
Menu {
title: "&File"
- MenuItem { action: openAction }
MenuItem {
text: "E&xit"
shortcut: StandardKey.Quit
@@ -132,6 +111,7 @@ ApplicationWindow {
}
Menu {
title: "&Edit"
+ visible: tabView.currentIndex == 2
MenuItem { action: cutAction }
MenuItem { action: copyAction }
MenuItem { action: pasteAction }
@@ -146,24 +126,34 @@ ApplicationWindow {
}
TabView {
- id:frame
- enabled: enabledCheck.checked
- tabPosition: controlPage.item ? controlPage.item.tabPosition : Qt.TopEdge
+ id: tabView
+
anchors.fill: parent
- anchors.margins: Qt.platform.os === "osx" ? 12 : 2
+ anchors.margins: UI.margin
+ tabPosition: UI.tabPosition
+
+ Layout.minimumWidth: 360
+ Layout.minimumHeight: 360
+ Layout.preferredWidth: 480
+ Layout.preferredHeight: 640
Tab {
- id: controlPage
- title: "Controls"
- Controls { }
+ title: "Buttons"
+ ButtonPage {
+ enabled: enabler.checked
+ }
}
Tab {
- title: "Itemviews"
- ModelView { }
+ title: "Progress"
+ ProgressPage {
+ enabled: enabler.checked
+ }
}
Tab {
- title: "Styles"
- Styles { anchors.fill: parent }
+ title: "Input"
+ InputPage {
+ enabled: enabler.checked
+ }
}
}
}
diff --git a/examples/quick/controls/gallery/content/AboutDialog.qml b/examples/quick/controls/gallery/qml/+android/UI.js
index e4837ff7..6050d16e 100644
--- a/examples/quick/controls/gallery/content/AboutDialog.qml
+++ b/examples/quick/controls/gallery/qml/+android/UI.js
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Qt Quick Controls module of the Qt Toolkit.
@@ -38,12 +38,8 @@
**
****************************************************************************/
-import QtQuick 2.2
-import QtQuick.Dialogs 1.1
+.pragma library
-MessageDialog {
- icon: StandardIcon.Information
- text: "QtQuick.Controls gallery example"
- detailedText: "This example demonstrates most of the available Qt Quick Controls."
- title: "About Gallery"
-}
+var margin = 0
+var tabPosition = Qt.BottomEdge
+var label = "Gallery"
diff --git a/examples/quick/controls/gallery/content/ImageViewer.qml b/examples/quick/controls/gallery/qml/+ios/UI.js
index dfac2e00..6050d16e 100644
--- a/examples/quick/controls/gallery/content/ImageViewer.qml
+++ b/examples/quick/controls/gallery/qml/+ios/UI.js
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Qt Quick Controls module of the Qt Toolkit.
@@ -38,22 +38,8 @@
**
****************************************************************************/
-import QtQuick 2.2
-import QtQuick.Window 2.1
+.pragma library
-Window {
- id: imageViewer
- minimumWidth: viewerImage.width
- minimumHeight: viewerImage.height
- function open(source) {
- viewerImage.source = source
- width = viewerImage.implicitWidth + 20
- height = viewerImage.implicitHeight + 20
- title = source
- visible = true
- }
- Image {
- id: viewerImage
- anchors.centerIn: parent
- }
-}
+var margin = 0
+var tabPosition = Qt.BottomEdge
+var label = "Gallery"
diff --git a/examples/quick/controls/gallery/content/ModelView.qml b/examples/quick/controls/gallery/qml/+osx/UI.js
index a5d07d15..2f078ea7 100644
--- a/examples/quick/controls/gallery/content/ModelView.qml
+++ b/examples/quick/controls/gallery/qml/+osx/UI.js
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Qt Quick Controls module of the Qt Toolkit.
@@ -38,51 +38,8 @@
**
****************************************************************************/
-import QtQuick 2.2
-import QtQuick.Controls 1.2
+.pragma library
-Item {
- id: root
- width: 600
- height: 300
- anchors.fill: parent
- anchors.margins: Qt.platform.os === "osx" ? 12 : 6
-
- ListModel {
- id: dummyModel
- Component.onCompleted: {
- for (var i = 0 ; i < 100 ; ++i) {
- append({"index": i, "title": "A title " + i, "imagesource" :"http://someurl.com", "credit" : "N/A"})
- }
- }
- }
-
- TableView{
- model: dummyModel
- anchors.fill: parent
-
- TableViewColumn {
- role: "index"
- title: "#"
- width: 36
- resizable: false
- movable: false
- }
- TableViewColumn {
- role: "title"
- title: "Title"
- width: 120
- }
- TableViewColumn {
- role: "credit"
- title: "Credit"
- width: 120
- }
- TableViewColumn {
- role: "imagesource"
- title: "Image source"
- width: 200
- visible: true
- }
- }
-}
+var margin = 12
+var tabPosition = Qt.TopEdge
+var label = ""
diff --git a/examples/quick/controls/gallery/qml/ButtonPage.qml b/examples/quick/controls/gallery/qml/ButtonPage.qml
new file mode 100644
index 00000000..0ed7e2d6
--- /dev/null
+++ b/examples/quick/controls/gallery/qml/ButtonPage.qml
@@ -0,0 +1,128 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Quick Controls module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
+** of its contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.2
+import QtQuick.Layouts 1.1
+import QtQuick.Controls 1.2
+
+ScrollView {
+ id: page
+
+ horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff
+
+ Item {
+ id: content
+
+ width: Math.max(page.viewport.width, grid.implicitWidth + 2 * grid.rowSpacing)
+ height: Math.max(page.viewport.height, grid.implicitHeight + 2 * grid.columnSpacing)
+
+ GridLayout {
+ id: grid
+
+ anchors.top: parent.top
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.leftMargin: grid.rowSpacing
+ anchors.rightMargin: grid.rowSpacing
+ anchors.topMargin: grid.columnSpacing
+
+ columns: page.width < page.height ? 1 : 2
+
+ GroupBox {
+ title: "Button"
+ Layout.fillWidth: true
+ Layout.columnSpan: grid.columns
+ RowLayout {
+ anchors.fill: parent
+ Button { text: "OK"; isDefault: true }
+ Button { text: "Cancel" }
+ Item { Layout.fillWidth: true }
+ Button {
+ text: "Attach"
+ menu: Menu {
+ MenuItem { text: "Image" }
+ MenuItem { text: "Document" }
+ }
+ }
+ }
+ }
+
+ GroupBox {
+ title: "CheckBox"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ CheckBox { text: "E-mail"; checked: true }
+ CheckBox { text: "Calendar"; checked: true }
+ CheckBox { text: "Contacts" }
+ }
+ }
+
+ GroupBox {
+ title: "RadioButton"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ ExclusiveGroup { id: radioGroup }
+ RadioButton { text: "Portrait"; exclusiveGroup: radioGroup }
+ RadioButton { text: "Landscape"; exclusiveGroup: radioGroup }
+ RadioButton { text: "Automatic"; exclusiveGroup: radioGroup; checked: true }
+ }
+ }
+
+ GroupBox {
+ title: "Switch"
+ Layout.fillWidth: true
+ Layout.columnSpan: grid.columns
+ ColumnLayout {
+ anchors.fill: parent
+ RowLayout {
+ Label { text: "Wi-Fi"; Layout.fillWidth: true }
+ Switch { checked: true }
+ }
+ RowLayout {
+ Label { text: "Bluetooth"; Layout.fillWidth: true }
+ Switch { checked: false }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/examples/quick/controls/gallery/qml/InputPage.qml b/examples/quick/controls/gallery/qml/InputPage.qml
new file mode 100644
index 00000000..cb1878d0
--- /dev/null
+++ b/examples/quick/controls/gallery/qml/InputPage.qml
@@ -0,0 +1,114 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Quick Controls module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
+** of its contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.2
+import QtQuick.Layouts 1.1
+import QtQuick.Controls 1.2
+
+ScrollView {
+ id: page
+
+ horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff
+
+ Item {
+ id: content
+
+ width: Math.max(page.viewport.width, column.implicitWidth + 2 * column.spacing)
+ height: Math.max(page.viewport.height, column.implicitHeight + 2 * column.spacing)
+
+ ColumnLayout {
+ id: column
+
+ anchors.top: parent.top
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.margins: column.spacing
+
+ GroupBox {
+ title: "TextField"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ TextField { placeholderText: "..."; Layout.fillWidth: true; z: 1 }
+ TextField { placeholderText: "Password"; echoMode: TextInput.Password; Layout.fillWidth: true }
+ }
+ }
+
+ GroupBox {
+ title: "ComboBox"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ ComboBox {
+ model: Qt.fontFamilies()
+ Layout.fillWidth: true
+ }
+ ComboBox {
+ editable: true
+ model: ListModel {
+ id: listModel
+ ListElement { text: "Apple" }
+ ListElement { text: "Banana" }
+ ListElement { text: "Coconut" }
+ ListElement { text: "Orange" }
+ }
+ onAccepted: {
+ if (find(currentText) === -1) {
+ listModel.append({text: editText})
+ currentIndex = find(editText)
+ }
+ }
+ Layout.fillWidth: true
+ }
+ }
+ }
+
+ GroupBox {
+ title: "SpinBox"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ SpinBox { value: 99; Layout.fillWidth: true; z: 1 }
+ SpinBox { decimals: 2; Layout.fillWidth: true }
+ }
+ }
+ }
+ }
+}
diff --git a/examples/quick/controls/gallery/qml/ProgressPage.qml b/examples/quick/controls/gallery/qml/ProgressPage.qml
new file mode 100644
index 00000000..a1fa596f
--- /dev/null
+++ b/examples/quick/controls/gallery/qml/ProgressPage.qml
@@ -0,0 +1,90 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Quick Controls module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
+** of its contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.2
+import QtQuick.Layouts 1.1
+import QtQuick.Controls 1.2
+
+ScrollView {
+ id: page
+
+ horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff
+
+ Item {
+ id: content
+
+ width: Math.max(page.viewport.width, column.implicitWidth + 2 * column.spacing)
+ height: Math.max(page.viewport.height, column.implicitHeight + 2 * column.spacing)
+
+ ColumnLayout {
+ id: column
+
+ anchors.top: parent.top
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.margins: column.spacing
+
+ GroupBox {
+ title: "ProgressBar"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ ProgressBar { indeterminate: true; Layout.fillWidth: true }
+ ProgressBar { value: slider.value; Layout.fillWidth: true }
+ }
+ }
+
+ GroupBox {
+ title: "Slider"
+ Layout.fillWidth: true
+ ColumnLayout {
+ anchors.fill: parent
+ Slider { id: slider; value: 0.5; Layout.fillWidth: true }
+ }
+ }
+
+ GroupBox {
+ title: "BusyIndicator"
+ Layout.fillWidth: true
+ BusyIndicator { running: true }
+ }
+ }
+ }
+}
diff --git a/examples/quick/controls/gallery/qml/UI.js b/examples/quick/controls/gallery/qml/UI.js
new file mode 100644
index 00000000..0286ac56
--- /dev/null
+++ b/examples/quick/controls/gallery/qml/UI.js
@@ -0,0 +1,45 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Quick Controls module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
+** of its contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+.pragma library
+
+var margin = 2
+var tabPosition = Qt.TopEdge
+var label = ""
diff --git a/examples/quick/controls/gallery/resources.qrc b/examples/quick/controls/gallery/resources.qrc
deleted file mode 100644
index 57d803b2..00000000
--- a/examples/quick/controls/gallery/resources.qrc
+++ /dev/null
@@ -1,24 +0,0 @@
-<RCC>
- <qresource prefix="/">
- <file>main.qml</file>
- <file>content/AboutDialog.qml</file>
- <file>content/Controls.qml</file>
- <file>content/ImageViewer.qml</file>
- <file>content/ModelView.qml</file>
- <file>content/Styles.qml</file>
- <file>images/document-open.png</file>
- <file>images/document-open@2x.png</file>
- <file>images/document-save-as.png</file>
- <file>images/document-save-as@2x.png</file>
- <file>images/folder_new.png</file>
- <file>images/tab.png</file>
- <file>images/tab_selected.png</file>
- <file>images/bubble.png</file>
- <file>images/button-pressed.png</file>
- <file>images/button.png</file>
- <file>images/progress-background.png</file>
- <file>images/progress-fill.png</file>
- <file>images/textfield.png</file>
- <file>images/slider-handle.png</file>
- </qresource>
-</RCC>
diff --git a/examples/quick/controls/gallery/src/src.pri b/examples/quick/controls/gallery/src/src.pri
deleted file mode 100644
index 66d903ea..00000000
--- a/examples/quick/controls/gallery/src/src.pri
+++ /dev/null
@@ -1,2 +0,0 @@
-SOURCES += \
- $$PWD/main.cpp
diff --git a/examples/quick/controls/shared/shared.pri b/examples/quick/controls/shared/shared.pri
index 8ca34737..1d9e0592 100644
--- a/examples/quick/controls/shared/shared.pri
+++ b/examples/quick/controls/shared/shared.pri
@@ -1,3 +1,6 @@
+QT += quick
+!no_desktop: QT += widgets
+
INCLUDEPATH += $$PWD
SOURCES += \