Fix merge issues in EMAccountEditor.
This commit is contained in:
@ -60,6 +60,7 @@
|
||||
#include "widgets/misc/e-signature-editor.h"
|
||||
|
||||
#include "e-mail-local.h"
|
||||
#include "e-mail-store.h"
|
||||
#include "em-config.h"
|
||||
#include "em-folder-selection-button.h"
|
||||
#include "em-account-editor.h"
|
||||
@ -191,6 +192,7 @@ struct _EMAccountEditorPrivate {
|
||||
/* for druid page preparation */
|
||||
guint identity_set:1;
|
||||
guint receive_set:1;
|
||||
guint send_set:1;
|
||||
guint management_set:1;
|
||||
};
|
||||
|
||||
@ -3047,11 +3049,11 @@ emae_check_complete (EConfig *ec, const gchar *pageid, gpointer data)
|
||||
const gchar *tmp;
|
||||
EAccount *ea;
|
||||
gboolean refresh = FALSE;
|
||||
gboolean edit;
|
||||
gboolean new_account;
|
||||
|
||||
account = em_account_editor_get_modified_account (emae);
|
||||
original_account = em_account_editor_get_modified_account (emae);
|
||||
edit = (original_account != NULL);
|
||||
original_account = em_account_editor_get_original_account (emae);
|
||||
new_account = (original_account == NULL);
|
||||
|
||||
/* We use the page-check of various pages to 'prepare' or
|
||||
pre-load their values, only in the druid */
|
||||
@ -3090,28 +3092,35 @@ emae_check_complete (EConfig *ec, const gchar *pageid, gpointer data)
|
||||
index = check_servers (at);
|
||||
gtk_entry_set_text (emae->priv->source.username, user);
|
||||
gtk_entry_set_text (emae->priv->transport.username, user);
|
||||
if (!edit && uri && (url = camel_url_new (uri, NULL)) != NULL) {
|
||||
if (new_account && uri && (url = camel_url_new (uri, NULL)) != NULL) {
|
||||
refresh = TRUE;
|
||||
camel_url_set_protocol (url, mail_servers[index].proto);
|
||||
camel_url_set_param (url, "use_ssl", mail_servers[index].ssl);
|
||||
camel_url_set_host (url, mail_servers[index].recv);
|
||||
camel_url_set_user (url, user);
|
||||
gtk_entry_set_text (emae->priv->source.hostname, mail_servers[index].recv);
|
||||
gtk_entry_set_text (emae->priv->transport.hostname, mail_servers[index].send);
|
||||
if (index != -1) {
|
||||
camel_url_set_protocol (url, mail_servers[index].proto);
|
||||
camel_url_set_param (url, "use_ssl", mail_servers[index].ssl);
|
||||
camel_url_set_host (url, mail_servers[index].recv);
|
||||
gtk_entry_set_text (emae->priv->source.hostname, mail_servers[index].recv);
|
||||
gtk_entry_set_text (emae->priv->transport.hostname, mail_servers[index].send);
|
||||
} else {
|
||||
camel_url_set_host (url, "");
|
||||
}
|
||||
g_free (uri);
|
||||
uri = camel_url_to_string (url, 0);
|
||||
e_account_set_string (account, E_ACCOUNT_SOURCE_URL, uri);
|
||||
|
||||
g_free (uri);
|
||||
camel_url_free (url);
|
||||
}
|
||||
g_free (uri);
|
||||
|
||||
}
|
||||
} else if (!strcmp (pageid, "30.send")) {
|
||||
if (!emae->priv->send_set) {
|
||||
CamelURL *url;
|
||||
gchar *at, *user;
|
||||
gint index;
|
||||
gchar *uri = (gchar *)e_account_get_string (account, E_ACCOUNT_TRANSPORT_URL);
|
||||
|
||||
emae->priv->send_set = 1;
|
||||
tmp = e_account_get_string (account, E_ACCOUNT_ID_ADDRESS);
|
||||
at = strchr (tmp, '@');
|
||||
user = g_alloca (at-tmp+1);
|
||||
@ -3120,7 +3129,7 @@ emae_check_complete (EConfig *ec, const gchar *pageid, gpointer data)
|
||||
at++;
|
||||
|
||||
index = check_servers (at);
|
||||
if (uri && (url = camel_url_new (uri, NULL)) != NULL) {
|
||||
if (index != -1 && uri && (url = camel_url_new (uri, NULL)) != NULL) {
|
||||
refresh = TRUE;
|
||||
camel_url_set_protocol (url, "smtp");
|
||||
camel_url_set_param (url, "use_ssl", mail_servers[index].ssl);
|
||||
@ -3130,9 +3139,8 @@ emae_check_complete (EConfig *ec, const gchar *pageid, gpointer data)
|
||||
e_account_set_string (account, E_ACCOUNT_TRANSPORT_URL, uri);
|
||||
g_free (uri);
|
||||
camel_url_free (url);
|
||||
} else {
|
||||
g_warning ("buz2\n");
|
||||
}
|
||||
}
|
||||
|
||||
} else if (!strcmp (pageid, "20.receive_options")) {
|
||||
if (emae->priv->source.provider
|
||||
@ -3223,15 +3231,12 @@ em_account_editor_check (EMAccountEditor *emae, const gchar *page)
|
||||
static void
|
||||
add_new_store (gchar *uri, CamelStore *store, gpointer user_data)
|
||||
{
|
||||
#if 0 /* KILL-BONOBO: Try to actually fix this? */
|
||||
MailComponent *component = mail_component_peek ();
|
||||
EAccount *account = user_data;
|
||||
|
||||
if (store == NULL)
|
||||
return;
|
||||
|
||||
mail_component_add_store (component, store, account->name);
|
||||
#endif
|
||||
e_mail_store_add (store, account->name);
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0"?>
|
||||
<glade-interface>
|
||||
<requires lib="gnome"/>
|
||||
<!-- interface-requires gnome 2301.3464 -->
|
||||
<!-- interface-requires gnome 2298.56488 -->
|
||||
<!-- interface-requires gtk+ 2.16 -->
|
||||
<!-- interface-naming-policy toplevel-contextual -->
|
||||
<widget class="GtkWindow" id="account_druid">
|
||||
@ -906,6 +906,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkImage" id="image2">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-dialog-warning</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -1354,6 +1355,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkImage" id="image1">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-dialog-warning</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -2360,7 +2362,7 @@ For example: "Work" or "Personal"</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label2">
|
||||
<widget class="GtkLabel" id="label1">
|
||||
<property name="visible">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Encry_ption certificate:</property>
|
||||
@ -2404,13 +2406,14 @@ For example: "Work" or "Personal"</property>
|
||||
<property name="xscale">0</property>
|
||||
<property name="yscale">0</property>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="hbox2">
|
||||
<widget class="GtkHBox" id="hbox1">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">2</property>
|
||||
<child>
|
||||
<widget class="GtkImage" id="image3">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-open</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -2459,6 +2462,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkImage" id="image10">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-clear</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -2514,13 +2518,14 @@ For example: "Work" or "Personal"</property>
|
||||
<property name="xscale">0</property>
|
||||
<property name="yscale">0</property>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="hbox1">
|
||||
<widget class="GtkHBox" id="hbox2">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">2</property>
|
||||
<child>
|
||||
<widget class="GtkImage" id="image4">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-open</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -2529,7 +2534,7 @@ For example: "Work" or "Personal"</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label1">
|
||||
<widget class="GtkLabel" id="label2">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">_Select...</property>
|
||||
<property name="use_underline">True</property>
|
||||
@ -2569,6 +2574,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkImage" id="image9">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-clear</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -2647,6 +2653,144 @@ For example: "Work" or "Personal"</property>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
<widget class="GtkWindow" id="accounts_tab">
|
||||
<property name="title" translatable="yes">Email Accounts</property>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="toplevel">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
<widget class="Custom" id="etableMailAccounts">
|
||||
<property name="visible">True</property>
|
||||
<property name="creation_function">em_account_prefs_treeview_new</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkVBox" id="vboxMailFunctions">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
<widget class="GtkVButtonBox" id="vbuttonboxMailAccounts">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">6</property>
|
||||
<property name="layout_style">start</property>
|
||||
<child>
|
||||
<widget class="GtkButton" id="cmdAccountAdd">
|
||||
<property name="label">gtk-add</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="can_default">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="use_stock">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkButton" id="cmdAccountEdit">
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="can_default">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<child>
|
||||
<widget class="GtkAlignment" id="alignment33">
|
||||
<property name="visible">True</property>
|
||||
<property name="xscale">0</property>
|
||||
<property name="yscale">0</property>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="hbox224">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">2</property>
|
||||
<child>
|
||||
<widget class="GtkImage" id="image8">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-properties</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label557">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">_Edit</property>
|
||||
<property name="use_underline">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkButton" id="cmdAccountDelete">
|
||||
<property name="label">gtk-delete</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="can_default">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="use_stock">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkButton" id="cmdAccountDefault">
|
||||
<property name="label" translatable="yes">De_fault</property>
|
||||
<property name="width_request">89</property>
|
||||
<property name="height_request">36</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="can_default">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="use_underline">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
<widget class="GtkWindow" id="preferences_tab">
|
||||
<property name="title" translatable="yes">Mail Preferences</property>
|
||||
<child>
|
||||
@ -3215,10 +3359,10 @@ For example: "Work" or "Personal"</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkOptionMenu" id="omenuEmptyTrashDays">
|
||||
<widget class="GtkComboBox" id="comboboxEmptyTrashDays">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="items" translatable="yes">a
|
||||
b</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -3848,6 +3992,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkImage" id="plugin_image">
|
||||
<property name="visible">True</property>
|
||||
<property name="icon_name">gtk-info</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -3894,10 +4039,10 @@ For example: "Work" or "Personal"</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkOptionMenu" id="junk_empty_combo">
|
||||
<widget class="GtkComboBox" id="junk_empty_combobox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="items" translatable="yes">a
|
||||
b</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -4041,6 +4186,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkImage" id="image11">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-info</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -4114,7 +4260,7 @@ For example: "Work" or "Personal"</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<child>
|
||||
<widget class="GtkVBox" id="vboxGeneral1">
|
||||
<widget class="GtkVBox" id="vboxGeneral">
|
||||
<property name="visible">True</property>
|
||||
<property name="border_width">12</property>
|
||||
<property name="spacing">18</property>
|
||||
@ -4255,6 +4401,62 @@ For example: "Work" or "Personal"</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkAlignment" id="alignment25">
|
||||
<property name="visible">True</property>
|
||||
<property name="xalign">7.4505801528346183e-09</property>
|
||||
<property name="xscale">0</property>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="hboxReplyStyle">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<widget class="GtkComboBox" id="comboboxReplyStyle">
|
||||
<property name="visible">True</property>
|
||||
<property name="items" translatable="yes">Attachment
|
||||
Inline (Outlook style)
|
||||
Quoted
|
||||
Do not quote</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="hboxForwardStyle">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<widget class="GtkComboBox" id="comboboxForwardStyle">
|
||||
<property name="visible">True</property>
|
||||
<property name="items" translatable="yes">Attachment
|
||||
Inline
|
||||
Quoted</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
<property name="y_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkOptionMenu" id="omenuCharset1">
|
||||
<property name="visible">True</property>
|
||||
@ -4297,33 +4499,6 @@ For example: "Work" or "Personal"</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkComboBox" id="comboboxForwardStyle">
|
||||
<property name="visible">True</property>
|
||||
<property name="items" translatable="yes">Attachment
|
||||
Inline
|
||||
Quoted</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkComboBox" id="comboboxReplyStyle">
|
||||
<property name="visible">True</property>
|
||||
<property name="items" translatable="yes">Attachment
|
||||
Inline (Outlook style)
|
||||
Quoted
|
||||
Do Not Quote</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="position">5</property>
|
||||
@ -4481,7 +4656,7 @@ Do Not Quote</property>
|
||||
</widget>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="lblGeneral1">
|
||||
<widget class="GtkLabel" id="lblGeneral">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">General</property>
|
||||
<property name="use_underline">True</property>
|
||||
@ -4508,6 +4683,7 @@ Do Not Quote</property>
|
||||
<property name="label" translatable="yes"><b>Sig_natures</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="mnemonic_widget">listSignatures</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -4704,6 +4880,7 @@ Do Not Quote</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="yalign">0</property>
|
||||
<property name="stock">gtk-dialog-info</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -4874,7 +5051,7 @@ Do Not Quote</property>
|
||||
<widget class="GtkWindow" id="font_tab">
|
||||
<property name="title" translatable="yes">Font Properties</property>
|
||||
<child>
|
||||
<widget class="GtkVBox" id="toplevel1">
|
||||
<widget class="GtkVBox" id="toplevel">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">12</property>
|
||||
<child>
|
||||
@ -5016,7 +5193,7 @@ Do Not Quote</property>
|
||||
<property name="border_width">12</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
<widget class="GtkHBox" id="hboxImageAndHelp1">
|
||||
<widget class="GtkHBox" id="hboxImageAndHelp">
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
@ -5154,6 +5331,7 @@ for display purposes only. </property>
|
||||
<widget class="GtkImage" id="image5">
|
||||
<property name="visible">True</property>
|
||||
<property name="stock">gtk-add</property>
|
||||
<property name="icon-size">4</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -5217,7 +5395,7 @@ for display purposes only. </property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<child>
|
||||
<widget class="GtkVBox" id="vboxGeneral2">
|
||||
<widget class="GtkVBox" id="vboxGeneral">
|
||||
<property name="visible">True</property>
|
||||
<property name="border_width">12</property>
|
||||
<property name="spacing">18</property>
|
||||
@ -5291,7 +5469,7 @@ for display purposes only. </property>
|
||||
<property name="visible">True</property>
|
||||
<property name="spacing">6</property>
|
||||
<child>
|
||||
<widget class="GtkTable" id="table1">
|
||||
<widget class="GtkTable" id="table8">
|
||||
<property name="visible">True</property>
|
||||
<property name="n_rows">4</property>
|
||||
<property name="n_columns">4</property>
|
||||
@ -5325,21 +5503,6 @@ for display purposes only. </property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="lblSocksHost">
|
||||
<property name="visible">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">S_OCKS Host:</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="mnemonic_widget">txtSocksHost</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="lblIgnoreHosts">
|
||||
<property name="visible">True</property>
|
||||
@ -5379,19 +5542,6 @@ for display purposes only. </property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkEntry" id="txtSocksHost">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="lblHttpPort">
|
||||
<property name="visible">True</property>
|
||||
@ -5420,21 +5570,6 @@ for display purposes only. </property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="lblSocksPort">
|
||||
<property name="visible">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Port:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="right_attach">3</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spnHttpPort">
|
||||
<property name="visible">True</property>
|
||||
@ -5463,21 +5598,6 @@ for display purposes only. </property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spnSocksPort">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="adjustment">0 0 65535 1 10 0</property>
|
||||
<property name="climb_rate">1</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">3</property>
|
||||
<property name="right_attach">4</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkEntry" id="txtIgnoreHosts">
|
||||
<property name="visible">True</property>
|
||||
@ -5491,6 +5611,18 @@ for display purposes only. </property>
|
||||
<property name="y_options"></property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -5589,36 +5721,6 @@ for display purposes only. </property>
|
||||
<property name="position">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkRadioButton" id="rdoAutoConfig">
|
||||
<property name="label" translatable="yes">_Automatic proxy configuration URL:</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">False</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">rdoSysSettings</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="position">4</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkAlignment" id="alignment36">
|
||||
<property name="visible">True</property>
|
||||
<property name="left_padding">24</property>
|
||||
<child>
|
||||
<widget class="GtkEntry" id="txtAutoConfigUrl">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="position">5</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
@ -5634,7 +5736,7 @@ for display purposes only. </property>
|
||||
</widget>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="lblGeneral2">
|
||||
<widget class="GtkLabel" id="lblGeneral">
|
||||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">General</property>
|
||||
</widget>
|
||||
|
||||
@ -153,6 +153,18 @@ e_mail_shell_settings_init (EShell *shell)
|
||||
shell_settings, "mail-confirm-unwanted-html",
|
||||
"/apps/evolution/mail/prompts/unwanted_html");
|
||||
|
||||
e_shell_settings_install_property (
|
||||
g_param_spec_boolean (
|
||||
"mail-empty-junk-on-exit",
|
||||
NULL,
|
||||
NULL,
|
||||
FALSE,
|
||||
G_PARAM_READWRITE));
|
||||
|
||||
e_shell_settings_bind_to_gconf (
|
||||
shell_settings, "mail-empty-junk-on-exit",
|
||||
"/apps/evolution/mail/junk/empty_on_exit");
|
||||
|
||||
e_shell_settings_install_property (
|
||||
g_param_spec_boolean (
|
||||
"mail-empty-trash-on-exit",
|
||||
|
||||
@ -602,81 +602,91 @@ charset_menu_init (EMMailerPrefs *prefs)
|
||||
}
|
||||
|
||||
static void
|
||||
trash_days_activate (GtkWidget *item, EMMailerPrefs *prefs)
|
||||
trash_days_changed (GtkComboBox *combo_box,
|
||||
EMMailerPrefs *prefs)
|
||||
{
|
||||
gint days;
|
||||
gint index;
|
||||
|
||||
days = GPOINTER_TO_INT (g_object_get_data ((GObject *) item, "days"));
|
||||
gconf_client_set_int (prefs->gconf, "/apps/evolution/mail/trash/empty_on_exit_days", days, NULL);
|
||||
index = gtk_combo_box_get_active (combo_box);
|
||||
g_return_if_fail (index >= 0);
|
||||
g_return_if_fail (index < G_N_ELEMENTS (empty_trash_frequency));
|
||||
|
||||
gconf_client_set_int (
|
||||
prefs->gconf,
|
||||
"/apps/evolution/mail/trash/empty_on_exit_days",
|
||||
empty_trash_frequency[index].days, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
emmp_empty_trash_init (EMMailerPrefs *prefs)
|
||||
emmp_empty_trash_init (EMMailerPrefs *prefs,
|
||||
GtkComboBox *combo_box)
|
||||
{
|
||||
gint locked, days, hist = 0, i;
|
||||
GtkWidget *menu, *item;
|
||||
gint days, hist = 0, ii;
|
||||
GtkTreeModel *model;
|
||||
|
||||
days = gconf_client_get_int(prefs->gconf, "/apps/evolution/mail/trash/empty_on_exit_days", NULL);
|
||||
menu = gtk_menu_new();
|
||||
for (i = 0; i < G_N_ELEMENTS (empty_trash_frequency); i++) {
|
||||
if (days >= empty_trash_frequency[i].days)
|
||||
hist = i;
|
||||
days = gconf_client_get_int (
|
||||
prefs->gconf,
|
||||
"/apps/evolution/mail/trash/empty_on_exit_days", NULL);
|
||||
|
||||
item = gtk_menu_item_new_with_label (_(empty_trash_frequency[i].label));
|
||||
g_object_set_data ((GObject *) item, "days", GINT_TO_POINTER (empty_trash_frequency[i].days));
|
||||
g_signal_connect (item, "activate", G_CALLBACK (trash_days_activate), prefs);
|
||||
model = gtk_combo_box_get_model (combo_box);
|
||||
gtk_list_store_clear (GTK_LIST_STORE (model));
|
||||
|
||||
gtk_widget_show (item);
|
||||
gtk_menu_shell_append((GtkMenuShell *)menu, item);
|
||||
for (ii = 0; ii < G_N_ELEMENTS (empty_trash_frequency); ii++) {
|
||||
if (days >= empty_trash_frequency[ii].days)
|
||||
hist = ii;
|
||||
gtk_combo_box_append_text (
|
||||
combo_box, gettext (empty_trash_frequency[ii].label));
|
||||
}
|
||||
|
||||
gtk_widget_show(menu);
|
||||
gtk_option_menu_set_menu((GtkOptionMenu *)prefs->empty_trash_days, menu);
|
||||
gtk_option_menu_set_history((GtkOptionMenu *)prefs->empty_trash_days, hist);
|
||||
g_signal_connect (
|
||||
combo_box, "changed",
|
||||
G_CALLBACK (trash_days_changed), prefs);
|
||||
|
||||
locked = !gconf_client_key_is_writable (prefs->gconf, "/apps/evolution/mail/trash/empty_on_exit_days", NULL);
|
||||
gtk_widget_set_sensitive ((GtkWidget *) prefs->empty_trash_days, !locked);
|
||||
gtk_combo_box_set_active (combo_box, hist);
|
||||
}
|
||||
|
||||
static void
|
||||
junk_days_activate (GtkWidget *item, EMMailerPrefs *prefs)
|
||||
junk_days_changed (GtkComboBox *combo_box,
|
||||
EMMailerPrefs *prefs)
|
||||
{
|
||||
gint days;
|
||||
gint index;
|
||||
|
||||
days = GPOINTER_TO_INT (g_object_get_data ((GObject *) item, "days"));
|
||||
gconf_client_set_int (prefs->gconf, "/apps/evolution/mail/junk/empty_on_exit_days", days, NULL);
|
||||
index = gtk_combo_box_get_active (combo_box);
|
||||
g_return_if_fail (index >= 0);
|
||||
g_return_if_fail (index < G_N_ELEMENTS (empty_trash_frequency));
|
||||
|
||||
gconf_client_set_int (
|
||||
prefs->gconf,
|
||||
"/apps/evolution/mail/junk/empty_on_exit_days",
|
||||
empty_trash_frequency[index].days, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
emmp_empty_junk_init (EMMailerPrefs *prefs)
|
||||
emmp_empty_junk_init (EMMailerPrefs *prefs,
|
||||
GtkComboBox *combo_box)
|
||||
{
|
||||
gint locked, days, hist = 0, i;
|
||||
GtkWidget *menu, *item;
|
||||
gint days, hist = 0, ii;
|
||||
GtkTreeModel *model;
|
||||
|
||||
toggle_button_init (prefs, prefs->empty_junk, FALSE,
|
||||
"/apps/evolution/mail/junk/empty_on_exit",
|
||||
G_CALLBACK (toggle_button_toggled));
|
||||
days = gconf_client_get_int (
|
||||
prefs->gconf,
|
||||
"/apps/evolution/mail/junk/empty_on_exit_days", NULL);
|
||||
|
||||
days = gconf_client_get_int(prefs->gconf, "/apps/evolution/mail/junk/empty_on_exit_days", NULL);
|
||||
menu = gtk_menu_new();
|
||||
for (i = 0; i < G_N_ELEMENTS (empty_trash_frequency); i++) {
|
||||
if (days >= empty_trash_frequency[i].days)
|
||||
hist = i;
|
||||
model = gtk_combo_box_get_model (combo_box);
|
||||
gtk_list_store_clear (GTK_LIST_STORE (model));
|
||||
|
||||
item = gtk_menu_item_new_with_label (_(empty_trash_frequency[i].label));
|
||||
g_object_set_data ((GObject *) item, "days", GINT_TO_POINTER (empty_trash_frequency[i].days));
|
||||
g_signal_connect (item, "activate", G_CALLBACK (junk_days_activate), prefs);
|
||||
|
||||
gtk_widget_show (item);
|
||||
gtk_menu_shell_append((GtkMenuShell *)menu, item);
|
||||
for (ii = 0; ii < G_N_ELEMENTS (empty_trash_frequency); ii++) {
|
||||
if (days >= empty_trash_frequency[ii].days)
|
||||
hist = ii;
|
||||
gtk_combo_box_append_text (
|
||||
combo_box, gettext (empty_trash_frequency[ii].label));
|
||||
}
|
||||
|
||||
gtk_widget_show(menu);
|
||||
gtk_option_menu_set_menu((GtkOptionMenu *)prefs->empty_junk_days, menu);
|
||||
gtk_option_menu_set_history((GtkOptionMenu *)prefs->empty_junk_days, hist);
|
||||
g_signal_connect (
|
||||
combo_box, "changed",
|
||||
G_CALLBACK (junk_days_changed), prefs);
|
||||
|
||||
locked = !gconf_client_key_is_writable (prefs->gconf, "/apps/evolution/mail/junk/empty_on_exit_days", NULL);
|
||||
gtk_widget_set_sensitive ((GtkWidget *) prefs->empty_junk_days, !locked);
|
||||
gtk_combo_box_set_active (combo_box, hist);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -961,11 +971,11 @@ em_mailer_prefs_construct (EMMailerPrefs *prefs,
|
||||
G_OBJECT (shell_settings), "mail-empty-trash-on-exit",
|
||||
G_OBJECT (widget), "active");
|
||||
|
||||
prefs->empty_trash_days = GTK_OPTION_MENU (glade_xml_get_widget (gui, "omenuEmptyTrashDays"));
|
||||
widget = glade_xml_get_widget (gui, "comboboxEmptyTrashDays");
|
||||
e_mutual_binding_new (
|
||||
G_OBJECT (shell_settings), "mail-empty-trash-on-exit",
|
||||
G_OBJECT (prefs->empty_trash_days), "sensitive");
|
||||
emmp_empty_trash_init (prefs);
|
||||
G_OBJECT (widget), "sensitive");
|
||||
emmp_empty_trash_init (prefs, GTK_COMBO_BOX (widget));
|
||||
|
||||
widget = glade_xml_get_widget (gui, "chkConfirmExpunge");
|
||||
e_mutual_binding_new (
|
||||
@ -1164,9 +1174,16 @@ em_mailer_prefs_construct (EMMailerPrefs *prefs,
|
||||
G_OBJECT (shell_settings), "mail-check-for-junk",
|
||||
G_OBJECT (widget), "active");
|
||||
|
||||
prefs->empty_junk = GTK_TOGGLE_BUTTON (glade_xml_get_widget (gui, "junk_empty_check"));
|
||||
prefs->empty_junk_days = GTK_OPTION_MENU (glade_xml_get_widget (gui, "junk_empty_combo"));
|
||||
emmp_empty_junk_init (prefs);
|
||||
widget = glade_xml_get_widget (gui, "junk_empty_check");
|
||||
e_mutual_binding_new (
|
||||
G_OBJECT (shell_settings), "mail-empty-junk-on-exit",
|
||||
G_OBJECT (widget), "active");
|
||||
|
||||
widget = glade_xml_get_widget (gui, "junk_empty_combobox");
|
||||
e_mutual_binding_new (
|
||||
G_OBJECT (shell_settings), "mail-empty-junk-on-exit",
|
||||
G_OBJECT (widget), "sensitive");
|
||||
emmp_empty_junk_init (prefs, GTK_COMBO_BOX (widget));
|
||||
|
||||
prefs->default_junk_plugin = GTK_COMBO_BOX (glade_xml_get_widget (gui, "default_junk_plugin"));
|
||||
prefs->plugin_status = GTK_LABEL (glade_xml_get_widget (gui, "plugin_status"));
|
||||
|
||||
@ -71,11 +71,6 @@ struct _EMMailerPrefs {
|
||||
GtkSpinButton *timeout;
|
||||
GtkOptionMenu *charset;
|
||||
|
||||
/* Deleting Mail */
|
||||
GtkToggleButton *empty_trash;
|
||||
GtkComboBox *empty_trash_days;
|
||||
GtkToggleButton *confirm_expunge;
|
||||
|
||||
/* HTML Mail tab */
|
||||
GtkFontButton *font_variable;
|
||||
GtkFontButton *font_fixed;
|
||||
@ -103,10 +98,6 @@ struct _EMMailerPrefs {
|
||||
GtkTreeView *header_list;
|
||||
GtkListStore *header_list_store;
|
||||
|
||||
/* Junk prefs */
|
||||
GtkToggleButton *empty_junk;
|
||||
GtkComboBox *empty_junk_days;
|
||||
|
||||
GtkToggleButton *sa_local_tests_only;
|
||||
GtkToggleButton *sa_use_daemon;
|
||||
GtkComboBox *default_junk_plugin;
|
||||
|
||||
@ -51,8 +51,8 @@ struct bbdb_stuff {
|
||||
EMConfigTargetPrefs *target;
|
||||
ESourceList *source_list;
|
||||
|
||||
GtkWidget *option_menu;
|
||||
GtkWidget *gaim_option_menu;
|
||||
GtkWidget *combo_box;
|
||||
GtkWidget *gaim_combo_box;
|
||||
GtkWidget *check;
|
||||
GtkWidget *check_gaim;
|
||||
};
|
||||
@ -63,7 +63,7 @@ static void bbdb_do_it (EBook *book, const gchar *name, const gchar *email);
|
||||
static void add_email_to_contact (EContact *contact, const gchar *email);
|
||||
static void enable_toggled_cb (GtkWidget *widget, gpointer data);
|
||||
static void source_changed_cb (ESourceComboBox *source_combo_box, struct bbdb_stuff *stuff);
|
||||
static GtkWidget *create_addressbook_option_menu (struct bbdb_stuff *stuff, gint type);
|
||||
static GtkWidget *create_addressbook_combo_box (struct bbdb_stuff *stuff, gint type);
|
||||
static void cleanup_cb (GObject *o, gpointer data);
|
||||
|
||||
static ESource *
|
||||
@ -465,7 +465,7 @@ enable_toggled_cb (GtkWidget *widget, gpointer data)
|
||||
/* Save the new setting to gconf */
|
||||
gconf_client_set_bool (stuff->target->gconf, GCONF_KEY_ENABLE, active, NULL);
|
||||
|
||||
gtk_widget_set_sensitive (stuff->option_menu, active);
|
||||
gtk_widget_set_sensitive (stuff->combo_box, active);
|
||||
|
||||
addressbook = gconf_client_get_string (stuff->target->gconf, GCONF_KEY_WHICH_ADDRESSBOOK, NULL);
|
||||
|
||||
@ -474,7 +474,7 @@ enable_toggled_cb (GtkWidget *widget, gpointer data)
|
||||
GError *error = NULL;
|
||||
|
||||
selected_source = e_source_combo_box_get_active (
|
||||
E_SOURCE_COMBO_BOX (stuff->option_menu));
|
||||
E_SOURCE_COMBO_BOX (stuff->combo_box));
|
||||
if (selected_source != NULL)
|
||||
uri = e_source_get_uri (selected_source);
|
||||
|
||||
@ -505,10 +505,10 @@ enable_gaim_toggled_cb (GtkWidget *widget, gpointer data)
|
||||
gconf_client_set_bool (stuff->target->gconf, GCONF_KEY_ENABLE_GAIM, active, NULL);
|
||||
|
||||
addressbook_gaim = gconf_client_get_string (stuff->target->gconf, GCONF_KEY_WHICH_ADDRESSBOOK_GAIM, NULL);
|
||||
gtk_widget_set_sensitive (stuff->gaim_option_menu, active);
|
||||
gtk_widget_set_sensitive (stuff->gaim_combo_box, active);
|
||||
if (active && !addressbook_gaim) {
|
||||
selected_source = e_source_combo_box_get_active (
|
||||
E_SOURCE_COMBO_BOX (stuff->gaim_option_menu));
|
||||
E_SOURCE_COMBO_BOX (stuff->gaim_combo_box));
|
||||
gconf_client_set_string (stuff->target->gconf, GCONF_KEY_WHICH_ADDRESSBOOK_GAIM, e_source_get_uri (selected_source), NULL);
|
||||
}
|
||||
|
||||
@ -562,7 +562,7 @@ gaim_source_changed_cb (ESourceComboBox *source_combo_box,
|
||||
}
|
||||
|
||||
static GtkWidget *
|
||||
create_addressbook_option_menu (struct bbdb_stuff *stuff, gint type)
|
||||
create_addressbook_combo_box (struct bbdb_stuff *stuff, gint type)
|
||||
{
|
||||
GtkWidget *combo_box;
|
||||
ESourceList *source_list;
|
||||
@ -606,8 +606,8 @@ bbdb_page_factory (EPlugin *ep, EConfigHookItemFactoryData *hook_data)
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *inner_vbox;
|
||||
GtkWidget *check;
|
||||
GtkWidget *option;
|
||||
GtkWidget *gaim_option;
|
||||
GtkWidget *combo_box;
|
||||
GtkWidget *gaim_combo_box;
|
||||
GtkWidget *check_gaim;
|
||||
GtkWidget *label;
|
||||
GtkWidget *gaim_label;
|
||||
@ -654,12 +654,12 @@ bbdb_page_factory (EPlugin *ep, EConfigHookItemFactoryData *hook_data)
|
||||
label = gtk_label_new (_("Select Address book for Automatic Contacts"));
|
||||
gtk_box_pack_start (GTK_BOX (inner_vbox), label, FALSE, FALSE, 0);
|
||||
|
||||
/* Source selection option menu */
|
||||
option = create_addressbook_option_menu (stuff, AUTOMATIC_CONTACTS_ADDRESSBOOK);
|
||||
g_signal_connect (option, "changed", G_CALLBACK (source_changed_cb), stuff);
|
||||
gtk_widget_set_sensitive (option, gconf_client_get_bool (target->gconf, GCONF_KEY_ENABLE, NULL));
|
||||
gtk_box_pack_start (GTK_BOX (inner_vbox), option, FALSE, FALSE, 0);
|
||||
stuff->option_menu = option;
|
||||
/* Source selection combo box */
|
||||
combo_box = create_addressbook_combo_box (stuff, AUTOMATIC_CONTACTS_ADDRESSBOOK);
|
||||
g_signal_connect (combo_box, "changed", G_CALLBACK (source_changed_cb), stuff);
|
||||
gtk_widget_set_sensitive (combo_box, gconf_client_get_bool (target->gconf, GCONF_KEY_ENABLE, NULL));
|
||||
gtk_box_pack_start (GTK_BOX (inner_vbox), combo_box, FALSE, FALSE, 0);
|
||||
stuff->combo_box = combo_box;
|
||||
|
||||
/* "Instant Messaging Contacts" */
|
||||
frame = gtk_vbox_new (FALSE, 6);
|
||||
@ -690,12 +690,12 @@ bbdb_page_factory (EPlugin *ep, EConfigHookItemFactoryData *hook_data)
|
||||
gaim_label = gtk_label_new (_("Select Address book for Pidgin buddy list"));
|
||||
gtk_box_pack_start (GTK_BOX (inner_vbox), gaim_label, FALSE, FALSE, 0);
|
||||
|
||||
/* Gaim Source Selection Option Menu */
|
||||
gaim_option = create_addressbook_option_menu (stuff, GAIM_ADDRESSBOOK);
|
||||
g_signal_connect (gaim_option, "changed", G_CALLBACK (gaim_source_changed_cb), stuff);
|
||||
gtk_widget_set_sensitive (gaim_option, gconf_client_get_bool (target->gconf, GCONF_KEY_ENABLE_GAIM, NULL));
|
||||
gtk_box_pack_start (GTK_BOX (inner_vbox), gaim_option, FALSE, FALSE, 0);
|
||||
stuff->gaim_option_menu = gaim_option;
|
||||
/* Gaim Source Selection Combo Box */
|
||||
gaim_combo_box = create_addressbook_combo_box (stuff, GAIM_ADDRESSBOOK);
|
||||
g_signal_connect (gaim_combo_box, "changed", G_CALLBACK (gaim_source_changed_cb), stuff);
|
||||
gtk_widget_set_sensitive (gaim_combo_box, gconf_client_get_bool (target->gconf, GCONF_KEY_ENABLE_GAIM, NULL));
|
||||
gtk_box_pack_start (GTK_BOX (inner_vbox), gaim_combo_box, FALSE, FALSE, 0);
|
||||
stuff->gaim_combo_box = gaim_combo_box;
|
||||
|
||||
/* Synchronize now button. */
|
||||
button = gtk_button_new_with_mnemonic (_("Synchronize with _buddy list now"));
|
||||
|
||||
@ -107,7 +107,6 @@ static ECharset charsets[] = {
|
||||
{ "ISO-8859-1", E_CHARSET_WESTERN_EUROPEAN, NULL },
|
||||
{ "ISO-8859-15", E_CHARSET_WESTERN_EUROPEAN_NEW, NULL },
|
||||
};
|
||||
static const gint num_charsets = sizeof (charsets) / sizeof (charsets[0]);
|
||||
|
||||
static void
|
||||
select_item (GtkMenuShell *menu_shell, GtkWidget *item)
|
||||
@ -301,13 +300,13 @@ e_charset_picker_new (const gchar *default_charset)
|
||||
|
||||
if (!default_charset)
|
||||
default_charset = locale_charset;
|
||||
for (def = 0; def < num_charsets; def++) {
|
||||
for (def = 0; def < G_N_ELEMENTS (charsets); def++) {
|
||||
if (!g_ascii_strcasecmp (charsets[def].name, default_charset))
|
||||
break;
|
||||
}
|
||||
|
||||
menu = gtk_menu_new ();
|
||||
for (i = 0; i < num_charsets; i++) {
|
||||
for (i = 0; i < G_N_ELEMENTS (charsets); i++) {
|
||||
item = add_charset (menu, &charsets[i], FALSE);
|
||||
if (i == def) {
|
||||
activate (item, menu);
|
||||
@ -318,7 +317,7 @@ e_charset_picker_new (const gchar *default_charset)
|
||||
/* do the Unknown/Other section */
|
||||
gtk_menu_shell_append (GTK_MENU_SHELL (menu), gtk_menu_item_new ());
|
||||
|
||||
if (def == num_charsets) {
|
||||
if (def == G_N_ELEMENTS (charsets)) {
|
||||
ECharset other = { NULL, E_CHARSET_UNKNOWN, NULL };
|
||||
|
||||
/* Add an entry for @default_charset */
|
||||
@ -361,79 +360,6 @@ e_charset_picker_get_charset (GtkWidget *menu)
|
||||
return g_strdup (charset);
|
||||
}
|
||||
|
||||
/**
|
||||
* e_charset_picker_dialog:
|
||||
* @title: title for the dialog box
|
||||
* @prompt: prompt string for the dialog box
|
||||
* @default_charset: as for e_charset_picker_new()
|
||||
* @parent: a parent window for the dialog box, or %NULL
|
||||
*
|
||||
* This creates a new dialog box with the given @title and @prompt and
|
||||
* a character set picker menu. It then runs the dialog and returns
|
||||
* the selected character set, or %NULL if the user clicked "Cancel".
|
||||
*
|
||||
* Return value: the selected character set (which must be freed with
|
||||
* g_free()), or %NULL.
|
||||
**/
|
||||
gchar *
|
||||
e_charset_picker_dialog (const gchar *title, const gchar *prompt,
|
||||
const gchar *default_charset, GtkWindow *parent)
|
||||
{
|
||||
GtkDialog *dialog;
|
||||
GtkWidget *label, *omenu, *picker, *vbox, *hbox;
|
||||
gchar *charset = NULL;
|
||||
|
||||
dialog = GTK_DIALOG (gtk_dialog_new_with_buttons (title,
|
||||
parent,
|
||||
GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
|
||||
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
|
||||
GTK_STOCK_OK, GTK_RESPONSE_OK,
|
||||
NULL));
|
||||
|
||||
gtk_dialog_set_has_separator (dialog, FALSE);
|
||||
gtk_dialog_set_default_response (dialog, GTK_RESPONSE_OK);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 6);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 12);
|
||||
gtk_box_pack_start (GTK_BOX (dialog->vbox), vbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (vbox);
|
||||
|
||||
label = gtk_label_new (prompt);
|
||||
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
|
||||
gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
|
||||
gtk_widget_show (label);
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 12);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
|
||||
gtk_widget_show (hbox);
|
||||
|
||||
label = gtk_label_new ("");
|
||||
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
|
||||
gtk_widget_show (label);
|
||||
|
||||
picker = e_charset_picker_new (default_charset);
|
||||
omenu = gtk_option_menu_new ();
|
||||
gtk_option_menu_set_menu (GTK_OPTION_MENU (omenu), picker);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), omenu, TRUE, TRUE, 0);
|
||||
gtk_widget_show (omenu);
|
||||
|
||||
gtk_container_set_border_width (GTK_CONTAINER (dialog->vbox), 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (dialog->action_area), 12);
|
||||
|
||||
gtk_widget_show_all (GTK_WIDGET (dialog));
|
||||
|
||||
g_object_ref (dialog);
|
||||
|
||||
if (gtk_dialog_run (dialog) == GTK_RESPONSE_OK)
|
||||
charset = e_charset_picker_get_charset (picker);
|
||||
|
||||
gtk_widget_destroy (GTK_WIDGET (dialog));
|
||||
g_object_unref (dialog);
|
||||
|
||||
return charset;
|
||||
}
|
||||
|
||||
/**
|
||||
* e_charset_add_radio_actions:
|
||||
* @action_group: a #GtkActionGroup
|
||||
|
||||
@ -18,8 +18,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef E_CHARSETPICKER_H
|
||||
#define E_CHARSETPICKER_H
|
||||
#ifndef E_CHARSET_PICKER_H
|
||||
#define E_CHARSET_PICKER_H
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
@ -27,11 +27,6 @@ G_BEGIN_DECLS
|
||||
|
||||
GtkWidget * e_charset_picker_new (const gchar *default_charset);
|
||||
gchar * e_charset_picker_get_charset (GtkWidget *picker);
|
||||
gchar * e_charset_picker_dialog (const gchar *title,
|
||||
const gchar *prompt,
|
||||
const gchar *default_charset,
|
||||
GtkWindow *parent);
|
||||
|
||||
GSList * e_charset_add_radio_actions (GtkActionGroup *action_group,
|
||||
const gchar *action_prefix,
|
||||
const gchar *default_charset,
|
||||
@ -40,4 +35,4 @@ GSList * e_charset_add_radio_actions (GtkActionGroup *action_group,
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* E_CHARSETPICKER_H */
|
||||
#endif /* E_CHARSET_PICKER_H */
|
||||
|
||||
Reference in New Issue
Block a user