From 6acdbba4d904b8ee764f0d564675357a46d43fa8 Mon Sep 17 00:00:00 2001 From: Richard Kettlewell Date: Sat, 6 Dec 2008 17:00:35 +0000 Subject: [PATCH 1/1] Grey out edit playlists menu item if server does not appear to support playlists. --- disobedience/disobedience.h | 1 + disobedience/menu.c | 4 ++++ disobedience/playlists.c | 2 ++ 3 files changed, 7 insertions(+) diff --git a/disobedience/disobedience.h b/disobedience/disobedience.h index 3d9d1d2..547cfc8 100644 --- a/disobedience/disobedience.h +++ b/disobedience/disobedience.h @@ -262,6 +262,7 @@ extern char **playlists; extern int nplaylists; extern GtkWidget *playlists_widget; extern GtkWidget *playlists_menu; +extern GtkWidget *editplaylists_widget; #endif /* DISOBEDIENCE_H */ diff --git a/disobedience/menu.c b/disobedience/menu.c index d2f190d..b8ba439 100644 --- a/disobedience/menu.c +++ b/disobedience/menu.c @@ -28,6 +28,7 @@ static GtkWidget *selectnone_widget; static GtkWidget *properties_widget; GtkWidget *playlists_widget; GtkWidget *playlists_menu; +GtkWidget *editplaylists_widget; /** @brief Main menu widgets */ GtkItemFactory *mainmenufactory; @@ -403,11 +404,14 @@ GtkWidget *menubar(GtkWidget *w) { "/Control/Activate playlist"); playlists_menu = gtk_item_factory_get_widget(mainmenufactory, "/Control/Activate playlist"); + editplaylists_widget = gtk_item_factory_get_widget(mainmenufactory, + "/Edit/Edit playlists"); assert(selectall_widget != 0); assert(selectnone_widget != 0); assert(properties_widget != 0); assert(playlists_widget != 0); assert(playlists_menu != 0); + assert(editplaylists_widget != 0); GtkWidget *edit_widget = gtk_item_factory_get_widget(mainmenufactory, "/Edit"); diff --git a/disobedience/playlists.c b/disobedience/playlists.c index fa15a29..add990d 100644 --- a/disobedience/playlists.c +++ b/disobedience/playlists.c @@ -112,6 +112,8 @@ static void menu_playlists_changed(const char attribute((unused)) *event, } gtk_widget_set_sensitive(playlists_widget, nplaylists > 0); + gtk_widget_set_sensitive(editplaylists_widget, + nplaylists >= 0); } void edit_playlists(gpointer attribute((unused)) callback_data, -- 2.11.0