From 6528022b7017d68fd23bca1431bfe289dc27a61c Mon Sep 17 00:00:00 2001 From: "pls.153" Date: Mon, 24 Mar 2025 18:37:52 +0100 Subject: [PATCH] revisions --- examples/meshtastic/cpp/qt.cpp | 5 +++-- examples/meshtastic/cpp/qt.h | 2 +- examples/meshtastic/lisp/db.lisp | 4 +--- examples/qsqlite/cpp/qt.cpp | 8 ++++---- examples/qsqlite/cpp/qt.h | 4 ++-- examples/qsqlite/lisp/db.lisp | 4 +--- 6 files changed, 12 insertions(+), 15 deletions(-) diff --git a/examples/meshtastic/cpp/qt.cpp b/examples/meshtastic/cpp/qt.cpp index 7f9cdc1..01e9f26 100644 --- a/examples/meshtastic/cpp/qt.cpp +++ b/examples/meshtastic/cpp/qt.cpp @@ -1,5 +1,6 @@ #include "qt.h" #include +#include #include #include #include @@ -171,7 +172,7 @@ QVariant QT::iniDb(const QVariant& vName) { return vName; } -QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues, const QVariant& vCols) { +QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues) { QVariantList results; QSqlQuery sqlQuery(db); if (db.open()) { @@ -182,7 +183,7 @@ QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues, const QVa sqlQuery.addBindValue(value); } if (sqlQuery.exec()) { - auto cols = vCols.toInt(); + auto cols = sqlQuery.record().count(); while (sqlQuery.next()) { if (cols > 1) { QVariantList list; diff --git a/examples/meshtastic/cpp/qt.h b/examples/meshtastic/cpp/qt.h index f7c9a58..98c33bd 100644 --- a/examples/meshtastic/cpp/qt.h +++ b/examples/meshtastic/cpp/qt.h @@ -41,7 +41,7 @@ public: // SQLite Q_INVOKABLE QVariant iniDb(const QVariant&); - Q_INVOKABLE QVariant sqlQuery(const QVariant&, const QVariant&, const QVariant&); + Q_INVOKABLE QVariant sqlQuery(const QVariant&, const QVariant&); // etc Q_INVOKABLE QVariant dataPath(const QVariant&); diff --git a/examples/meshtastic/lisp/db.lisp b/examples/meshtastic/lisp/db.lisp index ac93b49..1ee264a 100644 --- a/examples/meshtastic/lisp/db.lisp +++ b/examples/meshtastic/lisp/db.lisp @@ -3,9 +3,7 @@ (defvar *file* nil) (defun query (query &rest values) - (let ((cols (and (x:starts-with "select" query) - (1+ (count #\, (subseq query 0 (search "from" query))))))) - (qrun* (qt:sql-query qt:*cpp* query values cols)))) + (qrun* (qt:sql-query qt:*cpp* query values))) (defun ini () (setf *file* (app:in-data-path "db")) diff --git a/examples/qsqlite/cpp/qt.cpp b/examples/qsqlite/cpp/qt.cpp index e3f0b13..08e6b6a 100644 --- a/examples/qsqlite/cpp/qt.cpp +++ b/examples/qsqlite/cpp/qt.cpp @@ -1,5 +1,6 @@ #include "qt.h" #include +#include #include #include #include @@ -35,7 +36,7 @@ QVariant QT::iniDb(const QVariant& vName, const QVariant& vQuickView) { return vName; } -QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues, const QVariant& vCols) { +QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues) { QVariantList results; QSqlQuery sqlQuery(db); if (db.open()) { @@ -46,7 +47,7 @@ QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues, const QVa sqlQuery.addBindValue(value); } if (sqlQuery.exec()) { - auto cols = vCols.toInt(); + auto cols = sqlQuery.record().count(); while (sqlQuery.next()) { if (cols > 1) { QVariantList list; @@ -81,8 +82,7 @@ QVariant QT::sqlQuery(const QVariant& vQuery, const QVariant& vValues, const QVa QPixmap DatabaseImageProvider::requestPixmap(const QString& name, QSize* size, const QSize& requestedSize) { auto result = qt->sqlQuery( "select data from images where name = ?", - QVariantList() << name, - 1).value(); // number of returned columns + QVariantList() << name).value(); QPixmap pixmap; if (!result.isEmpty()) { pixmap.loadFromData(result.first().toByteArray()); diff --git a/examples/qsqlite/cpp/qt.h b/examples/qsqlite/cpp/qt.h index b96916f..15bbe0b 100644 --- a/examples/qsqlite/cpp/qt.h +++ b/examples/qsqlite/cpp/qt.h @@ -18,7 +18,7 @@ class QT : public QObject { public: Q_INVOKABLE QVariant dataPath(const QVariant&); Q_INVOKABLE QVariant iniDb(const QVariant&, const QVariant&); - Q_INVOKABLE QVariant sqlQuery(const QVariant&, const QVariant&, const QVariant&); + Q_INVOKABLE QVariant sqlQuery(const QVariant&, const QVariant&); QT(); @@ -30,7 +30,7 @@ class DatabaseImageProvider : public QQuickImageProvider { public: DatabaseImageProvider(QT* _qt) : QQuickImageProvider(QQuickImageProvider::Pixmap), qt(_qt) {} - QPixmap requestPixmap(const QString&, QSize*, const QSize&); + QPixmap requestPixmap(const QString&, QSize*, const QSize&) override; QT* qt; }; diff --git a/examples/qsqlite/lisp/db.lisp b/examples/qsqlite/lisp/db.lisp index e393afb..3ae86a7 100644 --- a/examples/qsqlite/lisp/db.lisp +++ b/examples/qsqlite/lisp/db.lisp @@ -3,9 +3,7 @@ (defvar *file* nil) (defun query (query &rest values) - (let ((rows (and (x:starts-with "select" query) - (1+ (count #\, (subseq query 0 (search "from" query))))))) - (qrun* (qt:sql-query qt:*cpp* query values rows)))) + (qrun* (qt:sql-query qt:*cpp* query values))) (defun ini () (setf *file* (app:in-data-path "db"))