[Xfce4-commits] <parole:master> Add the remember-playlist option to the Preferences dialog

Simon Steinbeiss noreply at xfce.org
Mon Jul 23 01:26:44 CEST 2012


Updating branch refs/heads/master
         to 32aa0d27148ac51fe90350bfbda939254a7435a3 (commit)
       from babfc79595810f2cc9c8f4f0541b4777cc789e71 (commit)

commit 32aa0d27148ac51fe90350bfbda939254a7435a3
Author: Simon Steinbeiss <ochosi at xfce.org>
Date:   Sun Jul 22 01:51:41 2012 +0200

    Add the remember-playlist option to the Preferences dialog

 data/interfaces/parole-settings.ui |   16 ++++++++++++++++
 src/parole-conf-dialog.c           |   10 ++++++++++
 src/parole-conf.c                  |    8 ++++++++
 src/parole-medialist.c             |   20 +++++++++-----------
 4 files changed, 43 insertions(+), 11 deletions(-)

diff --git a/data/interfaces/parole-settings.ui b/data/interfaces/parole-settings.ui
index 142bdb0..9f95b9c 100644
--- a/data/interfaces/parole-settings.ui
+++ b/data/interfaces/parole-settings.ui
@@ -501,6 +501,22 @@
                             <property name="position">2</property>
                           </packing>
                         </child>
+			<child>
+                          <object class="GtkCheckButton" id="remember-playlist">
+                            <property name="label" translatable="yes">Remember playlist</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_action_appearance">False</property>
+                            <property name="draw_indicator">True</property>
+                            <signal name="toggled" handler="remember_playlist_toggled_cb" swapped="no"/>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">3</property>
+                          </packing>
+                        </child>
                       </object>
                     </child>
                   </object>
diff --git a/src/parole-conf-dialog.c b/src/parole-conf-dialog.c
index 7f3dc1c..00257d3 100644
--- a/src/parole-conf-dialog.c
+++ b/src/parole-conf-dialog.c
@@ -84,6 +84,9 @@ void		remove_duplicated_toggled_cb			(GtkToggleButton *widget,
 
 void		start_playing_opened_toggled_cb			(GtkToggleButton *widget,
 								 ParoleConfDialog *self);
+
+void		remember_playlist_toggled_cb			(GtkToggleButton *widget,
+								 ParoleConfDialog *self);
 								 
 void		multimedia_keys_toggled_cb			(GtkToggleButton *widget,
 								 ParoleConfDialog *self);
@@ -142,6 +145,13 @@ void start_playing_opened_toggled_cb (GtkToggleButton *widget, ParoleConfDialog
 		  NULL);
 }
 
+void remember_playlist_toggled_cb (GtkToggleButton *widget, ParoleConfDialog *self)
+{
+    g_object_set (G_OBJECT (self->priv->conf),
+		  "remember-playlist", gtk_toggle_button_get_active (widget),
+		  NULL);
+}
+
 void multimedia_keys_toggled_cb (GtkToggleButton *widget, ParoleConfDialog *self)
 {
     g_object_set (G_OBJECT (self->priv->conf),
diff --git a/src/parole-conf.c b/src/parole-conf.c
index b583a48..fccc674 100644
--- a/src/parole-conf.c
+++ b/src/parole-conf.c
@@ -72,6 +72,7 @@ enum
     PROP_REPLACE_PLAYLIST,
     PROP_SCAN_FOLDER_RECURSIVELY,
     PROP_START_PLAYING_OPENED_FILES,
+    PROP_REMEMBER_PLAYLIST,
     PROP_REMOVE_DUPLICATED_PLAYLIST_ENTRIES,
     N_PROP
 };
@@ -376,6 +377,13 @@ parole_conf_class_init (ParoleConfClass *klass)
                                                            TRUE,
                                                            G_PARAM_READWRITE));
 
+    g_object_class_install_property (object_class,
+                                     PROP_REMEMBER_PLAYLIST,
+                                     g_param_spec_boolean ("remember-playlist",
+                                                           NULL, NULL,
+                                                           FALSE,
+                                                           G_PARAM_READWRITE));
+
     /**
      * 
      * Remove duplicated entries from the playlist.
diff --git a/src/parole-medialist.c b/src/parole-medialist.c
index cdd75dc..01bdf90 100644
--- a/src/parole-medialist.c
+++ b/src/parole-medialist.c
@@ -1154,13 +1154,11 @@ play_opened_files_activated_cb (GtkWidget *mi, ParoleConf *conf)
 }
 
 static void
-save_list_activated_cb (GtkWidget *mi)
+remember_playlist_activated_cb (GtkWidget *mi, ParoleConf *conf)
 {
-    gboolean active;
-    
-    active = gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (mi));
-    
-    parole_rc_write_entry_bool ("SAVE_LIST_ON_EXIT", PAROLE_RC_GROUP_GENERAL, active);
+    g_object_set (G_OBJECT (conf),
+		  "remember-playlist", gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (mi)),
+		  NULL);
 }
 
 static void
@@ -1281,14 +1279,14 @@ parole_media_list_show_menu (ParoleMediaList *list, GdkEventButton *ev)
     /**
      * Remember media list entries
      **/
+    g_object_get (G_OBJECT (list->priv->conf),
+		  "remember-playlist", &val,
+		  NULL);
     mi = gtk_check_menu_item_new_with_label (_("Remember playlist"));
     gtk_widget_set_sensitive (mi, TRUE);
-    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi),
-				    parole_rc_read_entry_bool ("SAVE_LIST_ON_EXIT", 
-							        PAROLE_RC_GROUP_GENERAL, 
-								FALSE));
+    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), val);
     g_signal_connect (mi, "activate",
-                      G_CALLBACK (save_list_activated_cb), NULL);
+                      G_CALLBACK (remember_playlist_activated_cb), list->priv->conf);
 			      
     gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
     


More information about the Xfce4-commits mailing list