3 #include <hildon/hildon.h>
6 on_picker_value_changed (HildonPickerButton * button, gpointer data)
8 g_print ("Newly selected value: %s\n",
9 hildon_button_get_value (HILDON_BUTTON (button)));
13 on_change_policy_clicked (GtkButton *button,
16 static HildonTimeSelectorFormatPolicy policy = HILDON_TIME_SELECTOR_FORMAT_POLICY_AUTOMATIC;
17 HildonPickerButton *time_button = NULL;
18 HildonTouchSelector *selector = NULL;
20 policy = (policy + 1)%3;
24 case HILDON_TIME_SELECTOR_FORMAT_POLICY_AMPM:
25 hildon_button_set_value (HILDON_BUTTON (button),
28 case HILDON_TIME_SELECTOR_FORMAT_POLICY_24H:
29 hildon_button_set_value (HILDON_BUTTON (button),
32 case HILDON_TIME_SELECTOR_FORMAT_POLICY_AUTOMATIC:
33 hildon_button_set_value (HILDON_BUTTON (button),
38 time_button = HILDON_PICKER_BUTTON (data);
39 selector = hildon_picker_button_get_selector (time_button);
41 g_object_set (G_OBJECT (selector),
42 "time-format-policy", policy, NULL);
46 main (int argc, char **argv)
48 HildonProgram *program = NULL;
49 GtkWidget *window = NULL;
54 hildon_gtk_init (&argc, &argv);
56 program = hildon_program_get_instance ();
57 g_set_application_name ("hildon-time-button-example");
59 window = hildon_stackable_window_new ();
60 gtk_window_set_default_size (GTK_WINDOW (window), 300, 200);
61 hildon_program_add_window (program, HILDON_WINDOW (window));
63 button = hildon_time_button_new_step (HILDON_SIZE_AUTO, HILDON_BUTTON_ARRANGEMENT_VERTICAL, 5);
64 g_signal_connect (G_OBJECT (button), "value-changed",
65 G_CALLBACK (on_picker_value_changed), NULL);
67 button2 = hildon_button_new_with_text (HILDON_SIZE_AUTO_WIDTH |
68 HILDON_SIZE_AUTO_HEIGHT,
69 HILDON_BUTTON_ARRANGEMENT_HORIZONTAL,
70 "Change Policy", "Automatic");
72 g_signal_connect (G_OBJECT (button2), "clicked",
73 G_CALLBACK (on_change_policy_clicked), button);
75 hbox = gtk_hbox_new (FALSE, 10);
77 gtk_container_add (GTK_CONTAINER (hbox), button);
78 gtk_container_add (GTK_CONTAINER (hbox), button2);
79 gtk_container_add (GTK_CONTAINER (window), hbox);
81 g_signal_connect (G_OBJECT (window), "delete-event",
82 G_CALLBACK (gtk_main_quit), NULL);
84 gtk_widget_show_all (window);