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;