本文整理汇总了C++中GTK_MENU_ITEM函数的典型用法代码示例。如果您正苦于以下问题:C++ GTK_MENU_ITEM函数的具体用法?C++ GTK_MENU_ITEM怎么用?C++ GTK_MENU_ITEM使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GTK_MENU_ITEM函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: meta_window_menu_new
MetaWindowMenu*
meta_window_menu_new (MetaFrames *frames,
MetaMenuOp ops,
MetaMenuOp insensitive,
Window client_xwindow,
unsigned long active_workspace,
int n_workspaces,
MetaWindowMenuFunc func,
gpointer data)
{
int i;
MetaWindowMenu *menu;
/* FIXME: Modifications to 'ops' should happen in meta_window_show_menu */
if (n_workspaces < 2)
ops &= ~(META_MENU_OP_STICK | META_MENU_OP_UNSTICK | META_MENU_OP_WORKSPACES);
else if (n_workspaces == 2)
/* #151183: If we only have two workspaces, disable the menu listing them. */
ops &= ~(META_MENU_OP_WORKSPACES);
menu = g_new (MetaWindowMenu, 1);
menu->frames = frames;
menu->client_xwindow = client_xwindow;
menu->func = func;
menu->data = data;
menu->ops = ops;
menu->insensitive = insensitive;
menu->menu = gtk_menu_new ();
gtk_menu_set_screen (GTK_MENU (menu->menu),
gtk_widget_get_screen (GTK_WIDGET (frames)));
for (i = 0; i < (int) G_N_ELEMENTS (menuitems); i++)
{
MenuItem menuitem = menuitems[i];
if (ops & menuitem.op || menuitem.op == 0)
{
GtkWidget *mi;
MenuData *md;
unsigned int key;
MetaVirtualModifier mods;
mi = menu_item_new (&menuitem, -1);
/* Set the activeness of radiobuttons. */
if (menuitem.op == META_MENU_OP_STICK)
{
gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi),
active_workspace == 0xFFFFFFFF);
}
else if (menuitem.op == META_MENU_OP_UNSTICK)
{
gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi),
active_workspace != 0xFFFFFFFF);
}
if (menuitem.type == MENU_ITEM_WORKSPACE_LIST)
{
if (ops & META_MENU_OP_WORKSPACES)
{
Display *display;
Window xroot;
GdkScreen *screen;
GdkWindow *window;
GtkWidget *submenu;
int j;
MenuItem to_another_workspace = {
0, MENU_ITEM_NORMAL, FALSE,
N_("Move to Another _Workspace")
};
meta_verbose ("Creating %d-workspace menu current space %lu\n",
n_workspaces, active_workspace);
window = gtk_widget_get_window (GTK_WIDGET (frames));
display = GDK_WINDOW_XDISPLAY (window);
screen = gdk_window_get_screen (window);
xroot = GDK_WINDOW_XID (gdk_screen_get_root_window (screen));
submenu = gtk_menu_new ();
g_assert (mi==NULL);
mi = menu_item_new (&to_another_workspace, -1);
gtk_menu_item_set_submenu (GTK_MENU_ITEM (mi), submenu);
for (j = 0; j < n_workspaces; j++)
{
char *label;
MenuItem moveitem;
GtkWidget *submi;
meta_core_get_menu_accelerator (META_MENU_OP_WORKSPACES,
j + 1,
&key, &mods);
label = get_workspace_name_with_accel (display, xroot, j);
//.........这里部分代码省略.........
开发者ID:sonald,项目名称:deepin-metacity,代码行数:101,代码来源:menu.c
示例2: notify_incoming_call
static void notify_incoming_call(struct gtk_mod *mod,
struct call *call)
{
static const char *title = "Incoming call";
const char *msg = call_peeruri(call);
GtkWidget *call_menu;
GtkWidget *menu_item;
#if defined(USE_LIBNOTIFY)
NotifyNotification *notification;
if (!notify_is_initted())
return;
notification = notify_notification_new(title, msg, "baresip");
notify_notification_set_urgency(notification, NOTIFY_URGENCY_CRITICAL);
notify_notification_show(notification, NULL);
g_object_unref(notification);
#elif GLIB_CHECK_VERSION(2,40,0)
char id[64];
GVariant *target;
GNotification *notification = g_notification_new(title);
re_snprintf(id, sizeof id, "incoming-call-%p", call);
id[sizeof id - 1] = '\0';
#if GLIB_CHECK_VERSION(2,42,0)
g_notification_set_priority(notification,
G_NOTIFICATION_PRIORITY_URGENT);
#else
g_notification_set_urgent(notification, TRUE);
#endif
target = g_variant_new_int64(GPOINTER_TO_INT(call));
g_notification_set_body(notification, msg);
g_notification_add_button_with_target_value(notification,
"Answer", "app.answer", target);
g_notification_add_button_with_target_value(notification,
"Reject", "app.reject", target);
g_application_send_notification(mod->app, id, notification);
g_object_unref(notification);
#else
(void)msg;
(void)title;
#endif
/* Add incoming call to the app menu */
call_menu = gtk_menu_new();
menu_item = gtk_menu_item_new_with_mnemonic("_Incoming call");
g_object_set_data(G_OBJECT(menu_item), "call", call);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_item),
call_menu);
gtk_menu_shell_prepend(GTK_MENU_SHELL(mod->app_menu), menu_item);
mod->incoming_call_menus = g_slist_append(mod->incoming_call_menus,
menu_item);
menu_item = gtk_menu_item_new_with_label(call_peeruri(call));
gtk_widget_set_sensitive(menu_item, FALSE);
gtk_menu_shell_append(GTK_MENU_SHELL(call_menu), menu_item);
menu_item = gtk_menu_item_new_with_mnemonic("_Accept");
g_object_set_data(G_OBJECT(menu_item), "call", call);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(menu_on_incoming_call_answer), mod);
gtk_menu_shell_append(GTK_MENU_SHELL(call_menu), menu_item);
menu_item = gtk_menu_item_new_with_mnemonic("_Reject");
g_object_set_data(G_OBJECT(menu_item), "call", call);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(menu_on_incoming_call_reject), mod);
gtk_menu_shell_append(GTK_MENU_SHELL(call_menu), menu_item);
}
开发者ID:AlexMarlo,项目名称:baresip,代码行数:72,代码来源:gtk_mod.c
示例3: gl_ui_new
GtkUIManager *
gl_ui_new (glWindow *window)
{
GtkUIManager *ui;
GtkActionGroup *actions;
GError *error = NULL;
GtkWidget *recent_menu;
gl_debug (DEBUG_UI, "START");
g_return_val_if_fail (window && GL_IS_WINDOW (window), NULL);
gl_debug (DEBUG_UI, "window = %p", window);
ui = gtk_ui_manager_new ();
g_signal_connect (ui, "connect_proxy",
G_CALLBACK (connect_proxy_cb), window);
g_signal_connect (ui, "disconnect_proxy",
G_CALLBACK (disconnect_proxy_cb), window);
actions = gtk_action_group_new ("Actions");
gtk_action_group_set_translation_domain (actions, NULL);
gtk_action_group_add_actions (actions, entries, n_entries, GTK_WINDOW (window));
gtk_action_group_add_toggle_actions (actions,
toggle_entries, n_toggle_entries,
window);
gtk_action_group_add_toggle_actions (actions,
ui_toggle_entries, n_ui_toggle_entries,
ui);
gtk_ui_manager_insert_action_group (ui, actions, 0);
gtk_window_add_accel_group (GTK_WINDOW (window), gtk_ui_manager_get_accel_group (ui));
gl_debug (DEBUG_UI, "Creating ui from string");
if (!gtk_ui_manager_add_ui_from_string (ui, ui_info, strlen (ui_info), &error)) {
g_message ("building menus failed: %s", error->message);
g_error_free (error);
}
/* Set the toolbar styles according to prefs */
set_app_main_toolbar_style (ui);
set_app_drawing_toolbar_style (ui);
/* Set view grid and markup visibility according to prefs */
set_view_style (ui);
/* add an Open Recents Submenu */
recent_menu = gl_recent_create_menu ();
g_signal_connect (G_OBJECT (recent_menu), "item-activated",
G_CALLBACK (gl_ui_cmd_file_open_recent), window);
gtk_menu_item_set_submenu (GTK_MENU_ITEM (gtk_ui_manager_get_widget (ui, "/MenuBar/FileMenu/FileRecentsMenu")),
recent_menu);
set_additional_properties (ui);
gl_ui_util_set_verb_list_sensitive (ui, doc_verbs, FALSE);
gl_ui_util_set_verb_list_sensitive (ui, paste_verbs, FALSE);
gl_debug (DEBUG_UI, "END");
return ui;
}
开发者ID:samlown,项目名称:glabels,代码行数:64,代码来源:ui.c
示例4: main
int main(int argc, char *argv[] ) {
int i;
char track_text[4];
gtk_init (&argc, &argv);
id3win=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(id3win),"MP3info - An ID3 tag editor");
gtk_window_set_policy (GTK_WINDOW(id3win), FALSE,FALSE,FALSE);
gtk_widget_set_usize(id3win,450,360);
gtk_container_border_width(GTK_CONTAINER(id3win),5);
gtk_signal_connect(GTK_OBJECT(id3win), "delete_event", (GtkSignalFunc) gtk_exit, NULL);
id3win_frame_global=gtk_vbox_new(FALSE,5);
/* rmcc was here */
id3win_menu_bar = gtk_menu_bar_new();
gtk_widget_show(id3win_menu_bar);
gtk_box_pack_start(GTK_BOX(id3win_frame_global), id3win_menu_bar, FALSE, TRUE, 1);
id3win_menu_file = gtk_menu_item_new_with_label("File");
gtk_widget_show(id3win_menu_file);
gtk_container_add(GTK_CONTAINER(id3win_menu_bar), id3win_menu_file);
id3win_menu_fcont = gtk_menu_new();
gtk_menu_item_set_submenu(GTK_MENU_ITEM(id3win_menu_file), id3win_menu_fcont);
id3win_menu_open = gtk_menu_item_new_with_label("Open New ");
gtk_widget_show(id3win_menu_open);
gtk_container_add(GTK_CONTAINER(id3win_menu_fcont), id3win_menu_open);
gtk_signal_connect(GTK_OBJECT(id3win_menu_open), "activate",
GTK_SIGNAL_FUNC(open_mp3_file),
NULL);
id3win_menu_info = gtk_menu_item_new_with_label("Info ");
gtk_widget_show(id3win_menu_info);
gtk_container_add(GTK_CONTAINER(id3win_menu_fcont), id3win_menu_info);
gtk_signal_connect(GTK_OBJECT(id3win_menu_info), "activate",
GTK_SIGNAL_FUNC(create_techinfo_win),
NULL);
id3win_menu_help = gtk_menu_item_new_with_label(" Help");
gtk_widget_show(id3win_menu_help);
gtk_container_add(GTK_CONTAINER(id3win_menu_bar), id3win_menu_help);
gtk_menu_item_right_justify(GTK_MENU_ITEM(id3win_menu_help));
id3win_menu_hcont = gtk_menu_new();
gtk_menu_item_set_submenu(GTK_MENU_ITEM(id3win_menu_help), id3win_menu_hcont);
id3win_menu_about = gtk_menu_item_new_with_label("About ");
gtk_widget_show(id3win_menu_about);
gtk_container_add(GTK_CONTAINER(id3win_menu_hcont), id3win_menu_about);
gtk_signal_connect(GTK_OBJECT(id3win_menu_about), "activate",
GTK_SIGNAL_FUNC(about_mp3info),
NULL);
/* rmcc has left the building */
id3win_frame_title=gtk_frame_new("Title");
gtk_container_border_width(GTK_CONTAINER(id3win_frame_title),5);
id3win_text_title=gtk_entry_new_with_max_length(30);
gtk_container_add(GTK_CONTAINER(id3win_frame_title),id3win_text_title);
gtk_box_pack_start(GTK_BOX(id3win_frame_global),id3win_frame_title,TRUE,TRUE,0);
id3win_frame_artist=gtk_frame_new("Artist");
gtk_container_border_width(GTK_CONTAINER(id3win_frame_artist),5);
id3win_text_artist=gtk_entry_new_with_max_length(30);
gtk_container_add(GTK_CONTAINER(id3win_frame_artist),id3win_text_artist);
gtk_box_pack_start(GTK_BOX(id3win_frame_global),id3win_frame_artist,TRUE,TRUE,0);
id3win_frame_albyear=gtk_hbox_new(FALSE,30);
id3win_frame_album=gtk_frame_new("Album");
gtk_container_border_width(GTK_CONTAINER(id3win_frame_album),5);
id3win_text_album=gtk_entry_new_with_max_length(30);
gtk_container_add(GTK_CONTAINER(id3win_frame_album),id3win_text_album);
gtk_box_pack_start(GTK_BOX(id3win_frame_albyear),id3win_frame_album,TRUE,TRUE,0);
id3win_frame_year=gtk_frame_new("Year");
gtk_widget_set_usize(id3win_frame_year,2,0);
gtk_container_border_width(GTK_CONTAINER(id3win_frame_year),5);
id3win_text_year=gtk_entry_new_with_max_length(4);
gtk_container_add(GTK_CONTAINER(id3win_frame_year),id3win_text_year);
gtk_box_pack_start(GTK_BOX(id3win_frame_albyear),id3win_frame_year,TRUE,TRUE,0);
gtk_box_pack_start(GTK_BOX(id3win_frame_global),id3win_frame_albyear,TRUE,TRUE,0);
id3win_frame_comtrack=gtk_hbox_new(FALSE,30);
id3win_frame_comment=gtk_frame_new("Comment");
gtk_container_border_width(GTK_CONTAINER(id3win_frame_comment),5);
id3win_text_comment=gtk_entry_new_with_max_length(30);
gtk_container_add(GTK_CONTAINER(id3win_frame_comment),id3win_text_comment);
gtk_box_pack_start(GTK_BOX(id3win_frame_comtrack),id3win_frame_comment,TRUE,TRUE,0);
id3win_frame_track=gtk_frame_new("Track");
gtk_widget_set_usize(id3win_frame_track,2,0);
gtk_container_border_width(GTK_CONTAINER(id3win_frame_track),5);
id3win_text_track=gtk_entry_new_with_max_length(3);
gtk_container_add(GTK_CONTAINER(id3win_frame_track),id3win_text_track);
//.........这里部分代码省略.........
开发者ID:FlavioFalcao,项目名称:enterprise-search,代码行数:101,代码来源:gmp3info.c
示例5: main
int main (int argc, char *argv[])
{
/* Vars */
GtkWidget *vbox;
GtkWidget *window;
GtkWidget *table;
GtkWidget *label;
GtkWidget *entry;
GtkWidget *button;
GtkWidget* scrolled;
GtkWidget *menubar;
GtkWidget *filemenu;
GtkWidget *file;
GtkWidget *quit;
GtkWidget *reindexer;
/* Set default directory to index */
indexdir = ".";
/* Run the indexer */
reindex(NULL, NULL);
/* Create the search objects */
createSearch();
/* Make the GUI */
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
initialize_window(window);
/* Create a 10x5 table */
table = gtk_table_new (10, 5, FALSE);
gtk_container_add (GTK_CONTAINER (window), table);
/* create a new label. */
label = gtk_label_new ("Search Terms:" );
gtk_table_set_homogeneous(GTK_TABLE (table), TRUE);
gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 1, 2);
entry = gtk_entry_new ();
gtk_entry_set_max_length (GTK_ENTRY (entry),1000);
gtk_table_attach_defaults (GTK_TABLE (table), entry, 1, 3, 1, 2);
button = gtk_button_new_with_label ("OR Search");
gtk_signal_connect (GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (orsearch), (gpointer) entry);
gtk_table_attach_defaults (GTK_TABLE (table), button, 3, 4, 1, 2);
button = gtk_button_new_with_label ("AND Search");
gtk_signal_connect (GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (andsearch), (gpointer) entry);
gtk_table_attach_defaults (GTK_TABLE (table), button, 4, 5, 1, 2);
textview = gtk_text_view_new();
gtk_text_view_set_editable( GTK_TEXT_VIEW (textview), 0);
gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (textview), 0);
scrolled = gtk_scrolled_window_new(NULL, NULL);
gtk_container_add (GTK_CONTAINER (scrolled), textview);
gtk_table_attach_defaults (GTK_TABLE (table), scrolled, 0, 5, 2, 10);
vbox = gtk_vbox_new(FALSE, 0);
gtk_table_attach_defaults (GTK_TABLE (table), vbox, 0, 5, 0, 1);
menubar = gtk_menu_bar_new();
filemenu = gtk_menu_new();
file = gtk_menu_item_new_with_label("File");
reindexer = gtk_menu_item_new_with_label("Reindex");
gtk_signal_connect (GTK_OBJECT (reindexer), "activate", G_CALLBACK(reindex), NULL);
quit = gtk_menu_item_new_with_label("Quit");
gtk_signal_connect (GTK_OBJECT (quit), "activate", G_CALLBACK(destroy), NULL);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(file), filemenu);
gtk_menu_shell_append(GTK_MENU_SHELL(filemenu), reindexer);
gtk_menu_shell_append(GTK_MENU_SHELL(filemenu), quit);
gtk_menu_shell_append(GTK_MENU_SHELL(menubar), file);
gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 3);
gtk_widget_show_all(window);
gtk_main ();
return 0;
}
开发者ID:theycallmeswift,项目名称:Basic-C-Desktop-Search,代码行数:85,代码来源:gui.c
示例6: create_colors
static void
create_colors (void)
{
static GtkWidget *window = NULL;
GtkWidget *box1 = NULL;
GtkWidget *box2 = NULL;
GtkWidget *close_button = NULL;
GtkWidget *box = NULL;
GtkWidget *separator;
GtkWidget *label;
GtkWidget *menu;
GtkWidget *root_menu;
GtkWidget *menu_bar;
gfloat *X = NULL;
gfloat *Y = NULL;
gint i, j;
GdkColor color;
GtkDataboxGraph *graph;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request (window, 500, 300);
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_main_quit), NULL);
gtk_window_set_title (GTK_WINDOW (window), "GtkDatabox: Colors");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
box1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
box = gtk_databox_new ();
gtk_databox_set_enable_selection (GTK_DATABOX (box), FALSE);
gtk_databox_set_enable_zoom (GTK_DATABOX (box), FALSE);
color.red = 0;
color.green = 0;
color.blue = 0;
gtk_widget_modify_bg (box, GTK_STATE_NORMAL, &color);
menu = gtk_menu_new ();
root_menu = gtk_menu_item_new_with_label ("Color Menu");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
menu_bar = gtk_menu_bar_new ();
gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
gtk_box_pack_start (GTK_BOX (box1), menu_bar, FALSE, TRUE, 0);
label =
gtk_label_new
("You can change the colors of the shown datasets via the menu.\n\n");
gtk_box_pack_start (GTK_BOX (box1), label, FALSE, FALSE, 0);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, FALSE, 0);
g_signal_connect (G_OBJECT (box), "destroy",
G_CALLBACK (gtk_main_quit), NULL);
for (i = 0; i < NO_OF_DATASETS; i++)
{
if (!i)
X = g_new0 (gfloat, POINTS);
Y = g_new0 (gfloat, POINTS);
for (j = 0; j < POINTS; j++)
{
X[j] = j;
Y[j] = 100. * sin ((i + 1) * 2 * j * G_PI / POINTS);
}
color.red = 65535 * ((i + 1) % 2);
color.green = (65535 / 2) * ((i + 1) % 3);
color.blue = (65535 / 3) * ((i + 1) % 4);
graph = gtk_databox_points_new (POINTS, X, Y, &color, 1);
gtk_databox_graph_add (GTK_DATABOX (box), graph);
create_menu_entry (menu, i, box, graph);
}
gtk_databox_auto_rescale (GTK_DATABOX (box), 0.05);
gtk_box_pack_start (GTK_BOX (box1), box, TRUE, TRUE, 0);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_end (GTK_BOX (box1), box2, FALSE, TRUE, 0);
close_button = gtk_button_new_with_label ("close");
g_signal_connect (G_OBJECT (close_button), "clicked",
G_CALLBACK (gtk_main_quit), (gpointer) NULL);
gtk_box_pack_start (GTK_BOX (box2), close_button, TRUE, TRUE, 0);
GTK_WIDGET_SET_FLAGS (close_button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (close_button);
gtk_widget_show_all (window);
//.........这里部分代码省略.........
开发者ID:AbuMussabRaja,项目名称:yarp,代码行数:101,代码来源:colors.c
示例7: gtk_menu_item_get_submenu
static void *menu_get_mainwidget( void *data )
{
GtkWidget *menu_item = (GtkWidget *) data;
return gtk_menu_item_get_submenu( GTK_MENU_ITEM( menu_item) );
}
开发者ID:xharbour,项目名称:core,代码行数:5,代码来源:xwt_gtk_menu.c
示例8: switch
//.........这里部分代码省略.........
gchar *str_res_mark = g_strdup_printf(_("_Reset mark %d"), mark);
gchar *str_toggle_mark = g_strdup_printf(_("_Toggle mark %d"), mark);
gchar *str_sel_mark = g_strdup_printf(_("_Select mark %d"), mark);
gchar *str_sel_mark_or = g_strdup_printf(_("_Add mark %d"), mark);
gchar *str_sel_mark_and = g_strdup_printf(_("_Intersection with mark %d"), mark);
gchar *str_sel_mark_minus = g_strdup_printf(_("_Unselect mark %d"), mark);
g_assert(mark >= 1 && mark <= FILEDATA_MARKS_SIZE);
vf->active_mark = mark;
vf->clicked_mark = 0;
menu_item_add_sensitive(menu, str_set_mark, active,
G_CALLBACK(vf_pop_menu_set_mark_sel_cb), vf);
menu_item_add_sensitive(menu, str_res_mark, active,
G_CALLBACK(vf_pop_menu_res_mark_sel_cb), vf);
menu_item_add_sensitive(menu, str_toggle_mark, active,
G_CALLBACK(vf_pop_menu_toggle_mark_sel_cb), vf);
menu_item_add_divider(menu);
menu_item_add_sensitive(menu, str_sel_mark, active,
G_CALLBACK(vf_pop_menu_sel_mark_cb), vf);
menu_item_add_sensitive(menu, str_sel_mark_or, active,
G_CALLBACK(vf_pop_menu_sel_mark_or_cb), vf);
menu_item_add_sensitive(menu, str_sel_mark_and, active,
G_CALLBACK(vf_pop_menu_sel_mark_and_cb), vf);
menu_item_add_sensitive(menu, str_sel_mark_minus, active,
G_CALLBACK(vf_pop_menu_sel_mark_minus_cb), vf);
menu_item_add_divider(menu);
g_free(str_set_mark);
g_free(str_res_mark);
g_free(str_toggle_mark);
g_free(str_sel_mark);
g_free(str_sel_mark_and);
g_free(str_sel_mark_or);
g_free(str_sel_mark_minus);
}
vf->editmenu_fd_list = vf_pop_menu_file_list(vf);
submenu_add_edit(menu, &item, G_CALLBACK(vf_pop_menu_edit_cb), vf, vf->editmenu_fd_list);
gtk_widget_set_sensitive(item, active);
menu_item_add_stock_sensitive(menu, _("View in _new window"), GTK_STOCK_NEW, active,
G_CALLBACK(vf_pop_menu_view_cb), vf);
menu_item_add_divider(menu);
menu_item_add_stock_sensitive(menu, _("_Copy..."), GTK_STOCK_COPY, active,
G_CALLBACK(vf_pop_menu_copy_cb), vf);
menu_item_add_sensitive(menu, _("_Move..."), active,
G_CALLBACK(vf_pop_menu_move_cb), vf);
menu_item_add_sensitive(menu, _("_Rename..."), active,
G_CALLBACK(vf_pop_menu_rename_cb), vf);
menu_item_add_stock_sensitive(menu, _("_Delete..."), GTK_STOCK_DELETE, active,
G_CALLBACK(vf_pop_menu_delete_cb), vf);
menu_item_add_sensitive(menu, _("_Copy path"), active,
G_CALLBACK(vf_pop_menu_copy_path_cb), vf);
menu_item_add_sensitive(menu, _("Enable file _grouping"), active,
G_CALLBACK(vf_pop_menu_enable_grouping_cb), vf);
menu_item_add_sensitive(menu, _("Disable file groupi_ng"), active,
G_CALLBACK(vf_pop_menu_disable_grouping_cb), vf);
menu_item_add_divider(menu);
submenu = submenu_add_sort(NULL, G_CALLBACK(vf_pop_menu_sort_cb), vf,
FALSE, FALSE, TRUE, vf->sort_method);
menu_item_add_divider(submenu);
menu_item_add_check(submenu, _("Ascending"), vf->sort_ascend,
G_CALLBACK(vf_pop_menu_sort_ascend_cb), vf);
item = menu_item_add(menu, _("_Sort"), NULL, NULL);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), submenu);
item = menu_item_add_radio(menu, _("View as _List"), GINT_TO_POINTER(FILEVIEW_LIST), vf->type == FILEVIEW_LIST,
G_CALLBACK(vf_pop_menu_toggle_view_type_cb), vf);
item = menu_item_add_radio(menu, _("View as _Icons"), GINT_TO_POINTER(FILEVIEW_ICON), vf->type == FILEVIEW_ICON,
G_CALLBACK(vf_pop_menu_toggle_view_type_cb), vf);
switch (vf->type)
{
case FILEVIEW_LIST:
menu_item_add_check(menu, _("Show _thumbnails"), VFLIST(vf)->thumbs_enabled,
G_CALLBACK(vflist_pop_menu_thumbs_cb), vf);
break;
case FILEVIEW_ICON:
menu_item_add_check(menu, _("Show filename _text"), VFICON(vf)->show_text,
G_CALLBACK(vficon_pop_menu_show_names_cb), vf);
break;
}
menu_item_add_stock(menu, _("Re_fresh"), GTK_STOCK_REFRESH, G_CALLBACK(vf_pop_menu_refresh_cb), vf);
return menu;
}
开发者ID:GroupO,项目名称:geeqie_zas,代码行数:101,代码来源:view_file.c
示例9: gtk_menu_new
//.........这里部分代码省略.........
mm = MM_ZOOM;
menu_item = gtk_menu_item_new_with_label("Zoom");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
//ROTATE
mm = MM_ROTATE;
menu_item = gtk_menu_item_new_with_label("rotate");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
/**********/
//Single Select
mm = MM_SINGLE_SELECT;
menu_item = gtk_menu_item_new_with_label("select");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
//Rectangle Select
mm = MM_RECTANGULAR_SELECT;
menu_item = gtk_menu_item_new_with_label("rect select");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
/**********/
//Rectangle -x Select
mm = MM_RECTANGULAR_X_SELECT;
menu_item = gtk_menu_item_new_with_label("rect-x select");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
/**********/
//Move
mm = MM_MOVE;
menu_item = gtk_menu_item_new_with_label("Move");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
//activate magnifier
mm = MM_MAGNIFIER; //magnifier ,fisheye etc starts at 20
menu_item = gtk_menu_item_new_with_label("Magnifier");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
//activate fisheye magnifier
mm = MM_FISHEYE_MAGNIFIER;
menu_item = gtk_menu_item_new_with_label("Fisheye Magnifier");
gtk_menu_shell_append(GTK_MENU_SHELL(actions_menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(switch_Mouse), (gpointer) mm);
gtk_widget_show(menu_item);
/**********/
editing_menu = gtk_menu_new();
/* NODE */
menu_item = gtk_menu_item_new_with_label("Node");
gtk_menu_shell_append(GTK_MENU_SHELL(editing_menu), menu_item);
gtk_widget_show(menu_item);
/* EDGE */
menu_item = gtk_menu_item_new_with_label("Edge");
gtk_menu_shell_append(GTK_MENU_SHELL(editing_menu), menu_item);
gtk_widget_show(menu_item);
menu = gtk_menu_new();
/* Actions */
menu_item = gtk_menu_item_new_with_label("Mouse");
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_item), actions_menu);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
gtk_widget_show(menu_item);
/* NEW */
menu_item = gtk_menu_item_new_with_label("New");
gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_item), editing_menu);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
gtk_widget_show(menu_item);
/* Quit */
menu_item = gtk_menu_item_new_with_label("Quit");
gtk_menu_shell_append(GTK_MENU_SHELL(menu), menu_item);
g_signal_connect(G_OBJECT(menu_item), "activate",
G_CALLBACK(gtk_main_quit), NULL);
gtk_widget_show(menu_item);
return menu;
}
开发者ID:ekoontz,项目名称:graphviz,代码行数:101,代码来源:glmenu.c
示例10: window_init
/* Constructs the main program window. The specified mode will be the one
* initially selected in the Vis menu */
void
window_init( FsvMode fsv_mode )
{
GtkWidget *main_window_w;
GtkWidget *main_vbox_w;
GtkWidget *menu_bar_w;
GtkWidget *menu_w;
GtkWidget *menu_item_w;
GtkWidget *hpaned_w;
GtkWidget *vpaned_w;
GtkWidget *left_vbox_w;
GtkWidget *right_vbox_w;
GtkWidget *hbox_w;
GtkWidget *button_w;
GtkWidget *frame_w;
GtkWidget *dir_ctree_w;
GtkWidget *file_clist_w;
GtkWidget *gl_area_w;
GtkWidget *x_scrollbar_w;
GtkWidget *y_scrollbar_w;
int window_width, window_height;
/* Main window widget */
main_window_w = gtk_window_new( GTK_WINDOW_TOPLEVEL );
gtk_window_set_title( GTK_WINDOW(main_window_w), "fsv" );
gtk_window_set_wmclass( GTK_WINDOW(main_window_w), "main", "fsv" );
gtk_window_set_policy( GTK_WINDOW(main_window_w), TRUE, TRUE, TRUE );
window_width = 3 * gdk_screen_width( ) / 4;
window_height = 2584 * window_width / 4181;
gtk_widget_set_usize( main_window_w, window_width, window_height );
gtk_signal_connect( GTK_OBJECT(main_window_w), "delete_event", GTK_SIGNAL_FUNC(gtk_main_quit), NULL );
gtk_quit_add_destroy( 1, GTK_OBJECT(main_window_w) );
/* Main vertical box widget */
main_vbox_w = gui_vbox_add( main_window_w, 0 );
/* Build menu bar */
/* Menu bar widget */
menu_bar_w = gtk_menu_bar_new( );
gtk_box_pack_start( GTK_BOX(main_vbox_w), menu_bar_w, FALSE, FALSE, 0 );
gtk_widget_show( menu_bar_w );
/* File menu */
menu_w = gui_menu_add( menu_bar_w, _("File") );
/* File menu items */
menu_item_w = gui_menu_item_add( menu_w, _("Change root..."), on_file_change_root_activate, NULL );
gui_keybind( menu_item_w, _("^N") );
G_LIST_APPEND(sw_widget_list, menu_item_w);
#if 0
gui_menu_item_add( menu_w, _("Save settings"), on_file_save_settings_activate, NULL );
#endif
gui_separator_add( menu_w );
menu_item_w = gui_menu_item_add( menu_w, _("Exit"), on_file_exit_activate, NULL );
gui_keybind( menu_item_w, _("^Q") );
/* Vis menu */
menu_w = gui_menu_add( menu_bar_w, _("Vis") );
/* Vis menu items */
gui_radio_menu_begin( fsv_mode -1 );
#if 0 /* DiscV mode needs more work */
gui_radio_menu_item_add( menu_w, _("DiscV"), on_vis_discv_activate, NULL );
/* Note: don't forget to remove the "-1" three lines up */
#endif
gui_radio_menu_item_add( menu_w, _("MapV"), on_vis_mapv_activate, NULL );
gui_radio_menu_item_add( menu_w, _("TreeV"), on_vis_treev_activate, NULL );
/* Color menu */
menu_w = gui_menu_add( menu_bar_w, _("Colors") );
/* Color menu items */
gui_radio_menu_begin( 0 );
menu_item_w = gui_radio_menu_item_add( menu_w, _("By node type"), on_color_by_nodetype_activate, NULL );
G_LIST_APPEND(sw_widget_list, menu_item_w);
color_by_nodetype_rmenu_item_w = menu_item_w;
menu_item_w = gui_radio_menu_item_add( menu_w, _("By timestamp"), on_color_by_timestamp_activate, NULL );
G_LIST_APPEND(sw_widget_list, menu_item_w);
color_by_timestamp_rmenu_item_w = menu_item_w;
menu_item_w = gui_radio_menu_item_add( menu_w, _("By wildcards"), on_color_by_wildcards_activate, NULL );
G_LIST_APPEND(sw_widget_list, menu_item_w);
color_by_wpattern_rmenu_item_w = menu_item_w;
gui_separator_add( menu_w );
gui_menu_item_add( menu_w, _("Setup..."), on_color_setup_activate, NULL );
#ifdef DEBUG
/* Debug menu */
menu_w = gui_menu_add( menu_bar_w, "Debug" );
/* Debug menu items */
gui_menu_item_add( menu_w, "Memory totals", debug_show_mem_totals, NULL );
gui_menu_item_add( menu_w, "Memory summary", debug_show_mem_summary, NULL );
gui_menu_item_add( menu_w, "Memory stats", debug_show_mem_stats, NULL );
gui_separator_add( menu_w );
gui_menu_item_add( menu_w, "GLib memory profile", g_mem_profile, NULL );
gui_menu_item_add( menu_w, "GMemChunk info", g_mem_chunk_info, NULL );
#endif
/* Help menu (right-justified) */
menu_w = gui_menu_add( menu_bar_w, _("Help") );
gtk_menu_item_right_justify( GTK_MENU_ITEM(GTK_MENU(menu_w)->parent_menu_item) );
//.........这里部分代码省略.........
开发者ID:Explorer09,项目名称:fsv,代码行数:101,代码来源:window.c
示例11: GTK_MENU_ITEM
void ZLGtkApplicationWindow::MenuBuilder::processSepartor(ZLMenubar::Separator&) {
GtkMenuItem *gtkItem = GTK_MENU_ITEM(gtk_separator_menu_item_new());
gtk_menu_shell_append(GTK_MENU_SHELL(myMenuStack.top()), GTK_WIDGET(gtkItem));
gtk_widget_show_all(GTK_WIDGET(gtkItem));
}
开发者ID:euroelessar,项目名称:FBReader,代码行数:5,代码来源:ZLGtkApplicationWindow.cpp
示例12: gtk_menu_new
void pMenu::constructor() {
gtkMenu = gtk_menu_new();
widget = gtk_image_menu_item_new_with_mnemonic("");
gtk_menu_item_set_submenu(GTK_MENU_ITEM(widget), gtkMenu);
setText(menu.state.text);
}
开发者ID:johnwchadwick,项目名称:gcmtools,代码行数:6,代码来源:menu.cpp
示例13: macmenu_construct
static void macmenu_construct(AppletType* applet)
{
MacMenu *mmb = g_slice_new0(MacMenu);
mmb->applet = applet;
mmb->screen = wnck_screen_get(gdk_screen_get_number(
gtk_widget_get_screen(GTK_WIDGET(applet))
));
mmb->mbars_scks = g_hash_table_new(NULL, NULL);
mmb->title_subs = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
mmb->ts_mtime = 0;
mmb->basebox = GTK_BOX(gtk_hbox_new(FALSE, 0));
gtk_container_set_border_width(GTK_CONTAINER(mmb->basebox), 0);
gtk_container_add(GTK_CONTAINER(applet), GTK_WIDGET(mmb->basebox));
mmb->label = GTK_LABEL(gtk_label_new(MAIN_LABEL_TEXT));
PangoAttrList *pattr = pango_attr_list_new();
PangoAttribute *pa = pango_attr_weight_new(PANGO_WEIGHT_BOLD);
pa->start_index = 0; pa->end_index = 1024;
pango_attr_list_insert(pattr, pa);
gtk_label_set_attributes(mmb->label, pattr);
pango_attr_list_unref(pattr);
gtk_label_set_ellipsize(mmb->label, PANGO_ELLIPSIZE_END);
gtk_label_set_max_width_chars(mmb->label, MAX_LABEL_WIDTH_N_CHARS * 10);
gtk_label_set_single_line_mode(mmb->label, TRUE);
gtk_box_pack_start(mmb->basebox, GTK_WIDGET(mmb->label), FALSE, FALSE, 0);
mmb->label_space = gtk_event_box_new();
gtk_widget_set_size_request(mmb->label_space, 8, 1);
gtk_box_pack_start(mmb->basebox, mmb->label_space, FALSE, FALSE, 0);
mmb->notebook = GTK_NOTEBOOK(gtk_notebook_new());
gtk_notebook_set_show_tabs(mmb->notebook, FALSE);
gtk_notebook_set_show_border(mmb->notebook, FALSE);
gtk_box_pack_start(mmb->basebox, GTK_WIDGET(mmb->notebook), TRUE, TRUE, 0);
mmb->dummysck = gtk_hbox_new(FALSE, 0);
gtk_notebook_append_page(mmb->notebook, mmb->dummysck, NULL);
mmb->mainsck = gtk_hbox_new(FALSE, SHORTCUT_SPACING);
gtk_notebook_append_page(mmb->notebook, mmb->mainsck, NULL);
//initialize_mainsck(mmb);
mmb->button = GTK_BUTTON(gtk_button_new());
gtk_button_set_relief(mmb->button, GTK_RELIEF_NONE);
gtk_button_set_focus_on_click(GTK_BUTTON(mmb->button), FALSE);
gtk_box_pack_start(mmb->basebox, GTK_WIDGET(mmb->button),
FALSE, FALSE, 0);
g_signal_connect(mmb->screen, "active-window-changed",
G_CALLBACK(desktop_active_window_changed), mmb);
g_signal_connect(mmb->screen, "window-opened",
G_CALLBACK(desktop_window_opened), mmb);
#ifdef FOR_XFCE
g_signal_connect(applet, "free-data",
G_CALLBACK(macmenu_free_data), mmb);
g_signal_connect(applet, "size-changed",
G_CALLBACK(macmenu_set_size), mmb);
// setup panel applet
gtk_widget_show_all(GTK_WIDGET(mmb->basebox));
xfce_panel_plugin_add_action_widget (applet, GTK_WIDGET(mmb->button));
xfce_panel_plugin_set_expand(applet, TRUE);
macmenu_set_size(applet, xfce_panel_plugin_get_size(applet), mmb);
// load config, set popup
macmenu_load_from_rc(mmb);
GtkWidget* label_toggle = gtk_check_menu_item_new_with_label("Hide Label");
g_signal_connect(label_toggle, "toggled", G_CALLBACK(on_label_toggled), mmb);
gtk_widget_show(label_toggle);
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(label_toggle), mmb->hide_label);
gtk_check_menu_item_toggled(GTK_CHECK_MENU_ITEM(label_toggle));
xfce_panel_plugin_menu_insert_item(mmb->applet, GTK_MENU_ITEM(label_toggle));
#elif FOR_GNOME
g_signal_connect(applet, "destroy", G_CALLBACK(macmenu_free_data), mmb);
// setup panel applet
gtk_widget_show_all(GTK_WIDGET(applet));
g_signal_connect(GTK_WIDGET(mmb->button), "pressed",
G_CALLBACK(on_button_pressed), mmb);
panel_applet_set_flags (applet, PANEL_APPLET_EXPAND_MAJOR);
macmenu_set_size(applet, panel_applet_get_size(applet), mmb);
// load config, set popup
mmb->gconf = gconf_client_get_default();
macmenu_load_from_gconf(mmb);
macmenu_write_gconf(mmb);
static const char toggle_menu_xml [] =
"<popup name=\"button3\">\n"
" <menuitem name=\"hide_label\" "
" verb=\"hide_label\" "
" _label=\"_Hide Label\"\n"
" type=\"toggle\"/>\n"
"</popup>\n";
static const BonoboUIVerb toggle_menu_verbs[] =
{
BONOBO_UI_VERB_END
};
panel_applet_setup_menu(mmb->applet, toggle_menu_xml, toggle_menu_verbs, mmb);
BonoboUIComponent* popup_component = panel_applet_get_popup_component(mmb->applet);
bonobo_ui_component_set_prop(popup_component, "/commands/hide_label",
"state", mmb->hide_label ? "1": "0", NULL);
//.........这里部分代码省略.........
开发者ID:NovaCygni,项目名称:aur-mirror,代码行数:101,代码来源:macmenu-applet.c
示例14: bar_pane_keywords_menu_popup
static void bar_pane_keywords_menu_popup(GtkWidget *widget, PaneKeywordsData *pkd, gint x, gint y)
{
GtkWidget *menu;
GtkWidget *item;
GtkWidget *submenu;
GtkTreeViewDropPosition pos;
if (pkd->click_tpath) gtk_tree_path_free(pkd->click_tpath);
pkd->click_tpath = NULL;
gtk_tree_view_get_dest_row_at_pos(GTK_TREE_VIEW(pkd->keyword_treeview), x, y, &pkd->click_tpath, &pos);
menu = popup_menu_short_lived();
menu_item_add_stock(menu, _("Add keyword"), GTK_STOCK_EDIT, G_CALLBACK(bar_pane_keywords_add_dialog_cb), pkd);
menu_item_add_divider(menu);
menu_item_add(menu, _("Add keyword to all selected images"), G_CALLBACK(bar_pane_keywords_add_to_selected_cb), pkd);
menu_item_add_divider(menu);
if (pkd->click_tpath)
{
/* for the entry */
gchar *text;
gchar *mark;
gint i;
GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(pkd->keyword_treeview));
GtkTreeIter iter;
gtk_tree_model_get_iter(model, &iter, pkd->click_tpath);
gchar *name;
gtk_tree_model_get(model, &iter, FILTER_KEYWORD_COLUMN_NAME, &name,
FILTER_KEYWORD_COLUMN_MARK, &mark, -1);
text = g_strdup_printf(_("Hide \"%s\""), name);
menu_item_add_stock(menu, text, GTK_STOCK_EDIT, G_CALLBACK(bar_pane_keywords_hide_cb), pkd);
g_free(text);
submenu = gtk_menu_new();
for (i = 0; i < FILEDATA_MARKS_SIZE; i++)
{
text = g_strdup_printf(_("Mark %d"), i + 1);
item = menu_item_add(submenu, text, G_CALLBACK(bar_pane_keywords_connect_mark_cb), pkd);
g_object_set_data(G_OBJECT(item), "mark", GINT_TO_POINTER(i + 1));
g_free(text);
}
text = g_strdup_printf(_("Connect \"%s\" to mark"), name);
item = menu_item_add(menu, text, NULL, NULL);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), submenu);
g_free(text);
menu_item_add_divider(menu);
text = g_strdup_printf(_("Edit \"%s\""), name);
menu_item_add_stock(menu, text, GTK_STOCK_EDIT, G_CALLBACK(bar_pane_keywords_edit_dialog_cb), pkd);
g_free(text);
text = g_strdup_printf(_("Remove \"%s\""), name);
menu_item_add_stock(menu, text, GTK_STOCK_DELETE, G_CALLBACK(bar_pane_keywords_delete_cb), pkd);
g_free(text);
if (mark && mark[0])
{
text = g_strdup_printf(_("Disconnect \"%s\" from mark %s"), name, mark);
menu_item_add_stock(menu, text, GTK_STOCK_DELETE, G_CALLBACK(bar_pane_keywords_connect_mark_cb), pkd);
g_free(text);
}
menu_item_add_divider(menu);
g_free(mark);
g_free(name);
}
/* for the pane */
menu_item_add(menu, _("Expand checked"), G_CALLBACK(bar_pane_keywords_expand_checked_cb), pkd);
menu_item_add(menu, _("Collapse unchecked"), G_CALLBACK(bar_pane_keywords_collapse_unchecked_cb), pkd);
menu_item_add(menu, _("Hide unchecked"), G_CALLBACK(bar_pane_keywords_hide_unchecked_cb), pkd);
menu_item_add(menu, _("Show all"), G_CALLBACK(bar_pane_keywords_show_all_cb), pkd);
submenu = gtk_menu_new();
item = menu_item_add(menu, _("On any change"), NULL, NULL);
gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), submenu);
menu_item_add_check(submenu, _("Expand checked"), pkd->expand_checked, G_CALLBACK(bar_pane_keywords_expand_checked_toggle_cb), pkd);
menu_item_add_check(submenu, _("Collapse unchecked"), pkd->collapse_unchecked, G_CALLBACK(bar_pane_keywords_collapse_unchecked_toggle_cb), pkd);
menu_item_add_check(submenu, _("Hide unchecked"), pkd->hide_unchecked, G_CALLBACK(bar_pane_keywords_hide_unchecked_toggle_cb), pkd);
gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0, GDK_CURRENT_TIME);
}
开发者ID:XelaRellum,项目名称:geeqie,代码行数:93,代码来源:bar_keywords.c
示例15: main
int
main (int argc, char **argv)
{
static GtkWidget *window = NULL;
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *button;
GtkWidget *optionmenu;
GtkWidget *separator;
gtk_init (&argc, &argv);
if (!window)
{
GtkWidget *menubar;
GtkWidget *menu;
GtkWidget *submenu;
GtkWidget *menuitem;
GtkAccelGroup *accel_group;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy",
G_CALLBACK(gtk_main_quit), NULL);
g_signal_connect (window, "delete-event",
G_CALLBACK (gtk_true), NULL);
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
gtk_window_set_title (GTK_WINDOW (window), "menus");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
box1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
gtk_widget_show (box1);
menubar = gtk_menu_bar_new ();
gtk_box_pack_start (GTK_BOX (box1), menubar, FALSE, TRUE, 0);
gtk_widget_show (menubar);
menu = create_menu (2, TRUE);
menuitem = gtk_menu_item_new_with_label ("test\nline2");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
menuitem = gtk_menu_item_new_with_label ("dynamic");
submenu = create_menu (3, TRUE);
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), submenu);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
g_timeout_add (250, change_item, submenu);
menuitem = gtk
|
请发表评论