diff options
author | waker <wakeroid@gmail.com> | 2010-12-03 22:23:12 +0100 |
---|---|---|
committer | waker <wakeroid@gmail.com> | 2010-12-03 22:23:12 +0100 |
commit | f45c578fb976909ec550032a0f4b77f5ba7efcf9 (patch) | |
tree | ebb46bbedadaa0f6bd4add2c1d13eea0cd09e3b8 /plugins/gtkui/callbacks.c | |
parent | feb5334dbf1ff90578652ec46eb0461d18b25a83 (diff) |
added Edit->Sort By menu
Diffstat (limited to 'plugins/gtkui/callbacks.c')
-rw-r--r-- | plugins/gtkui/callbacks.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/plugins/gtkui/callbacks.c b/plugins/gtkui/callbacks.c index 3f50b2ec..1c0ae6d5 100644 --- a/plugins/gtkui/callbacks.c +++ b/plugins/gtkui/callbacks.c @@ -1092,3 +1092,56 @@ title_formatting_help_link_create (gchar *widget_name, gchar *string1, gchar *st return link; } + +void +on_album1_activate (GtkMenuItem *menuitem, + gpointer user_data) +{ + +} + + +void +on_artist1_activate (GtkMenuItem *menuitem, + gpointer user_data) +{ + +} + + +void +on_date1_activate (GtkMenuItem *menuitem, + gpointer user_data) +{ + +} + + +void +on_custom2_activate (GtkMenuItem *menuitem, + gpointer user_data) +{ + GtkWidget *dlg = create_sortbydlg (); + + GtkComboBox *combo = GTK_COMBO_BOX (lookup_widget (dlg, "sortorder")); + GtkEntry *entry = GTK_ENTRY (lookup_widget (dlg, "sortfmt")); + + gtk_combo_box_set_active (combo, deadbeef->conf_get_int ("gtkui.sortby_order", 0)); + gtk_entry_set_text (entry, deadbeef->conf_get_str ("gtkui.sortby_fmt", "")); + + int r = gtk_dialog_run (GTK_DIALOG (dlg)); + + int order = gtk_combo_box_get_active (combo); + const char *fmt = gtk_entry_get_text (entry); + + deadbeef->conf_set_int ("gtkui.sortby_order", order); + deadbeef->conf_set_str ("gtkui.sortby_fmt", fmt); + + deadbeef->pl_sort (PL_MAIN, -1, fmt, order == 0 ? 1 : 0); + + gtk_widget_destroy (dlg); + + DdbListview *pl = DDB_LISTVIEW (lookup_widget (mainwin, "playlist")); + ddb_listview_refresh (pl, DDB_REFRESH_LIST | DDB_EXPOSE_LIST); +} + |