From c6dbe72170d0942329134583f5975ac5fe9a2b20 Mon Sep 17 00:00:00 2001 From: eelke Date: Wed, 13 Dec 2017 18:05:25 +0100 Subject: [PATCH] Fix, display and rendering of booleans by QueryResultModel. --- pglab/QueryResultModel.cpp | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pglab/QueryResultModel.cpp b/pglab/QueryResultModel.cpp index 1af75d3..2af82fd 100644 --- a/pglab/QueryResultModel.cpp +++ b/pglab/QueryResultModel.cpp @@ -4,6 +4,8 @@ #include #include +using namespace Pgsql; + QueryResultModel::QueryResultModel(QObject *parent, std::shared_ptr r) : BaseTableModel(parent) , result(std::move(r)) @@ -36,18 +38,20 @@ QVariant QueryResultModel::getData(const QModelIndex &index) const r = "null"; } else { -// Oid o = result->type(col); - QString s(result->val(col, rij)); -// switch (o) { -// case BOOLOID: -// s = (s == "t") ? "TRUE" : "FALSE"; -// // intentional fall through -// default: + Oid o = result->type(col); + auto value = result->get(col, rij); + switch (o) { + case BOOLOID: + r = bool(value); //s = (s == "t") ? "TRUE" : "FALSE"; + break; + default: { + QString s = value; if (s.length() > 256) { s.truncate(256); } r = s; -// } + } + } } return r; }