aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuillaume Desmottes <gdesmott@gnome.org>2008-01-07 03:15:32 +0800
committerGuillaume Desmottes <gdesmott@gnome.org>2008-01-07 03:15:32 +0800
commit1fb73f7e98bf397d7b0656784881a8913cd6f211 (patch)
tree961bdcca83928b296186af83f11ffadeae722620
parentec6638579ec741b7623e1052ee182e0d2bb8da76 (diff)
downloadgsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.tar
gsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.tar.gz
gsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.tar.bz2
gsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.tar.lz
gsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.tar.xz
gsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.tar.zst
gsoc2013-empathy-1fb73f7e98bf397d7b0656784881a8913cd6f211.zip
add empathy_irc_network_remove_server
-rw-r--r--libempathy/empathy-irc-network.c21
-rw-r--r--libempathy/empathy-irc-network.h3
2 files changed, 24 insertions, 0 deletions
diff --git a/libempathy/empathy-irc-network.c b/libempathy/empathy-irc-network.c
index 1340ece01..fa422e9fc 100644
--- a/libempathy/empathy-irc-network.c
+++ b/libempathy/empathy-irc-network.c
@@ -237,3 +237,24 @@ empathy_irc_network_add_server (EmpathyIrcNetwork *self,
priv->servers = g_slist_append (priv->servers, g_object_ref (server));
g_signal_emit (self, signals[MODIFIED], 0);
}
+
+void
+empathy_irc_network_remove_server (EmpathyIrcNetwork *self,
+ EmpathyIrcServer *server)
+{
+ EmpathyIrcNetworkPrivate *priv;
+ GSList *l;
+
+ g_return_if_fail (EMPATHY_IS_IRC_NETWORK (self));
+ g_return_if_fail (server != NULL && EMPATHY_IS_IRC_SERVER (server));
+
+ priv = EMPATHY_IRC_NETWORK_GET_PRIVATE (self);
+
+ l = g_slist_find (priv->servers, server);
+ if (l == NULL)
+ return;
+
+ g_object_unref (l->data);
+ priv->servers = g_slist_delete_link (priv->servers, l);
+ g_signal_emit (self, signals[MODIFIED], 0);
+}
diff --git a/libempathy/empathy-irc-network.h b/libempathy/empathy-irc-network.h
index c1412af1e..51b3dbab2 100644
--- a/libempathy/empathy-irc-network.h
+++ b/libempathy/empathy-irc-network.h
@@ -70,6 +70,9 @@ empathy_irc_network_get_servers (EmpathyIrcNetwork *network);
void empathy_irc_network_add_server (EmpathyIrcNetwork *network,
EmpathyIrcServer *server);
+void empathy_irc_network_remove_server (EmpathyIrcNetwork *network,
+ EmpathyIrcServer *server);
+
G_END_DECLS
#endif /* __EMPATHY_IRC_NETWORK_H__ */