X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fpage_clips.c;h=50b8912ba39ae5dacc6966072b2c0f96aed48959;hb=015a189138f13c3a2729f447153f204e4db05de3;hp=27d9205784b80cd431e4afdc263c145119f707f7;hpb=b95824f2825a116bcea7c65db079f0e0da4ac20e;p=rugen diff --git a/src/page_clips.c b/src/page_clips.c index 27d9205..50b8912 100644 --- a/src/page_clips.c +++ b/src/page_clips.c @@ -262,8 +262,20 @@ static gboolean on_ok( GtkWidget *dummy, gpointer data ) mvcp_unit_append( this->dv, dv1394app_get_selected_unit( this->app ), temp, -1, -1 ); break; case 3: - mvcp_unit_clip_insert( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_relative, 1, temp, -1, -1 ); + { + GtkWidget *widget = lookup_widget( this_page_get_widget( this ), "treeview1" ); + GtkTreeSelection *select = gtk_tree_view_get_selection( GTK_TREE_VIEW( widget ) ); + GtkTreeModel *model; + GtkTreeIter iter; + int clip; + + if ( gtk_tree_selection_get_selected( select, &model, &iter ) ) + { + gtk_tree_model_get( model, &iter, 5, &clip, -1 ); + mvcp_unit_clip_insert( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_absolute, clip, temp, -1, -1 ); + } break; + } } free( temp ); @@ -392,21 +404,51 @@ static gboolean on_refresh( GtkWidget *button, gpointer data ) static gboolean on_up( GtkWidget *dummy, gpointer data ) { page_clips this = data; - mvcp_unit_clip_move( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_relative, 0, mvcp_relative, -1 ); + GtkWidget *widget = lookup_widget( this_page_get_widget( this ), "treeview1" ); + GtkTreeSelection *select = gtk_tree_view_get_selection( GTK_TREE_VIEW( widget ) ); + GtkTreeModel *model; + GtkTreeIter iter; + int clip; + + if ( gtk_tree_selection_get_selected( select, &model, &iter ) ) + { + gtk_tree_model_get( model, &iter, 5, &clip, -1 ); + mvcp_unit_clip_move( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_absolute, clip, mvcp_absolute, clip - 1 < 0 ? 0 : clip - 1 ); + } return TRUE; } static gboolean on_down( GtkWidget *dummy, gpointer data ) { page_clips this = data; - mvcp_unit_clip_move( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_relative, 0, mvcp_relative, 1 ); + GtkWidget *widget = lookup_widget( this_page_get_widget( this ), "treeview1" ); + GtkTreeSelection *select = gtk_tree_view_get_selection( GTK_TREE_VIEW( widget ) ); + GtkTreeModel *model; + GtkTreeIter iter; + int clip; + + if ( gtk_tree_selection_get_selected( select, &model, &iter ) ) + { + gtk_tree_model_get( model, &iter, 5, &clip, -1 ); + mvcp_unit_clip_move( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_absolute, clip, mvcp_absolute, clip + 1 ); + } return TRUE; } static gboolean on_remove( GtkWidget *dummy, gpointer data ) { page_clips this = data; - mvcp_unit_remove_current_clip( this->dv, dv1394app_get_selected_unit( this->app ) ); + GtkWidget *widget = lookup_widget( this_page_get_widget( this ), "treeview1" ); + GtkTreeSelection *select = gtk_tree_view_get_selection( GTK_TREE_VIEW( widget ) ); + GtkTreeModel *model; + GtkTreeIter iter; + int clip; + + if ( gtk_tree_selection_get_selected( select, &model, &iter ) ) + { + gtk_tree_model_get( model, &iter, 5, &clip, -1 ); + mvcp_unit_clip_remove( this->dv, dv1394app_get_selected_unit( this->app ), mvcp_absolute, clip ); + } return TRUE; } @@ -438,8 +480,8 @@ static GtkWidget *this_page_get_widget( page_clips this ) static void this_page_get_toolbar_info( page this, GtkIconSize size, GtkWidget **icon, char **label ) { - *icon = gtk_image_new_from_stock( "gtk-find", size ); - *label = "_Clips"; + *icon = gtk_image_new_from_stock( "gtk-justify-fill", size ); + *label = _("_Playlist"); } static void this_page_on_connect( page_clips this )