Fitting the SyncableObjects to the new Style
[quassel.git] / src / core / corealiasmanager.cpp
index 8fcdb02..68c3881 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-08 by the Quassel Project                          *
+ *   Copyright (C) 2005-09 by the Quassel Project                          *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
 #include "corealiasmanager.h"
 
 #include "core.h"
+#include "corenetwork.h"
 #include "coresession.h"
 
+INIT_SYNCABLE_OBJECT(CoreAliasManager)
 CoreAliasManager::CoreAliasManager(CoreSession *parent)
   : AliasManager(parent)
 {
@@ -33,15 +35,11 @@ CoreAliasManager::CoreAliasManager(CoreSession *parent)
     return;
   }
 
-  QVariantMap aliases = Core::getUserSetting(session->user(), "Aliases").toMap();
-  if(aliases.isEmpty()) {
+  initSetAliases(Core::getUserSetting(session->user(), "Aliases").toMap());
+  if(isEmpty())
     loadDefaults();
-  } else {
-    initSetAliases(aliases);
-  }
 }
 
-
 CoreAliasManager::~CoreAliasManager() {
   CoreSession *session = qobject_cast<CoreSession *>(parent());
   if(!session) {
@@ -52,7 +50,12 @@ CoreAliasManager::~CoreAliasManager() {
   Core::setUserSetting(session->user(), "Aliases", initAliases());
 }
 
+const Network *CoreAliasManager::network(NetworkId id) const {
+  return qobject_cast<CoreSession *>(parent())->network(id);
+}
+
 void CoreAliasManager::loadDefaults() {
-  // Default Aliases:
-  addAlias("j", "/join $1");
+  foreach(Alias alias, AliasManager::defaults()) {
+    addAlias(alias.name, alias.expansion);
+  }
 }