[Goodies-commits] r4639 - xfmpc/trunk/src
Mike Massonnet
mmassonnet at xfce.org
Sun Apr 20 21:40:03 CEST 2008
Author: mmassonnet
Date: 2008-04-20 19:40:03 +0000 (Sun, 20 Apr 2008)
New Revision: 4639
Modified:
xfmpc/trunk/src/dbbrowser.c
xfmpc/trunk/src/mpdclient.c
Log:
Reload XfmpcDbbrowser on database changes
* src/mpdclient.c:
- New signal "database-changed"
* src/dbbrowser.c(xfmpc_dbbrowser_init):
- Connect signal "database-changed"
Modified: xfmpc/trunk/src/dbbrowser.c
===================================================================
--- xfmpc/trunk/src/dbbrowser.c 2008-04-20 19:39:57 UTC (rev 4638)
+++ xfmpc/trunk/src/dbbrowser.c 2008-04-20 19:40:03 UTC (rev 4639)
@@ -193,10 +193,8 @@
/* === Signals === */
g_signal_connect_swapped (dbbrowser->mpdclient, "connected",
G_CALLBACK (xfmpc_dbbrowser_reload), dbbrowser);
-#if 0
g_signal_connect_swapped (dbbrowser->mpdclient, "database-changed",
- G_CALLBACK (cb_database_changed), dbbrowser);
-#endif
+ G_CALLBACK (xfmpc_dbbrowser_reload), dbbrowser);
/* Tree view */
g_signal_connect_swapped (priv->treeview, "row-activated",
G_CALLBACK (cb_row_activated), dbbrowser);
Modified: xfmpc/trunk/src/mpdclient.c
===================================================================
--- xfmpc/trunk/src/mpdclient.c 2008-04-20 19:39:57 UTC (rev 4638)
+++ xfmpc/trunk/src/mpdclient.c 2008-04-20 19:40:03 UTC (rev 4639)
@@ -41,6 +41,7 @@
SIG_TIME_CHANGED,
SIG_VOLUME_CHANGED,
SIG_STOPPED,
+ SIG_DATABASE_CHANGED,
SIG_PLAYLIST_CHANGED,
SIG_REPEAT,
SIG_RANDOM,
@@ -73,6 +74,7 @@
void (*time_changed) (XfmpcMpdclient *mpdclient, gint time, gint total_time, gpointer user_data);
void (*volume_changed) (XfmpcMpdclient *mpdclient, gint volume, gpointer user_data);
void (*stopped) (XfmpcMpdclient *mpdclient, gpointer user_data);
+ void (*database_changed) (XfmpcMpdclient *mpdclient, gpointer user_data);
void (*playlist_changed) (XfmpcMpdclient *mpdclient, gpointer user_data);
void (*repeat) (XfmpcMpdclient *mpdclient, gboolean repeat, gpointer user_data);
void (*random) (XfmpcMpdclient *mpdclient, gboolean random, gpointer user_data);
@@ -190,6 +192,14 @@
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ xfmpc_mpdclient_signals[SIG_DATABASE_CHANGED] =
+ g_signal_new ("database-changed", G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_FIRST|G_SIGNAL_ACTION,
+ G_STRUCT_OFFSET (XfmpcMpdclientClass, database_changed),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
+
xfmpc_mpdclient_signals[SIG_PLAYLIST_CHANGED] =
g_signal_new ("playlist-changed", G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_FIRST|G_SIGNAL_ACTION,
@@ -594,6 +604,9 @@
XfmpcMpdclient *mpdclient = XFMPC_MPDCLIENT (user_data);
g_return_if_fail (G_LIKELY (NULL != user_data));
+ if (what & MPD_CST_DATABASE)
+ g_signal_emit_by_name (mpdclient, "database-changed");
+
if (what & MPD_CST_PLAYLIST)
g_signal_emit_by_name (mpdclient, "playlist-changed");
More information about the Goodies-commits
mailing list