void create_ui(AppData* appdata) {
g_assert(appdata);
- GtkWidget *hbox;
- GtkWidget *bhbox;
+ GtkWidget *top_hbox;
+ GtkWidget *bottom_hbox;
GtkWidget *vbox;
vbox = gtk_vbox_new(FALSE, 0);
- hbox = gtk_hbox_new(TRUE, 0);
- bhbox = gtk_hbox_new(TRUE, 0);
+ top_hbox = gtk_hbox_new(TRUE, 0);
+ bottom_hbox = gtk_hbox_new(TRUE, 0);
- //GtkWidget* top_e = gtk_event_box_new();
- GtkWidget* middle_e = gtk_event_box_new();
- GtkWidget* bottom_e = gtk_event_box_new();
+ GtkWidget* event_box = gtk_event_box_new();
-/*
- g_signal_connect(G_OBJECT(top_e),
- "button_press_event",
- G_CALLBACK(top_event_box_button_press),
- appdata);
-*/
- g_signal_connect(G_OBJECT(middle_e),
- "button_press_event",
- G_CALLBACK(middle_event_box_button_press),
+ g_signal_connect(G_OBJECT(event_box),
+ "tap_and_hold",
+ G_CALLBACK(long_tap),
appdata);
+ gtk_widget_tap_and_hold_setup(event_box, NULL, NULL, 0);
- g_signal_connect(G_OBJECT(bottom_e),
+ g_signal_connect(G_OBJECT(event_box),
"button_press_event",
- G_CALLBACK(bottom_event_box_button_press),
+ G_CALLBACK(short_tap),
appdata);
g_signal_connect(G_OBJECT(appdata->window),
appdata->window);
// add three big digits to the hbox
- gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(digits[0]), FALSE, FALSE, 0);
- gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(digits[1]), FALSE, FALSE, 0);
- gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(digits[2]), FALSE, FALSE, 0);
+ // creates the top row where big digits are placed
+ gtk_box_pack_start(GTK_BOX(top_hbox), GTK_WIDGET(digits[0]), FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(top_hbox), GTK_WIDGET(digits[1]), FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(top_hbox), GTK_WIDGET(digits[2]), FALSE, FALSE, 0);
// add small digits to another hbox
- gtk_box_pack_start(GTK_BOX(bhbox), GTK_WIDGET(unit_graphic), FALSE, FALSE, 0);
- gtk_box_pack_start(GTK_BOX(bhbox), GTK_WIDGET(digits[3]), FALSE, FALSE, 0);
- gtk_box_pack_start(GTK_BOX(bhbox), GTK_WIDGET(digits[4]), FALSE, FALSE, 0);
-
- // add hboxes to the event boxes
- gtk_container_add(GTK_CONTAINER(middle_e), hbox);
- gtk_container_add(GTK_CONTAINER(bottom_e), bhbox);
+ // creates the bottom row with decimals and unit graphic
+ gtk_box_pack_start(GTK_BOX(bottom_hbox), GTK_WIDGET(unit_graphic), FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(bottom_hbox), GTK_WIDGET(digits[3]), FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(bottom_hbox), GTK_WIDGET(digits[4]), FALSE, FALSE, 0);
// add event boxes to the vbox
- //gtk_box_pack_start_defaults(GTK_BOX(vbox), top_e);
- gtk_box_pack_start_defaults(GTK_BOX(vbox), middle_e);
- gtk_box_pack_start_defaults(GTK_BOX(vbox), bottom_e);
+ gtk_box_pack_start_defaults(GTK_BOX(vbox), top_hbox);
+ gtk_box_pack_start_defaults(GTK_BOX(vbox), bottom_hbox);
+
+ // add vertival box to the event box
+ gtk_container_add(GTK_CONTAINER(event_box), GTK_WIDGET(vbox));
- // finally add the vertical box with all the children to the window
- gtk_container_add(GTK_CONTAINER(appdata->window), GTK_WIDGET(vbox));
+ // finally add the event box with all the children to the window
+ gtk_container_add(GTK_CONTAINER(appdata->window), GTK_WIDGET(event_box));
// set backgrounds black
set_widget_bg_black(GTK_WIDGET(appdata->window));
- set_widget_bg_black(bottom_e);
- //set_widget_bg_black(top_e);
- set_widget_bg_black(middle_e);
+ set_widget_bg_black(event_box);
gtk_window_fullscreen(GTK_WINDOW(appdata->window));
gtk_widget_show_all(GTK_WIDGET(appdata->window));
"Wellu Mäkinen\n"
"Poste restante\n"
"33580 Tampere\n"
- "FINLAND");
+ "FINLAND\n\n"
+ "PS. Long-tapping on the screen will quit the program.");
gtk_dialog_run(GTK_DIALOG(dialog));
gtk_widget_destroy(dialog);
}