X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/blobdiff_plain/591bec8587c71a025bcc83092145b0ef9ffbe944..bb33cc31764d50019c03815719ee442b6016c90e:/disobedience/queue-generic.h diff --git a/disobedience/queue-generic.h b/disobedience/queue-generic.h index c15b383..efd6400 100644 --- a/disobedience/queue-generic.h +++ b/disobedience/queue-generic.h @@ -1,6 +1,6 @@ /* * This file is part of DisOrder - * Copyright (C) 2006-2008 Richard Kettlewell + * Copyright (C) 2006-2009 Richard Kettlewell * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -104,11 +104,31 @@ struct queuelike { void (*drop)(struct queuelike *ql, int ntracks, char **tracks, char **ids, struct queue_entry *after_me); - /** @brief Stashed drag target row */ - GtkTreePath *drag_target; + /** @brief Source target list */ + const GtkTargetEntry *drag_source_targets; + + /** @brief Drag source actions */ + GdkDragAction drag_source_actions; + + /** @brief Destination target list */ + const GtkTargetEntry *drag_dest_targets; + + /** @brief Drag destination actions */ + GdkDragAction drag_dest_actions; + }; enum { + PLAYABLE_TRACKS_ID, + QUEUED_TRACKS_ID, + PLAYLIST_TRACKS_ID +}; + +#define PLAYABLE_TRACKS (char *)"text/x-disorder-playable-tracks" +#define QUEUED_TRACKS (char *)"text/x-disorder-queued-tracks" +#define PLAYLIST_TRACKS (char *)"text/x-disorder-playlist-tracks" + +enum { QUEUEPOINTER_COLUMN, FOREGROUND_COLUMN, BACKGROUND_COLUMN, @@ -157,6 +177,7 @@ gboolean ql_button_release(GtkWidget *widget, GdkEventButton *event, gpointer user_data); GtkWidget *init_queuelike(struct queuelike *ql); +void destroy_queuelike(struct queuelike *ql); void ql_update_list_store(struct queuelike *ql) ; void ql_update_row(struct queue_entry *q, GtkTreeIter *iter);