コード例 #1
0
ファイル: ui.c プロジェクト: senko/mawire
static GtkWidget *
create_app_menu (GtkWidget *win, GCallback installed_db_cb,
    GCallback custom_db_cb, GCallback about_cb)
{
  GtkWidget *menu;
  GtkWidget *use_installed_btn;
  GtkWidget *use_custom_btn;
  GtkWidget *about_btn;

  menu = hildon_app_menu_new ();

  use_installed_btn = append_menu_button (menu, "Use installed DB");
  use_custom_btn = append_menu_button (menu, "Use custom DB");
  about_btn = append_menu_button (menu, "About");

  g_signal_connect (G_OBJECT (use_installed_btn), "clicked",
      G_CALLBACK (installed_db_cb), win);
  g_signal_connect (G_OBJECT (use_custom_btn), "clicked",
      G_CALLBACK (custom_db_cb), win);
  g_signal_connect (G_OBJECT (about_btn), "clicked",
      G_CALLBACK (about_cb), win);

  gtk_widget_show_all (GTK_WIDGET (menu));

  return menu;
}
コード例 #2
0
static void
add_menu(EomDetailWindow *window)
{
    HildonAppMenu *appmenu;
    GtkWidget *button;

    appmenu = HILDON_APP_MENU(hildon_app_menu_new());

    button = hildon_gtk_button_new(HILDON_SIZE_AUTO);
    gtk_button_set_label(GTK_BUTTON(button), "Edit...");
    g_signal_connect_after(button, "clicked", G_CALLBACK(on_edit),
                           window);
    hildon_app_menu_append(appmenu, GTK_BUTTON(button));

    button = hildon_gtk_button_new(HILDON_SIZE_AUTO);
    gtk_button_set_label(GTK_BUTTON(button), "Delete...");
    g_signal_connect_after(button, "clicked", G_CALLBACK(on_delete),
                           (gpointer)window);
    hildon_app_menu_append(appmenu, GTK_BUTTON(button));

    gtk_widget_show_all(GTK_WIDGET(appmenu));
    hildon_stackable_window_set_main_menu(
        HILDON_STACKABLE_WINDOW(window), appmenu
    );
}
コード例 #3
0
static HildonAppMenu *
create_menu                                     (GtkWidget     *label,
                                                 GtkAccelGroup *accel)
{
    GtkWidget *button;
    HildonSizeType buttonsize = HILDON_SIZE_FINGER_HEIGHT | HILDON_SIZE_AUTO_WIDTH;
    HildonAppMenu *menu = HILDON_APP_MENU (hildon_app_menu_new ());

    /* Options */
    button = hildon_gtk_button_new (buttonsize);
    gtk_button_set_label (GTK_BUTTON (button), "Menu command one");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_append (menu, GTK_BUTTON (button));

    gtk_widget_add_accelerator (button, "activate", accel, GDK_r, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);

    button = hildon_gtk_button_new (buttonsize);
    gtk_button_set_label (GTK_BUTTON (button), "Menu command two");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_append (menu, GTK_BUTTON (button));

    button = hildon_gtk_button_new (buttonsize);
    gtk_button_set_label (GTK_BUTTON (button), "Menu command three");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_append (menu, GTK_BUTTON (button));

    button = hildon_gtk_button_new (buttonsize);
    gtk_button_set_label (GTK_BUTTON (button), "Menu command four");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_append (menu, GTK_BUTTON (button));

    button = hildon_gtk_button_new (buttonsize);
    gtk_button_set_label (GTK_BUTTON (button), "Menu command five");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_append (menu, GTK_BUTTON (button));

    /* Filters */
    button = hildon_gtk_radio_button_new (buttonsize, NULL);
    gtk_button_set_label (GTK_BUTTON (button), "filter one");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_add_filter (menu, GTK_BUTTON (button));
    gtk_toggle_button_set_mode (GTK_TOGGLE_BUTTON (button), FALSE);

    button = hildon_gtk_radio_button_new_from_widget (buttonsize, GTK_RADIO_BUTTON (button));
    gtk_button_set_label (GTK_BUTTON (button), "filter two");
    g_signal_connect_after (button, "clicked", G_CALLBACK (menu_button_clicked), label);
    hildon_app_menu_add_filter (menu, GTK_BUTTON (button));
    gtk_toggle_button_set_mode (GTK_TOGGLE_BUTTON (button), FALSE);

    gtk_widget_show_all (GTK_WIDGET (menu));

    return menu;
}
コード例 #4
0
ファイル: window.c プロジェクト: hasselmm/awui
static void
aw_window_add_tree_view (GtkContainer *container,
                         GtkWidget    *child)
{
    GtkWidget     *alignment, *pa;
    GSList        *filters, *items;
    HildonAppMenu *menu;

    gtk_widget_push_composite_child ();

    alignment = gtk_alignment_new (0.5, 0.5, 1.0, 1.0);
    gtk_container_add (container, alignment);

    pa = hildon_pannable_area_new ();
    gtk_container_add (GTK_CONTAINER (alignment), pa);

    g_object_set (pa,
                  "hscrollbar-policy", GTK_POLICY_NEVER,
                  "vscrollbar-policy", GTK_POLICY_AUTOMATIC,
                  "mov-mode", HILDON_MOVEMENT_MODE_VERT, NULL);

    g_signal_connect
    (hildon_pannable_area_get_vadjustment (HILDON_PANNABLE_AREA (pa)),
     "changed", G_CALLBACK (aw_window_vadjustment_changed_cb),
     alignment);

    gtk_widget_pop_composite_child ();

    gtk_container_add (GTK_CONTAINER (pa), child);

    filters = aw_tree_view_get_filters (AW_TREE_VIEW (child));
    items = aw_tree_view_get_menu_items (AW_TREE_VIEW (child));

    if (filters || items)
    {
        menu = HILDON_APP_MENU (hildon_app_menu_new ());

        while (filters)
        {
            hildon_app_menu_add_filter (menu, filters->data);
            filters = filters->next;
        }

        while (items)
        {
            hildon_app_menu_append (menu, items->data);
            items = items->next;
        }

        hildon_window_set_app_menu (HILDON_WINDOW (container), menu);
    }
}
コード例 #5
0
ZLGtkApplicationWindow::ZLGtkApplicationWindow(ZLApplication *application) :
	ZLApplicationWindow(application),
	KeyActionOnReleaseNotOnPressOption(ZLCategoryKey::CONFIG, "KeyAction", "OnRelease", false),
	myFullScreen(false) {
	myProgram = HILDON_PROGRAM(hildon_program_get_instance());
	g_set_application_name("");

	myWindow = HILDON_WINDOW(hildon_stackable_window_new());

	((ZLMaemoCommunicationManager&)ZLCommunicationManager::Instance()).init();

	myMenu = HILDON_APP_MENU(hildon_app_menu_new());
	hildon_window_set_app_menu(myWindow, myMenu);

	hildon_program_add_window(myProgram, myWindow);
	gtk_widget_show_all(GTK_WIDGET(myWindow));

	myViewWidget = 0;

	ZLGtkSignalUtil::connectSignal(GTK_OBJECT(myWindow), "delete_event", GTK_SIGNAL_FUNC(applicationQuit), this);
	ZLGtkSignalUtil::connectSignal(GTK_OBJECT(myWindow), "key_press_event", GTK_SIGNAL_FUNC(handleKeyPress), this);
	ZLGtkSignalUtil::connectSignal(GTK_OBJECT(myWindow), "key_release_event", GTK_SIGNAL_FUNC(handleKeyRelease), this);
}