rework status display
authorMaksym Veremeyenko <verem@m1stereo.tv>
Wed, 15 Jun 2011 09:13:30 +0000 (12:13 +0300)
committerMaksym Veremeyenko <verem@m1stereo.tv>
Wed, 15 Jun 2011 09:13:30 +0000 (12:13 +0300)
src/dv1394app.c
src/interface.c
src/page_status.c

index 3471a5a..5ccdcbe 100644 (file)
@@ -709,7 +709,7 @@ char* frames2tc( int f, float fps, char* buf )
        float d;
        int t;
 
-       if ( fps )
+       if ( fps && f >= 0)
        {
                d = f / fps;
                t = d;
index 6946cc7..02086d5 100644 (file)
@@ -158,7 +158,7 @@ create_block_buttons_transport(GtkWidget *top, int type)
        gtk_widget_show (hbox);
 
        snprintf(name, sizeof(name), "bbt_label_%da", type);
-       label[0] = gtk_label_new (name);
+       label[0] = gtk_label_new ("");
        gtk_widget_show (label[0]);
        gtk_box_pack_start (GTK_BOX (hbox), label[0], TRUE, TRUE, 0);
        gtk_label_set_justify (GTK_LABEL (label[0]), GTK_JUSTIFY_LEFT);
@@ -170,7 +170,7 @@ create_block_buttons_transport(GtkWidget *top, int type)
                FALSE, TRUE, 0);
 
        snprintf(name, sizeof(name), "bbt_label_%db", type);
-       label[1] = gtk_label_new (name);
+       label[1] = gtk_label_new ("");
        gtk_widget_show (label[1]);
        gtk_box_pack_start (GTK_BOX (hbox), label[1], TRUE, TRUE, 0);
        gtk_label_set_justify (GTK_LABEL (label[1]), GTK_JUSTIFY_LEFT);
index 555a766..5f6b66d 100644 (file)
@@ -87,7 +87,6 @@ static int show_status( page_status this, mvcp_status status )
 {
        GtkWidget *widget = this_page_get_widget( ( page )this );
        char temp[ 1024 ] = "";
-       char temp2[ 1024 ];
        char label_name[ 256 ];
 
        format_status_string(temp, sizeof(temp), status , "\n");
@@ -98,11 +97,22 @@ static int show_status( page_status this, mvcp_status status )
        gtk_label_set_text( GTK_LABEL( widget ), temp );
        if ( status->unit == dv1394app_get_selected_unit( this->app ) )
        {
-               format_status_string(temp, sizeof(temp), status , " ");
-               sprintf( temp2, "U%d - %s", status->unit, temp );
+               char tc1[12], tc2[12];
+
+               snprintf( temp, sizeof(temp), "U%d - [%s] %s",
+                       status->unit,
+                       status_to_text( status ),
+                       status->clip);
                widget = lookup_widget( dv1394app_get_widget( this->app ), "statusbar" );
                gtk_statusbar_pop( GTK_STATUSBAR( widget ), this->context );
-               gtk_statusbar_push( GTK_STATUSBAR( widget ), this->context, temp2 );
+               gtk_statusbar_push( GTK_STATUSBAR( widget ), this->context, temp );
+
+               widget = lookup_widget( dv1394app_get_widget( this->app ), "bbt_label_1a" );
+               snprintf( temp, sizeof(temp), "%s / %s",
+                       frames2tc(status->position, status->fps, tc1),
+                       frames2tc(status->out - status->position, status->fps, tc2));
+               gtk_label_set_text( GTK_LABEL( widget ), temp );
+
                dv1394app_show_status( this->app, status );
        }
        gdk_flush();