mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-25 07:10:07 +01:00
2006-12-07 Dan Williams <dcbw@redhat.com>
Patch from Christian Persch <chpe@gnome.org> * auth-dialog/gnome-two-password-dialog.c - HIG-ify (Gnome.org #383124) git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2176 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
parent
57e217b072
commit
c4805bdcd2
2 changed files with 60 additions and 54 deletions
|
|
@ -1,3 +1,10 @@
|
|||
2006-12-07 Dan Williams <dcbw@redhat.com>
|
||||
|
||||
Patch from Christian Persch <chpe@gnome.org>
|
||||
|
||||
* auth-dialog/gnome-two-password-dialog.c
|
||||
- HIG-ify (Gnome.org #383124)
|
||||
|
||||
2006-12-07 Dan Williams <dcbw@redhat.com>
|
||||
|
||||
Patch from Christian Persch <chpe@gnome.org>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,8 @@ struct GnomeTwoPasswordDialogDetails
|
|||
GtkWidget *password_entry;
|
||||
GtkWidget *password_entry_secondary;
|
||||
GtkWidget *domain_entry;
|
||||
|
||||
|
||||
GtkWidget *table_alignment;
|
||||
GtkWidget *table;
|
||||
|
||||
GtkWidget *remember_session_button;
|
||||
|
|
@ -82,10 +83,6 @@ struct GnomeTwoPasswordDialogDetails
|
|||
static const guint CAPTION_TABLE_USERNAME_ROW = 0;
|
||||
static const guint CAPTION_TABLE_PASSWORD_ROW = 1;
|
||||
|
||||
/* Layout constants */
|
||||
static const guint DIALOG_BORDER_WIDTH = 6;
|
||||
static const guint CAPTION_TABLE_BORDER_WIDTH = 4;
|
||||
|
||||
/* GnomeTwoPasswordDialogClass methods */
|
||||
static void gnome_two_password_dialog_class_init (GnomeTwoPasswordDialogClass *password_dialog_class);
|
||||
static void gnome_two_password_dialog_init (GnomeTwoPasswordDialog *password_dialog);
|
||||
|
|
@ -213,26 +210,17 @@ userpass_radio_button_clicked (GtkWidget *widget, gpointer callback_data)
|
|||
}
|
||||
|
||||
static void
|
||||
add_row (GtkWidget *table, int row, const char *label_text, GtkWidget *entry, int offset)
|
||||
add_row (GtkWidget *table, int row, const char *label_text, GtkWidget *entry)
|
||||
{
|
||||
GtkWidget *label;
|
||||
|
||||
label = gtk_label_new_with_mnemonic (label_text);
|
||||
gtk_misc_set_alignment (GTK_MISC (label), 1.0, 0.5);
|
||||
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
|
||||
|
||||
gtk_table_attach (GTK_TABLE (table), label,
|
||||
0, 1,
|
||||
row, row + 1,
|
||||
GTK_FILL,
|
||||
(GTK_FILL|GTK_EXPAND),
|
||||
offset, 0);
|
||||
|
||||
gtk_table_attach (GTK_TABLE (table), entry,
|
||||
1, 2,
|
||||
row, row + 1,
|
||||
(GTK_FILL|GTK_EXPAND),
|
||||
(GTK_FILL|GTK_EXPAND),
|
||||
0, 0);
|
||||
gtk_table_attach_defaults (GTK_TABLE (table), label,
|
||||
0, 1, row, row + 1);
|
||||
gtk_table_attach_defaults (GTK_TABLE (table), entry,
|
||||
1, 2, row, row + 1);
|
||||
|
||||
gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry);
|
||||
}
|
||||
|
|
@ -251,12 +239,15 @@ add_table_rows (GnomeTwoPasswordDialog *password_dialog)
|
|||
int offset;
|
||||
|
||||
if (password_dialog->details->anon_support_on) {
|
||||
offset = 20;
|
||||
offset = 12;
|
||||
}
|
||||
else {
|
||||
offset = 0;
|
||||
}
|
||||
|
||||
gtk_alignment_set_padding (GTK_ALIGNMENT (password_dialog->details->table_alignment),
|
||||
0, 0, offset, 0);
|
||||
|
||||
table = password_dialog->details->table;
|
||||
/* This will not kill the entries, since they are ref:ed */
|
||||
gtk_container_foreach (GTK_CONTAINER (table),
|
||||
|
|
@ -264,14 +255,14 @@ add_table_rows (GnomeTwoPasswordDialog *password_dialog)
|
|||
|
||||
row = 0;
|
||||
if (password_dialog->details->show_username)
|
||||
add_row (table, row++, _("_Username:"), password_dialog->details->username_entry, offset);
|
||||
add_row (table, row++, _("_Username:"), password_dialog->details->username_entry);
|
||||
if (password_dialog->details->show_domain)
|
||||
add_row (table, row++, _("_Domain:"), password_dialog->details->domain_entry, offset);
|
||||
add_row (table, row++, _("_Domain:"), password_dialog->details->domain_entry);
|
||||
if (password_dialog->details->show_password)
|
||||
add_row (table, row++, _("_Password:"), password_dialog->details->password_entry, offset);
|
||||
add_row (table, row++, _("_Password:"), password_dialog->details->password_entry);
|
||||
if (password_dialog->details->show_password_secondary)
|
||||
add_row (table, row++, password_dialog->details->secondary_password_label,
|
||||
password_dialog->details->password_entry_secondary, offset);
|
||||
password_dialog->details->password_entry_secondary);
|
||||
|
||||
gtk_widget_show_all (table);
|
||||
}
|
||||
|
|
@ -319,31 +310,37 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
gboolean readonly_username)
|
||||
{
|
||||
GnomeTwoPasswordDialog *password_dialog;
|
||||
GtkDialog *dialog;
|
||||
GtkWidget *table;
|
||||
GtkLabel *message_label;
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *main_vbox;
|
||||
GtkWidget *dialog_icon;
|
||||
GSList *group;
|
||||
|
||||
password_dialog = GNOME_TWO_PASSWORD_DIALOG (gtk_widget_new (gnome_two_password_dialog_get_type (), NULL));
|
||||
dialog = GTK_DIALOG (password_dialog);
|
||||
|
||||
gtk_window_set_title (GTK_WINDOW (password_dialog), dialog_title);
|
||||
gtk_dialog_add_buttons (GTK_DIALOG (password_dialog),
|
||||
gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
|
||||
|
||||
gtk_dialog_add_buttons (dialog,
|
||||
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
|
||||
GTK_STOCK_OK, GTK_RESPONSE_OK,
|
||||
NULL);
|
||||
gtk_dialog_set_default_response (GTK_DIALOG (password_dialog), GTK_RESPONSE_OK);
|
||||
|
||||
/* Setup the dialog */
|
||||
gtk_dialog_set_has_separator (GTK_DIALOG (password_dialog), FALSE);
|
||||
gtk_dialog_set_has_separator (dialog, FALSE);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (dialog), 5);
|
||||
gtk_box_set_spacing (GTK_BOX (dialog->vbox), 2); /* 2 * 5 + 2 = 12 */
|
||||
gtk_container_set_border_width (GTK_CONTAINER (dialog->action_area), 5);
|
||||
gtk_box_set_spacing (GTK_BOX (dialog->action_area), 6);
|
||||
|
||||
gtk_window_set_position (GTK_WINDOW (password_dialog), GTK_WIN_POS_CENTER);
|
||||
gtk_window_set_modal (GTK_WINDOW (password_dialog), TRUE);
|
||||
|
||||
gtk_container_set_border_width (GTK_CONTAINER (password_dialog), DIALOG_BORDER_WIDTH);
|
||||
|
||||
gtk_dialog_set_default_response (GTK_DIALOG (password_dialog), GTK_RESPONSE_OK);
|
||||
|
||||
g_signal_connect (password_dialog, "show",
|
||||
G_CALLBACK (dialog_show_callback), password_dialog);
|
||||
g_signal_connect (password_dialog, "close",
|
||||
|
|
@ -364,8 +361,7 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (password_dialog->details->connect_with_no_userpass_button), TRUE);
|
||||
}
|
||||
|
||||
|
||||
password_dialog->details->radio_vbox = gtk_vbox_new (FALSE, 0);
|
||||
password_dialog->details->radio_vbox = gtk_vbox_new (FALSE, 6);
|
||||
gtk_box_pack_start (GTK_BOX (password_dialog->details->radio_vbox),
|
||||
password_dialog->details->connect_with_no_userpass_button,
|
||||
FALSE, FALSE, 0);
|
||||
|
|
@ -378,9 +374,12 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
G_CALLBACK (userpass_radio_button_clicked), password_dialog);
|
||||
|
||||
/* The table that holds the captions */
|
||||
password_dialog->details->table_alignment = gtk_alignment_new (0.0, 0.0, 0.0, 0.0);
|
||||
|
||||
password_dialog->details->table = table = gtk_table_new (3, 2, FALSE);
|
||||
gtk_table_set_col_spacings (GTK_TABLE (table), 12);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (table), 6);
|
||||
gtk_container_add (GTK_CONTAINER (password_dialog->details->table_alignment), table);
|
||||
|
||||
password_dialog->details->username_entry = gtk_entry_new ();
|
||||
password_dialog->details->domain_entry = gtk_entry_new ();
|
||||
|
|
@ -388,6 +387,12 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
password_dialog->details->password_entry_secondary = gtk_entry_new ();
|
||||
|
||||
/* We want to hold on to these during the table rearrangement */
|
||||
#if GLIB_CHECK_VERSION (2, 10, 0)
|
||||
g_object_ref_sink (password_dialog->details->username_entry);
|
||||
g_object_ref_sink (password_dialog->details->domain_entry);
|
||||
g_object_ref_sink (password_dialog->details->password_entry);
|
||||
g_object_ref_sink (password_dialog->details->password_entry_secondary);
|
||||
#else
|
||||
g_object_ref (password_dialog->details->username_entry);
|
||||
gtk_object_sink (GTK_OBJECT (password_dialog->details->username_entry));
|
||||
g_object_ref (password_dialog->details->domain_entry);
|
||||
|
|
@ -396,6 +401,7 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
gtk_object_sink (GTK_OBJECT (password_dialog->details->password_entry));
|
||||
g_object_ref (password_dialog->details->password_entry_secondary);
|
||||
gtk_object_sink (GTK_OBJECT (password_dialog->details->password_entry_secondary));
|
||||
#endif
|
||||
|
||||
gtk_entry_set_visibility (GTK_ENTRY (password_dialog->details->password_entry), FALSE);
|
||||
gtk_entry_set_visibility (GTK_ENTRY (password_dialog->details->password_entry_secondary), FALSE);
|
||||
|
|
@ -420,38 +426,32 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
|
||||
/* Adds some eye-candy to the dialog */
|
||||
hbox = gtk_hbox_new (FALSE, 12);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 5);
|
||||
dialog_icon = gtk_image_new_from_stock (GTK_STOCK_DIALOG_AUTHENTICATION, GTK_ICON_SIZE_DIALOG);
|
||||
gtk_misc_set_alignment (GTK_MISC (dialog_icon), 0.5, 0.0);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), dialog_icon, FALSE, FALSE, 0);
|
||||
|
||||
gtk_box_set_spacing (GTK_BOX (GTK_DIALOG (password_dialog)->vbox), 12);
|
||||
gtk_container_set_border_width (GTK_CONTAINER(hbox), 6);
|
||||
gtk_box_set_spacing (GTK_BOX (hbox), 12);
|
||||
|
||||
/* Fills the vbox */
|
||||
vbox = gtk_vbox_new (FALSE, 0);
|
||||
main_vbox = gtk_vbox_new (FALSE, 18);
|
||||
|
||||
if (message) {
|
||||
message_label = GTK_LABEL (gtk_label_new (message));
|
||||
gtk_label_set_justify (message_label, GTK_JUSTIFY_LEFT);
|
||||
gtk_label_set_line_wrap (message_label, TRUE);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (vbox),
|
||||
GTK_WIDGET (message_label),
|
||||
TRUE, /* expand */
|
||||
TRUE, /* fill */
|
||||
5); /* padding */
|
||||
gtk_box_pack_start (GTK_BOX (main_vbox), GTK_WIDGET (message_label),
|
||||
FALSE, FALSE, 0);
|
||||
}
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 6);
|
||||
gtk_box_pack_start (GTK_BOX (main_vbox), vbox, FALSE, FALSE, 0);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (vbox), password_dialog->details->radio_vbox,
|
||||
TRUE, TRUE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), table,
|
||||
TRUE, TRUE, 5);
|
||||
FALSE, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), password_dialog->details->table_alignment,
|
||||
FALSE, FALSE, 0);
|
||||
|
||||
/* Configure the table */
|
||||
gtk_container_set_border_width (GTK_CONTAINER (table),
|
||||
CAPTION_TABLE_BORDER_WIDTH);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), main_vbox, FALSE, FALSE, 0);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (password_dialog)->vbox),
|
||||
hbox,
|
||||
|
|
@ -467,10 +467,9 @@ gnome_two_password_dialog_new (const char *dialog_title,
|
|||
gtk_check_button_new_with_mnemonic (_("_Save passwords in keyring"));
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (vbox), password_dialog->details->remember_session_button,
|
||||
TRUE, TRUE, 6);
|
||||
FALSE, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), password_dialog->details->remember_forever_button,
|
||||
TRUE, TRUE, 0);
|
||||
|
||||
FALSE, FALSE, 0);
|
||||
|
||||
gnome_two_password_dialog_set_username (password_dialog, username);
|
||||
gnome_two_password_dialog_set_password (password_dialog, password);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue