X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fomnplay.h;h=d336ed631df809949932dd4a529f2b19af15099b;hb=be35f211e1af32ce8940db1f10e2fb283bf1fe0a;hp=e36e8620c13943f24517102857b621d73f9b9e68;hpb=499664bbfa646b6280553d1dc2dfb71db8c2e4d9;p=omnplay diff --git a/src/omnplay.h b/src/omnplay.h index e36e862..d336ed6 100644 --- a/src/omnplay.h +++ b/src/omnplay.h @@ -48,6 +48,9 @@ typedef enum control_buttons BUTTON_LIBRARY_ADD, BUTTON_LIBRARY_REFRESH, + BUTTON_LIBRARY_FIND, + BUTTON_LIBRARY_FIND_NEXT, + BUTTON_LAST } control_buttons_t; @@ -86,6 +89,8 @@ typedef enum playlist_item_type #define MAX_PLAYLIST_ITEMS 1024 #define MAX_LIBRARY_ITEMS 10240 +#define PLAYLIST_ITEM_ERROR_LIB 1 +#define PLAYLIST_ITEM_ERROR_CUE 2 typedef struct playlist_item { @@ -97,6 +102,7 @@ typedef struct playlist_item playlist_item_type_t type; int omn_idx; int omn_offset; + int error; } playlist_item_t; #define MAX_PLAYERS 4 @@ -147,6 +153,9 @@ typedef struct omnplay_instance char filename[PATH_MAX]; char whois[PATH_MAX]; pthread_mutex_t lock; + pthread_t refresh_thread; + GtkWidget *refresh_ui[2]; + GtkWidget *search; } library; } omnplay_instance_t; @@ -166,7 +175,13 @@ void omnplay_library_draw(omnplay_instance_t* app); typedef void (*omnplay_get_content_cb_proc)(omnplay_instance_t* app, playlist_item_t *items, void* data); int omnplay_get_content(omnplay_instance_t* app, playlist_item_t *items, int limit, omnplay_get_content_cb_proc proc, void* data); - +int omnplay_whois_list(omnplay_instance_t* app, playlist_item_t *items, int* plimit); +int omnplay_library_load_file(playlist_item_t* items, int *pcount, char* filename); +playlist_item_t* omnplay_library_find(omnplay_instance_t* app, char* id); +int omnplay_library_normalize_item(omnplay_instance_t* app, playlist_item_t* item); +playlist_item_t* omnplay_library_get_selected(omnplay_instance_t* app, int *count); +void omnplay_playlist_normalize(omnplay_instance_t* app); +void omnplay_library_search(omnplay_instance_t* app, int next); #ifdef __cplusplus };