X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fomnplay.cpp;h=dbdc7d36b567505bb25e6b411d669b039b0539b6;hb=0f2476445358a255955b29c4726bb59b2c002162;hp=aa384e265939166b42cf2748430e53b8a3c76daf;hpb=fd163a90e90475f01080cfdb2045068b503237b6;p=omnplay diff --git a/src/omnplay.cpp b/src/omnplay.cpp index aa384e2..dbdc7d3 100644 --- a/src/omnplay.cpp +++ b/src/omnplay.cpp @@ -46,6 +46,8 @@ int omnplay_get_content(omnplay_instance_t* app, playlist_item_t *items, int lim OmPlrClipInfo clip_info; char clip_name[omPlrMaxClipDirLen]; + app->library.id_display_idx = 0; + pthread_mutex_lock(&app->players.lock); r = OmPlrClipGetFirst((OmPlrHandle)app->players.item[0].handle, clip_name, sizeof(clip_name)); @@ -186,14 +188,11 @@ static void omnplay_update_status(omnplay_player_t* player, OmPlrStatus *prev , gdk_threads_enter(); pthread_mutex_lock(&player->app->playlist.lock); pthread_mutex_lock(&player->app->players.lock); - if(curr->state == omPlrStatePlay || curr->state == omPlrStateCuePlay) + + /* check if playlist exist */ + if(player->playlist_length) { - idx = find_index_of_playlist_item(player->app, player->playlist_start, curr->currClipNum); - if(idx >= 0) - { - frames2tc(curr->currClipStartPos + curr->currClipLen - curr->pos, 25.0, tc_rem); - omnplay_playlist_draw_item_rem(player->app, idx, tc_rem); - } + /* clear remain on "previous" item */ if(curr->currClipNum != prev->currClipNum && 1 != prev->numClips) { tc_rem[0] = 0; @@ -201,16 +200,21 @@ static void omnplay_update_status(omnplay_player_t* player, OmPlrStatus *prev , if(idx >= 0) omnplay_playlist_draw_item_rem(player->app, idx, tc_rem); }; - } - else - { - tc_rem[0] = 0; + + /* update current item */ idx = find_index_of_playlist_item(player->app, player->playlist_start, curr->currClipNum); if(idx >= 0) + { + /* reset value */ + tc_rem[0] = 0; + + /* for play and cue calc new value */ + if(curr->state == omPlrStatePlay || curr->state == omPlrStateCuePlay) + frames2tc(curr->currClipStartPos + curr->currClipLen - curr->pos, 25.0, tc_rem); + + /* setup that value */ omnplay_playlist_draw_item_rem(player->app, idx, tc_rem); - idx = find_index_of_playlist_item(player->app, player->playlist_start, prev->currClipNum); - if(idx >= 0) - omnplay_playlist_draw_item_rem(player->app, idx, tc_rem); + }; }; pthread_mutex_unlock(&player->app->players.lock); pthread_mutex_unlock(&player->app->playlist.lock); @@ -1206,11 +1210,13 @@ static gboolean on_library_grid_button(GtkWidget *widget, GdkEventButton *event, static gboolean on_playlist_grid_button(GtkWidget *widget, GdkEventButton *event, gpointer data) { + omnplay_instance_t* app = (omnplay_instance_t*)data; + // g_warning("on_playlist_grid_button"); if(event->button==1 && event->type==GDK_2BUTTON_PRESS) { - omnplay_ctl((omnplay_instance_t* )data, BUTTON_PLAYER_CUE); + omnplay_playlist_item_edit(app); return TRUE; };