svn commit: r530690 - head/graphics/radiance/files
Tobias C. Berner
tcberner at FreeBSD.org
Sat Apr 4 16:48:23 UTC 2020
Author: tcberner
Date: Sat Apr 4 16:48:14 2020
New Revision: 530690
URL: https://svnweb.freebsd.org/changeset/ports/530690
Log:
graphics/radiance: Prepare for Qt5-5.14
PR: 244964
Added:
head/graphics/radiance/files/patch-git_pr-111-qt-5.14 (contents, props changed)
Added: head/graphics/radiance/files/patch-git_pr-111-qt-5.14
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/graphics/radiance/files/patch-git_pr-111-qt-5.14 Sat Apr 4 16:48:14 2020 (r530690)
@@ -0,0 +1,198 @@
+From 7c5714bc9abf2c4526e3b0be88477d94377d441c Mon Sep 17 00:00:00 2001
+From: Eric Van Albert <eric at van.al>
+Date: Sun, 16 Feb 2020 15:44:26 -0500
+Subject: [PATCH] Fix QmlSharedPointer and remove deprecated set handling
+
+Remove function wrappers to avoid incompatibility with older qt versions
+
+New stuff not compatible with <5.14, so add in preprocessor commands to switch which statements are used
+
+missed one
+---
+ src/Library.cpp | 8 +++++++-
+ src/Model.cpp | 6 ++++++
+ src/OutputWindow.cpp | 1 +
+ src/QmlSharedPointer.h | 41 +++++++++--------------------------------
+ src/View.cpp | 9 +++++++--
+ 5 files changed, 30 insertions(+), 35 deletions(-)
+
+diff --git src/Library.cpp src/Library.cpp
+index ba44ff7..1f7cb2e 100644
+--- src/Library.cpp
++++ src/Library.cpp
+@@ -3,6 +3,7 @@
+ #include "Registry.h"
+ #include <QDir>
+ #include <QDebug>
++#include <QtGlobal>
+
+ LibraryItem::LibraryItem(const QString &name, const QString &fileToInstantiate, LibraryItem *parent)
+ {
+@@ -98,7 +99,12 @@ void Library::populate(LibraryItem *item, QString currentDirectory = ".") {
+ QDir userDir(Paths::userLibrary() + "/" + currentDirectory);
+ auto systemLs = systemDir.entryList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);
+ auto userLs = userDir.entryList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);
+- auto ls = (systemLs + userLs).toSet().toList();
++ auto lsList = systemLs + userLs;
++#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
++ auto ls = lsList.toSet().toList();
++#else
++ auto ls = QSet<QString>(lsList.begin(), lsList.end()).values();
++#endif
+ ls.sort(Qt::CaseInsensitive);
+ for (auto f = ls.begin(); f != ls.end(); f++) {
+ auto path = currentDirectory + "/" + *f;
+diff --git src/Model.cpp src/Model.cpp
+index e4de414..4898ed2 100644
+--- src/Model.cpp
++++ src/Model.cpp
+@@ -9,6 +9,7 @@
+ #include <QFile>
+ #include <QJsonArray>
+ #include <QJsonDocument>
++#include <QtGlobal>
+
+ static QString vnp(VideoNodeSP *videoNode) {
+ if (videoNode) return QString("%1(%2)").arg((*videoNode)->metaObject()->className()).arg((qintptr)videoNode->data());
+@@ -361,8 +362,13 @@ void Model::flush() {
+
+ // Compute the changeset
+ {
++#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
+ auto v = QSet<VideoNodeSP *>::fromList(m_vertices);
+ auto v4r = QSet<VideoNodeSP *>::fromList(m_verticesForRendering);
++#else
++ auto v = QSet<VideoNodeSP *>(m_vertices.begin(), m_vertices.end());
++ auto v4r = QSet<VideoNodeSP *>(m_verticesForRendering.begin(), m_verticesForRendering.end());
++#endif
+ // TODO Can't use QSet without implementing qHash
+ //auto e = QSet<Edge>::fromList(m_edges);
+ //auto e4r = QSet<Edge>::fromList(m_edgesForRendering);
+diff --git src/OutputWindow.cpp src/OutputWindow.cpp
+index 73aead8..135e31d 100644
+--- src/OutputWindow.cpp
++++ src/OutputWindow.cpp
+@@ -2,6 +2,7 @@
+
+ #include <QScreen>
+ #include <QGuiApplication>
++#include <QKeyEvent>
+
+ // OutputWindow
+
+diff --git src/QmlSharedPointer.h src/QmlSharedPointer.h
+index 4551e6f..661137b 100644
+--- src/QmlSharedPointer.h
++++ src/QmlSharedPointer.h
+@@ -9,6 +9,7 @@
+ #include <QSharedPointer>
+ #include <QMetaMethod>
+ #include <QDebug>
++#include <QtGlobal>
+
+ template <class T, class B>
+ class QmlSharedPointer;
+@@ -102,11 +103,7 @@ private:
+ QMetaObject::disconnect(data(), i, this, i);
+ }
+ }
+- static const QMetaObject *gen_superdata();
+ static const QByteArrayData *gen_stringdata();
+- static const uint *gen_data();
+- static const QMetaObject * const *gen_relatedMetaObjects();
+- static void *gen_extradata();
+ static void findAndActivateSignal(QObject *_o, int _id, void **_a);
+
+ public:
+@@ -286,12 +283,6 @@ template <typename T, typename B> void QmlSharedPointer<T, B>::qt_static_metacal
+ }
+ }
+
+-template<typename T, typename B>
+-const QMetaObject *QmlSharedPointer<T, B>::gen_superdata()
+-{
+- return &B::staticMetaObject;
+-}
+-
+ template<typename T, typename B>
+ const QByteArrayData *QmlSharedPointer<T, B>::gen_stringdata()
+ {
+@@ -307,7 +298,11 @@ const QByteArrayData *QmlSharedPointer<T, B>::gen_stringdata()
+ static QByteArrayData new_stringdata[MAX_N_STRINGS];
+
+ for (int i=0; i<MAX_N_STRINGS; i++) {
++#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
+ new_stringdata[i].ref.atomic.store(-1); // Don't attempt to free
++#else
++ new_stringdata[i].ref.atomic.storeRelaxed(-1); // Don't attempt to free
++#endif
+ }
+
+ for (int i=0; i<n_strings; i++) {
+@@ -330,29 +325,11 @@ const QByteArrayData *QmlSharedPointer<T, B>::gen_stringdata()
+ return new_stringdata;
+ }
+
+-template<typename T, typename B>
+-const uint *QmlSharedPointer<T, B>::gen_data()
+-{
+- return T::staticMetaObject.d.data;
+-}
+-
+-template<typename T, typename B>
+-const QMetaObject * const *QmlSharedPointer<T, B>::gen_relatedMetaObjects()
+-{
+- return T::staticMetaObject.d.relatedMetaObjects;
+-}
+-
+-template<typename T, typename B>
+-void *QmlSharedPointer<T, B>::gen_extradata()
+-{
+- return T::staticMetaObject.d.extradata;
+-}
+-
+ template<typename T, typename B> const QMetaObject QmlSharedPointer<T, B>::staticMetaObject = { {
+- QmlSharedPointer<T, B>::gen_superdata(),
++ &B::staticMetaObject,
+ QmlSharedPointer<T, B>::gen_stringdata(),
+- QmlSharedPointer<T, B>::gen_data(),
++ T::staticMetaObject.d.data,
+ QmlSharedPointer<T, B>::qt_static_metacall,
+- QmlSharedPointer<T, B>::gen_relatedMetaObjects(),
+- QmlSharedPointer<T, B>::gen_extradata(),
++ T::staticMetaObject.d.relatedMetaObjects,
++ T::staticMetaObject.d.extradata,
+ } };
+diff --git src/View.cpp src/View.cpp
+index 120b591..20e7ca2 100644
+--- src/View.cpp
++++ src/View.cpp
+@@ -1,10 +1,11 @@
+ #include "View.h"
++#include "VideoNode.h"
++#include "Paths.h"
+ #include <QQmlContext>
+ #include <QQmlProperty>
+ #include <QFileInfo>
+ #include <QQueue>
+-#include "VideoNode.h"
+-#include "Paths.h"
++#include <QtGlobal>
+
+ View::View()
+ : m_model(nullptr)
+@@ -668,7 +669,11 @@ QVariantList View::selectedConnectedComponents() {
+ QSet<VideoNodeSP *> selectedVerticesSet;
+ QVector<VideoNodeSP *> selectedVertices;
+ {
++#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0)
+ auto vSet = QSet<VideoNodeSP *>::fromList(vertices);
++#else
++ auto vSet = QSet<VideoNodeSP *>(vertices.begin(), vertices.end());
++#endif
+ for (int i=0; i<m_children.count(); i++) {
+ if (m_selection.contains(m_children.at(i).item)
+ && vSet.contains(m_children.at(i).videoNode)) {
+--
+2.25.2
+
More information about the svn-ports-all
mailing list