Settings QObjectification: finish network preferences

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Tomaz Canabrava 2016-01-14 11:55:31 -02:00 committed by Dirk Hohndel
parent 22da63e839
commit f5c69e3a56
2 changed files with 104 additions and 1 deletions

View file

@ -549,3 +549,95 @@ void GeocodingPreferences::setThirdTaxonomyCategory(taxonomy_category value)
prefs.show_average_depth = value;
emit thirdTaxonomyCategoryChanged(value);
}
ProxySettings::ProxySettings(QObject *parent) :
group(QStringLiteral("Network"))
{
}
int ProxySettings::type() const
{
return prefs.proxy_type;
}
QString ProxySettings::host() const
{
return prefs.proxy_host;
}
int ProxySettings::port() const
{
return prefs.proxy_port;
}
short ProxySettings::auth() const
{
return prefs.proxy_auth;
}
QString ProxySettings::user() const
{
return prefs.proxy_user;
}
QString ProxySettings::pass() const
{
return prefs.proxy_pass;
}
void ProxySettings::setType(int value)
{
QSettings s;
s.beginGroup(group);
s.setValue("proxy_type", value);
prefs.proxy_type = value;
emit typeChanged(value);
}
void ProxySettings::setHost(const QString& value)
{
QSettings s;
s.beginGroup(group);
s.setValue("proxy_host", value);
free(prefs.proxy_host);
prefs.proxy_host = copy_string(qPrintable(value));;
emit hostChanged(value);
}
void ProxySettings::setPort(int value)
{
QSettings s;
s.beginGroup(group);
s.setValue("proxy_port", value);
prefs.proxy_port = value;
emit portChanged(value);
}
void ProxySettings::setAuth(short value)
{
QSettings s;
s.beginGroup(group);
s.setValue("proxy_auth", value);
prefs.proxy_auth = value;
emit authChanged(value);
}
void ProxySettings::setUser(const QString& value)
{
QSettings s;
s.beginGroup(group);
s.setValue("proxy_user", value);
free(prefs.proxy_user);
prefs.proxy_user = copy_string(qPrintable(value));
emit userChanged(value);
}
void ProxySettings::setPass(const QString& value)
{
QSettings s;
s.beginGroup(group);
s.setValue("proxy_pass", value);
free(prefs.proxy_pass);
prefs.proxy_pass = copy_string(qPrintable(value));
emit passChanged(value);
}

View file

@ -218,6 +218,7 @@ class ProxySettings : public QObject {
Q_PROPERTY(short auth READ auth WRITE setAuth NOTIFY authChanged)
Q_PROPERTY(QString user READ user WRITE setUser NOTIFY userChanged)
Q_PROPERTY(QString pass READ pass WRITE setPass NOTIFY passChanged)
public:
ProxySettings(QObject *parent);
int type() const;
@ -234,6 +235,16 @@ public slots:
void setAuth(short value);
void setUser(const QString& value);
void setPass(const QString& value);
signals:
void typeChanged(int value);
void hostChanged(const QString& value);
void portChanged(int value);
void authChanged(short value);
void userChanged(const QString& value);
void passChanged(const QString& value);
private:
QString group;
};
class CloudStorageSettings : public QObject {