2011-03-01 [pawel] 3.7.8cvs61

* src/wizard.c
		Wizard GUI cleanups. Make it look and behave more
		like account preferences.
This commit is contained in:
Paweł Pękala 2011-03-01 20:48:35 +00:00
parent e288094653
commit 5d8cb81d95
4 changed files with 84 additions and 24 deletions

View file

@ -1,3 +1,9 @@
2011-03-01 [pawel] 3.7.8cvs61
* src/wizard.c
Wizard GUI cleanups. Make it look and behave more
like account preferences.
2011-02-23 [colin] 3.7.8cvs60
* src/common/Makefile.am

View file

@ -4134,3 +4134,4 @@
( cvs diff -u -r 1.105.2.164 -r 1.105.2.165 src/prefs_account.c; ) > 3.7.8cvs58.patchset
( cvs diff -u -r 1.155.2.96 -r 1.155.2.97 src/Makefile.am; cvs diff -u -r 1.115.2.233 -r 1.115.2.234 src/main.c; cvs diff -u -r 1.24.2.20 -r 1.24.2.21 src/common/Makefile.am; cvs diff -u -r 1.13.2.41 -r 1.13.2.42 src/common/plugin.c; cvs diff -u -r -1.1.2.1 -r -1.1.2.2 src/common/valgrind.h; ) > 3.7.8cvs59.patchset
( cvs diff -u -r 1.24.2.21 -r 1.24.2.22 src/common/Makefile.am; ) > 3.7.8cvs60.patchset
( cvs diff -u -r 1.1.2.81 -r 1.1.2.82 src/wizard.c; ) > 3.7.8cvs61.patchset

View file

@ -12,7 +12,7 @@ MINOR_VERSION=7
MICRO_VERSION=8
INTERFACE_AGE=0
BINARY_AGE=0
EXTRA_VERSION=60
EXTRA_VERSION=61
EXTRA_RELEASE=
EXTRA_GTK2_VERSION=

View file

