summaryrefslogtreecommitdiffstats
path: root/pica-client/settings.cpp
diff options
context:
space:
mode:
authorAnton <anton@picapica>2016-09-04 00:56:35 +0400
committerAnton <anton@picapica>2016-09-04 00:56:35 +0400
commit316f68fc0f86be551052ef79d3da9b32b031e675 (patch)
tree9dc84951399f73696bbc273b9962565b2d360f69 /pica-client/settings.cpp
parenteb9d793ca218f61169997f2efcd838c831b614ac (diff)
downloadpica-pica-316f68fc0f86be551052ef79d3da9b32b031e675.tar.gz
pica-pica-316f68fc0f86be551052ef79d3da9b32b031e675.zip
added Settings class
Diffstat (limited to 'pica-client/settings.cpp')
-rw-r--r--pica-client/settings.cpp51
1 files changed, 51 insertions, 0 deletions
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();
+}