From 57c806e9b5b95d29ab146a59e8b3520259c7025f Mon Sep 17 00:00:00 2001 From: Jonas Kulla Date: Tue, 3 Sep 2013 11:07:56 +0200 Subject: [PATCH] Add "[Binding]" config subgroup Binding specific configuration goes here. It is stored as a String->Value hash. --- src/config.cpp | 16 ++++++++++++++++ src/config.h | 6 ++++++ 2 files changed, 22 insertions(+) diff --git a/src/config.cpp b/src/config.cpp index 17ac964..bccf0c3 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -58,6 +58,22 @@ void Config::read() QStringList _rtps = confFile.value("RTPs").toStringList(); Q_FOREACH(const QString &s, _rtps) rtps << s.toUtf8(); + + confFile.beginGroup("Binding"); + + QStringList bindingKeys = confFile.childKeys(); + Q_FOREACH (const QString &key, bindingKeys) + { + QVariant value = confFile.value(key); + + /* Convert QString to QByteArray */ + if (value.type() == QVariant::String) + value = value.toString().toUtf8(); + + bindingConf.insert(key.toAscii(), value); + } + + confFile.endGroup(); } void Config::readGameINI() diff --git a/src/config.h b/src/config.h index 375d427..b603eaa 100644 --- a/src/config.h +++ b/src/config.h @@ -24,6 +24,8 @@ #include #include +#include +#include struct Config { @@ -43,6 +45,10 @@ struct Config QByteArray customScript; QVector rtps; + /* Any values in the [Binding] + * group are collected here */ + QHash bindingConf; + /* Game INI contents */ struct { QByteArray scripts;