@ -906,8 +906,10 @@ static GtkWidget* create_page (WizardWindow *wizard, const char * title)
return vbox;
}
#define PACK_BOX(hbox,text,entry) { \
#define PACK_BOX(hbox,text,entry,size_group) { \
GtkWidget *label = gtk_label_new(text); \
if (size_group) \
gtk_size_group_add_widget(size_group, label); \
gtk_label_set_use_markup(GTK_LABEL(label), TRUE); \
if (GTK_IS_MISC(label)) \
gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5); \
@ -993,6 +995,7 @@ static GtkWidget* user_page (WizardWindow * wizard)
GtkWidget *table = gtk_table_new(1,1, FALSE);
GtkWidget *vbox;
GtkWidget *hbox;
GtkSizeGroup *size_group = gtk_size_group_new(GTK_SIZE_GROUP_BOTH);
gtk_table_set_row_spacings(GTK_TABLE(table), 4);
gtk_table_set_col_spacings(GTK_TABLE(table), 8);
@ -1008,20 +1011,20 @@ static GtkWidget* user_page (WizardWindow * wizard)
wizard->full_name = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->full_name), tmpl.name?tmpl.name:"");
PACK_BOX(hbox, _("<span weight=\"bold\">Your name:</span>"),
wizard->full_name);
wizard->full_name, size_group);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
wizard->email = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->email), tmpl.email?tmpl.email:"");
PACK_BOX(hbox, _("<span weight=\"bold\">Your email address:</span>"),
wizard->email);
wizard->email, size_group);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
wizard->organization = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->organization), tmpl.organization?tmpl.organization:"");
PACK_BOX(hbox, _("Your organization:"), wizard->organization);
PACK_BOX(hbox, _("Your organization:"), wizard->organization, size_group);
g_signal_connect(G_OBJECT(wizard->email), "changed",
G_CALLBACK(wizard_email_changed),
@ -1196,7 +1199,7 @@ static GtkWidget* mailbox_page (WizardWindow * wizard)
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
PACK_BOX(hbox, _("<span weight=\"bold\">Store data</span>"),
vbox2);
vbox2, NULL);
#endif
return table;
@ -1238,12 +1241,14 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
GtkWidget *table = gtk_table_new(1, 1, FALSE);
GtkWidget *vbox;
GtkWidget *hbox;
GtkWidget *hbox_spc;
#ifdef USE_GNUTLS
GtkWidget *label;
GtkWidget *button;
GtkWidget *smtp_cert_table;
#endif
gchar *text;
GtkSizeGroup *size_group = gtk_size_group_new(GTK_SIZE_GROUP_BOTH);
CLAWS_TIP_DECL();
gtk_table_set_row_spacings(GTK_TABLE(table), 4);
@ -1267,7 +1272,7 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
"\"mail.example.com:25\""));
PACK_BOX(hbox, _("<span weight=\"bold\">SMTP server address:</span>"),
wizard->smtp_server);
wizard->smtp_server, NULL);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
@ -1281,23 +1286,32 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
wizard);
gtk_box_pack_start(GTK_BOX(hbox), wizard->smtp_auth, FALSE, FALSE, 0);
label = gtk_label_new(_("<span size=\"small\">(empty to use the same as receive)</span>"));
gtk_label_set_use_markup(GTK_LABEL(label), TRUE);
SET_TOGGLE_SENSITIVITY (wizard->smtp_auth, label);
gtk_box_pack_end(GTK_BOX(hbox), label, FALSE, FALSE, 0);
text = get_default_smtp_account(wizard);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
wizard->smtp_username = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->smtp_username), text);
g_free(text);
wizard->smtp_username_label = gtk_label_new(_("SMTP username:\n"
"<span size=\"small\">(empty to use the same as receive)</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->smtp_username_label), TRUE);
wizard->smtp_username_label = gtk_label_new(_("SMTP username:"));
if (GTK_IS_MISC(wizard->smtp_username_label))
gtk_misc_set_alignment(GTK_MISC(wizard->smtp_username_label), 1, 0.5);
gtk_size_group_add_widget(size_group, wizard->smtp_username_label);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(hbox), wizard->smtp_username_label, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(hbox), wizard->smtp_username, TRUE, TRUE, 0);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
wizard->smtp_password = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->smtp_password), tmpl.smtppass?tmpl.smtppass:"");
gtk_entry_set_visibility(GTK_ENTRY(wizard->smtp_password), FALSE);
@ -1305,11 +1319,11 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
hildon_gtk_entry_set_input_mode(GTK_ENTRY(wizard->smtp_password),
HILDON_GTK_INPUT_MODE_FULL | HILDON_GTK_INPUT_MODE_INVISIBLE);
#endif
wizard->smtp_password_label = gtk_label_new(_("SMTP password:\n"
"<span size=\"small\">(empty to use the same as receive)</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->smtp_password_label), TRUE);
wizard->smtp_password_label = gtk_label_new(_("SMTP password:"));
if (GTK_IS_MISC(wizard->smtp_password_label))
gtk_misc_set_alignment(GTK_MISC(wizard->smtp_password_label), 1, 0.5);
gtk_size_group_add_widget(size_group, wizard->smtp_password_label);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(hbox), wizard->smtp_password_label, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(hbox), wizard->smtp_password, TRUE, TRUE, 0);
#ifdef USE_GNUTLS
@ -1323,6 +1337,9 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
wizard->smtp_use_tls = gtk_check_button_new_with_label(
_("Use SSL via STARTTLS"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(wizard->smtp_use_tls),
@ -1333,17 +1350,28 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
smtp_cert_table = gtk_table_new(3,3, FALSE);
gtk_container_set_border_width(GTK_CONTAINER(smtp_cert_table), 8);
gtk_box_pack_start (GTK_BOX(vbox), smtp_cert_table, FALSE, FALSE, 0);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
label = gtk_label_new(_("Client SSL certificate (optional)"));
gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
gtk_table_attach(GTK_TABLE(smtp_cert_table), label, 0, 3, 0, 1, GTK_FILL, 0, 0, 0);
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_table_attach(GTK_TABLE(smtp_cert_table), hbox, 0, 3, 0, 1, GTK_FILL, 0, 0, 0);
SET_TOGGLE_SENSITIVITY (wizard->smtp_use_ssl, label);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
label = gtk_label_new(_("File"));
gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
gtk_table_attach(GTK_TABLE(smtp_cert_table), label, 0, 1, 1, 2, GTK_FILL, 0, 0, 0);
gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
gtk_table_attach(GTK_TABLE(smtp_cert_table), hbox, 0, 1, 1, 2, GTK_FILL, 0, 2, 0);
wizard->smtp_ssl_cert_file = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->smtp_ssl_cert_file), tmpl.smtpssl_cert?tmpl.smtpssl_cert:"");
gtk_table_attach(GTK_TABLE(smtp_cert_table), wizard->smtp_ssl_cert_file, 1, 2, 1, 2, GTK_FILL, 0, 0, 0);
button = gtkut_get_browse_file_btn(_("Browse"));
gtk_table_attach(GTK_TABLE(smtp_cert_table), button, 2, 3, 1, 2, GTK_FILL, 0, 0, 0);
gtk_table_attach(GTK_TABLE(smtp_cert_table), button, 2, 3, 1, 2, GTK_FILL, 0, 2, 0);
SET_TOGGLE_SENSITIVITY (wizard->smtp_use_ssl, label);
SET_TOGGLE_SENSITIVITY (wizard->smtp_use_ssl, wizard->smtp_ssl_cert_file);
SET_TOGGLE_SENSITIVITY (wizard->smtp_use_ssl, button);
@ -1351,10 +1379,13 @@ static GtkWidget* smtp_page (WizardWindow * wizard)
G_CALLBACK(cert_browse_cb), wizard->smtp_ssl_cert_file);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
label = gtk_label_new(_("Password"));
gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
gtk_table_attach(GTK_TABLE(smtp_cert_table), label, 0, 1, 2, 3, GTK_FILL, 0, 0, 0);
gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
gtk_table_attach(GTK_TABLE(smtp_cert_table), hbox, 0, 1, 2, 3, GTK_FILL, 0, 2, 0);
wizard->smtp_ssl_cert_pass = gtk_entry_new();
gtk_entry_set_visibility(GTK_ENTRY(wizard->smtp_ssl_cert_pass), FALSE);
gtk_entry_set_text(GTK_ENTRY(wizard->smtp_ssl_cert_pass), tmpl.smtpssl_cert_pass?tmpl.smtpssl_cert_pass:"");
@ -1479,6 +1510,7 @@ static GtkWidget* recv_page (WizardWindow * wizard)
GtkWidget *vbox;
GtkWidget *hbox;
#ifdef USE_GNUTLS
GtkWidget *hbox_spc;
GtkWidget *label;
GtkWidget *button;
GtkWidget *recv_cert_table;
@ -1487,6 +1519,7 @@ static GtkWidget* recv_page (WizardWindow * wizard)
GtkTreeIter iter;
gchar *text;
gint index = 0;
GtkSizeGroup *size_group = gtk_size_group_new(GTK_SIZE_GROUP_BOTH);
CLAWS_TIP_DECL();
gtk_table_set_row_spacings(GTK_TABLE(table), 4);
@ -1526,7 +1559,7 @@ static GtkWidget* recv_page (WizardWindow * wizard)
G_CALLBACK(wizard_protocol_changed),
wizard);
PACK_BOX(hbox, _("<span weight=\"bold\">Server type:</span>"),
wizard->recv_type);
wizard->recv_type, size_group);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
@ -1541,6 +1574,7 @@ static GtkWidget* recv_page (WizardWindow * wizard)
wizard->recv_label = gtk_label_new(_("<span weight=\"bold\">Server address:</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->recv_label), TRUE);
gtk_size_group_add_widget(size_group, wizard->recv_label);
if (GTK_IS_MISC(wizard->recv_label))
gtk_misc_set_alignment(GTK_MISC(wizard->recv_label), 1, 0.5);
gtk_box_pack_start(GTK_BOX(hbox), wizard->recv_label, FALSE, FALSE, 0);
@ -1551,6 +1585,7 @@ static GtkWidget* recv_page (WizardWindow * wizard)
wizard->recv_username = gtk_entry_new();
wizard->recv_username_label = gtk_label_new(_("<span weight=\"bold\">Username:</span>"));
gtk_label_set_use_markup(GTK_LABEL(wizard->recv_username_label), TRUE);
gtk_size_group_add_widget(size_group, wizard->recv_username_label);
if (GTK_IS_MISC(wizard->recv_username_label))
gtk_misc_set_alignment(GTK_MISC(wizard->recv_username_label), 1, 0.5);
gtk_box_pack_start(GTK_BOX(hbox), wizard->recv_username_label, FALSE, FALSE, 0);
@ -1565,6 +1600,7 @@ static GtkWidget* recv_page (WizardWindow * wizard)
wizard->recv_password = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->recv_password), tmpl.recvpass?tmpl.recvpass:"");
wizard->recv_password_label = gtk_label_new(_("Password:"));
gtk_size_group_add_widget(size_group, wizard->recv_password_label);
if (GTK_IS_MISC(wizard->recv_password_label))
gtk_misc_set_alignment(GTK_MISC(wizard->recv_password_label), 1, 0.5);
gtk_entry_set_visibility(GTK_ENTRY(wizard->recv_password), FALSE);
@ -1586,6 +1622,9 @@ static GtkWidget* recv_page (WizardWindow * wizard)
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
wizard->recv_use_tls = gtk_check_button_new_with_label(
_("Use SSL via STARTTLS"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(wizard->recv_use_tls),
@ -1596,17 +1635,28 @@ static GtkWidget* recv_page (WizardWindow * wizard)
recv_cert_table = gtk_table_new(3,3, FALSE);
gtk_container_set_border_width(GTK_CONTAINER(recv_cert_table), 8);
gtk_box_pack_start (GTK_BOX(vbox), recv_cert_table, FALSE, FALSE, 0);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
label = gtk_label_new(_("Client SSL certificate (optional)"));
gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
gtk_table_attach(GTK_TABLE(recv_cert_table), label, 0, 3, 0, 1, GTK_FILL, 0, 0, 0);
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_table_attach(GTK_TABLE(recv_cert_table), hbox, 0, 3, 0, 1, GTK_FILL, 0, 0, 0);
SET_TOGGLE_SENSITIVITY (wizard->recv_use_ssl, label);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
label = gtk_label_new(_("File"));
gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
gtk_table_attach(GTK_TABLE(recv_cert_table), label, 0, 1, 1, 2, GTK_FILL, 0, 0, 0);
gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
gtk_table_attach(GTK_TABLE(recv_cert_table), hbox, 0, 1, 1, 2, GTK_FILL, 0, 2, 0);
wizard->recv_ssl_cert_file = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(wizard->recv_ssl_cert_file), tmpl.recvssl_cert?tmpl.recvssl_cert:"");
gtk_table_attach(GTK_TABLE(recv_cert_table), wizard->recv_ssl_cert_file, 1, 2, 1, 2, GTK_FILL, 0, 0, 0);
button = gtkut_get_browse_file_btn(_("Browse"));
gtk_table_attach(GTK_TABLE(recv_cert_table), button, 2, 3, 1, 2, GTK_FILL, 0, 0, 0);
gtk_table_attach(GTK_TABLE(recv_cert_table), button, 2, 3, 1, 2, GTK_FILL, 0, 2, 0);
SET_TOGGLE_SENSITIVITY (wizard->recv_use_ssl, label);
SET_TOGGLE_SENSITIVITY (wizard->recv_use_ssl, wizard->recv_ssl_cert_file);
SET_TOGGLE_SENSITIVITY (wizard->recv_use_ssl, button);
@ -1614,10 +1664,13 @@ static GtkWidget* recv_page (WizardWindow * wizard)
G_CALLBACK(cert_browse_cb), wizard->recv_ssl_cert_file);
hbox = gtk_hbox_new(FALSE, VSPACING_NARROW);
gtk_box_pack_start (GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
hbox_spc = gtk_hbox_new (FALSE, 0);
gtk_widget_set_size_request (hbox_spc, 12, -1);
gtk_box_pack_start (GTK_BOX (hbox), hbox_spc, FALSE, FALSE, 0);
label = gtk_label_new(_("Password"));
gtk_misc_set_alignment(GTK_MISC(label), 1, 0.5);
gtk_table_attach(GTK_TABLE(recv_cert_table), label, 0, 1, 2, 3, GTK_FILL, 0, 0, 0);
gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
gtk_table_attach(GTK_TABLE(recv_cert_table), hbox, 0, 1, 2, 3, GTK_FILL, 0, 2, 0);
wizard->recv_ssl_cert_pass = gtk_entry_new();
gtk_entry_set_visibility(GTK_ENTRY(wizard->recv_ssl_cert_pass), FALSE);
gtk_entry_set_text(GTK_ENTRY(wizard->recv_ssl_cert_pass), tmpl.recvssl_cert_pass?tmpl.recvssl_cert_pass:"");