- w = hildon_button_new_with_text (
- HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
- HILDON_BUTTON_ARRANGEMENT_VERTICAL,
- _("New Task"), "");
- g_signal_connect (w, "clicked", G_CALLBACK (new_task_clicked_cb),
- user_data);
- hildon_app_menu_append (menu, GTK_BUTTON (w));
-
- w = hildon_button_new_with_text (
- HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
- HILDON_BUTTON_ARRANGEMENT_VERTICAL,
- _("Edit"), "");
- g_signal_connect (w, "clicked", G_CALLBACK (edit_clicked_cb),
- user_data);
- hildon_app_menu_append (menu, GTK_BUTTON (w));
-
- w = hildon_button_new_with_text (
- HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
- HILDON_BUTTON_ARRANGEMENT_VERTICAL,
- _("Priority +"), "");
- g_signal_connect (w, "clicked", G_CALLBACK (priority_plus_clicked_cb),
- user_data);
- hildon_app_menu_append (menu, GTK_BUTTON (w));
-
- w = hildon_button_new_with_text (
- HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
- HILDON_BUTTON_ARRANGEMENT_VERTICAL,
- _("Priority -"), "");
- g_signal_connect (w, "clicked", G_CALLBACK (priority_minus_clicked_cb),
- user_data);
- hildon_app_menu_append (menu, GTK_BUTTON (w));
-
- w = hildon_button_new_with_text (
- HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
- HILDON_BUTTON_ARRANGEMENT_VERTICAL,
- _("Complete"), "");
- g_signal_connect (w, "clicked", G_CALLBACK (complete_clicked_cb),
- user_data);
- hildon_app_menu_append (menu, GTK_BUTTON (w));
-
- w = hildon_button_new_with_text (
- HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
- HILDON_BUTTON_ARRANGEMENT_VERTICAL,
- _("Delete"), "");
- g_signal_connect (w, "clicked", G_CALLBACK (delete_clicked_cb),
- user_data);
- hildon_app_menu_append (menu, GTK_BUTTON (w));
-
- gtk_widget_show_all (GTK_WIDGET (menu));
-
- return menu;
+ menu_array = menu_items_always_shown;
+ length = G_N_ELEMENTS (menu_items_always_shown);
+ for (i = 0; i < length; i++) {
+ w = hildon_button_new_with_text (
+ HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
+ HILDON_BUTTON_ARRANGEMENT_VERTICAL,
+ _(menu_array[i].display_name), "");
+ g_signal_connect (w, "clicked",
+ G_CALLBACK (menu_array[i].callback), user_data);
+ g_object_set_data (G_OBJECT (menu), menu_array[i].id, w);
+ hildon_app_menu_append (menu, GTK_BUTTON (w));
+ gtk_widget_show (w);
+ }
+
+ menu_array = menu_items_selection_required;
+ length = G_N_ELEMENTS (menu_items_selection_required);
+ for (i = 0; i < length; i++) {
+ w = hildon_button_new_with_text (
+ HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH,
+ HILDON_BUTTON_ARRANGEMENT_VERTICAL,
+ menu_array[i].display_name, "");
+ g_signal_connect (w, "clicked",
+ G_CALLBACK (menu_array[i].callback), user_data);
+ g_object_set_data (G_OBJECT (menu), menu_array[i].id, w);
+ hildon_app_menu_append (menu, GTK_BUTTON (w));
+ gtk_widget_hide (w);
+ }
+
+ gtk_widget_show (GTK_WIDGET (menu));
+
+ return GTK_WIDGET (menu);