From 316f68fc0f86be551052ef79d3da9b32b031e675 Mon Sep 17 00:00:00 2001 From: Anton Date: Sun, 4 Sep 2016 00:56:35 +0400 Subject: added Settings class --- pica-client/settings.cpp | 51 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 pica-client/settings.cpp (limited to 'pica-client/settings.cpp') diff --git a/pica-client/settings.cpp b/pica-client/settings.cpp new file mode 100644 index 0000000..160e402 --- /dev/null +++ b/pica-client/settings.cpp @@ -0,0 +1,51 @@ +#include "settings.h" + +Settings::Settings(QString storage) +{ + dbconn=QSqlDatabase::addDatabase("QSQLITE"); + dbconn.setDatabaseName(storage); + + if (!dbconn.open()) + { + lasterr=dbconn.lastError(); + return; + } + +} + +QString Settings::GetLastError() +{ + return lasterr.text(); +} + +QVariant Settings::loadValue(QString name, QVariant defval) +{ + QSqlQuery query; + + query.prepare("select value from settings where name = :name"); + query.bindValue(":name", name); + query.exec(); + + lasterr = query.lastError(); + + query.next(); + + if (!query.isValid()) + { + return defval; + } + + return query.value(0); +} + +void Settings::storeValue(QString name, QString val) +{ + QSqlQuery query; + + query.prepare("insert into settings (name, value) values (:name, :val)"); + query.bindValue(":addr", name); + query.bindValue(":val", val); + query.exec(); + + lasterr = query.lastError(); +} -- cgit v1.2.1