summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-05-10 21:58:38 +0200
committerGravatar waker <wakeroid@gmail.com>2011-05-10 21:58:38 +0200
commit32a2a4cea0d9397d7cd618c8ce835aac980fe359 (patch)
treea1e6c99690debfceda859945f116510d34154da2
parent9d529eb05995069583ffa3e07670c0ea23b42b15 (diff)
added remaining plt_* replacements; minor fixups
-rw-r--r--deadbeef.h48
-rw-r--r--playlist.c49
-rw-r--r--playlist.h11
-rw-r--r--plugins.c4
-rw-r--r--plugins/gtkui/mainplaylist.c6
5 files changed, 74 insertions, 44 deletions
diff --git a/deadbeef.h b/deadbeef.h
index 79553c64..61faad96 100644
--- a/deadbeef.h
+++ b/deadbeef.h
@@ -458,7 +458,7 @@ typedef struct {
int (*plt_remove_item) (ddb_playlist_t *playlist, DB_playItem_t *it);
int (*plt_getselcount) (ddb_playlist_t *playlist);
float (*plt_get_totaltime) (ddb_playlist_t *plt);
- int (*plt_getcount) (ddb_playlist_t *plt, int iter);
+ int (*plt_get_item_count) (ddb_playlist_t *plt, int iter);
int (*plt_delete_selected) (ddb_playlist_t *plt);
void (*plt_set_cursor) (ddb_playlist_t *plt, int iter, int cursor);
int (*plt_get_cursor) (ddb_playlist_t *plt, int iter);
@@ -466,15 +466,21 @@ typedef struct {
void (*plt_crop_selected) (ddb_playlist_t *plt);
DB_playItem_t *(*plt_get_first) (ddb_playlist_t *plt, int iter);
DB_playItem_t *(*plt_get_last) (ddb_playlist_t *plt, int iter);
+ DB_playItem_t * (*plt_get_item_for_idx) (ddb_playlist_t *playlist, int idx, int iter);
void (*plt_move_items) (ddb_playlist_t *to, int iter, ddb_playlist_t *from, DB_playItem_t *drop_before, uint32_t *indexes, int count);
void (*plt_copy_items) (ddb_playlist_t *to, int iter, ddb_playlist_t * from, DB_playItem_t *before, uint32_t *indices, int cnt);
void (*plt_search_reset) (ddb_playlist_t *plt);
void (*plt_search_process) (ddb_playlist_t *plt, const char *text);
+ void (*plt_sort) (ddb_playlist_t *plt, int iter, int id, const char *format, int ascending);
// add files and folders to current playlist
int (*plt_add_file) (ddb_playlist_t *plt, const char *fname, int (*cb)(DB_playItem_t *it, void *data), void *user_data);
int (*plt_add_dir) (ddb_playlist_t *plt, const char *dirname, int (*cb)(DB_playItem_t *it, void *data), void *user_data);
+ // cuesheet support
+ DB_playItem_t *(*plt_insert_cue_from_buffer) (ddb_playlist_t *plt, DB_playItem_t *after, DB_playItem_t *origin, const uint8_t *buffer, int buffersize, int numsamples, int samplerate);
+ DB_playItem_t * (*plt_insert_cue) (ddb_playlist_t *plt, DB_playItem_t *after, DB_playItem_t *origin, int numsamples, int samplerate);
+
// playlist locking
void (*pl_lock) (void);
void (*pl_unlock) (void);
@@ -498,25 +504,50 @@ typedef struct {
// if you don't get what they do -- look in the code
// NOTE: many of pl_* functions, especially the ones that operate on current
// playlist, are going to be nuked somewhere around 0.6 release, in favor of
- // more explicit plt_* family
+ // more explicit plt_* family.
+ // they are marked with DEPRECATED comment
+
+ // DEPRECATED: please use plt_get_item_idx
int (*pl_get_idx_of) (DB_playItem_t *it);
int (*pl_get_idx_of_iter) (DB_playItem_t *it, int iter);
+
+ // DEPRECATED: please use plt_get_item_for_idx
DB_playItem_t * (*pl_get_for_idx) (int idx);
DB_playItem_t * (*pl_get_for_idx_and_iter) (int idx, int iter);
+
+ // DEPRECATED: please use plt_get_totaltime
float (*pl_get_totaltime) (void);
+
+ // DEPRECATED: please use plt_get_item_count
int (*pl_getcount) (int iter);
+
+ // DEPRECATED: please use plt_delete_selected
int (*pl_delete_selected) (void);
+
+ // DEPRECATED: please use plt_set_cursor
void (*pl_set_cursor) (int iter, int cursor);
+
+ // DEPRECATED: please use plt_get_cursor
int (*pl_get_cursor) (int iter);
+
+ // DEPRECATED: please use plt_crop_selected
+ void (*pl_crop_selected) (void);
+
+ // DEPRECATED: please use plt_getselcount
+ int (*pl_getselcount) (void);
+
+ // DEPRECATED: please use plt_get_first
+ DB_playItem_t *(*pl_get_first) (int iter);
+
+ // DEPRECATED: please use plt_get_last
+ DB_playItem_t *(*pl_get_last) (int iter);
+
+
void (*pl_set_selected) (DB_playItem_t *it, int sel);
int (*pl_is_selected) (DB_playItem_t *it);
int (*pl_save_current) (void);
int (*pl_save_all) (void);
void (*pl_select_all) (void);
- void (*pl_crop_selected) (void);
- int (*pl_getselcount) (void);
- DB_playItem_t *(*pl_get_first) (int iter);
- DB_playItem_t *(*pl_get_last) (int iter);
DB_playItem_t *(*pl_get_next) (DB_playItem_t *it, int iter);
DB_playItem_t *(*pl_get_prev) (DB_playItem_t *it, int iter);
/*
@@ -577,7 +608,6 @@ typedef struct {
float (*pl_get_item_duration) (DB_playItem_t *it);
uint32_t (*pl_get_item_flags) (DB_playItem_t *it);
void (*pl_set_item_flags) (DB_playItem_t *it, uint32_t flags);
- void (*plt_sort) (ddb_playlist_t *plt, int iter, int id, const char *format, int ascending);
void (*pl_items_copy_junk)(DB_playItem_t *from, DB_playItem_t *first, DB_playItem_t *last);
// idx is one of DDB_REPLAYGAIN_* constants
void (*pl_set_item_replaygain) (DB_playItem_t *it, int idx, float value);
@@ -590,10 +620,6 @@ typedef struct {
void (*pl_playqueue_remove) (DB_playItem_t *it);
int (*pl_playqueue_test) (DB_playItem_t *it);
- // cuesheet support
- DB_playItem_t *(*plt_insert_cue_from_buffer) (ddb_playlist_t *plt, DB_playItem_t *after, DB_playItem_t *origin, const uint8_t *buffer, int buffersize, int numsamples, int samplerate);
- DB_playItem_t * (*plt_insert_cue) (ddb_playlist_t *plt, DB_playItem_t *after, DB_playItem_t *origin, int numsamples, int samplerate);
-
// volume control
void (*volume_set_db) (float dB);
float (*volume_get_db) (void);
diff --git a/playlist.c b/playlist.c
index 063e2d42..cc2d896d 100644
--- a/playlist.c
+++ b/playlist.c
@@ -1723,7 +1723,7 @@ plt_remove_item (playlist_t *playlist, playItem_t *it) {
}
int
-plt_getcount (playlist_t *plt, int iter) {
+plt_get_item_count (playlist_t *plt, int iter) {
return plt->count[iter];
}
@@ -1761,7 +1761,7 @@ pl_getselcount (void) {
}
playItem_t *
-pl_get_for_idx_and_iter (int idx, int iter) {
+plt_get_item_for_idx (playlist_t *playlist, int idx, int iter) {
LOCK;
playItem_t *it = playlist->head[iter];
while (idx--) {
@@ -1779,17 +1779,20 @@ pl_get_for_idx_and_iter (int idx, int iter) {
}
playItem_t *
-pl_get_for_idx (int idx) {
- return pl_get_for_idx_and_iter (idx, PL_MAIN);
+pl_get_for_idx_and_iter (int idx, int iter) {
+ LOCK;
+ playItem_t *it = plt_get_item_for_idx (playlist, idx, iter);
+ UNLOCK;
+ return it;
}
-int
-pl_get_idx_of (playItem_t *it) {
- return pl_get_idx_of_iter (it, PL_MAIN);
+playItem_t *
+pl_get_for_idx (int idx) {
+ return pl_get_for_idx_and_iter (idx, PL_MAIN);
}
int
-pl_get_idx_of_iter (playItem_t *it, int iter) {
+plt_get_item_idx (playlist_t *playlist, playItem_t *it, int iter) {
LOCK;
playItem_t *c = playlist->head[iter];
int idx = 0;
@@ -1805,6 +1808,19 @@ pl_get_idx_of_iter (playItem_t *it, int iter) {
return idx;
}
+int
+pl_get_idx_of (playItem_t *it) {
+ return pl_get_idx_of_iter (it, PL_MAIN);
+}
+
+int
+pl_get_idx_of_iter (playItem_t *it, int iter) {
+ LOCK;
+ int idx = plt_get_item_idx (playlist, it, iter);
+ UNLOCK;
+ return idx;
+}
+
playItem_t *
plt_insert_item (playlist_t *playlist, playItem_t *after, playItem_t *it) {
LOCK;
@@ -3819,23 +3835,6 @@ pl_set_item_flags (playItem_t *it, uint32_t flags) {
UNLOCK;
}
-int
-plt_get_item_idx (playlist_t *plt, playItem_t *it, int iter) {
- LOCK;
- playItem_t *c = plt->head[iter];
- int idx = 0;
- while (c && c != it) {
- c = c->next[iter];
- idx++;
- }
- if (!c) {
- UNLOCK;
- return -1;
- }
- UNLOCK;
- return idx;
-}
-
playlist_t *
pl_get_playlist (playItem_t *it) {
LOCK;
diff --git a/playlist.h b/playlist.h
index ef42ff59..3bde133c 100644
--- a/playlist.h
+++ b/playlist.h
@@ -200,7 +200,7 @@ int
pl_getcount (int iter);
int
-plt_getcount (playlist_t *plt, int iter);
+plt_get_item_count (playlist_t *plt, int iter);
int
pl_getselcount (void);
@@ -212,9 +212,15 @@ playItem_t *
pl_get_for_idx (int idx);
playItem_t *
+plt_get_item_for_idx (playlist_t *playlist, int idx, int iter);
+
+playItem_t *
pl_get_for_idx_and_iter (int idx, int iter);
int
+plt_get_item_idx (playlist_t *playlist, playItem_t *it, int iter);
+
+int
pl_get_idx_of (playItem_t *it);
int
@@ -428,9 +434,6 @@ pl_set_order (int order);
int
pl_get_order (void);
-int
-plt_get_item_idx (playlist_t *plt, playItem_t *it, int iter);
-
playlist_t *
pl_get_playlist (playItem_t *it);
diff --git a/plugins.c b/plugins.c
index caba68bc..0eff6716 100644
--- a/plugins.c
+++ b/plugins.c
@@ -177,9 +177,11 @@ static DB_functions_t deadbeef_api = {
.pl_set_item_replaygain = (void (*)(DB_playItem_t *it, int idx, float value))pl_set_item_replaygain,
.pl_get_item_replaygain = (float (*)(DB_playItem_t *it, int idx))pl_get_item_replaygain,
.plt_get_totaltime = (float (*) (ddb_playlist_t *plt))plt_get_totaltime,
+ .plt_get_item_idx = (int (*) (ddb_playlist_t *playlist, DB_playItem_t *it, int iter))plt_get_item_idx,
+ .plt_get_item_for_idx = (DB_playItem_t * (*) (ddb_playlist_t *playlist, int idx, int iter))plt_get_item_for_idx,
.pl_get_totaltime = pl_get_totaltime,
.pl_getcount = pl_getcount,
- .plt_getcount = (int (*)(ddb_playlist_t *plt, int iter))plt_getcount,
+ .plt_get_item_count = (int (*)(ddb_playlist_t *plt, int iter))plt_get_item_count,
.plt_delete_selected = (int (*) (ddb_playlist_t *plt))plt_delete_selected,
.pl_delete_selected = pl_delete_selected,
.plt_set_cursor = (void (*)(ddb_playlist_t *plt, int iter, int cursor))plt_set_cursor,
diff --git a/plugins/gtkui/mainplaylist.c b/plugins/gtkui/mainplaylist.c
index f3cbde3d..12ec24cf 100644
--- a/plugins/gtkui/mainplaylist.c
+++ b/plugins/gtkui/mainplaylist.c
@@ -107,14 +107,14 @@ int main_get_idx (DdbListviewIter it) {
}
void
-main_drag_n_drop (DdbListviewIter before, ddb_playlist_t *from_playlist, uint32_t *indices, int length, int copy) {
+main_drag_n_drop (DdbListviewIter before, DdbPlaylistHandle from_playlist, uint32_t *indices, int length, int copy) {
deadbeef->pl_lock ();
ddb_playlist_t *plt = deadbeef->plt_get_curr ();
if (copy) {
- deadbeef->plt_copy_items (plt, PL_MAIN, from_playlist, (DB_playItem_t *)before, indices, length);
+ deadbeef->plt_copy_items (plt, PL_MAIN, (ddb_playlist_t *)from_playlist, (DB_playItem_t *)before, indices, length);
}
else {
- deadbeef->plt_move_items (plt, PL_MAIN, from_playlist, (DB_playItem_t *)before, indices, length);
+ deadbeef->plt_move_items (plt, PL_MAIN, (ddb_playlist_t *)from_playlist, (DB_playItem_t *)before, indices, length);
}
deadbeef->plt_unref (plt);
deadbeef->pl_unlock ();