cmake: avoid de-duplication of user's CXXFLAGS
[quassel.git] / src / core / corealiasmanager.cpp
index b892a04..ab740d6 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-09 by the Quassel Project                          *
+ *   Copyright (C) 2005-2022 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -15,7 +15,7 @@
  *   You should have received a copy of the GNU General Public License     *
  *   along with this program; if not, write to the                         *
  *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
 #include "corealiasmanager.h"
 #include "corenetwork.h"
 #include "coresession.h"
 
-INIT_SYNCABLE_OBJECT(CoreAliasManager)
-CoreAliasManager::CoreAliasManager(CoreSession *parent)
-  : AliasManager(parent)
+CoreAliasManager::CoreAliasManager(CoreSession* parent)
+    : AliasManager(parent)
 {
-  CoreSession *session = qobject_cast<CoreSession *>(parent);
-  if(!session) {
-    qWarning() << "CoreAliasManager: unable to load Aliases. Parent is not a Coresession!";
-    loadDefaults();
-    return;
-  }
-
-  initSetAliases(Core::getUserSetting(session->user(), "Aliases").toMap());
-  if(isEmpty())
-    loadDefaults();
+    auto* session = qobject_cast<CoreSession*>(parent);
+    if (!session) {
+        qWarning() << "CoreAliasManager: unable to load Aliases. Parent is not a Coresession!";
+        loadDefaults();
+        return;
+    }
+
+    initSetAliases(Core::getUserSetting(session->user(), "Aliases").toMap());
+    if (isEmpty())
+        loadDefaults();
+
+    // we store our settings whenever they change
+    connect(this, &SyncableObject::updatedRemotely, this, &CoreAliasManager::save);
 }
 
-void CoreAliasManager::save() const {
-  CoreSession *session = qobject_cast<CoreSession *>(parent());
-  if(!session) {
-    qWarning() << "CoreAliasManager: unable to save Aliases. Parent is not a Coresession!";
-    return;
-  }
+void CoreAliasManager::save() const
+{
+    auto* session = qobject_cast<CoreSession*>(parent());
+    if (!session) {
+        qWarning() << "CoreAliasManager: unable to save Aliases. Parent is not a Coresession!";
+        return;
+    }
 
-  Core::setUserSetting(session->user(), "Aliases", initAliases());
+    Core::setUserSetting(session->user(), "Aliases", initAliases());
 }
 
-const Network *CoreAliasManager::network(NetworkId id) const {
-  return qobject_cast<CoreSession *>(parent())->network(id);
+const Network* CoreAliasManager::network(NetworkId id) const
+{
+    return qobject_cast<CoreSession*>(parent())->network(id);
 }
 
-void CoreAliasManager::loadDefaults() {
-  foreach(Alias alias, AliasManager::defaults()) {
-    addAlias(alias.name, alias.expansion);
-  }
+void CoreAliasManager::loadDefaults()
+{
+    foreach (Alias alias, AliasManager::defaults()) {
+        addAlias(alias.name, alias.expansion);
+    }
 }