X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fomnplay.h;h=22e2dff7ff9636ffd3a107cf66f673e9ad315919;hb=HEAD;hp=d336ed631df809949932dd4a529f2b19af15099b;hpb=be35f211e1af32ce8940db1f10e2fb283bf1fe0a;p=omnplay diff --git a/src/omnplay.h b/src/omnplay.h index d336ed6..22e2dff 100644 --- a/src/omnplay.h +++ b/src/omnplay.h @@ -20,6 +20,8 @@ #ifndef OMNPLAY_H #define OMNPLAY_H +#include + #ifdef __cplusplus extern "C" { @@ -51,6 +53,8 @@ typedef enum control_buttons BUTTON_LIBRARY_FIND, BUTTON_LIBRARY_FIND_NEXT, + BUTTON_PLAYLIST_RELINK, + BUTTON_LAST } control_buttons_t; @@ -103,6 +107,7 @@ typedef struct playlist_item int omn_idx; int omn_offset; int error; + int del; } playlist_item_t; #define MAX_PLAYERS 4 @@ -115,7 +120,7 @@ typedef struct omnplay_player char name[PATH_MAX]; char host[PATH_MAX]; void* handle; - pthread_t thread; + GThread* thread; GtkWidget *label_status, *label_state, *label_tc_cur, *label_tc_rem, *label_clip; struct omnplay_instance *app; int playlist_start; @@ -128,6 +133,7 @@ typedef struct omnplay_instance GtkWidget *playlist_grid; GtkWidget *library_grid; GtkWidget *buttons[BUTTON_LAST + 1]; + GtkWidget *status_label; struct { omnplay_player_t item[MAX_PLAYERS]; @@ -153,10 +159,16 @@ typedef struct omnplay_instance char filename[PATH_MAX]; char whois[PATH_MAX]; pthread_mutex_t lock; - pthread_t refresh_thread; - GtkWidget *refresh_ui[2]; + GThread* refresh_thread; GtkWidget *search; + int id_display_rate; + int id_display_idx; } library; + struct + { + playlist_item_t item[MAX_LIBRARY_ITEMS]; + int count; + } clipboard; } omnplay_instance_t; omnplay_instance_t* omnplay_create(int argc, char** argv); @@ -165,6 +177,7 @@ void omnplay_release(omnplay_instance_t* app); void omnplay_destroy(omnplay_instance_t* app); void omnplay_playlist_load(omnplay_instance_t* app); void omnplay_playlist_save(omnplay_instance_t* app); +void omnplay_playlist_relink(omnplay_instance_t* app); void omnplay_playlist_draw(omnplay_instance_t* app); void omnplay_playlist_draw_item(omnplay_instance_t* app, int idx); void omnplay_playlist_draw_item_rem(omnplay_instance_t* app, int idx, char* rem); @@ -179,9 +192,12 @@ int omnplay_whois_list(omnplay_instance_t* app, playlist_item_t *items, int* pli 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); +int omnplay_library_relink_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); +void omnplay_set_status(omnplay_instance_t* app, char* str); +int* omnplay_selected_idxs_playlist(omnplay_instance_t* app); #ifdef __cplusplus };