From 2a063a4f00379a63cd0c137add07c75c7ddc5eb2 Mon Sep 17 00:00:00 2001 From: peri4 Date: Fri, 14 Jul 2023 13:36:40 +0300 Subject: [PATCH] piqt const remove --- libs/piqt/piqt.cpp | 28 ++++++------ libs/piqt/piqt.h | 110 ++++++++++++++++++++++++--------------------- 2 files changed, 74 insertions(+), 64 deletions(-) diff --git a/libs/piqt/piqt.cpp b/libs/piqt/piqt.cpp index b4e0954..98108b9 100644 --- a/libs/piqt/piqt.cpp +++ b/libs/piqt/piqt.cpp @@ -8,25 +8,25 @@ #endif -const QAD::Enum PI2QADEnum(const PIVariantTypes::Enum & el) { +QAD::Enum PI2QADEnum(const PIVariantTypes::Enum & el) { QAD::Enum ret; - piForeachC(PIVariantTypes::Enumerator & e, el.enum_list) + for (const auto & e: el.enum_list) ret << QAD::Enumerator(e.value, PI2QString(e.name)); ret.selectValue(el.selectedValue()); return ret; } -const PIVariantTypes::Enum QAD2PIEnum(const QAD::Enum & el) { +PIVariantTypes::Enum QAD2PIEnum(const QAD::Enum & el) { PIVariantTypes::Enum ret; - foreach(const QAD::Enumerator & e, el.enum_list) + for (const auto & e: el.enum_list) ret << PIVariantTypes::Enumerator(e.value, Q2PIString(e.name)); ret.selectValue(el.selectedValue()); return ret; } -const QVariant PI2QVariant(const PIVariant & v) { +QVariant PI2QVariant(const PIVariant & v) { switch (v.type()) { case PIVariant::pivBool: return QVariant(v.toBool()); case PIVariant::pivChar: @@ -63,7 +63,7 @@ const QVariant PI2QVariant(const PIVariant & v) { } -const PIVariant Q2PIVariant(const QVariant & v) { +PIVariant Q2PIVariant(const QVariant & v) { #if QT_VERSION_MAJOR <= 5 switch (v.type()) { #else @@ -184,7 +184,7 @@ const PIVariant Q2PIVariant(const QVariant & v) { } -const PIVariantTypes::IODevice QAD2PIIODevice(const QAD::IODevice & v) { +PIVariantTypes::IODevice QAD2PIIODevice(const QAD::IODevice & v) { PIVariantTypes::IODevice d; d.set(Q2PIPropertyStorage(v.props)); d.prefix = Q2PIString(v.prefix); @@ -194,33 +194,33 @@ const PIVariantTypes::IODevice QAD2PIIODevice(const QAD::IODevice & v) { } -const QAD::IODevice PI2QADIODevice(const PIVariantTypes::IODevice & v) { +QAD::IODevice PI2QADIODevice(const PIVariantTypes::IODevice & v) { return QAD::IODevice(PI2QString(v.prefix), PI2QPropertyStorage(v.get()), v.mode, v.options); } -const QAD::File PI2QADFile(const PIVariantTypes::File & v) { +QAD::File PI2QADFile(const PIVariantTypes::File & v) { return QAD::File(PI2QString(v.file), PI2QString(v.filter), v.is_abs, v.is_save); } -const QAD::Dir PI2QADDir(const PIVariantTypes::Dir & v) { +QAD::Dir PI2QADDir(const PIVariantTypes::Dir & v) { return QAD::Dir(PI2QString(v.dir), v.is_abs); } -const PIVariantTypes::File QAD2PIFile(const QAD::File & v) { +PIVariantTypes::File QAD2PIFile(const QAD::File & v) { return PIVariantTypes::File(Q2PIString(v.file), Q2PIString(v.filter), v.is_abs, v.is_save); } -const PIVariantTypes::Dir QAD2PIDir(const QAD::Dir & v) { +PIVariantTypes::Dir QAD2PIDir(const QAD::Dir & v) { return PIVariantTypes::Dir(Q2PIString(v.dir), v.is_abs); } #ifdef PIQT_HAS_GEOPOSITION -const QGeoCoordinate PI2QGeoPosition(const PIGeoPosition & v) { +QGeoCoordinate PI2QGeoPosition(const PIGeoPosition & v) { PIGeoPosition p(v); p.transformTo(PIGeoPosition::Cartesian); p.setEllipsoidModel(PIEllipsoidModel::WGS84Ellipsoid()); @@ -229,7 +229,7 @@ const QGeoCoordinate PI2QGeoPosition(const PIGeoPosition & v) { } -const PIGeoPosition Q2PIGeoPosition(const QGeoCoordinate & v) { +PIGeoPosition Q2PIGeoPosition(const QGeoCoordinate & v) { return PIGeoPosition(PIMathVectorT3d({v.latitude(), v.longitude(), v.altitude()}), PIGeoPosition::Geodetic); } #endif diff --git a/libs/piqt/piqt.h b/libs/piqt/piqt.h index 6477c79..3664c5f 100644 --- a/libs/piqt/piqt.h +++ b/libs/piqt/piqt.h @@ -47,96 +47,97 @@ class PIGeoPosition; #include "qad_piqt_export.h" -QAD_PIQT_EXPORT const QVariant PI2QVariant(const PIVariant & v); -QAD_PIQT_EXPORT const PIVariant Q2PIVariant(const QVariant & v); +QAD_PIQT_EXPORT QVariant PI2QVariant(const PIVariant & v); +QAD_PIQT_EXPORT PIVariant Q2PIVariant(const QVariant & v); -// inline const QString PI2QString(const PIString & v) {return QString::fromLocal8Bit(v.data());} -inline const QString PI2QString(const PIString & v) { +// inline QString PI2QString(const PIString & v) {return QString::fromLocal8Bit(v.data());} +inline QString PI2QString(const PIString & v) { return QString::fromUtf8(v.dataUTF8()); } #if PIP_VERSION >= PIP_MAKE_VERSION(2, 38, 0) -inline const QString PI2QString(const PIConstChars & v) { +inline QString PI2QString(const PIConstChars & v) { return QString::fromLatin1(v.data(), v.length()); } #endif -// inline const PIString Q2PIString(const QString & v) {return PIString(v.toLocal8Bit().data());} -inline const PIString Q2PIString(const QString & v) { +// inline PIString Q2PIString(const QString & v) {return PIString(v.toLocal8Bit().data());} +inline PIString Q2PIString(const QString & v) { return PIString::fromUTF8(v.toUtf8().data()); } -inline const QStringList PI2QStringList(const PIStringList & v) { +inline QStringList PI2QStringList(const PIStringList & v) { QStringList ret; - piForeachC(PIString & s, v) + for (const auto & s: v) ret << PI2QString(s); return ret; } -inline const PIStringList Q2PIStringList(const QStringList & v) { +inline PIStringList Q2PIStringList(const QStringList & v) { PIStringList ret; - foreach(const QString & s, v) + ret.reserve(v.size()); + for (const auto & s: v) ret << Q2PIString(s); return ret; } -inline const QByteArray PI2QByteArray(const PIByteArray & v) { +inline QByteArray PI2QByteArray(const PIByteArray & v) { return QByteArray((const char *)(v.data()), v.size_s()); } -inline const PIByteArray Q2PIByteArray(const QByteArray & v) { +inline PIByteArray Q2PIByteArray(const QByteArray & v) { return PIByteArray(v.constData(), v.size()); } -inline const QPointF PI2QVector2(const PIMathVectorT2d & v) { +inline QPointF PI2QVector2(const PIMathVectorT2d & v) { return QPointF(v[0], v[1]); } -inline const QVector3D PI2QVector3(const PIMathVectorT3d & v) { +inline QVector3D PI2QVector3(const PIMathVectorT3d & v) { return QVector3D(v[0], v[1], v[2]); } -inline const PIMathVectorT2d Q2PIVector2(const QPointF & v) { +inline PIMathVectorT2d Q2PIVector2(const QPointF & v) { return PIMathVectorT2d({double(v.x()), double(v.y())}); } -inline const PIMathVectorT3d Q2PIVector3(const QVector3D & v) { +inline PIMathVectorT3d Q2PIVector3(const QVector3D & v) { return PIMathVectorT3d({double(v.x()), double(v.y()), double(v.z())}); } -inline const QPointF PI2QPoint(const PIPointd & v) { +inline QPointF PI2QPoint(const PIPointd & v) { return QPointF(v.x, v.y); } -inline const PIPointd Q2PIPoint(const QPointF & v) { +inline PIPointd Q2PIPoint(const QPointF & v) { return PIPointd(v.x(), v.y()); } -inline const QRectF PI2QRect(const PIRectd & v) { +inline QRectF PI2QRect(const PIRectd & v) { return QRectF(v.left(), v.bottom(), v.width(), v.height()); } -inline const PIRectd Q2PIRect(const QRectF & v) { +inline PIRectd Q2PIRect(const QRectF & v) { return PIRectd(v.left(), v.top(), v.width(), v.height()); } -inline const QLineF PI2QLine(const PILined & v) { +inline QLineF PI2QLine(const PILined & v) { return QLineF(PI2QPoint(v.p0), PI2QPoint(v.p1)); } -inline const PILined Q2PILine(const QLineF & v) { +inline PILined Q2PILine(const QLineF & v) { return PILined(Q2PIPoint(v.p1()), Q2PIPoint(v.p2())); } -inline const QAD::MathVector PI2QMathVector(const PIMathVectord & v) { +inline QAD::MathVector PI2QMathVector(const PIMathVectord & v) { QVector q = QVector(v.size()); memcpy(q.data(), v.data(), q.size() * sizeof(double)); return QAD::MathVector(q); } -inline const PIMathVectord Q2PIMathVector(const QAD::MathVector & v) { +inline PIMathVectord Q2PIMathVector(const QAD::MathVector & v) { PIMathVectord p = PIMathVectord(v.v.size()); memcpy(p.data(), v.v.data(), p.size() * sizeof(double)); return p; } -inline const QAD::MathMatrix PI2QMathMatrix(const PIMathMatrixd & v) { +inline QAD::MathMatrix PI2QMathMatrix(const PIMathMatrixd & v) { PIVector> p = v.toVectors(); QVector> q = QVector>(p.size()); for (int i = 0; i < q.size(); ++i) { @@ -145,7 +146,7 @@ inline const QAD::MathMatrix PI2QMathMatrix(const PIMathMatrixd & v) { } return QAD::MathMatrix(q); } -inline const PIMathMatrixd Q2PIMathMatrix(const QAD::MathMatrix & v) { +inline PIMathMatrixd Q2PIMathMatrix(const QAD::MathMatrix & v) { PIVector> p = PIVector>(v.m.size()); for (int i = 0; i < v.m.size(); ++i) { p[i].resize(v.m[i].size()); @@ -155,37 +156,37 @@ inline const PIMathMatrixd Q2PIMathMatrix(const QAD::MathMatrix & v) { } -inline const QDate PI2QDate(const PIDate & v) { +inline QDate PI2QDate(const PIDate & v) { return QDate(v.year, v.month, v.day); } -inline const QTime PI2QTime(const PITime & v) { +inline QTime PI2QTime(const PITime & v) { return QTime(v.hours, v.minutes, v.seconds, v.milliseconds); } -inline const QDateTime PI2QDateTime(const PIDateTime & v) { +inline QDateTime PI2QDateTime(const PIDateTime & v) { return QDateTime(PI2QDate(v.date()), PI2QTime(v.time())); } -inline const PIDate Q2PIDate(const QDate & v) { +inline PIDate Q2PIDate(const QDate & v) { return PIDate(v.year(), v.month(), v.day()); } -inline const PITime Q2PITime(const QTime & v) { +inline PITime Q2PITime(const QTime & v) { return PITime(v.hour(), v.minute(), v.second(), v.msec()); } -inline const PIDateTime Q2PIDateTime(const QDateTime & v) { +inline PIDateTime Q2PIDateTime(const QDateTime & v) { return PIDateTime(Q2PIDate(v.date()), Q2PITime(v.time())); } -inline const QColor PI2QColor(const PIVariantTypes::Color & v) { +inline QColor PI2QColor(const PIVariantTypes::Color & v) { return QColor::fromRgba(v.rgba); } -inline const PIVariantTypes::Color Q2PIColor(const QColor & v) { +inline PIVariantTypes::Color Q2PIColor(const QColor & v) { return PIVariantTypes::Color(v.rgba()); } template -inline const QVector PI2QVector(const PIVector & v) { +inline QVector PI2QVector(const PIVector & v) { QVector ret; ret.reserve(v.size_s()); for (int i = 0; i < v.size_s(); ++i) @@ -193,10 +194,19 @@ inline const QVector PI2QVector(const PIVector & v) { return ret; } template -inline const PIVector Q2PIVector(const QVector & v) { +inline PIVector Q2PIVector(const QVector & v) { if (v.isEmpty()) return PIVector(); return PIVector(v.constData(), (size_t)v.size()); } +template +inline PIVector Q2PIVector(const QList & v) { + if (v.isEmpty()) return PIVector(); + PIVector ret; + ret.reserve(v.size()); + for (const auto & i: v) + ret << i; + return ret; +} template inline QMap PI2QMap(const PIMap & v) { @@ -223,33 +233,33 @@ inline PIMap Q2PIMap(const QMap & v) { inline PIPropertyStorage Q2PIPropertyStorage(const PropertyStorage & props) { PIPropertyStorage ret; - foreach(const PropertyStorage::Property & p, props) + for (const auto & p: props) ret.addProperty(Q2PIString(p.name), Q2PIVariant(p.value), Q2PIString(p.comment), p.flags); return ret; } inline PropertyStorage PI2QPropertyStorage(const PIPropertyStorage & props) { PropertyStorage ret; - piForeachC(PIPropertyStorage::Property & p, props) + for (const auto & p: props) ret.addProperty(PI2QString(p.name), PI2QVariant(p.value), PI2QString(p.comment), p.flags); return ret; } -QAD_PIQT_EXPORT const QAD::Enum PI2QADEnum(const PIVariantTypes::Enum & el); -QAD_PIQT_EXPORT const QAD::File PI2QADFile(const PIVariantTypes::File & v); -QAD_PIQT_EXPORT const QAD::Dir PI2QADDir(const PIVariantTypes::Dir & v); -QAD_PIQT_EXPORT const QAD::IODevice PI2QADIODevice(const PIVariantTypes::IODevice & v); -QAD_PIQT_EXPORT const PIVariantTypes::Enum QAD2PIEnum(const QAD::Enum & el); -QAD_PIQT_EXPORT const PIVariantTypes::File QAD2PIFile(const QAD::File & v); -QAD_PIQT_EXPORT const PIVariantTypes::Dir QAD2PIDir(const QAD::Dir & v); -QAD_PIQT_EXPORT const PIVariantTypes::IODevice QAD2PIIODevice(const QAD::IODevice & v); +QAD_PIQT_EXPORT QAD::Enum PI2QADEnum(const PIVariantTypes::Enum & el); +QAD_PIQT_EXPORT QAD::File PI2QADFile(const PIVariantTypes::File & v); +QAD_PIQT_EXPORT QAD::Dir PI2QADDir(const PIVariantTypes::Dir & v); +QAD_PIQT_EXPORT QAD::IODevice PI2QADIODevice(const PIVariantTypes::IODevice & v); +QAD_PIQT_EXPORT PIVariantTypes::Enum QAD2PIEnum(const QAD::Enum & el); +QAD_PIQT_EXPORT PIVariantTypes::File QAD2PIFile(const QAD::File & v); +QAD_PIQT_EXPORT PIVariantTypes::Dir QAD2PIDir(const QAD::Dir & v); +QAD_PIQT_EXPORT PIVariantTypes::IODevice QAD2PIIODevice(const QAD::IODevice & v); -// inline const PIVariant QString2PIVariant(const QString & v) {return PIVariant::readFromString(QString2PIString(v));} +// inline PIVariant QString2PIVariant(const QString & v) {return PIVariant::readFromString(QString2PIString(v));} #ifdef PIQT_HAS_GEOPOSITION -QAD_PIQT_EXPORT const QGeoCoordinate PI2QGeoPosition(const PIGeoPosition & v); -QAD_PIQT_EXPORT const PIGeoPosition Q2PIGeoPosition(const QGeoCoordinate & v); +QAD_PIQT_EXPORT QGeoCoordinate PI2QGeoPosition(const PIGeoPosition & v); +QAD_PIQT_EXPORT PIGeoPosition Q2PIGeoPosition(const QGeoCoordinate & v); #endif template