本文整理汇总了C++中gtk_widget_grab_default函数的典型用法代码示例。如果您正苦于以下问题:C++ gtk_widget_grab_default函数的具体用法?C++ gtk_widget_grab_default怎么用?C++ gtk_widget_grab_default使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了gtk_widget_grab_default函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: um_password_dialog_new
UmPasswordDialog *
um_password_dialog_new (void)
{
GtkBuilder *builder;
GError *error;
const gchar *filename;
UmPasswordDialog *um;
GtkWidget *widget;
const char *old_label;
char *label;
gint len;
builder = gtk_builder_new ();
error = NULL;
filename = UIDIR "/password-dialog.ui";
if (!g_file_test (filename, G_FILE_TEST_EXISTS))
filename = "data/password-dialog.ui";
if (!gtk_builder_add_from_file (builder, filename, &error)) {
g_error ("%s", error->message);
g_error_free (error);
return NULL;
}
um = g_new0 (UmPasswordDialog, 1);
um->action_label = (GtkWidget *) gtk_builder_get_object (builder, "action-label");
widget = (GtkWidget *) gtk_builder_get_object (builder, "action-combo");
g_signal_connect (widget, "changed",
G_CALLBACK (action_changed), um);
um->action_combo = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "dialog");
g_signal_connect (widget, "delete-event",
G_CALLBACK (gtk_widget_hide_on_delete), NULL);
um->dialog = widget;
um->user_icon = (GtkWidget *) gtk_builder_get_object (builder, "user-icon");
um->user_name = (GtkWidget *) gtk_builder_get_object (builder, "user-name");
widget = (GtkWidget *) gtk_builder_get_object (builder, "cancel-button");
g_signal_connect (widget, "clicked",
G_CALLBACK (cancel_password_dialog), um);
widget = (GtkWidget *) gtk_builder_get_object (builder, "ok-button");
g_signal_connect (widget, "clicked",
G_CALLBACK (accept_password_dialog), um);
gtk_widget_grab_default (widget);
um->ok_button = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "password-normal-strength-hints-label");
old_label = gtk_label_get_label (GTK_LABEL (widget));
if (!g_strcmp0(g_getenv("XDG_CURRENT_DESKTOP"), "Unity"))
label = g_strdup_printf ("<a href=\"%s\">%s</a>",
"help:ubuntu-help/user-goodpassword",
old_label);
else
label = g_strdup_printf ("<a href=\"%s\">%s</a>",
"help:gnome-help/user-goodpassword",
old_label);
gtk_label_set_markup (GTK_LABEL (widget), label);
g_free (label);
widget = (GtkWidget *) gtk_builder_get_object (builder, "show-password-checkbutton");
g_signal_connect (widget, "toggled",
G_CALLBACK (show_password_toggled), um);
um->show_password_button = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "password-entry");
g_signal_connect (widget, "notify::text",
G_CALLBACK (password_entry_changed), um);
g_signal_connect_after (widget, "focus-out-event",
G_CALLBACK (password_entry_focus_out), um);
gtk_entry_set_visibility (GTK_ENTRY (widget), FALSE);
g_signal_connect (widget, "icon-press",
G_CALLBACK (activate_icon), um);
g_signal_connect (widget, "populate-popup",
G_CALLBACK (populate_menu), um);
um->password_entry = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "old-password-entry");
g_signal_connect_after (widget, "focus-out-event",
G_CALLBACK (old_password_entry_focus_out), um);
g_signal_connect (widget, "notify::text",
G_CALLBACK (old_password_entry_changed), um);
g_signal_connect (widget, "activate",
G_CALLBACK (old_password_entry_activate), um);
um->old_password_entry = widget;
um->old_password_label = (GtkWidget *) gtk_builder_get_object (builder, "old-password-label");
widget = (GtkWidget *) gtk_builder_get_object (builder, "verify-entry");
g_signal_connect (widget, "notify::text",
G_CALLBACK (verify_entry_changed), um);
g_signal_connect_after (widget, "focus-out-event",
G_CALLBACK (verify_entry_focus_out), um);
um->verify_entry = widget;
len = 0;
//.........这里部分代码省略.........
开发者ID:gauravjuvekar,项目名称:cinnamon-control-center,代码行数:101,代码来源:um-password-dialog.c
示例2: makeWidget
/* create and display the dialog box */
void
makeWidget(PluginInstance *This)
{
GtkWidget *dialogWindow;
GtkWidget *dialogMessage;
GtkWidget *okButton;
GtkWidget *cancelButton;
char message[1024];
MimeTypeElement *ele;
if (!This) return;
/* need to check whether we already pop up a dialog box for previous
minetype in the same web page. It's require otherwise there will
be 2 dialog boxes pop if there are 2 plugin in the same web page
*/
if ((ele = isExist(&head, This->type)))
{
if (ele->pinst && ele->pinst->dialogBox)
{
GtkWidget *top_window = gtk_widget_get_toplevel(ele->pinst->dialogBox);
if (top_window && GTK_WIDGET_VISIBLE(top_window))
{ /* this will raise the toplevel window */
gdk_window_show(top_window->window);
}
}
return;
}
dialogWindow = gtk_dialog_new();
This->dialogBox = dialogWindow;
This->exists = TRUE;
This->dialogBox = dialogWindow;
addToList(&head, This);
gtk_window_set_title(GTK_WINDOW(dialogWindow), PLUGIN_NAME);
gtk_window_set_position(GTK_WINDOW(dialogWindow), GTK_WIN_POS_CENTER);
gtk_window_set_modal(GTK_WINDOW(dialogWindow), FALSE);
gtk_window_set_wmclass(GTK_WINDOW(dialogWindow), "Mozilla", "DefaultPlugin");
gtk_container_set_border_width(GTK_CONTAINER(dialogWindow), 20);
gtk_window_set_resizable(GTK_WINDOW(dialogWindow), FALSE);
PR_snprintf(message, sizeof(message) - 1, MESSAGE, This->type);
dialogMessage = AddWidget(gtk_label_new (message),
GTK_DIALOG(dialogWindow)->vbox);
okButton= AddWidget(gtk_button_new_with_label (OK_BUTTON),
GTK_DIALOG(dialogWindow)->action_area);
g_object_set_data(GTK_OBJECT(okButton), DIALOGID, dialogWindow);
GTK_WIDGET_SET_FLAGS (okButton, GTK_CAN_DEFAULT);
gtk_widget_grab_default(okButton);
cancelButton= AddWidget(gtk_button_new_with_label (CANCEL_BUTTON),
GTK_DIALOG(dialogWindow)->action_area);
g_signal_connect (GTK_OBJECT(okButton), "clicked",
G_CALLBACK(DialogOKClicked), This);
g_signal_connect (GTK_OBJECT(cancelButton), "clicked",
G_CALLBACK(DialogCancelClicked), This);
g_signal_connect(GTK_OBJECT(dialogWindow), "key_press_event",
G_CALLBACK(DialogEscapePressed), NULL);
/* hookup to when the dialog is destroyed */
g_signal_connect(GTK_OBJECT(dialogWindow), "destroy",
G_CALLBACK(onDestroyWidget), This);
gtk_widget_show_all(dialogWindow);
}
开发者ID:amyvmiwei,项目名称:firefox,代码行数:71,代码来源:nullplugin.c
示例3: main
int
main (int argc, char *argv[])
{
GtkWidget *box;
GtkWidget *menubar;
GtkWidget *menuitem;
GtkWidget *menu;
GtkWidget *button;
GtkAccelGroup *accel_group;
gtk_init (&argc, &argv);
manager = gtk_recent_manager_get_default ();
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (window), -1, -1);
gtk_window_set_title (GTK_WINDOW (window), "Recent Chooser Menu Test");
g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), box);
gtk_widget_show (box);
menubar = gtk_menu_bar_new ();
gtk_box_pack_start (GTK_BOX (box), menubar, FALSE, TRUE, 0);
gtk_widget_show (menubar);
menu = create_file_menu (accel_group);
menuitem = gtk_menu_item_new_with_mnemonic ("_File");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
menu = create_recent_chooser_menu (4);
menuitem = gtk_menu_item_new_with_mnemonic ("_Recently Used");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
label = gtk_label_new ("No recent item selected");
gtk_box_pack_start (GTK_BOX (box), label, TRUE, TRUE, 0);
gtk_widget_show (label);
button = gtk_button_new_with_label ("Close");
g_signal_connect_swapped (button, "clicked",
G_CALLBACK (gtk_widget_destroy),
window);
gtk_box_pack_end (GTK_BOX (box), button, TRUE, TRUE, 0);
gtk_widget_set_can_default (button, TRUE);
gtk_widget_grab_default (button);
gtk_widget_show (button);
gtk_widget_show (window);
gtk_main ();
return 0;
}
开发者ID:BoozzyAmdJin,项目名称:gtk-,代码行数:61,代码来源:testrecentchoosermenu.c
示例4: export_html_dialog_create
/**
* Create main dialog decorations (excluding notebook pages).
*/
static void export_html_dialog_create( void ) {
GtkWidget *window;
GtkWidget *vbox;
GtkWidget *vnbox;
GtkWidget *notebook;
GtkWidget *hbbox;
GtkWidget *btnPrev;
GtkWidget *btnNext;
GtkWidget *btnCancel;
GtkWidget *hsbox;
GtkWidget *statusbar;
window = gtk_window_new(GTK_WINDOW_DIALOG);
gtk_widget_set_usize(window, EXPORTHTML_WIDTH, EXPORTHTML_HEIGHT );
gtk_container_set_border_width( GTK_CONTAINER(window), 0 );
gtk_window_set_title( GTK_WINDOW(window),
_("Export Address Book to HTML File") );
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_modal(GTK_WINDOW(window), TRUE);
gtk_signal_connect(GTK_OBJECT(window), "delete_event",
GTK_SIGNAL_FUNC(export_html_delete_event),
NULL );
gtk_signal_connect(GTK_OBJECT(window), "key_press_event",
GTK_SIGNAL_FUNC(export_html_key_pressed),
NULL );
vbox = gtk_vbox_new(FALSE, 4);
gtk_widget_show(vbox);
gtk_container_add(GTK_CONTAINER(window), vbox);
vnbox = gtk_vbox_new(FALSE, 4);
gtk_container_set_border_width(GTK_CONTAINER(vnbox), 4);
gtk_widget_show(vnbox);
gtk_box_pack_start(GTK_BOX(vbox), vnbox, TRUE, TRUE, 0);
/* Notebook */
notebook = gtk_notebook_new();
gtk_notebook_set_show_tabs( GTK_NOTEBOOK(notebook), FALSE ); /* Hide */
/* gtk_notebook_set_show_tabs( GTK_NOTEBOOK(notebook), TRUE ); */
gtk_widget_show(notebook);
gtk_box_pack_start(GTK_BOX(vnbox), notebook, TRUE, TRUE, 0);
gtk_container_set_border_width(GTK_CONTAINER(notebook), 6);
/* Status line */
hsbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_end(GTK_BOX(vbox), hsbox, FALSE, FALSE, BORDER_WIDTH);
statusbar = gtk_statusbar_new();
gtk_box_pack_start(GTK_BOX(hsbox), statusbar, TRUE, TRUE, BORDER_WIDTH);
/* Button panel */
gtkut_button_set_create(&hbbox, &btnPrev, _( "Prev" ),
&btnNext, _( "Next" ),
&btnCancel, _( "Cancel" ) );
gtk_box_pack_end(GTK_BOX(vbox), hbbox, FALSE, FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(hbbox), 2);
gtk_widget_grab_default(btnNext);
/* Button handlers */
gtk_signal_connect(GTK_OBJECT(btnPrev), "clicked",
GTK_SIGNAL_FUNC(export_html_prev), NULL);
gtk_signal_connect(GTK_OBJECT(btnNext), "clicked",
GTK_SIGNAL_FUNC(export_html_next), NULL);
gtk_signal_connect(GTK_OBJECT(btnCancel), "clicked",
GTK_SIGNAL_FUNC(export_html_cancel), NULL);
gtk_widget_show_all(vbox);
exphtml_dlg.window = window;
exphtml_dlg.notebook = notebook;
exphtml_dlg.btnPrev = btnPrev;
exphtml_dlg.btnNext = btnNext;
exphtml_dlg.btnCancel = btnCancel;
exphtml_dlg.statusbar = statusbar;
exphtml_dlg.status_cid = gtk_statusbar_get_context_id(
GTK_STATUSBAR(statusbar), "Export HTML Dialog" );
}
开发者ID:moreorless,项目名称:claws-mail,代码行数:79,代码来源:exphtmldlg.c
示例5: gtk_dialog_new
MergeDialog::MergeDialog(const ustring & text)
{
event_textbuffer = 0;
extern Settings *settings;
mergedialog = gtk_dialog_new();
gtk_window_set_title(GTK_WINDOW(mergedialog), _("Merge"));
gtk_window_set_position(GTK_WINDOW(mergedialog), GTK_WIN_POS_CENTER_ON_PARENT);
gtk_window_set_modal(GTK_WINDOW(mergedialog), TRUE);
gtk_window_set_default_size(GTK_WINDOW(mergedialog), (int)(settings->genconfig.screen_width_get() * 0.8), (int)(settings->genconfig.screen_height_get() * 0.9));
dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (mergedialog));
gtk_widget_show(dialog_vbox1);
label = gtk_label_new(_("The merge operation needs manual intervention. Each place that needs intervention shows two buttons with the two alternatives. Please press the buttons with the correct text."));
gtk_label_set_line_wrap(GTK_LABEL(label), true);
gtk_widget_show(label);
gtk_box_pack_start(GTK_BOX(dialog_vbox1), label, FALSE, FALSE, 0);
gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
scrolledwindow = gtk_scrolled_window_new(NULL, NULL);
gtk_widget_show(scrolledwindow);
gtk_box_pack_start(GTK_BOX(dialog_vbox1), scrolledwindow, TRUE, TRUE, 0);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_SHADOW_IN);
textview = gtk_text_view_new();
gtk_widget_show(textview);
gtk_container_add(GTK_CONTAINER(scrolledwindow), textview);
gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview), FALSE);
gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), GTK_WRAP_WORD);
textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview));
dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(mergedialog));
gtk_widget_show(dialog_action_area1);
gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END);
new InDialogHelp(mergedialog, NULL, NULL, NULL);
cancelbutton = gtk_button_new_from_stock("gtk-cancel");
gtk_widget_show(cancelbutton);
gtk_dialog_add_action_widget(GTK_DIALOG(mergedialog), cancelbutton, GTK_RESPONSE_CANCEL);
gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true);
okbutton = gtk_button_new_from_stock("gtk-ok");
gtk_widget_show(okbutton);
gtk_dialog_add_action_widget(GTK_DIALOG(mergedialog), okbutton, GTK_RESPONSE_OK);
gtk_widget_set_can_default (GTK_WIDGET (okbutton), true);
gtk_widget_set_sensitive(okbutton, false);
g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this));
g_signal_connect_after((gpointer) textbuffer, "changed", G_CALLBACK(on_textbuffer_changed), gpointer(this));
gtk_widget_grab_focus(textview);
gtk_widget_grab_default(okbutton);
load_text(text);
}
开发者ID:postiffm,项目名称:bibledit-gtk,代码行数:61,代码来源:dialogmerge.cpp
示例6: um_password_dialog_new
UmPasswordDialog *
um_password_dialog_new (void)
{
GtkBuilder *builder;
GError *error;
UmPasswordDialog *um;
GtkWidget *widget;
const char *old_label;
char *label;
gint len;
builder = gtk_builder_new ();
error = NULL;
if (!gtk_builder_add_from_resource (builder,
"/org/gnome/control-center/user-accounts/password-dialog.ui",
&error)) {
g_error ("%s", error->message);
g_error_free (error);
return NULL;
}
um = g_new0 (UmPasswordDialog, 1);
um->action_label = (GtkWidget *) gtk_builder_get_object (builder, "action-label");
widget = (GtkWidget *) gtk_builder_get_object (builder, "action-combo");
g_signal_connect (widget, "changed",
G_CALLBACK (action_changed), um);
um->action_combo = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "dialog");
g_signal_connect (widget, "delete-event",
G_CALLBACK (gtk_widget_hide_on_delete), NULL);
um->dialog = widget;
um->user_icon = (GtkWidget *) gtk_builder_get_object (builder, "user-icon");
um->user_name = (GtkWidget *) gtk_builder_get_object (builder, "user-name");
widget = (GtkWidget *) gtk_builder_get_object (builder, "cancel-button");
g_signal_connect (widget, "clicked",
G_CALLBACK (cancel_password_dialog), um);
widget = (GtkWidget *) gtk_builder_get_object (builder, "ok-button");
g_signal_connect (widget, "clicked",
G_CALLBACK (accept_password_dialog), um);
gtk_widget_grab_default (widget);
um->ok_button = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "password-normal-strength-hints-label");
old_label = gtk_label_get_label (GTK_LABEL (widget));
label = g_strdup_printf ("<a href=\"%s\">%s</a>",
"help:gnome-help/user-goodpassword",
old_label);
gtk_label_set_markup (GTK_LABEL (widget), label);
g_free (label);
widget = (GtkWidget *) gtk_builder_get_object (builder, "show-password-checkbutton");
g_signal_connect (widget, "toggled",
G_CALLBACK (show_password_toggled), um);
um->show_password_button = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "password-entry");
g_signal_connect (widget, "notify::text",
G_CALLBACK (password_entry_changed), um);
g_signal_connect_after (widget, "focus-out-event",
G_CALLBACK (password_entry_focus_out), um);
gtk_entry_set_visibility (GTK_ENTRY (widget), FALSE);
g_signal_connect (widget, "icon-press",
G_CALLBACK (activate_icon), um);
g_signal_connect (widget, "populate-popup",
G_CALLBACK (populate_menu), um);
um->password_entry = widget;
widget = (GtkWidget *) gtk_builder_get_object (builder, "old-password-entry");
g_signal_connect_after (widget, "focus-out-event",
G_CALLBACK (old_password_entry_focus_out), um);
g_signal_connect (widget, "notify::text",
G_CALLBACK (old_password_entry_changed), um);
g_signal_connect (widget, "activate",
G_CALLBACK (old_password_entry_activate), um);
um->old_password_entry = widget;
um->old_password_label = (GtkWidget *) gtk_builder_get_object (builder, "old-password-label");
widget = (GtkWidget *) gtk_builder_get_object (builder, "verify-entry");
g_signal_connect (widget, "notify::text",
G_CALLBACK (verify_entry_changed), um);
g_signal_connect_after (widget, "focus-out-event",
G_CALLBACK (verify_entry_focus_out), um);
um->verify_entry = widget;
len = 0;
len = MAX (len, strlen (C_("Password strength", "Too short")));
len = MAX (len, strlen (C_("Password strength", "Weak")));
len = MAX (len, strlen (C_("Password strength", "Fair")));
len = MAX (len, strlen (C_("Password strength", "Good")));
len = MAX (len, strlen (C_("Password strength", "Strong")));
len += 2;
//.........这里部分代码省略.........
开发者ID:ChrisCummins,项目名称:gnome-control-center,代码行数:101,代码来源:um-password-dialog.c
示例7: main
int main( int argc,
char *argv[] )
{
GtkWidget *window;
GtkWidget *vbox, *hbox;
GtkWidget *entry;
GtkWidget *button;
GtkWidget *check;
gint position;
GTimer *tim = g_timer_new();
gtk_init (&argc, &argv);
g_timer_start(tim);
/* create a new window */
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request( GTK_WIDGET (window), 200, 100);
gtk_window_set_title(GTK_WINDOW (window), "GTK Entry");
g_signal_connect(G_OBJECT (window), "delete_event",
G_CALLBACK(exit), NULL);
#if GTK_CHECK_VERSION(3, 2, 0)
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
#else
vbox = gtk_vbox_new (FALSE, 0);
#endif
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_widget_show (vbox);
entry = gtk_entry_new ();
gtk_entry_set_max_length (GTK_ENTRY(entry), 50);
g_signal_connect(G_OBJECT(entry), "activate",
G_CALLBACK(enter_callback),
entry);
gtk_entry_set_text (GTK_ENTRY (entry), "hello");
gtk_editable_insert_text (GTK_EDITABLE (entry), " world", -1, &position);
gtk_editable_select_region (GTK_EDITABLE (entry),
0, gtk_entry_get_text_length(GTK_ENTRY(entry)));
gtk_box_pack_start (GTK_BOX (vbox), entry, TRUE, TRUE, 0);
gtk_widget_show (entry);
#if GTK_CHECK_VERSION(3, 2, 0)
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
#else
hbox = gtk_hbox_new (FALSE, 0);
#endif
gtk_container_add (GTK_CONTAINER (vbox), hbox);
gtk_widget_show (hbox);
check = gtk_check_button_new_with_label("Editable");
gtk_box_pack_start (GTK_BOX (hbox), check, TRUE, TRUE, 0);
g_signal_connect (G_OBJECT(check), "toggled",
G_CALLBACK(entry_toggle_editable), entry);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check), TRUE);
gtk_widget_show (check);
check = gtk_check_button_new_with_label("Visible");
gtk_box_pack_start (GTK_BOX (hbox), check, TRUE, TRUE, 0);
g_signal_connect (G_OBJECT(check), "toggled",
G_CALLBACK(entry_toggle_visibility), entry);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check), TRUE);
gtk_widget_show (check);
button = gtk_button_new_with_label ("Close");
g_signal_connect_swapped (G_OBJECT (button), "clicked",
G_CALLBACK(exit),
G_OBJECT (window));
gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0);
#if GTK_CHECK_VERSION(2, 18, 0)
gtk_widget_set_can_default (button, TRUE);
#else
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
#endif
gtk_widget_grab_default (button);
gtk_widget_show (button);
gtk_widget_show(window);
g_print("elapsed time: %f\n",g_timer_elapsed(tim,NULL));
g_timer_destroy(tim);
gtk_main();
return(0);
}
开发者ID:TheSLinux-forks,项目名称:uim,代码行数:87,代码来源:entry.c
示例8: DoMessageBox
int DoMessageBox( const char* lpText, const char* lpCaption, guint32 uType ){
GtkWidget *window, *w, *vbox, *hbox;
int mode = ( uType & MB_TYPEMASK ), ret, loop = 1;
window = gtk_window_new( GTK_WINDOW_TOPLEVEL );
gtk_signal_connect( GTK_OBJECT( window ), "delete_event",
GTK_SIGNAL_FUNC( dialog_delete_callback ), NULL );
gtk_signal_connect( GTK_OBJECT( window ), "destroy",
GTK_SIGNAL_FUNC( gtk_widget_destroy ), NULL );
gtk_window_set_title( GTK_WINDOW( window ), lpCaption );
gtk_container_border_width( GTK_CONTAINER( window ), 10 );
g_object_set_data( G_OBJECT( window ), "loop", &loop );
g_object_set_data( G_OBJECT( window ), "ret", &ret );
gtk_widget_realize( window );
vbox = gtk_vbox_new( FALSE, 10 );
gtk_container_add( GTK_CONTAINER( window ), vbox );
gtk_widget_show( vbox );
w = gtk_label_new( lpText );
gtk_box_pack_start( GTK_BOX( vbox ), w, FALSE, FALSE, 2 );
gtk_label_set_justify( GTK_LABEL( w ), GTK_JUSTIFY_LEFT );
gtk_widget_show( w );
w = gtk_hseparator_new();
gtk_box_pack_start( GTK_BOX( vbox ), w, FALSE, FALSE, 2 );
gtk_widget_show( w );
hbox = gtk_hbox_new( FALSE, 10 );
gtk_box_pack_start( GTK_BOX( vbox ), hbox, FALSE, FALSE, 2 );
gtk_widget_show( hbox );
if ( mode == MB_OK ) {
w = gtk_button_new_with_label( "Ok" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDOK ) );
GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
gtk_widget_grab_default( w );
gtk_widget_show( w );
ret = IDOK;
}
else if ( mode == MB_OKCANCEL ) {
w = gtk_button_new_with_label( "Ok" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDOK ) );
GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
gtk_widget_grab_default( w );
gtk_widget_show( w );
w = gtk_button_new_with_label( "Cancel" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDCANCEL ) );
gtk_widget_show( w );
ret = IDCANCEL;
}
else if ( mode == MB_YESNOCANCEL ) {
w = gtk_button_new_with_label( "Yes" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDYES ) );
GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
gtk_widget_grab_default( w );
gtk_widget_show( w );
w = gtk_button_new_with_label( "No" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDNO ) );
gtk_widget_show( w );
w = gtk_button_new_with_label( "Cancel" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDCANCEL ) );
gtk_widget_show( w );
ret = IDCANCEL;
}
else /* if (mode == MB_YESNO) */
{
w = gtk_button_new_with_label( "Yes" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDYES ) );
GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
gtk_widget_grab_default( w );
gtk_widget_show( w );
w = gtk_button_new_with_label( "No" );
gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
gtk_signal_connect( GTK_OBJECT( w ), "clicked",
GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDNO ) );
gtk_widget_show( w );
ret = IDNO;
}
gtk_widget_show( window );
gtk_grab_add( window );
//.........这里部分代码省略.........
开发者ID:Crowbar-Sledgehammer,项目名称:GtkRadiant,代码行数:101,代码来源:TexTool.cpp
示例9: build_heur_dissectors_treeview
static GtkWidget *
build_heur_dissectors_treeview(void)
{
GtkWidget *bbox, *proto_list, *label, *proto_sw, *proto_vb, *button,
*ok_bt, *save_bt, *cancel_bt;
static const gchar *titles[] = { "Status", "Heuristic Protocol", "Description" };
GtkListStore *proto_store;
GtkCellRenderer *proto_rend;
GtkTreeViewColumn *proto_col;
/* Protocol list */
proto_vb = ws_gtk_box_new(GTK_ORIENTATION_VERTICAL, 0, FALSE);
gtk_widget_show(proto_vb);
proto_sw = scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(proto_sw),
GTK_SHADOW_IN);
gtk_box_pack_start(GTK_BOX(proto_vb), proto_sw, TRUE, TRUE, 0);
gtk_widget_show(proto_sw);
proto_store = gtk_list_store_new(4, G_TYPE_BOOLEAN, G_TYPE_STRING,
G_TYPE_STRING, G_TYPE_POINTER);
show_heur_selection(proto_store);
/* default sort on "abbrev" column */
gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(proto_store), 1,
GTK_SORT_ASCENDING);
proto_list = tree_view_new(GTK_TREE_MODEL(proto_store));
gtk_container_add(GTK_CONTAINER(proto_sw), proto_list);
proto_rend = gtk_cell_renderer_toggle_new();
g_signal_connect(proto_rend, "toggled", G_CALLBACK(status_toggled), proto_store);
proto_col = gtk_tree_view_column_new_with_attributes(titles[0], proto_rend, "active", 0, NULL);
gtk_tree_view_column_set_sort_column_id(proto_col, 0);
g_signal_connect(proto_col, "clicked", G_CALLBACK(proto_col_clicked_cb), proto_list);
gtk_tree_view_append_column(GTK_TREE_VIEW(proto_list), proto_col);
proto_rend = gtk_cell_renderer_text_new();
proto_col = gtk_tree_view_column_new_with_attributes(titles[1], proto_rend, "text", 1, NULL);
gtk_tree_view_column_set_sort_column_id(proto_col, 1);
g_signal_connect(proto_col, "clicked", G_CALLBACK(proto_col_clicked_cb), proto_list);
gtk_tree_view_append_column(GTK_TREE_VIEW(proto_list), proto_col);
proto_rend = gtk_cell_renderer_text_new();
proto_col = gtk_tree_view_column_new_with_attributes(titles[2], proto_rend, "text", 2, NULL);
gtk_tree_view_column_set_sort_column_id(proto_col, 2);
g_signal_connect(proto_col, "clicked", G_CALLBACK(proto_col_clicked_cb), proto_list);
gtk_tree_view_append_column(GTK_TREE_VIEW(proto_list), proto_col);
gtk_tree_view_set_search_column(GTK_TREE_VIEW(proto_list), 1); /* col 1 in the *model* */
g_object_unref(G_OBJECT(proto_store));
gtk_widget_show(proto_list);
label = gtk_label_new("Disabling a heuristic dissector prevents higher "
"layer protocols from being displayed");
gtk_misc_set_alignment(GTK_MISC(label), 0.5f, 0.5f);
gtk_widget_show(label);
gtk_box_pack_start(GTK_BOX(proto_vb), label, FALSE, FALSE, 5);
bbox = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL);
gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END);
gtk_box_set_spacing(GTK_BOX(bbox), 5);
gtk_box_pack_start(GTK_BOX(proto_vb), bbox, FALSE, FALSE, 0);
gtk_widget_show(bbox);
/* Enable All */
button = gtk_button_new_with_label("Enable All");
g_signal_connect(button, "clicked", G_CALLBACK(enable_all_cb), proto_list);
gtk_box_pack_start(GTK_BOX(bbox), button, TRUE, TRUE, 0);
gtk_widget_show(button);
/* Disable All */
button = gtk_button_new_with_label("Disable All");
g_signal_connect(button, "clicked", G_CALLBACK(disable_all_cb), proto_list);
gtk_box_pack_start(GTK_BOX(bbox), button, TRUE, TRUE, 0);
gtk_widget_show(button);
/* Invert */
button = gtk_button_new_with_label("Invert");
g_signal_connect(button, "clicked", G_CALLBACK(toggle_all_cb), proto_list);
gtk_box_pack_start(GTK_BOX(bbox), button, TRUE, TRUE, 0);
gtk_widget_show(button);
/* Button row */
bbox = dlg_button_row_new(GTK_STOCK_OK, GTK_STOCK_APPLY, GTK_STOCK_SAVE, GTK_STOCK_CANCEL, GTK_STOCK_HELP, NULL);
gtk_box_pack_start(GTK_BOX(proto_vb), bbox, FALSE, FALSE, 0);
gtk_widget_show(bbox);
ok_bt = g_object_get_data(G_OBJECT(bbox), GTK_STOCK_OK);
/*g_signal_connect(ok_bt, "clicked", G_CALLBACK(proto_ok_cb), proto_w);*/
gtk_widget_grab_default(ok_bt);
/*apply_bt = g_object_get_data(G_OBJECT(bbox), GTK_STOCK_APPLY);*/
/* g_signal_connect(apply_bt, "clicked", G_CALLBACK(proto_apply_cb), proto_w);*/
save_bt = g_object_get_data(G_OBJECT(bbox), GTK_STOCK_SAVE);
/* g_signal_connect(save_bt, "clicked", G_CALLBACK(proto_save_cb), proto_w);*/
//.........这里部分代码省略.........
开发者ID:huzhiren,项目名称:wireshark,代码行数:101,代码来源:proto_dlg.c
示例10: show_new_game
void show_new_game(GtkMenuItem *menuitem,
gpointer user_data)
{
GtkWidget *label;
GtkWidget *frame;
GtkWidget *vbox,*hbox;
GtkWidget *table;
GtkWidget *button;
GtkWidget *button1;
GtkWidget *button2;
GtkAdjustment *adj;
new_game_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect ((gpointer) new_game_window, "destroy",
G_CALLBACK (show_new_game_close),
GINT_TO_POINTER(FALSE));
gtk_window_set_title(GTK_WINDOW(new_game_window),"Level settings");
gtk_window_set_position(GTK_WINDOW(new_game_window),GTK_WIN_POS_CENTER);
gtk_container_border_width(GTK_CONTAINER(new_game_window),3);
vbox = gtk_vbox_new(FALSE,2);
gtk_container_add(GTK_CONTAINER(new_game_window),vbox);
frame = gtk_frame_new(NULL);
gtk_box_pack_start(GTK_BOX(vbox),frame,TRUE,TRUE,TRUE);
table = gtk_table_new(3,2,TRUE);
gtk_container_add(GTK_CONTAINER(frame),table);
label = gtk_label_new("Start level:");
adj = (GtkAdjustment *)gtk_adjustment_new(options.level,0,
NUM_LEVELS-1,1,1,0);
spin_level = gtk_spin_button_new(adj,0,0);
gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,0,1);
gtk_table_attach_defaults(GTK_TABLE(table),spin_level,1,2,0,1);
label = gtk_label_new("Noise level:");
adj = (GtkAdjustment *)gtk_adjustment_new(options.noise_l,0,MAX_X-1,1,1,0);
spin_noise_level = gtk_spin_button_new(adj,0,0);
gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,1,2);
gtk_table_attach_defaults(GTK_TABLE(table),spin_noise_level,1,2,1,2);
label = gtk_label_new("Noise height:");
adj = (GtkAdjustment *)gtk_adjustment_new(options.noise_h,0,MAX_Y-4,1,1,0);
spin_noise_height = gtk_spin_button_new(adj,0,0);
gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,2,3);
gtk_table_attach_defaults(GTK_TABLE(table),spin_noise_height,1,2,2,3);
hbox = gtk_hbox_new(TRUE,0);
gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,TRUE,0);
button = gtk_button_new_with_label("Play");
g_signal_connect ((gpointer) button, "clicked",
G_CALLBACK (game_new_wrapper),
NULL);
gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,TRUE,0);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
button1 = gtk_button_new_with_label("Accept");
g_signal_connect ((gpointer) button1, "clicked",
G_CALLBACK (game_new_accept),
NULL);
gtk_box_pack_start(GTK_BOX(hbox),button1,FALSE,TRUE,0);
GTK_WIDGET_SET_FLAGS (button1, GTK_CAN_DEFAULT);
button2 = gtk_button_new_with_label("Close");
g_signal_connect ((gpointer) button2, "clicked",
G_CALLBACK (show_new_game_close),
GINT_TO_POINTER(TRUE));
gtk_box_pack_start(GTK_BOX(hbox),button2,FALSE,TRUE,0);
GTK_WIDGET_SET_FLAGS (button2, GTK_CAN_DEFAULT);
gtk_widget_set_usize(new_game_window,220,130);
gtk_widget_show_all(new_game_window);
gtk_widget_set_sensitive(menu_game_start,FALSE);
gtk_widget_set_sensitive(menu_game_quick,FALSE);
}
开发者ID:wader,项目名称:gtktetris,代码行数:80,代码来源:interface.c
示例11: main
//.........这里部分代码省略.........
gtk_container_add(GTK_CONTAINER(game_border),game_area);
// right_side
right_side = gtk_vbox_new(FALSE,0);
gtk_box_pack_start(GTK_BOX(h_box),right_side,FALSE,FALSE,0);
gtk_widget_show(right_side);
// next_block_border
next_block_border = gtk_frame_new(NULL);
gtk_frame_set_shadow_type(GTK_FRAME(next_block_border),GTK_SHADOW_IN);
gtk_box_pack_start(GTK_BOX(right_side),next_block_border,FALSE,FALSE,0);
gtk_widget_show(next_block_border);
// next_block_area
next_block_area = gtk_drawing_area_new();
gtk_widget_show(next_block_area);
gtk_drawing_area_size(GTK_DRAWING_AREA(next_block_area),
4*BLOCK_WIDTH,4*BLOCK_HEIGHT);
g_signal_connect ((gpointer) next_block_area, "expose_event",
G_CALLBACK (next_block_area_expose_event),
NULL);
gtk_widget_set_events(next_block_area, GDK_EXPOSURE_MASK);
gtk_container_add(GTK_CONTAINER(next_block_border),next_block_area);
// the score,level and lines labels
score_label1 = gtk_label_new("Score:");
gtk_label_set_justify(GTK_LABEL(score_label1),GTK_JUSTIFY_RIGHT);
gtk_widget_show(score_label1);
gtk_box_pack_start(GTK_BOX(right_side),score_label1,FALSE,FALSE,3);
score_label2 = gtk_label_new("0");
set_gtk_color_style(score_label2,0xffff,0,0);
gtk_label_set_justify(GTK_LABEL(score_label2),GTK_JUSTIFY_RIGHT);
gtk_widget_show(score_label2);
gtk_box_pack_start(GTK_BOX(right_side),score_label2,FALSE,FALSE,3);
level_label1 = gtk_label_new("Level:");
gtk_label_set_justify(GTK_LABEL(level_label1),GTK_JUSTIFY_RIGHT);
gtk_widget_show(level_label1);
gtk_box_pack_start(GTK_BOX(right_side),level_label1,FALSE,FALSE,3);
sprintf(dmmy,"%d",current_level);
level_label2 = gtk_label_new(dmmy);
set_gtk_color_style(level_label2,0,0,0xffff);
gtk_label_set_justify(GTK_LABEL(level_label2),GTK_JUSTIFY_RIGHT);
gtk_widget_show(level_label2);
gtk_box_pack_start(GTK_BOX(right_side),level_label2,FALSE,FALSE,3);
lines_label1 = gtk_label_new("Lines:");
gtk_label_set_justify(GTK_LABEL(lines_label1),GTK_JUSTIFY_RIGHT);
gtk_widget_show(lines_label1);
gtk_box_pack_start(GTK_BOX(right_side),lines_label1,FALSE,FALSE,3);
lines_label2 = gtk_label_new("0");
gtk_label_set_justify(GTK_LABEL(lines_label2),GTK_JUSTIFY_RIGHT);
gtk_widget_show(lines_label2);
gtk_box_pack_start(GTK_BOX(right_side),lines_label2,FALSE,FALSE,3);
//the game buttons
//Start_stop
Start_stop_button = gtk_button_new();
gtk_widget_show(Start_stop_button);
g_signal_connect ((gpointer) Start_stop_button, "clicked",
G_CALLBACK (game_start_stop),
NULL);
Start_stop_button_label= gtk_label_new(start_stop_str[0]);
box2 = label_box(right_side, Start_stop_button_label,
start_stop_str[0] );
gtk_widget_show(box2);
gtk_container_add (GTK_CONTAINER (Start_stop_button), box2);
gtk_box_pack_start(GTK_BOX(right_side),Start_stop_button,FALSE,FALSE,3);
GTK_WIDGET_SET_FLAGS(Start_stop_button, GTK_CAN_DEFAULT);
gtk_widget_grab_default(Start_stop_button);
//Pause
Pause_button = gtk_button_new();
gtk_widget_show(Pause_button);
g_signal_connect ((gpointer) Pause_button, "clicked",
G_CALLBACK (game_set_pause_b),
NULL);
Pause_button_label = gtk_label_new(pause_str[0]);
box1 = label_box(right_side, Pause_button_label, pause_str[0] );
gtk_widget_show(box1);
gtk_container_add (GTK_CONTAINER (Pause_button), box1);
gtk_box_pack_start(GTK_BOX(right_side),Pause_button,FALSE,FALSE,3);
GTK_WIDGET_SET_FLAGS(Pause_button, GTK_CAN_DEFAULT);
gtk_widget_set_sensitive(Pause_button,FALSE);
gtk_window_add_accel_group (GTK_WINDOW (main_window), accel_group);
gtk_widget_show(main_window);
// Block images...
blocks_pixmap = gdk_pixmap_create_from_xpm_d(game_area->window,
&mask,
NULL,
(gchar **)blocks_xpm);
gtk_main ();
return 0;
}
开发者ID:wader,项目名称:gtktetris,代码行数:101,代码来源:interface.c
示例12: show_help
void show_help(GtkMenuItem *menuitem,
gpointer user_data)
{
GtkWidget *Help_close_button;
GtkWidget *help_label;
GtkWidget *help_border;
GtkWidget *hbox;
GtkWidget *vbox;
help_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(help_window),"Help");
gtk_window_set_policy(GTK_WINDOW(help_window),FALSE,FALSE,TRUE);
gtk_window_set_position(GTK_WINDOW(help_window),GTK_WIN_POS_CENTER);
gtk_container_border_width(GTK_CONTAINER(help_window),1);
help_border = gtk_frame_new(NULL);
gtk_frame_set_shadow_type(GTK_FRAME(help_border),GTK_SHADOW_OUT);
gtk_container_add(GTK_CONTAINER(help_window),help_border);
vbox = gtk_vbox_new(FALSE,3);
gtk_container_add(GTK_CONTAINER(help_border),vbox);
hbox = gtk_hbox_new(FALSE,30);
gtk_container_add(GTK_CONTAINER(vbox),hbox);
help_label = gtk_label_new( "\nKeys:\n"
"Right and \"d\"\n"
"Left and \"a\"\n"
"\"s\"\n"
"Up and \"w\"\n"
"\"x\"\n"
"Space ans Down\n\n"
"Score: score*level\n"
"Single\n"
"Double\n"
"Triple\n"
"TETRIS\n\n"
"Drop bonus: rows*level\n");
gtk_misc_set_alignment(GTK_MISC(help_label),0,0);
gtk_label_set_justify(GTK_LABEL(help_label),GTK_JUSTIFY_LEFT);
gtk_box_pack_start(GTK_BOX(hbox),help_label,TRUE,TRUE,TRUE);
help_label = gtk_label_new( "\n\n"
"move right\n"
"move left\n"
"move down\n"
"rotate ccw\n"
"rotate cw\n"
"drop block\n\n\n"
"40\n100\n"
"300\n1200\n");
gtk_misc_set_alignment(GTK_MISC(help_label),0,0);
gtk_label_set_justify(GTK_LABEL(help_label),GTK_JUSTIFY_LEFT);
gtk_box_pack_start(GTK_BOX(hbox),help_label,TRUE,TRUE,TRUE);
Help_close_button = gtk_button_new_with_label("Close");
g_signal_connect ((gpointer) Help_close_button, "clicked",
G_CALLBACK (help_close),
NULL);
gtk_box_pack_start(GTK_BOX(vbox),Help_close_button,FALSE,TRUE,0);
GTK_WIDGET_SET_FLAGS(Help_close_button, GTK_CAN_DEFAULT);
gtk_widget_grab_default(Help_close_button);
gtk_widget_show_all(help_window);
}
开发者ID:wader,项目名称:gtktetris,代码行数:66,代码来源:interface.c
示例13: addressbook_edit_jpilot_create
//.........这里部分代码省略.........
cancelled);
g_signal_connect(G_OBJECT(window), "key_press_event",
G_CALLBACK(edit_jpilot_key_pressed),
cancelled);
vbox = gtk_vbox_new(FALSE, 8);
gtk_container_add(GTK_CONTAINER(window), vbox);
gtk_container_set_border_width( GTK_CONTAINER(vbox), 0 );
table = gtk_table_new(2 + JPILOT_NUM_CUSTOM_LABEL, 3, FALSE);
gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);
gtk_container_set_border_width( GTK_CONTAINER(table), 8 );
gtk_table_set_row_spacings(GTK_TABLE(table), 8);
gtk_table_set_col_spacings(GTK_TABLE(table), 8);
/* First row */
top = 0;
label = gtk_label_new(_("Name"));
gtk_table_attach(GTK_TABLE(table), label, 0, 1, top, (top + 1), GTK_FILL, 0, 0, 0);
gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
name_entry = gtk_entry_new();
gtk_table_attach(GTK_TABLE(table), name_entry, 1, 2, top, (top + 1), GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
check_btn = gtk_button_new_with_label( _(" Check File "));
gtk_table_attach(GTK_TABLE(table), check_btn, 2, 3, top, (top + 1), GTK_FILL, 0, 3, 0);
/* Second row */
top = 1;
label = gtk_label_new(_("File"));
gtk_table_attach(GTK_TABLE(table), label, 0, 1, top, (top + 1), GTK_FILL, 0, 0, 0);
gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
file_entry = gtk_entry_new();
gtk_table_attach(GTK_TABLE(table), file_entry, 1, 2, top, (top + 1), GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
file_btn = gtk_button_new_with_label( _(" ... "));
gtk_table_attach(GTK_TABLE(table), file_btn, 2, 3, top, (top + 1), GTK_FILL, 0, 3, 0);
/* Third row */
top = 2;
frame_custom = gtk_frame_new(_("Additional e-Mail address item(s)"));
gtk_table_attach(GTK_TABLE(table), frame_custom, 1, 2, top, (top + JPILOT_NUM_CUSTOM_LABEL), GTK_FILL, 0, 0, 0);
/* Now do custom labels. */
vbox_custom = gtk_vbox_new (FALSE, 8);
for( i = 0; i < JPILOT_NUM_CUSTOM_LABEL; i++ ) {
hlbox = gtk_hbox_new( FALSE, 0 );
custom_check[i] = gtk_check_button_new();
custom_label[i] = gtk_label_new( "" );
gtk_box_pack_start( GTK_BOX(hlbox), custom_check[i], FALSE, FALSE, 0 );
gtk_box_pack_start( GTK_BOX(hlbox), custom_label[i], TRUE, TRUE, 0 );
gtk_box_pack_start( GTK_BOX(vbox_custom), hlbox, TRUE, TRUE, 0 );
gtk_misc_set_alignment(GTK_MISC(custom_label[i]), 0, 0.5);
top++;
}
gtk_container_add (GTK_CONTAINER (frame_custom), vbox_custom);
gtk_container_set_border_width( GTK_CONTAINER(vbox_custom), 8 );
/* Status line */
hsbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_end(GTK_BOX(vbox), hsbox, FALSE, FALSE, 0);
statusbar = gtk_statusbar_new();
gtk_box_pack_start(GTK_BOX(hsbox), statusbar, TRUE, TRUE, 0);
/* Button panel */
gtkut_stock_button_set_create(&hbbox, &ok_btn, GTK_STOCK_OK,
&cancel_btn, GTK_STOCK_CANCEL,
NULL, NULL);
gtk_box_pack_end(GTK_BOX(vbox), hbbox, FALSE, FALSE, 0);
gtk_container_set_border_width( GTK_CONTAINER(hbbox), 0 );
gtk_widget_grab_default(ok_btn);
hsep = gtk_hseparator_new();
gtk_box_pack_end(GTK_BOX(vbox), hsep, FALSE, FALSE, 0);
g_signal_connect(G_OBJECT(ok_btn), "clicked",
G_CALLBACK(edit_jpilot_ok), cancelled);
g_signal_connect(G_OBJECT(cancel_btn), "clicked",
G_CALLBACK(edit_jpilot_cancel), cancelled);
g_signal_connect(G_OBJECT(file_btn), "clicked",
G_CALLBACK(edit_jpilot_file_select), NULL);
g_signal_connect(G_OBJECT(check_btn), "clicked",
G_CALLBACK(edit_jpilot_file_check), NULL);
gtk_widget_show_all(vbox);
jpilotedit.window = window;
jpilotedit.name_entry = name_entry;
jpilotedit.file_entry = file_entry;
jpilotedit.hbbox = hbbox;
jpilotedit.ok_btn = ok_btn;
jpilotedit.cancel_btn = cancel_btn;
jpilotedit.statusbar = statusbar;
jpilotedit.status_cid = gtk_statusbar_get_context_id( GTK_STATUSBAR(statusbar), "Edit JPilot Dialog" );
for( i = 0; i < JPILOT_NUM_CUSTOM_LABEL; i++ ) {
jpilotedit.custom_check[i] = custom_check[i];
jpilotedit.custom_label[i] = cus
|
请发表评论