From: Sebastian Goth Date: Tue, 29 Sep 2009 15:39:35 +0000 (+0200) Subject: Write aliases+ignorelist changes to DB immediately X-Git-Tag: 0.5-rc2~1 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=5cdc2eb559444f9e34dfb6a06f155e5581e33e3d Write aliases+ignorelist changes to DB immediately Hopefully pleases EgS and fixes #809 --- diff --git a/src/core/corealiasmanager.cpp b/src/core/corealiasmanager.cpp index b892a04a..03027ca8 100644 --- a/src/core/corealiasmanager.cpp +++ b/src/core/corealiasmanager.cpp @@ -38,6 +38,9 @@ CoreAliasManager::CoreAliasManager(CoreSession *parent) initSetAliases(Core::getUserSetting(session->user(), "Aliases").toMap()); if(isEmpty()) loadDefaults(); + + // we store our settings whenever they change + connect(this, SIGNAL(updatedRemotely()), SLOT(save())); } void CoreAliasManager::save() const { diff --git a/src/core/corealiasmanager.h b/src/core/corealiasmanager.h index 79641df0..ee22c5ab 100644 --- a/src/core/corealiasmanager.h +++ b/src/core/corealiasmanager.h @@ -34,11 +34,12 @@ public: inline virtual const QMetaObject *syncMetaObject() const { return &AliasManager::staticMetaObject; } - void save() const; - protected: const Network *network(NetworkId) const; +private slots: + void save() const; + private: void loadDefaults(); diff --git a/src/core/coreignorelistmanager.cpp b/src/core/coreignorelistmanager.cpp index 0d9901ff..a1e298cc 100644 --- a/src/core/coreignorelistmanager.cpp +++ b/src/core/coreignorelistmanager.cpp @@ -36,6 +36,10 @@ CoreIgnoreListManager::CoreIgnoreListManager(CoreSession *parent) } initSetIgnoreList(Core::getUserSetting(session->user(), "IgnoreList").toMap()); + + // we store our settings whenever they change + connect(this, SIGNAL(updatedRemotely()), SLOT(save())); + //if(isEmpty()) //loadDefaults(); } diff --git a/src/core/coreignorelistmanager.h b/src/core/coreignorelistmanager.h index 32e78b9f..c12e323b 100644 --- a/src/core/coreignorelistmanager.h +++ b/src/core/coreignorelistmanager.h @@ -33,7 +33,6 @@ public: explicit CoreIgnoreListManager(CoreSession *parent); inline virtual const QMetaObject *syncMetaObject() const { return &IgnoreListManager::staticMetaObject; } - void save() const; public slots: virtual inline void requestToggleIgnoreRule(const QString &ignoreRule) { toggleIgnoreRule(ignoreRule); } @@ -43,6 +42,9 @@ public slots: addIgnoreListItem(type, ignoreRule, isRegEx, strictness, scope, scopeRule, isActive); } +private slots: + void save() const; + //private: // void loadDefaults(); diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index 58af49a4..3c8e20c6 100644 --- a/src/core/coresession.cpp +++ b/src/core/coresession.cpp @@ -154,8 +154,6 @@ void CoreSession::saveSessionState() const { _bufferSyncer->storeDirtyIds(); _bufferViewManager->saveBufferViews(); _networkConfig->save(); - _aliasManager.save(); - _ignoreListManager.save(); } void CoreSession::restoreSessionState() {