X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=ui.c;h=aec544666b5a3ac0ef57f8a82e7fdddbbf5fcf24;hb=04eaf74dc982120cdf34cd17eece780dea8d6034;hp=ca760f8f471c6cf6c1a6c395c1cd3d1ef8c8df7e;hpb=6827d4b8766c12c5ca7acbfd600b3a8b21c0971a;p=speedometer diff --git a/ui.c b/ui.c index ca760f8..aec5446 100644 --- a/ui.c +++ b/ui.c @@ -22,6 +22,10 @@ #include "ui.h" #include "callbacks.h" +static GtkWidget* graphix[10]; // contains all the graphics +static GtkWidget* big_digits[3]; // big digits that are shown as speed +static GtkWidget* small_digits[2]; // small digits that are shown on the screen + #define IMAGE_PATH "/usr/share/speedometer/%d.png" static void set_widget_bg_black(GtkWidget* widget) { @@ -40,7 +44,7 @@ void load_graphix(AppData *appdata) { while(i < 10) { char* path = g_malloc(30); g_sprintf(path, IMAGE_PATH, i); - appdata->graphix[i] = gtk_image_new_from_file(path); + graphix[i] = gtk_image_new_from_file(path); g_print(path); g_print("\n"); g_free(path); @@ -48,31 +52,31 @@ void load_graphix(AppData *appdata) { } } -void load_initial_pixbufs(AppData* appdata) { +void set_digits_to_zero(AppData* appdata) { g_assert(appdata); - GdkPixbuf* zero = gtk_image_get_pixbuf(GTK_IMAGE(appdata->graphix[0])); + GdkPixbuf* zero = gtk_image_get_pixbuf(GTK_IMAGE(graphix[0])); - appdata->big_digits[0] = GTK_WIDGET(gtk_image_new_from_pixbuf(zero)); - appdata->big_digits[1] = GTK_WIDGET(gtk_image_new_from_pixbuf(zero)); - appdata->big_digits[2] = GTK_WIDGET(gtk_image_new_from_pixbuf(zero)); + big_digits[0] = GTK_WIDGET(gtk_image_new_from_pixbuf(zero)); + big_digits[1] = GTK_WIDGET(gtk_image_new_from_pixbuf(zero)); + big_digits[2] = GTK_WIDGET(gtk_image_new_from_pixbuf(zero)); } void set_nth_digit(AppData* appdata, guint n, guint value) { - g_assert(appdata); + g_assert(value < 10); g_assert(n < 3); - GtkWidget* image = appdata->big_digits[n]; - GdkPixbuf* buf = gtk_image_get_pixbuf(GTK_IMAGE(appdata->graphix[value])); + GtkWidget* image = big_digits[n]; + GdkPixbuf* buf = gtk_image_get_pixbuf(GTK_IMAGE(graphix[value])); gtk_image_set_from_pixbuf(GTK_IMAGE(image), buf); } void repaint_all_digits(AppData* appdata) { - g_assert(appdata); - gtk_widget_queue_draw(GTK_WIDGET(appdata->big_digits[0])); - gtk_widget_queue_draw(GTK_WIDGET(appdata->big_digits[1])); - gtk_widget_queue_draw(GTK_WIDGET(appdata->big_digits[2])); + + gtk_widget_queue_draw(GTK_WIDGET(big_digits[0])); + gtk_widget_queue_draw(GTK_WIDGET(big_digits[1])); + gtk_widget_queue_draw(GTK_WIDGET(big_digits[2])); } void create_ui(AppData* appdata) { @@ -110,9 +114,9 @@ void create_ui(AppData* appdata) { appdata->window); // add three digits to the hbox - gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(appdata->big_digits[0]), FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(appdata->big_digits[1]), FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(appdata->big_digits[2]), FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(big_digits[0]), FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(big_digits[1]), FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(big_digits[2]), FALSE, FALSE, 0); gtk_box_pack_start_defaults(GTK_BOX(vbox), top_e); // add event box on top gtk_box_pack_start_defaults(GTK_BOX(vbox), hbox); // numbers to the middle @@ -125,5 +129,7 @@ void create_ui(AppData* appdata) { set_widget_bg_black(bottom_e); set_widget_bg_black(top_e); + gtk_window_fullscreen(GTK_WINDOW(appdata->window)); + gtk_widget_show_all(GTK_WIDGET(appdata->window)); }