diff options
-rw-r--r-- | .qmake.conf | 2 | ||||
-rw-r--r-- | dependencies.yaml | 10 | ||||
-rw-r--r-- | src/imports/winextras/plugin.cpp | 4 | ||||
-rw-r--r-- | src/imports/winextras/qquickjumplist_p.h | 2 | ||||
-rw-r--r-- | src/imports/winextras/qquickjumplistcategory.cpp | 4 | ||||
-rw-r--r-- | src/imports/winextras/qquickjumplistcategory_p.h | 2 | ||||
-rw-r--r-- | src/winextras/qwinjumplist.cpp | 12 | ||||
-rw-r--r-- | src/winextras/qwinjumplist.h | 4 | ||||
-rw-r--r-- | src/winextras/qwinjumplist_p.h | 8 | ||||
-rw-r--r-- | src/winextras/qwinjumplistcategory.cpp | 2 | ||||
-rw-r--r-- | src/winextras/qwinjumplistcategory.h | 2 | ||||
-rw-r--r-- | src/winextras/qwinjumplistcategory_p.h | 2 | ||||
-rw-r--r-- | src/winextras/qwinthumbnailtoolbar.cpp | 8 | ||||
-rw-r--r-- | src/winextras/qwinthumbnailtoolbar.h | 4 | ||||
-rw-r--r-- | src/winextras/qwinthumbnailtoolbar_p.h | 2 | ||||
-rw-r--r-- | tests/auto/qwinjumplist/tst_qwinjumplist.cpp | 8 | ||||
-rw-r--r-- | tests/auto/qwinthumbnailtoolbar/tst_qwinthumbnailtoolbar.cpp | 2 | ||||
-rw-r--r-- | tests/manual/imageconversion/main.cpp | 27 | ||||
-rw-r--r-- | tests/manual/jumplist/testwidget.cpp | 2 |
19 files changed, 65 insertions, 42 deletions
diff --git a/.qmake.conf b/.qmake.conf index f0511dd..34387e8 100644 --- a/.qmake.conf +++ b/.qmake.conf @@ -2,4 +2,4 @@ load(qt_build_config) DEFINES += QT_NO_FOREACH -MODULE_VERSION = 5.15.0 +MODULE_VERSION = 6.0.0 diff --git a/dependencies.yaml b/dependencies.yaml new file mode 100644 index 0000000..565c2b0 --- /dev/null +++ b/dependencies.yaml @@ -0,0 +1,10 @@ +dependencies: + ../qtbase: + ref: e0b89899e3c505edbdece60d6a2d2368a7ef9a01 + required: true + ../qtdeclarative: + ref: dbc6b9bfc7e6f1c7e212460105b426b8e80db671 + required: false + ../qtmultimedia: + ref: f74a4ea5cd7bef33892fa5f45ae7918e0e7a17b7 + required: false diff --git a/src/imports/winextras/plugin.cpp b/src/imports/winextras/plugin.cpp index 41b3fe8..eadf357 100644 --- a/src/imports/winextras/plugin.cpp +++ b/src/imports/winextras/plugin.cpp @@ -61,7 +61,9 @@ public: void registerTypes(const char *uri) Q_DECL_OVERRIDE { Q_ASSERT(uri == QLatin1String("QtWinExtras")); - qmlRegisterModule(uri, 1, QT_VERSION_MINOR); + // The minor version used to be the current Qt 5 minor. For compatibility it is the last + // Qt 5 release. + qmlRegisterModule(uri, 1, 15); qmlRegisterUncreatableType<QQuickWin>(uri, 1, 0, "QtWin", "Cannot create an instance of the QtWin namespace."); qmlRegisterType<QQuickDwmFeatures>(uri, 1, 0, "DwmFeatures"); qmlRegisterType<QQuickTaskbarButton>(uri, 1, 0, "TaskbarButton"); diff --git a/src/imports/winextras/qquickjumplist_p.h b/src/imports/winextras/qquickjumplist_p.h index 7b475be..67c43f0 100644 --- a/src/imports/winextras/qquickjumplist_p.h +++ b/src/imports/winextras/qquickjumplist_p.h @@ -52,6 +52,8 @@ // We mean it. // +#include "qquickjumplistcategory_p.h" + #include <QObject> #include <QQmlParserStatus> #include <QQmlListProperty> diff --git a/src/imports/winextras/qquickjumplistcategory.cpp b/src/imports/winextras/qquickjumplistcategory.cpp index 30183f4..8a578ed 100644 --- a/src/imports/winextras/qquickjumplistcategory.cpp +++ b/src/imports/winextras/qquickjumplistcategory.cpp @@ -122,9 +122,9 @@ void QQuickJumpListCategory::setVisible(bool visible) } } -QList<QWinJumpListItem *> QQuickJumpListCategory::toItemList() const +QVector<QWinJumpListItem *> QQuickJumpListCategory::toItemList() const { - QList<QWinJumpListItem *> items; + QVector<QWinJumpListItem *> items; for (QQuickJumpListItem *item : m_items) items.append(item->toJumpListItem()); return items; diff --git a/src/imports/winextras/qquickjumplistcategory_p.h b/src/imports/winextras/qquickjumplistcategory_p.h index 19fb65a..1028fcd 100644 --- a/src/imports/winextras/qquickjumplistcategory_p.h +++ b/src/imports/winextras/qquickjumplistcategory_p.h @@ -84,7 +84,7 @@ public: QQmlListProperty<QObject> data(); QQmlListProperty<QQuickJumpListItem> items(); - QList<QWinJumpListItem *> toItemList() const; + QVector<QWinJumpListItem *> toItemList() const; Q_SIGNALS: void itemsChanged(); diff --git a/src/winextras/qwinjumplist.cpp b/src/winextras/qwinjumplist.cpp index f479096..78efbff 100644 --- a/src/winextras/qwinjumplist.cpp +++ b/src/winextras/qwinjumplist.cpp @@ -217,7 +217,7 @@ void QWinJumpListPrivate::appendCustomCategory(QWinJumpListCategory *category) } } -void QWinJumpListPrivate::appendTasks(const QList<QWinJumpListItem *> &items) +void QWinJumpListPrivate::appendTasks(const QVector<QWinJumpListItem *> &items) { IObjectCollection *collection = toComCollection(items); if (collection) { @@ -228,9 +228,9 @@ void QWinJumpListPrivate::appendTasks(const QList<QWinJumpListItem *> &items) } } -QList<QWinJumpListItem *> QWinJumpListPrivate::fromComCollection(IObjectArray *array) +QVector<QWinJumpListItem *> QWinJumpListPrivate::fromComCollection(IObjectArray *array) { - QList<QWinJumpListItem *> list; + QVector<QWinJumpListItem *> list; UINT count = 0; array->GetCount(&count); for (UINT i = 0; i < count; ++i) { @@ -259,7 +259,7 @@ QList<QWinJumpListItem *> QWinJumpListPrivate::fromComCollection(IObjectArray *a return list; } -IObjectCollection *QWinJumpListPrivate::toComCollection(const QList<QWinJumpListItem *> &list) +IObjectCollection *QWinJumpListPrivate::toComCollection(const QVector<QWinJumpListItem *> &list) { if (list.isEmpty()) return nullptr; @@ -531,7 +531,7 @@ QWinJumpListCategory *QWinJumpList::tasks() const /*! Returns the custom categories in the jump list. */ -QList<QWinJumpListCategory *> QWinJumpList::categories() const +QVector<QWinJumpListCategory *> QWinJumpList::categories() const { Q_D(const QWinJumpList); return d->categories; @@ -556,7 +556,7 @@ void QWinJumpList::addCategory(QWinJumpListCategory *category) Creates a custom category with provided \a title and optional \a items, and adds it to the jump list. */ -QWinJumpListCategory *QWinJumpList::addCategory(const QString &title, const QList<QWinJumpListItem *> items) +QWinJumpListCategory *QWinJumpList::addCategory(const QString &title, const QVector<QWinJumpListItem *> items) { auto *category = new QWinJumpListCategory(title); for (QWinJumpListItem *item : items) diff --git a/src/winextras/qwinjumplist.h b/src/winextras/qwinjumplist.h index b4807dd..cb16228 100644 --- a/src/winextras/qwinjumplist.h +++ b/src/winextras/qwinjumplist.h @@ -68,9 +68,9 @@ public: QWinJumpListCategory *frequent() const; QWinJumpListCategory *tasks() const; - QList<QWinJumpListCategory *> categories() const; + QVector<QWinJumpListCategory *> categories() const; void addCategory(QWinJumpListCategory *category); - QWinJumpListCategory *addCategory(const QString &title, const QList<QWinJumpListItem *> items = QList<QWinJumpListItem *>()); + QWinJumpListCategory *addCategory(const QString &title, const QVector<QWinJumpListItem *> items = QVector<QWinJumpListItem *>()); public Q_SLOTS: void clear(); diff --git a/src/winextras/qwinjumplist_p.h b/src/winextras/qwinjumplist_p.h index ff54f96..2704d29 100644 --- a/src/winextras/qwinjumplist_p.h +++ b/src/winextras/qwinjumplist_p.h @@ -79,10 +79,10 @@ public: void appendKnownCategory(KNOWNDESTCATEGORY category); void appendCustomCategory(QWinJumpListCategory *category); - void appendTasks(const QList<QWinJumpListItem *> &items); + void appendTasks(const QVector<QWinJumpListItem *> &items); - static QList<QWinJumpListItem *> fromComCollection(IObjectArray *array); - static IObjectCollection *toComCollection(const QList<QWinJumpListItem *> &list); + static QVector<QWinJumpListItem *> fromComCollection(IObjectArray *array); + static IObjectCollection *toComCollection(const QVector<QWinJumpListItem *> &list); static QWinJumpListItem *fromIShellLink(IShellLinkW *link); static QWinJumpListItem *fromIShellItem(IShellItem2 *shellitem); static IUnknown *toICustomDestinationListItem(const QWinJumpListItem *item); @@ -95,7 +95,7 @@ public: QWinJumpListCategory *recent = nullptr; QWinJumpListCategory *frequent = nullptr; QWinJumpListCategory *tasks = nullptr; - QList<QWinJumpListCategory *> categories; + QVector<QWinJumpListCategory *> categories; QString identifier; bool dirty = false; }; diff --git a/src/winextras/qwinjumplistcategory.cpp b/src/winextras/qwinjumplistcategory.cpp index a29c37e..b087d25 100644 --- a/src/winextras/qwinjumplistcategory.cpp +++ b/src/winextras/qwinjumplistcategory.cpp @@ -253,7 +253,7 @@ bool QWinJumpListCategory::isEmpty() const /*! Returns the list of items in the category. */ -QList<QWinJumpListItem *> QWinJumpListCategory::items() const +QVector<QWinJumpListItem *> QWinJumpListCategory::items() const { Q_D(const QWinJumpListCategory); return d->items; diff --git a/src/winextras/qwinjumplistcategory.h b/src/winextras/qwinjumplistcategory.h index d063cc2..88d7fe4 100644 --- a/src/winextras/qwinjumplistcategory.h +++ b/src/winextras/qwinjumplistcategory.h @@ -74,7 +74,7 @@ public: int count() const; bool isEmpty() const; - QList<QWinJumpListItem *> items() const; + QVector<QWinJumpListItem *> items() const; void addItem(QWinJumpListItem *item); QWinJumpListItem *addDestination(const QString &filePath); diff --git a/src/winextras/qwinjumplistcategory_p.h b/src/winextras/qwinjumplistcategory_p.h index eee17b4..c2d0353 100644 --- a/src/winextras/qwinjumplistcategory_p.h +++ b/src/winextras/qwinjumplistcategory_p.h @@ -77,7 +77,7 @@ public: QString title; QWinJumpList *jumpList = nullptr; QWinJumpListCategory::Type type = QWinJumpListCategory::Custom; - QList<QWinJumpListItem *> items; + QVector<QWinJumpListItem *> items; }; QT_END_NAMESPACE diff --git a/src/winextras/qwinthumbnailtoolbar.cpp b/src/winextras/qwinthumbnailtoolbar.cpp index fc8d76e..ef76bb5 100644 --- a/src/winextras/qwinthumbnailtoolbar.cpp +++ b/src/winextras/qwinthumbnailtoolbar.cpp @@ -199,7 +199,7 @@ void QWinThumbnailToolBar::removeButton(QWinThumbnailToolButton *button) \note Any existing buttons are replaced. */ -void QWinThumbnailToolBar::setButtons(const QList<QWinThumbnailToolButton *> &buttons) +void QWinThumbnailToolBar::setButtons(const QVector<QWinThumbnailToolButton *> &buttons) { Q_D(QWinThumbnailToolBar); d->buttonList.clear(); @@ -211,7 +211,7 @@ void QWinThumbnailToolBar::setButtons(const QList<QWinThumbnailToolButton *> &bu /*! Returns the list of buttons in the thumbnail toolbar. */ -QList<QWinThumbnailToolButton *> QWinThumbnailToolBar::buttons() const +QVector<QWinThumbnailToolButton *> QWinThumbnailToolBar::buttons() const { Q_D(const QWinThumbnailToolBar); return d->buttonList; @@ -416,7 +416,7 @@ inline void QWinThumbnailToolBarPrivate::updateIconicLivePreview(const MSG *mess */ void QWinThumbnailToolBar::clear() { - setButtons(QList<QWinThumbnailToolButton *>()); + setButtons(QVector<QWinThumbnailToolButton *>()); } static inline ITaskbarList4 *createTaskbarList() @@ -492,7 +492,7 @@ void QWinThumbnailToolBarPrivate::_q_updateToolbar() if (!pTbList || !window) return; THUMBBUTTON buttons[windowsLimitedThumbbarSize]; - QList<HICON> createdIcons; + QVector<HICON> createdIcons; initButtons(buttons); const int thumbbarSize = qMin(buttonList.size(), windowsLimitedThumbbarSize); // filling from the right fixes some strange bug which makes last button bg look like first btn bg diff --git a/src/winextras/qwinthumbnailtoolbar.h b/src/winextras/qwinthumbnailtoolbar.h index 83e2f2b..54ed9ec 100644 --- a/src/winextras/qwinthumbnailtoolbar.h +++ b/src/winextras/qwinthumbnailtoolbar.h @@ -69,8 +69,8 @@ public: void addButton(QWinThumbnailToolButton *button); void removeButton(QWinThumbnailToolButton *button); - void setButtons(const QList<QWinThumbnailToolButton *> &buttons); - QList<QWinThumbnailToolButton *> buttons() const; + void setButtons(const QVector<QWinThumbnailToolButton *> &buttons); + QVector<QWinThumbnailToolButton *> buttons() const; int count() const; bool iconicPixmapNotificationsEnabled() const; diff --git a/src/winextras/qwinthumbnailtoolbar_p.h b/src/winextras/qwinthumbnailtoolbar_p.h index c3180f3..f331daa 100644 --- a/src/winextras/qwinthumbnailtoolbar_p.h +++ b/src/winextras/qwinthumbnailtoolbar_p.h @@ -107,7 +107,7 @@ public: static QString msgComFailed(const char *function, HRESULT hresult); bool updateScheduled = false; - QList<QWinThumbnailToolButton *> buttonList; + QVector<QWinThumbnailToolButton *> buttonList; QWindow *window = nullptr; ITaskbarList4 * const pTbList; diff --git a/tests/auto/qwinjumplist/tst_qwinjumplist.cpp b/tests/auto/qwinjumplist/tst_qwinjumplist.cpp index 4676524..061b2ce 100644 --- a/tests/auto/qwinjumplist/tst_qwinjumplist.cpp +++ b/tests/auto/qwinjumplist/tst_qwinjumplist.cpp @@ -172,7 +172,7 @@ void tst_QWinJumpList::testTasks() QCOMPARE(link1->title(), QStringLiteral("tst_QWinJumpList")); QCOMPARE(link1->filePath(), QCoreApplication::applicationFilePath()); QCOMPARE(tasks->count(), 1); - QCOMPARE(tasks->items(), QList<QWinJumpListItem *>() << link1); + QCOMPARE(tasks->items(), QVector<QWinJumpListItem *>() << link1); QWinJumpListItem* link2 = tasks->addLink(QStringLiteral("tst_QWinJumpList"), QCoreApplication::applicationFilePath(), QStringList(QStringLiteral("-test"))); QCOMPARE(link2->type(), QWinJumpListItem::Link); @@ -180,18 +180,18 @@ void tst_QWinJumpList::testTasks() QCOMPARE(link2->filePath(), QCoreApplication::applicationFilePath()); QCOMPARE(link2->arguments(), QStringList(QStringLiteral("-test"))); QCOMPARE(tasks->count(), 2); - QCOMPARE(tasks->items(), QList<QWinJumpListItem *>() << link1 << link2); + QCOMPARE(tasks->items(), QVector<QWinJumpListItem *>() << link1 << link2); QWinJumpListItem* separator = tasks->addSeparator(); QCOMPARE(separator->type(), QWinJumpListItem::Separator); QCOMPARE(tasks->count(), 3); - QCOMPARE(tasks->items(), QList<QWinJumpListItem *>() << link1 << link2 << separator); + QCOMPARE(tasks->items(), QVector<QWinJumpListItem *>() << link1 << link2 << separator); QWinJumpListItem* destination = tasks->addDestination(QCoreApplication::applicationDirPath()); QCOMPARE(destination->type(), QWinJumpListItem::Destination); QCOMPARE(destination->filePath(), QCoreApplication::applicationDirPath()); QCOMPARE(tasks->count(), 4); - QCOMPARE(tasks->items(), QList<QWinJumpListItem *>() << link1 << link2 << separator << destination); + QCOMPARE(tasks->items(), QVector<QWinJumpListItem *>() << link1 << link2 << separator << destination); tasks->clear(); QVERIFY(tasks->isEmpty()); diff --git a/tests/auto/qwinthumbnailtoolbar/tst_qwinthumbnailtoolbar.cpp b/tests/auto/qwinthumbnailtoolbar/tst_qwinthumbnailtoolbar.cpp index fc53a24..74a9a3e 100644 --- a/tests/auto/qwinthumbnailtoolbar/tst_qwinthumbnailtoolbar.cpp +++ b/tests/auto/qwinthumbnailtoolbar/tst_qwinthumbnailtoolbar.cpp @@ -82,7 +82,7 @@ void tst_QWinThumbnailToolBar::testButtons() QCOMPARE(tbar.count(), 0); QVERIFY(tbar.buttons().isEmpty()); - QList<QWinThumbnailToolButton *> buttons; + QVector<QWinThumbnailToolButton *> buttons; for (int i = 0; i < 3; ++i) buttons << new QWinThumbnailToolButton; diff --git a/tests/manual/imageconversion/main.cpp b/tests/manual/imageconversion/main.cpp index def9cdb..20e93de 100644 --- a/tests/manual/imageconversion/main.cpp +++ b/tests/manual/imageconversion/main.cpp @@ -28,7 +28,8 @@ #include <QtWinExtras/QtWin> -#include <QtWidgets/QAction> +#include <QtGui/QAction> +#include <QtGui/QShortcut> #include <QtWidgets/QApplication> #include <QtWidgets/QDialogButtonBox> #include <QtWidgets/QFileDialog> @@ -37,7 +38,6 @@ #include <QtWidgets/QMenu> #include <QtWidgets/QMenuBar> #include <QtWidgets/QPushButton> -#include <QtWidgets/QShortcut> #include <QtWidgets/QVBoxLayout> #include <QtGui/QImage> @@ -50,13 +50,14 @@ #include <QtCore/QTimer> #include <QtCore/qt_windows.h> -static void formatData(QDebug d, const void *data, int size) +static void formatData(QDebug d, const void *data, qsizetype size) { QDebugStateSaver saver(d); d.noquote(); d.nospace(); - d << "\nData: " << QByteArray(reinterpret_cast<const char *>(data), qMin(20, size)).toHex(); - if (size > 20) + const qsizetype minSize = 20; + d << "\nData: " << QByteArray(reinterpret_cast<const char *>(data), qMin(minSize, size)).toHex(); + if (size > minSize) d << "..."; d << "\n 0000000011111111222222223333333344444444"; } @@ -91,7 +92,7 @@ static void formatImage(QDebug d, const QImage &image) d << image; if (const int colorTableSize = image.colorCount()) { QVector<QRgb> colorTable = image.colorTable(); - d << " Color table: " << colorTableSize << " (" << showbase << hex; // 256 by standard + d << " Color table: " << colorTableSize << " (" << Qt::showbase << Qt::hex; // 256 by standard int c = 0; for ( ; c < qMin(8, colorTableSize); ++c) { if (c) @@ -100,9 +101,9 @@ static void formatImage(QDebug d, const QImage &image) } if (c < colorTableSize) d << "..."; - d << ')' << noshowbase << dec; + d << ')' << Qt::noshowbase << Qt::dec; } - formatData(d, image.constBits(), image.byteCount()); + formatData(d, image.constBits(), image.sizeInBytes()); } enum ParseOptionResult { @@ -175,7 +176,11 @@ class PaintWidget : public QWidget public: explicit PaintWidget(HBITMAP hBitmap, QWidget *p = nullptr) : QWidget(p), m_hBitmap(hBitmap) { } +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + bool nativeEvent(const QByteArray &eventType, void *message, qintptr *result) override; +#else bool nativeEvent(const QByteArray &eventType, void *message, long *result) override; +#endif public slots: void saveBitmap(); @@ -188,7 +193,11 @@ private: const HBITMAP m_hBitmap; }; +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +bool PaintWidget::nativeEvent(const QByteArray &eventType, void *messageIn, qintptr *result) +#else bool PaintWidget::nativeEvent(const QByteArray &eventType, void *messageIn, long *result) +#endif { MSG *message = reinterpret_cast<MSG *>(messageIn); if (message->message != WM_PAINT) @@ -347,7 +356,7 @@ int main(int argc, char *argv[]) if (image.isNull()) { qDebug() << "Default image color=" << defaultColor - << showbase << hex << defaultColor.rgba() << noshowbase << dec + << Qt::showbase << Qt::hex << defaultColor.rgba() << Qt::noshowbase << Qt::dec << ", format=" << drawFormat; image = QImage(width, height, drawFormat); image.fill(defaultColor); diff --git a/tests/manual/jumplist/testwidget.cpp b/tests/manual/jumplist/testwidget.cpp index 0928c59..01a1275 100644 --- a/tests/manual/jumplist/testwidget.cpp +++ b/tests/manual/jumplist/testwidget.cpp @@ -149,6 +149,6 @@ void TestWidget::showInExplorer() void TestWidget::runJumpListView() { const char binary[] = "JumpListsView"; - if (!QProcess::startDetached(binary)) + if (!QProcess::startDetached(binary, QStringList())) statusBar()->showMessage(QLatin1String("Unable to run ") + binary); } |