diff options
author | Liang Qi <liang.qi@qt.io> | 2016-11-26 12:52:00 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-11-26 12:52:00 +0100 |
commit | f89a45187fc367d3932ba69cd708263fcaff8356 (patch) | |
tree | 332154be0206c04bb789ae476ad16b30237bf10a | |
parent | d72a0b44812c38fc3ba9dd5b3deb87796b5c338a (diff) | |
parent | 6d57918ce6c45b811c3a71e320b318222c7846b1 (diff) | |
download | qtactiveqt-f89a45187fc367d3932ba69cd708263fcaff8356.tar.gz |
Merge remote-tracking branch 'origin/5.7' into 5.8
Change-Id: I80198f4338b8930811f65b56626ad3a0dda84b5b
-rw-r--r-- | dist/changes-5.7.1 | 24 | ||||
-rw-r--r-- | examples/activeqt/activeqt.pro | 1 | ||||
-rw-r--r-- | examples/activeqt/simple/main.cpp | 2 | ||||
-rw-r--r-- | examples/activeqt/simpleqml/main.cpp | 120 | ||||
-rw-r--r-- | examples/activeqt/simpleqml/main.qml | 68 | ||||
-rw-r--r-- | examples/activeqt/simpleqml/simpleqml.def | 8 | ||||
-rw-r--r-- | examples/activeqt/simpleqml/simpleqml.ico | bin | 0 -> 766 bytes | |||
-rw-r--r-- | examples/activeqt/simpleqml/simpleqml.pro | 15 | ||||
-rw-r--r-- | examples/activeqt/simpleqml/simpleqml.qrc | 5 | ||||
-rw-r--r-- | examples/activeqt/simpleqml/simpleqml.rc | 2 | ||||
-rw-r--r-- | src/activeqt/control/qaxserver.cpp | 8 | ||||
-rw-r--r-- | sync.profile | 10 |
12 files changed, 248 insertions, 15 deletions
diff --git a/dist/changes-5.7.1 b/dist/changes-5.7.1 new file mode 100644 index 0000000..c9480b0 --- /dev/null +++ b/dist/changes-5.7.1 @@ -0,0 +1,24 @@ +Qt 5.7.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.7.0. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + +http://doc.qt.io/qt-5/index.html + +The Qt version 5.7 series is binary compatible with the 5.6.x series. +Applications compiled for 5.6 will continue to run with 5.7. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + +https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* Library * +**************************************************************************** + + - This release contains only minor code improvements. diff --git a/examples/activeqt/activeqt.pro b/examples/activeqt/activeqt.pro index dcfdb81..97b22bd 100644 --- a/examples/activeqt/activeqt.pro +++ b/examples/activeqt/activeqt.pro @@ -8,6 +8,7 @@ SUBDIRS += comapp \ contains(QT_CONFIG, shared):SUBDIRS += webbrowser contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2): SUBDIRS += opengl +qtHaveModule(quickcontrols2):SUBDIRS += simpleqml # For now only the contain examples with mingw, for the others you need # an IDL compiler diff --git a/examples/activeqt/simple/main.cpp b/examples/activeqt/simple/main.cpp index 49d7b2a..4e855b3 100644 --- a/examples/activeqt/simple/main.cpp +++ b/examples/activeqt/simple/main.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. +** Copyright (C) 2016 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the examples of the Qt Toolkit. diff --git a/examples/activeqt/simpleqml/main.cpp b/examples/activeqt/simpleqml/main.cpp new file mode 100644 index 0000000..8983b22 --- /dev/null +++ b/examples/activeqt/simpleqml/main.cpp @@ -0,0 +1,120 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** 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 The Qt Company Ltd 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 <QAxBindable> +#include <QAxFactory> +#include <QMainWindow> +#include <QQuickWidget> +#include <QQmlContext> + +class Controller : public QObject +{ + Q_OBJECT + Q_PROPERTY(qreal value READ value WRITE setValue NOTIFY valueChanged) + Q_PROPERTY(QColor color READ color NOTIFY valueChanged) +public: + explicit Controller(QWidget *parent = 0) : + QObject(parent), + m_value(0) + { } + + qreal value() const { return m_value; } + + void setValue(qreal value) + { + if (value < 0) value = 0; + if (value > 1) value = 1; + + m_value = value; + valueChanged(); + } + + QColor color() const + { + QColor start = Qt::yellow; + QColor end = Qt::magenta; + + // Linear interpolation between two colors in HSV space + return QColor::fromHsvF( + start.hueF() * (1.0f - m_value) + end.hueF() * m_value, + start.saturationF() * (1.0f - m_value) + end.saturationF() * m_value, + start.valueF() * (1.0f - m_value) + end.valueF() * m_value, + start.alphaF() * (1.0f - m_value) + end.alphaF() * m_value + ); + } + +signals: + void valueChanged(); + +private: + qreal m_value; +}; + +class QSimpleQmlAx : public QMainWindow +{ + Q_OBJECT + Q_CLASSINFO("ClassID", "{50477337-58FE-4898-8FFC-6F6199CEAE08}") + Q_CLASSINFO("InterfaceID", "{A5EC7D99-CEC9-4BD1-8336-ED15A579B185}") + Q_CLASSINFO("EventsID", "{5BBFBCFD-20FD-48A3-96C7-1F6649CD1F52}") +public: + explicit QSimpleQmlAx(QWidget *parent = 0) : + QMainWindow(parent) + { + auto ui = new QQuickWidget(this); + + // Register our type to qml + qmlRegisterType<Controller>("app", 1, 0, "Controller"); + + // Initialize view + ui->rootContext()->setContextProperty("context", QVariant::fromValue(new Controller(this))); + ui->setMinimumSize(200, 200); + ui->setResizeMode(QQuickWidget::SizeRootObjectToView); + ui->setSource(QUrl("qrc:/main.qml")); + setCentralWidget(ui); + } +}; + +#include "main.moc" + +QAXFACTORY_BEGIN( + "{E544E321-EF8B-4CD4-91F6-DB55A59DBADB}", // type library ID + "{E37E3131-DEA2-44EB-97A2-01CDD09A5A4D}") // application ID + QAXCLASS(QSimpleQmlAx) +QAXFACTORY_END() diff --git a/examples/activeqt/simpleqml/main.qml b/examples/activeqt/simpleqml/main.qml new file mode 100644 index 0000000..cb75da2 --- /dev/null +++ b/examples/activeqt/simpleqml/main.qml @@ -0,0 +1,68 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** 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 The Qt Company Ltd 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.5 +import QtQuick.Controls 2.0 + +import app 1.0 + +Rectangle { + // Properties from context + property Controller controller: context + + color: controller.color + + Label { + id: idText + text: "Color slider" + anchors.top: parent.top + anchors.left: parent.left + color: "black" + font.pixelSize: 12 + } + + Slider { + value: controller.value + onVisualPositionChanged: controller.value = visualPosition + + anchors.top: idText.bottom + anchors.left: parent.left + } +} diff --git a/examples/activeqt/simpleqml/simpleqml.def b/examples/activeqt/simpleqml/simpleqml.def new file mode 100644 index 0000000..b6ede3c --- /dev/null +++ b/examples/activeqt/simpleqml/simpleqml.def @@ -0,0 +1,8 @@ +; simpleqml.def : Declares the module parameters. + +EXPORTS + DllCanUnloadNow PRIVATE + DllGetClassObject PRIVATE + DllRegisterServer PRIVATE + DllUnregisterServer PRIVATE + DumpIDL PRIVATE diff --git a/examples/activeqt/simpleqml/simpleqml.ico b/examples/activeqt/simpleqml/simpleqml.ico Binary files differnew file mode 100644 index 0000000..c80d36a --- /dev/null +++ b/examples/activeqt/simpleqml/simpleqml.ico diff --git a/examples/activeqt/simpleqml/simpleqml.pro b/examples/activeqt/simpleqml/simpleqml.pro new file mode 100644 index 0000000..9043e9d --- /dev/null +++ b/examples/activeqt/simpleqml/simpleqml.pro @@ -0,0 +1,15 @@ +include(../shared.pri) + +TEMPLATE = lib +TARGET = simpleqmlax + +QT += widgets axserver quick quickwidgets + +SOURCES = main.cpp +RC_FILE = simpleqml.rc +DEF_FILE = simpleqml.def +RESOURCES = simpleqml.qrc + +# install +target.path = $$[QT_INSTALL_EXAMPLES]/activeqt/simpleqml +INSTALLS += target diff --git a/examples/activeqt/simpleqml/simpleqml.qrc b/examples/activeqt/simpleqml/simpleqml.qrc new file mode 100644 index 0000000..5f6483a --- /dev/null +++ b/examples/activeqt/simpleqml/simpleqml.qrc @@ -0,0 +1,5 @@ +<RCC> + <qresource prefix="/"> + <file>main.qml</file> + </qresource> +</RCC> diff --git a/examples/activeqt/simpleqml/simpleqml.rc b/examples/activeqt/simpleqml/simpleqml.rc new file mode 100644 index 0000000..7a6d549 --- /dev/null +++ b/examples/activeqt/simpleqml/simpleqml.rc @@ -0,0 +1,2 @@ +1 TYPELIB "simpleqml.rc" +1 ICON DISCARDABLE "simpleqml.ico" diff --git a/src/activeqt/control/qaxserver.cpp b/src/activeqt/control/qaxserver.cpp index b02c38b..35a32dd 100644 --- a/src/activeqt/control/qaxserver.cpp +++ b/src/activeqt/control/qaxserver.cpp @@ -490,10 +490,10 @@ static const char* const type_map[][2] = { "QVariant", "VARIANT" }, { "QVariantList", "SAFEARRAY(VARIANT)" }, { "QList<QVariant>", "SAFEARRAY(VARIANT)" }, - { "quint64", "CY" }, - { "qint64", "CY" }, - { "qulonglong", "CY" }, - { "qlonglong", "CY" }, + { "quint64", "unsigned hyper" }, + { "qint64", "hyper" }, + { "qulonglong", "unsigned hyper" }, + { "qlonglong", "hyper" }, { "QByteArray", "SAFEARRAY(BYTE)" }, { "QStringList", "SAFEARRAY(BSTR)" }, // Userdefined Qt datatypes - some not on Borland though diff --git a/sync.profile b/sync.profile index 78706bf..15b0fdf 100644 --- a/sync.profile +++ b/sync.profile @@ -5,13 +5,3 @@ ); %classnames = ( ); -# Module dependencies. -# Every module that is required to build this module should have one entry. -# Each of the module version specifiers can take one of the following values: -# - A specific Git revision. -# - any git symbolic ref resolvable from the module's repository (e.g. "refs/heads/master" to track master branch) -# - an empty string to use the same branch under test (dependencies will become "refs/heads/master" if we are in the master branch) -# -%dependencies = ( - "qtbase" => "", -); |