/*
* This file is part of DisOrder.
- * Copyright (C) 2006, 2007 Richard Kettlewell
+ * Copyright (C) 2006-2008 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
/** @brief Called when a track is adopted */
void (*adopted)(void *v, const char *id, const char *who);
+
+ /** @brief Called when a new playlist is created */
+ void (*playlist_created)(void *v, const char *playlist, const char *sharing);
+
+ /** @brief Called when a playlist is modified */
+ void (*playlist_modified)(void *v, const char *playlist, const char *sharing);
+
+ /** @brief Called when a new playlist is deleted */
+ void (*playlist_deleted)(void *v, const char *playlist);
+
+ /** @brief Called when a global pref is changed or delete */
+ void (*global_pref)(void *v, const char *pref, const char *value/*or NULL*/);
} disorder_eclient_log_callbacks;
/* State bits */
*
* @p error will be NULL on success. In this case @p value will be the result
* (which might be NULL for disorder_eclient_get(),
- * disorder_eclient_get_global() and disorder_eclient_userinfo()).
+ * disorder_eclient_get_global(), disorder_eclient_userinfo() and
+ * disorder_eclient_playlist_get_share()).
*
* @p error will be non-NULL on failure. In this case @p value is always NULL.
*/
* @param vec Pointer to response list
*
* @p error will be NULL on success. In this case @p nvec and @p vec will give
- * the result.
+ * the result, or be -1 and NULL respectively e.g. from
+ * disorder_eclient_playlist_get() if there is no such playlist.
*
* @p error will be non-NULL on failure. In this case @p nvec and @p vec will
* be 0 and NULL.
void *v);
/* add a track to the queue */
+int disorder_eclient_playafter(disorder_eclient *c,
+ const char *target,
+ int ntracks,
+ const char **tracks,
+ disorder_eclient_no_response *completed,
+ void *v);
+/* insert multiple tracks to an arbitrary point in the queue */
+
int disorder_eclient_pause(disorder_eclient *c,
disorder_eclient_no_response *completed,
void *v);
void *v);
/* Get/set preference values */
+int disorder_eclient_get_global(disorder_eclient *c,
+ disorder_eclient_string_response *completed,
+ const char *pref,
+ void *v);
+int disorder_eclient_set_global(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ const char *pref,
+ const char *value,
+ void *v);
+int disorder_eclient_unset_global(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ const char *pref,
+ void *v);
+/* Get/set global prefs */
+
int disorder_eclient_search(disorder_eclient *c,
disorder_eclient_list_response *completed,
const char *terms,
disorder_eclient_no_response *completed,
const char *id,
void *v);
+int disorder_eclient_playlists(disorder_eclient *c,
+ disorder_eclient_list_response *completed,
+ void *v);
+int disorder_eclient_playlist_delete(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ const char *playlist,
+ void *v);
+int disorder_eclient_playlist_lock(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ const char *playlist,
+ void *v);
+int disorder_eclient_playlist_unlock(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ void *v);
+int disorder_eclient_playlist_set_share(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ const char *playlist,
+ const char *sharing,
+ void *v);
+int disorder_eclient_playlist_get_share(disorder_eclient *c,
+ disorder_eclient_string_response *completed,
+ const char *playlist,
+ void *v);
+int disorder_eclient_playlist_set(disorder_eclient *c,
+ disorder_eclient_no_response *completed,
+ const char *playlist,
+ char **tracks,
+ int ntracks,
+ void *v);
+int disorder_eclient_playlist_get(disorder_eclient *c,
+ disorder_eclient_list_response *completed,
+ const char *playlist,
+ void *v);
+
#endif
/*