From cc0c2868697cf078f5ccaa3fa9e3acb11540932d Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 14 Nov 2016 08:20:32 -0500 Subject: [PATCH] widget-factory: Better progressbar testing Hook the two top progressbars up to the scale with marks. Your turn, Lapo. --- demos/widget-factory/widget-factory.c | 16 ++++++++++++++++ demos/widget-factory/widget-factory.ui | 3 ++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/demos/widget-factory/widget-factory.c b/demos/widget-factory/widget-factory.c index 1584c134eb..287240254c 100644 --- a/demos/widget-factory/widget-factory.c +++ b/demos/widget-factory/widget-factory.c @@ -1637,6 +1637,16 @@ scale_format_value (GtkScale *scale, gdouble value) return g_strdup_printf ("%0.*f", 1, value); } +static void +adjustment3_value_changed (GtkAdjustment *adj, GtkProgressBar *pbar) +{ + double fraction; + + fraction = gtk_adjustment_get_value (adj) / (gtk_adjustment_get_upper (adj) - gtk_adjustment_get_lower (adj)); + + gtk_progress_bar_set_fraction (pbar, fraction); +} + static void activate (GApplication *app) { @@ -1910,6 +1920,12 @@ activate (GApplication *app) widget2 = (GtkWidget *)gtk_builder_get_object (builder, "decrease_button"); g_object_set_data (G_OBJECT (widget), "decrease_button", widget2); + adj = (GtkAdjustment *)gtk_builder_get_object (builder, "adjustment3"); + widget = (GtkWidget *)gtk_builder_get_object (builder, "progressbar1"); + widget2 = (GtkWidget *)gtk_builder_get_object (builder, "progressbar2"); + g_signal_connect (adj, "value-changed", G_CALLBACK (adjustment3_value_changed), widget); + g_signal_connect (adj, "value-changed", G_CALLBACK (adjustment3_value_changed), widget2); + gtk_widget_show_all (GTK_WIDGET (window)); g_object_unref (builder); diff --git a/demos/widget-factory/widget-factory.ui b/demos/widget-factory/widget-factory.ui index f540cffd29..300ecf6c71 100644 --- a/demos/widget-factory/widget-factory.ui +++ b/demos/widget-factory/widget-factory.ui @@ -103,8 +103,9 @@ 10 + 0 4 - 1 + 2 1 1