X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=examples%2Fhildon-time-button-example.c;h=990fb84cba9658f5e80f8ce0ab455add7495bc54;hb=1481533964caced6b894bb6c5d9feccf3b94ab10;hp=531706a0b392f449c867ee6c55aced0c7ff726b4;hpb=bad687ef488dd0cb1321cf57b9b0668af38dc8dd;p=hildon diff --git a/examples/hildon-time-button-example.c b/examples/hildon-time-button-example.c index 531706a..990fb84 100644 --- a/examples/hildon-time-button-example.c +++ b/examples/hildon-time-button-example.c @@ -1,6 +1,6 @@ #include #include -#include "hildon.h" +#include static void on_picker_value_changed (HildonPickerButton * button, gpointer data) @@ -9,12 +9,47 @@ on_picker_value_changed (HildonPickerButton * button, gpointer data) hildon_button_get_value (HILDON_BUTTON (button))); } +static void +on_change_policy_clicked (GtkButton *button, + gpointer data) +{ + static HildonTimeSelectorFormatPolicy policy = HILDON_TIME_SELECTOR_FORMAT_POLICY_AUTOMATIC; + HildonPickerButton *time_button = NULL; + HildonTouchSelector *selector = NULL; + + policy = (policy + 1)%3; + + switch (policy) + { + case HILDON_TIME_SELECTOR_FORMAT_POLICY_AMPM: + hildon_button_set_value (HILDON_BUTTON (button), + "AMPM"); + break; + case HILDON_TIME_SELECTOR_FORMAT_POLICY_24H: + hildon_button_set_value (HILDON_BUTTON (button), + "24H"); + break; + case HILDON_TIME_SELECTOR_FORMAT_POLICY_AUTOMATIC: + hildon_button_set_value (HILDON_BUTTON (button), + "Automatic"); + break; + } + + time_button = HILDON_PICKER_BUTTON (data); + selector = hildon_picker_button_get_selector (time_button); + + g_object_set (G_OBJECT (selector), + "time-format-policy", policy, NULL); +} + int main (int argc, char **argv) { HildonProgram *program = NULL; GtkWidget *window = NULL; GtkWidget *button; + GtkWidget *hbox; + GtkWidget *button2; hildon_gtk_init (&argc, &argv); @@ -29,9 +64,21 @@ main (int argc, char **argv) g_signal_connect (G_OBJECT (button), "value-changed", G_CALLBACK (on_picker_value_changed), NULL); - gtk_container_add (GTK_CONTAINER (window), button); + button2 = hildon_button_new_with_text (HILDON_SIZE_AUTO_WIDTH | + HILDON_SIZE_AUTO_HEIGHT, + HILDON_BUTTON_ARRANGEMENT_HORIZONTAL, + "Change Policy", "Automatic"); + + g_signal_connect (G_OBJECT (button2), "clicked", + G_CALLBACK (on_change_policy_clicked), button); + + hbox = gtk_hbox_new (FALSE, 10); + + gtk_container_add (GTK_CONTAINER (hbox), button); + gtk_container_add (GTK_CONTAINER (hbox), button2); + gtk_container_add (GTK_CONTAINER (window), hbox); - g_signal_connect (G_OBJECT (window), "delete-event", + g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (gtk_main_quit), NULL); gtk_widget_show_all (window);