Fix, display and rendering of booleans by QueryResultModel.

This commit is contained in:
eelke 2017-12-13 18:05:25 +01:00
parent ad9ed1b698
commit c6dbe72170

View file

@ -4,6 +4,8 @@
#include <QBrush>
#include <QColor>
using namespace Pgsql;
QueryResultModel::QueryResultModel(QObject *parent, std::shared_ptr<Pgsql::Result> 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;
}