From 56c1111d392ac6bfb33559f1ca4e09e4e258a777 Mon Sep 17 00:00:00 2001 From: Caroline Chao Date: Tue, 28 May 2013 09:00:58 +0200 Subject: [PATCH] Dialogs: Create directory structure for documentation Change-Id: I5245a6931606673733130b1f168fddafe8def695 Reviewed-by: Jerome Pasion --- examples/quick/dialogs/ColorDialogs.qml | 143 ----------------- examples/quick/dialogs/FileDialogs.qml | 167 ------------------- .../dialogs/colorandfiledialogs/ColorDialogs.qml | 145 +++++++++++++++++ .../dialogs/colorandfiledialogs/FileDialogs.qml | 169 ++++++++++++++++++++ .../colorandfiledialogs/colorandfiledialogs.pro | 17 ++ .../colorandfiledialogs/colorandfiledialogs.qrc | 7 + .../quick/dialogs/colorandfiledialogs/dialogs.qml | 59 +++++++ .../doc/images/qml-colorandfiledialogs-example.jpg | Bin 0 -> 47413 bytes .../doc/src/colorandfiledialogs.qdoc | 44 +++++ .../quick/dialogs/colorandfiledialogs/main.cpp | 41 +++++ examples/quick/dialogs/dialogs.pro | 19 +-- examples/quick/dialogs/dialogs.qml | 59 ------- examples/quick/dialogs/dialogs.qrc | 7 - examples/quick/dialogs/main.cpp | 41 ----- src/imports/dialogs/dialogs.pro | 2 + src/imports/dialogs/doc/qtquickdialogs.qdocconf | 35 ++++ .../dialogs/doc/src/qtquickdialogs-examples.qdoc | 36 ++++ .../dialogs/doc/src/qtquickdialogs-index.qdoc | 58 +++++++ src/imports/dialogs/plugin.cpp | 27 --- src/quick/doc/src/qtquick.qdoc | 2 +- 20 files changed, 617 insertions(+), 461 deletions(-) delete mode 100644 examples/quick/dialogs/ColorDialogs.qml delete mode 100644 examples/quick/dialogs/FileDialogs.qml create mode 100644 examples/quick/dialogs/colorandfiledialogs/ColorDialogs.qml create mode 100644 examples/quick/dialogs/colorandfiledialogs/FileDialogs.qml create mode 100644 examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.pro create mode 100644 examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.qrc create mode 100644 examples/quick/dialogs/colorandfiledialogs/dialogs.qml create mode 100644 examples/quick/dialogs/colorandfiledialogs/doc/images/qml-colorandfiledialogs-example.jpg create mode 100644 examples/quick/dialogs/colorandfiledialogs/doc/src/colorandfiledialogs.qdoc create mode 100644 examples/quick/dialogs/colorandfiledialogs/main.cpp delete mode 100644 examples/quick/dialogs/dialogs.qml delete mode 100644 examples/quick/dialogs/dialogs.qrc delete mode 100644 examples/quick/dialogs/main.cpp create mode 100644 src/imports/dialogs/doc/qtquickdialogs.qdocconf create mode 100644 src/imports/dialogs/doc/src/qtquickdialogs-examples.qdoc create mode 100644 src/imports/dialogs/doc/src/qtquickdialogs-index.qdoc diff --git a/examples/quick/dialogs/ColorDialogs.qml b/examples/quick/dialogs/ColorDialogs.qml deleted file mode 100644 index f3d253a..0000000 --- a/examples/quick/dialogs/ColorDialogs.qml +++ /dev/null @@ -1,143 +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 examples 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.0 -import QtQuick.Dialogs 1.0 -import "../shared" - -Rectangle { - width: 320 - height: 200 - color: palette.window - SystemPalette { id: palette } - clip: true - - ColorDialog { - id: colorDialog - visible: colorDialogVisible.checked - modality: colorDialogModal.checked ? Qt.WindowModal : Qt.NonModal - title: "Choose a color" - color: "green" - showAlphaChannel: colorDialogAlpha.checked - onAccepted: { console.log("Accepted: " + color) } - onRejected: { console.log("Rejected") } - } - - Column { - anchors.fill: parent - anchors.margins: 12 - spacing: 8 - Text { - font.bold: true - text: "Color dialog properties:" - } - CheckBox { - id: colorDialogModal - text: "Modal" - checked: true - Binding on checked { value: colorDialog.modality != Qt.NonModal } - } - CheckBox { - id: colorDialogAlpha - text: "Show alpha channel" - Binding on checked { value: colorDialog.showAlphaChannel } - } - CheckBox { - id: colorDialogVisible - text: "Visible" - Binding on checked { value: colorDialog.visible } - } - Row { - id: colorRow - spacing: parent.spacing - height: colorLabel.implicitHeight * 2.0 - Rectangle { - color: colorDialog.color - height: parent.height - width: height * 2 - border.color: "black" - MouseArea { - anchors.fill: parent - onClicked: colorDialog.open() - } - } - Text { - id: colorLabel - color: palette.windowText - text: "current color: " + colorDialog.color - anchors.verticalCenter: parent.verticalCenter - } - } - } - - Rectangle { - anchors { - left: parent.left - right: parent.right - bottom: parent.bottom - } - height: 50 - color: Qt.darker(palette.window, 1.1) - border.color: Qt.darker(palette.window, 1.3) - Row { - spacing: 6 - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - anchors.leftMargin: 12 - height: parent.height - 6 - width: parent.width - Button { - text: "Open" - anchors.verticalCenter: parent.verticalCenter - onClicked: colorDialog.open() - } - Button { - text: "Close" - anchors.verticalCenter: parent.verticalCenter - onClicked: colorDialog.close() - } - Button { - text: "set to green" - anchors.verticalCenter: parent.verticalCenter - onClicked: colorDialog.color = "green" - } - } - } -} diff --git a/examples/quick/dialogs/FileDialogs.qml b/examples/quick/dialogs/FileDialogs.qml deleted file mode 100644 index 8ed64b0..0000000 --- a/examples/quick/dialogs/FileDialogs.qml +++ /dev/null @@ -1,167 +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 examples 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.0 -import QtQuick.Dialogs 1.0 -import "../shared" - -Rectangle { - width: 580 - height: 400 - color: palette.window - SystemPalette { id: palette } - clip: true - - FileDialog { - id: fileDialog - visible: fileDialogVisible.checked - modality: fileDialogModal.checked ? Qt.WindowModal : Qt.NonModal - title: fileDialogSelectFolder.checked ? "Choose a folder" : - (fileDialogSelectMultiple.checked ? "Choose some files" : "Choose a file") - selectExisting: fileDialogSelectExisting.checked - selectMultiple: fileDialogSelectMultiple.checked - selectFolder: fileDialogSelectFolder.checked - nameFilters: [ "Image files (*.png *.jpg)", "All files (*)" ] - selectedNameFilter: "All files (*)" - onAccepted: { console.log("Accepted: " + fileUrls) } - onRejected: { console.log("Rejected") } - } - - Column { - anchors.fill: parent - anchors.margins: 12 - spacing: 8 - Text { - color: palette.windowText - font.bold: true - text: "File dialog properties:" - } - CheckBox { - id: fileDialogModal - text: "Modal" - checked: true - Binding on checked { value: fileDialog.modality != Qt.NonModal } - } - CheckBox { - id: fileDialogSelectFolder - text: "Select Folder" - Binding on checked { value: fileDialog.selectFolder } - } - CheckBox { - id: fileDialogSelectExisting - text: "Select Existing Files" - checked: true - Binding on checked { value: fileDialog.selectExisting } - } - CheckBox { - id: fileDialogSelectMultiple - text: "Select Multiple Files" - Binding on checked { value: fileDialog.selectMultiple } - } - CheckBox { - id: fileDialogVisible - text: "Visible" - Binding on checked { value: fileDialog.visible } - } - Text { - color: palette.windowText - text: "current view folder: " + fileDialog.folder - } - Text { - color: palette.windowText - text: "name filters: {" + fileDialog.nameFilters + "}" - width: parent.width - wrapMode: Text.Wrap - } - Text { - color: palette.windowText - text: "current filter:" + fileDialog.selectedNameFilter - width: parent.width - wrapMode: Text.Wrap - } - Text { - color: palette.windowText - text: "chosen files: " + fileDialog.fileUrls - width: parent.width - wrapMode: Text.Wrap - } - Text { - color: palette.windowText - text: "chosen single path: " + fileDialog.fileUrl - width: parent.width - wrapMode: Text.Wrap - } - } - - Rectangle { - anchors { - left: parent.left - right: parent.right - bottom: parent.bottom - } - height: 50 - color: Qt.darker(palette.window, 1.1) - border.color: Qt.darker(palette.window, 1.3) - Row { - spacing: 6 - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - anchors.leftMargin: 12 - height: parent.height - 6 - width: parent.width - Button { - text: "Open" - anchors.verticalCenter: parent.verticalCenter - onClicked: fileDialog.open() - } - Button { - text: "Close" - anchors.verticalCenter: parent.verticalCenter - onClicked: fileDialog.close() - } - Button { - text: "go to /tmp" - anchors.verticalCenter: parent.verticalCenter - // TODO: QTBUG-29814 This isn't portable, but we don't expose QDir::tempPath to QML yet. - onClicked: fileDialog.folder = "/tmp" - } - } - } -} diff --git a/examples/quick/dialogs/colorandfiledialogs/ColorDialogs.qml b/examples/quick/dialogs/colorandfiledialogs/ColorDialogs.qml new file mode 100644 index 0000000..6a0af7f --- /dev/null +++ b/examples/quick/dialogs/colorandfiledialogs/ColorDialogs.qml @@ -0,0 +1,145 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the examples 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.0 +import QtQuick.Dialogs 1.0 +import "../shared" + +Rectangle { + width: 320 + height: 200 + color: palette.window + SystemPalette { id: palette } + clip: true + + //! [colordialog] + ColorDialog { + id: colorDialog + visible: colorDialogVisible.checked + modality: colorDialogModal.checked ? Qt.WindowModal : Qt.NonModal + title: "Choose a color" + color: "green" + showAlphaChannel: colorDialogAlpha.checked + onAccepted: { console.log("Accepted: " + color) } + onRejected: { console.log("Rejected") } + } + //! [colordialog] + + Column { + anchors.fill: parent + anchors.margins: 12 + spacing: 8 + Text { + font.bold: true + text: "Color dialog properties:" + } + CheckBox { + id: colorDialogModal + text: "Modal" + checked: true + Binding on checked { value: colorDialog.modality != Qt.NonModal } + } + CheckBox { + id: colorDialogAlpha + text: "Show alpha channel" + Binding on checked { value: colorDialog.showAlphaChannel } + } + CheckBox { + id: colorDialogVisible + text: "Visible" + Binding on checked { value: colorDialog.visible } + } + Row { + id: colorRow + spacing: parent.spacing + height: colorLabel.implicitHeight * 2.0 + Rectangle { + color: colorDialog.color + height: parent.height + width: height * 2 + border.color: "black" + MouseArea { + anchors.fill: parent + onClicked: colorDialog.open() + } + } + Text { + id: colorLabel + color: palette.windowText + text: "current color: " + colorDialog.color + anchors.verticalCenter: parent.verticalCenter + } + } + } + + Rectangle { + anchors { + left: parent.left + right: parent.right + bottom: parent.bottom + } + height: 50 + color: Qt.darker(palette.window, 1.1) + border.color: Qt.darker(palette.window, 1.3) + Row { + spacing: 6 + anchors.verticalCenter: parent.verticalCenter + anchors.left: parent.left + anchors.leftMargin: 12 + height: parent.height - 6 + width: parent.width + Button { + text: "Open" + anchors.verticalCenter: parent.verticalCenter + onClicked: colorDialog.open() + } + Button { + text: "Close" + anchors.verticalCenter: parent.verticalCenter + onClicked: colorDialog.close() + } + Button { + text: "set to green" + anchors.verticalCenter: parent.verticalCenter + onClicked: colorDialog.color = "green" + } + } + } +} diff --git a/examples/quick/dialogs/colorandfiledialogs/FileDialogs.qml b/examples/quick/dialogs/colorandfiledialogs/FileDialogs.qml new file mode 100644 index 0000000..d127860 --- /dev/null +++ b/examples/quick/dialogs/colorandfiledialogs/FileDialogs.qml @@ -0,0 +1,169 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the examples 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.0 +import QtQuick.Dialogs 1.0 +import "../shared" + +Rectangle { + width: 580 + height: 400 + color: palette.window + SystemPalette { id: palette } + clip: true + + //! [filedialog] + FileDialog { + id: fileDialog + visible: fileDialogVisible.checked + modality: fileDialogModal.checked ? Qt.WindowModal : Qt.NonModal + title: fileDialogSelectFolder.checked ? "Choose a folder" : + (fileDialogSelectMultiple.checked ? "Choose some files" : "Choose a file") + selectExisting: fileDialogSelectExisting.checked + selectMultiple: fileDialogSelectMultiple.checked + selectFolder: fileDialogSelectFolder.checked + nameFilters: [ "Image files (*.png *.jpg)", "All files (*)" ] + selectedNameFilter: "All files (*)" + onAccepted: { console.log("Accepted: " + fileUrls) } + onRejected: { console.log("Rejected") } + } + //! [filedialog] + + Column { + anchors.fill: parent + anchors.margins: 12 + spacing: 8 + Text { + color: palette.windowText + font.bold: true + text: "File dialog properties:" + } + CheckBox { + id: fileDialogModal + text: "Modal" + checked: true + Binding on checked { value: fileDialog.modality != Qt.NonModal } + } + CheckBox { + id: fileDialogSelectFolder + text: "Select Folder" + Binding on checked { value: fileDialog.selectFolder } + } + CheckBox { + id: fileDialogSelectExisting + text: "Select Existing Files" + checked: true + Binding on checked { value: fileDialog.selectExisting } + } + CheckBox { + id: fileDialogSelectMultiple + text: "Select Multiple Files" + Binding on checked { value: fileDialog.selectMultiple } + } + CheckBox { + id: fileDialogVisible + text: "Visible" + Binding on checked { value: fileDialog.visible } + } + Text { + color: palette.windowText + text: "current view folder: " + fileDialog.folder + } + Text { + color: palette.windowText + text: "name filters: {" + fileDialog.nameFilters + "}" + width: parent.width + wrapMode: Text.Wrap + } + Text { + color: palette.windowText + text: "current filter:" + fileDialog.selectedNameFilter + width: parent.width + wrapMode: Text.Wrap + } + Text { + color: palette.windowText + text: "chosen files: " + fileDialog.fileUrls + width: parent.width + wrapMode: Text.Wrap + } + Text { + color: palette.windowText + text: "chosen single path: " + fileDialog.fileUrl + width: parent.width + wrapMode: Text.Wrap + } + } + + Rectangle { + anchors { + left: parent.left + right: parent.right + bottom: parent.bottom + } + height: 50 + color: Qt.darker(palette.window, 1.1) + border.color: Qt.darker(palette.window, 1.3) + Row { + spacing: 6 + anchors.verticalCenter: parent.verticalCenter + anchors.left: parent.left + anchors.leftMargin: 12 + height: parent.height - 6 + width: parent.width + Button { + text: "Open" + anchors.verticalCenter: parent.verticalCenter + onClicked: fileDialog.open() + } + Button { + text: "Close" + anchors.verticalCenter: parent.verticalCenter + onClicked: fileDialog.close() + } + Button { + text: "go to /tmp" + anchors.verticalCenter: parent.verticalCenter + // TODO: QTBUG-29814 This isn't portable, but we don't expose QDir::tempPath to QML yet. + onClicked: fileDialog.folder = "/tmp" + } + } + } +} diff --git a/examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.pro b/examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.pro new file mode 100644 index 0000000..3a7b25c --- /dev/null +++ b/examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.pro @@ -0,0 +1,17 @@ +TEMPLATE = app + +QT += quick qml +SOURCES += main.cpp +RESOURCES += colorandfiledialogs.qrc ../../shared/shared.qrc + +OTHER_FILES += \ + dialogs.qml \ + FileDialogs.qml \ + ColorDialogs.qml + +EXAMPLE_FILES = \ + FileDialogs.qml \ + ColorDialogs.qml + +target.path = $$[QT_INSTALL_EXAMPLES]/quick/dialogs +INSTALLS += target diff --git a/examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.qrc b/examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.qrc new file mode 100644 index 0000000..efebfe4 --- /dev/null +++ b/examples/quick/dialogs/colorandfiledialogs/colorandfiledialogs.qrc @@ -0,0 +1,7 @@ + + + dialogs.qml + FileDialogs.qml + ColorDialogs.qml + + diff --git a/examples/quick/dialogs/colorandfiledialogs/dialogs.qml b/examples/quick/dialogs/colorandfiledialogs/dialogs.qml new file mode 100644 index 0000000..b5f9841 --- /dev/null +++ b/examples/quick/dialogs/colorandfiledialogs/dialogs.qml @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the examples 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.0 +import "../shared" + +TabSet { + width: 580 + height: 440 + + FileDialogs { + property string title: "File Dialog" + anchors.fill: parent + color: "#e3e3e3" // to match tab.png + } + + ColorDialogs { + property string title: "Color Dialog" + anchors.fill: parent + color: "#e3e3e3" // to match tab.png + } +} diff --git a/examples/quick/dialogs/colorandfiledialogs/doc/images/qml-colorandfiledialogs-example.jpg b/examples/quick/dialogs/colorandfiledialogs/doc/images/qml-colorandfiledialogs-example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4517a39308a3e5015a2e8329e44865edb56a50fd GIT binary patch literal 47413 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 - - dialogs.qml - FileDialogs.qml - ColorDialogs.qml - - diff --git a/examples/quick/dialogs/main.cpp b/examples/quick/dialogs/main.cpp deleted file mode 100644 index bbf0c48..0000000 --- a/examples/quick/dialogs/main.cpp +++ /dev/null @@ -1,41 +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 examples 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$ -** -****************************************************************************/ -#include "../shared/shared.h" -DECLARATIVE_EXAMPLE_MAIN(dialogs/dialogs) diff --git a/src/imports/dialogs/dialogs.pro b/src/imports/dialogs/dialogs.pro index b7704da..53cad30 100644 --- a/src/imports/dialogs/dialogs.pro +++ b/src/imports/dialogs/dialogs.pro @@ -3,6 +3,8 @@ TARGET = dialogplugin TARGETPATH = QtQuick/Dialogs IMPORT_VERSION = 1.0 +QMAKE_DOCS = $$PWD/doc/qtquickdialogs.qdocconf + SOURCES += \ qquickabstractfiledialog.cpp \ qquickplatformfiledialog.cpp \ diff --git a/src/imports/dialogs/doc/qtquickdialogs.qdocconf b/src/imports/dialogs/doc/qtquickdialogs.qdocconf new file mode 100644 index 0000000..8a4435c --- /dev/null +++ b/src/imports/dialogs/doc/qtquickdialogs.qdocconf @@ -0,0 +1,35 @@ +include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf) + +project = QtQuickDialogs +description = Qt Quick Dialogs Reference Documentation +url = http://qt-project.org/doc/qt-$QT_VER/qtquickdialogs/ +version = $QT_VERSION + +qhp.projects = qtquickdialogs + +qhp.qtquickdialogs.file = qtquickdialogs.qhp +qhp.qtquickdialogs.namespace = org.qt-project.qtquickdialogs.$QT_VERSION_TAG +qhp.qtquickdialogs.virtualFolder = qtquickdialogs +qhp.qtquickdialogs.indexTitle = Qt Quick Dialogs +qhp.qtquickdialogs.indexRoot = + +qhp.qtquickdialogs.filterAttributes = qtquickdialogs $QT_VERSION qtrefdoc +qhp.qtquickdialogs.customFilters.Qt.name = QtQuickDialogs $QT_VERSION +qhp.qtquickdialogs.customFilters.Qt.filterAttributes = qtquickdialogs $QT_VERSION + +qhp.qtquickdialogs.subprojects = qtquickdialogsqmltypes +qhp.qtquickdialogs.subprojects.qtquickdialogsqmltypes.title = QML Types +qhp.qtquickdialogs.subprojects.qtquickdialogsqmltypes.indexTitle = Qt Quick Dialogs +qhp.qtquickdialogs.subprojects.qtquickdialogsqmltypes.selectors = class fake:headerfile +qhp.qtquickdialogs.subprojects.qtquickdialogsqmltypes.sortPages = true +qhp.qtquickdialogs.subprojects.qtquickdialogsqmltypes.type = manual + +depends = qtqml qtquick qtgui qtwidgets qtdoc + +exampledirs += ../../../../examples/quick/ + +headerdirs += ../ + +sourcedirs += ../ + +imagedirs += images diff --git a/src/imports/dialogs/doc/src/qtquickdialogs-examples.qdoc b/src/imports/dialogs/doc/src/qtquickdialogs-examples.qdoc new file mode 100644 index 0000000..ee277f4 --- /dev/null +++ b/src/imports/dialogs/doc/src/qtquickdialogs-examples.qdoc @@ -0,0 +1,36 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: http://www.gnu.org/copyleft/fdl.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \group qtquickdialog_examples + \ingroup qtquickexamples + \title Qt Quick Examples - Dialogs + \brief A Collection of examples for \l{Qt Quick Dialogs}, written in QML. + + These examples show how to use the \l{Qt Quick Dialogs}. +*/ + diff --git a/src/imports/dialogs/doc/src/qtquickdialogs-index.qdoc b/src/imports/dialogs/doc/src/qtquickdialogs-index.qdoc new file mode 100644 index 0000000..5a1223b --- /dev/null +++ b/src/imports/dialogs/doc/src/qtquickdialogs-index.qdoc @@ -0,0 +1,58 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** 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 Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: http://www.gnu.org/copyleft/fdl.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \group dialogs + \title Dialogs +*/ + +/*! + \page qtquickdialogs-index.html + \title Qt Quick Dialogs + + \brief Qt Quick Dialogs submodule + + The module is new in Qt 5.1. + + \section1 Dialogs + + \annotatedlist dialogs + + \section1 Related information + + \section2 Examples + \list + \li \l{Qt Quick Examples - Dialogs}{Dialogs Examples} + \endlist + + \section2 Reference + \list + \li \l{Qt Quick Dialogs QML Types}{QML Types} + \endlist + +*/ + diff --git a/src/imports/dialogs/plugin.cpp b/src/imports/dialogs/plugin.cpp index bee0ee0..5502a65 100644 --- a/src/imports/dialogs/plugin.cpp +++ b/src/imports/dialogs/plugin.cpp @@ -55,33 +55,6 @@ QT_BEGIN_NAMESPACE - -/*! - \group dialogs - \title Dialogs -*/ - -/*! - \page qtquickdialogs-index.html - \title Qt Quick Dialogs - - \brief Qt Quick Dialogs submodule - - The submodule is new in Qt 5.1. - - \section1 Dialogs - - \annotatedlist dialogs - - \section1 Related information - - \section2 Reference - \list - \li \l{Qt Quick Dialogs QML Types}{Qt Quick Dialogs QML Types} - \endlist - -*/ - /*! \qmlmodule QtQuick.Dialogs 1 \title Qt Quick Dialogs QML Types diff --git a/src/quick/doc/src/qtquick.qdoc b/src/quick/doc/src/qtquick.qdoc index 7163baa..0a4d276 100644 --- a/src/quick/doc/src/qtquick.qdoc +++ b/src/quick/doc/src/qtquick.qdoc @@ -125,7 +125,7 @@ Additional Qt Quick information: system for Qt Quick \li \l{QtQuick.Window 2}{Window} - contains types for creating top-level windows and accessing screen information - \li \l{QtQuick.Dialogs 1}{Dialogs} - contains types for creating and + \li \l{Qt Quick Dialogs}{Dialogs} - contains types for creating and interacting with system dialogs \endlist \li \l{Qt Quick Release Notes} - list of changes and additions in the Qt Quick -- 1.7.2.5