diff options
author | 2009-11-30 21:44:26 +0100 | |
---|---|---|
committer | 2009-11-30 21:47:49 +0100 | |
commit | 7e20827fce4ac2609a834329e16fad363c58a201 (patch) | |
tree | e9353fcf825403bbe757cffa23a7fc5cd1190406 /plugins/gtkui/fileman.c | |
parent | 312708ff37f4edd0f4d5777b63ffc0af7c7237da (diff) |
ported open/add files into gtkui plugin
Diffstat (limited to 'plugins/gtkui/fileman.c')
-rw-r--r-- | plugins/gtkui/fileman.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/plugins/gtkui/fileman.c b/plugins/gtkui/fileman.c new file mode 100644 index 00000000..14bfddca --- /dev/null +++ b/plugins/gtkui/fileman.c @@ -0,0 +1,39 @@ +#include "../../deadbeef.h" +#include <gtk/gtk.h> +#include "gtkui.h" +#include "gtkplaylist.h" + +static void +add_dirs_worker (void *data) { + GSList *lst = (GSList *)data; + gtkpl_add_dirs (&main_playlist, lst); +} + +void +gtkui_add_dirs (GSList *lst) { + deadbeef->thread_start (add_dirs_worker, lst); +} + +static void +add_files_worker (void *data) { + GSList *lst = (GSList *)data; + gtkpl_add_files (&main_playlist, lst); +} + +void +gtkui_add_files (struct _GSList *lst) { + deadbeef->thread_start (add_files_worker, lst); +} + +static void +open_files_worker (void *data) { + GSList *lst = (GSList *)data; + gtkpl_add_files (&main_playlist, lst); + deadbeef->sendmessage (M_PLAYSONG, 0, 0, 0); +} + +void +gtkui_open_files (struct _GSList *lst) { + deadbeef->pl_free (); + deadbeef->thread_start (open_files_worker, lst); +} |