aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-error.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-05-27 20:37:17 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-05-27 20:37:17 +0800
commitcc3a98fc1ad5bb87aa7335f3de404ee7feee1541 (patch)
tree763785c47096a6aba1ca6c03115b5e862c9f49ad /e-util/e-error.c
parent10f8406b09318b1a3e4fe9d08d41a60239f9f3a6 (diff)
parente4afd3f9fb962ea1295a0657ec9f83a427829171 (diff)
downloadgsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.tar
gsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.tar.gz
gsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.tar.bz2
gsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.tar.lz
gsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.tar.xz
gsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.tar.zst
gsoc2013-evolution-cc3a98fc1ad5bb87aa7335f3de404ee7feee1541.zip
Merge branch 'master' into kill-bonobo
Conflicts: a11y/widgets/ea-combo-button.c a11y/widgets/ea-combo-button.h addressbook/gui/component/addressbook-component.c addressbook/gui/component/addressbook-component.h addressbook/gui/component/addressbook-view.c addressbook/gui/component/addressbook-view.h addressbook/gui/component/component-factory.c addressbook/gui/widgets/e-addressbook-view.c addressbook/gui/widgets/eab-contact-display.c addressbook/gui/widgets/eab-gui-util.h addressbook/gui/widgets/eab-menu.c addressbook/gui/widgets/eab-menu.h addressbook/gui/widgets/eab-popup-control.c addressbook/gui/widgets/eab-popup-control.h addressbook/gui/widgets/eab-popup.c addressbook/gui/widgets/eab-popup.h calendar/gui/cal-search-bar.c calendar/gui/calendar-commands.c calendar/gui/calendar-component.c calendar/gui/comp-editor-factory.c calendar/gui/comp-editor-factory.h calendar/gui/control-factory.c calendar/gui/dialogs/comp-editor.c calendar/gui/e-cal-component-memo-preview.c calendar/gui/e-cal-component-memo-preview.h calendar/gui/e-calendar-table.c calendar/gui/e-memo-table.c calendar/gui/e-memos.c calendar/gui/e-tasks.c calendar/gui/gnome-cal.c calendar/gui/gnome-cal.h calendar/gui/itip-bonobo-control.c calendar/gui/itip-bonobo-control.h calendar/gui/main.c calendar/gui/memos-component.c calendar/gui/memos-control.c calendar/gui/memos-control.h calendar/gui/migration.c calendar/gui/migration.h calendar/gui/tasks-component.c calendar/gui/tasks-control.c calendar/importers/main.c composer/Makefile.am composer/e-composer-header-table.c composer/e-composer-header.c composer/e-composer-header.h composer/e-composer-name-header.c composer/e-composer-private.c composer/e-composer-text-header.c composer/e-msg-composer.c composer/e-msg-composer.h e-util/e-corba-utils.h e-util/e-logger.c e-util/e-logger.h e-util/e-util-labels.c e-util/e-util-labels.h em-format/em-format.c mail/Makefile.am mail/e-mail-shell-migrate.c mail/em-account-editor.c mail/em-account-editor.h mail/em-composer-prefs.c mail/em-composer-utils.c mail/em-composer-utils.h mail/em-folder-browser.c mail/em-folder-tree-model.c mail/em-folder-tree.c mail/em-folder-tree.h mail/em-folder-utils.c mail/em-folder-utils.h mail/em-folder-view.c mail/em-format-html-display.c mail/em-format-html.c mail/em-mailer-prefs.c mail/em-mailer-prefs.h mail/em-message-browser.c mail/em-message-browser.h mail/em-network-prefs.h mail/em-popup.c mail/em-utils.c mail/importers/Makefile.am mail/mail-component-factory.c mail/mail-component.c mail/mail-config-factory.c mail/mail-config-factory.h mail/mail-config.c mail/mail-dialogs.glade mail/mail-types.h plugins/calendar-weather/calendar-weather.c plugins/mail-account-disable/mail-account-disable.c plugins/select-one-source/select-one-source.c po/POTFILES.in shell/e-component-registry.c shell/e-component-registry.h shell/e-component-view.c shell/e-component-view.h shell/e-corba-config-page.c shell/e-corba-config-page.h shell/e-shell-constants.h shell/e-shell-settings-dialog.c shell/e-shell-settings-dialog.h shell/e-shell-window-commands.c shell/e-shell-window.c shell/e-shell.h shell/e-sidebar.c shell/e-sidebar.h shell/e-user-creatable-items-handler.c shell/e-user-creatable-items-handler.h shell/es-menu.c shell/es-menu.h shell/evolution-component.h shell/evolution-config-control.c shell/evolution-config-control.h shell/evolution-listener.c shell/evolution-listener.h shell/evolution-shell-component-utils.c shell/evolution-shell-component-utils.h shell/importer/evolution-importer-client.c shell/importer/evolution-importer-client.h shell/importer/evolution-importer-listener.c shell/importer/evolution-importer-listener.h shell/importer/evolution-importer.c shell/importer/evolution-importer.h shell/importer/evolution-intelligent-importer.c shell/importer/evolution-intelligent-importer.h shell/importer/intelligent.c shell/main.c shell/test/evolution-test-component.c shell/test/evolution-test-component.h widgets/menus/gal-view-instance.c widgets/menus/gal-view-menus.c widgets/menus/gal-view-menus.h widgets/misc/Makefile.am widgets/misc/e-activity-handler.c widgets/misc/e-activity-handler.h widgets/misc/e-charset-picker.c widgets/misc/e-combo-button.c widgets/misc/e-combo-button.h widgets/misc/e-config-page.h widgets/misc/e-dropdown-button.c widgets/misc/e-dropdown-button.h widgets/misc/e-filter-bar.c widgets/misc/e-info-label.c widgets/misc/e-info-label.h widgets/misc/e-multi-config-dialog.c widgets/misc/e-multi-config-dialog.h widgets/misc/e-search-bar.c widgets/misc/e-search-bar.h widgets/misc/e-task-bar.c widgets/misc/e-task-bar.h widgets/misc/e-task-widget.c widgets/misc/e-task-widget.h widgets/misc/test-dropdown-button.c widgets/misc/test-error.c widgets/misc/test-info-label.c widgets/table/e-table-example-1.c
Diffstat (limited to 'e-util/e-error.c')
-rw-r--r--e-util/e-error.c62
1 files changed, 33 insertions, 29 deletions
diff --git a/e-util/e-error.c b/e-util/e-error.c
index 7c1248bb7b..f2067950bc 100644
--- a/e-util/e-error.c
+++ b/e-util/e-error.c
@@ -10,7 +10,7 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with the program; if not, see <http://www.gnu.org/licenses/>
+ * License along with the program; if not, see <http://www.gnu.org/licenses/>
*
*
* Authors:
@@ -41,27 +41,27 @@
struct _e_error_button {
struct _e_error_button *next;
- char *stock;
- char *label;
- int response;
+ const gchar *stock;
+ const gchar *label;
+ gint response;
};
struct _e_error {
guint32 flags;
- char *id;
- int type;
- int default_response;
- char *title;
- char *primary;
- char *secondary;
- char *help_uri;
+ const gchar *id;
+ gint type;
+ gint default_response;
+ const gchar *title;
+ const gchar *primary;
+ const gchar *secondary;
+ const gchar *help_uri;
gboolean scroll;
struct _e_error_button *buttons;
};
struct _e_error_table {
- char *domain;
- char *translation_domain;
+ const gchar *domain;
+ const gchar *translation_domain;
GHashTable *errors;
};
@@ -84,8 +84,8 @@ static struct _e_error default_errors[] = {
/* ********************************************************************** */
static struct {
- char *name;
- int id;
+ const gchar *name;
+ gint id;
} response_map[] = {
{ "GTK_RESPONSE_REJECT", GTK_RESPONSE_REJECT },
{ "GTK_RESPONSE_ACCEPT", GTK_RESPONSE_ACCEPT },
@@ -111,9 +111,9 @@ map_response(const char *name)
}
static struct {
- const char *name;
- const char *icon;
- const char *title;
+ const gchar *name;
+ const gchar *icon;
+ const gchar *title;
} type_map[] = {
{ "info", GTK_STOCK_DIALOG_INFO, N_("Evolution Information") },
{ "warning", GTK_STOCK_DIALOG_WARNING, N_("Evolution Warning") },
@@ -184,7 +184,7 @@ ee_load(const char *path)
table = g_malloc0(sizeof(*table));
table->domain = g_strdup(tmp);
table->errors = g_hash_table_new(g_str_hash, g_str_equal);
- g_hash_table_insert(error_table, table->domain, table);
+ g_hash_table_insert(error_table, (gpointer) table->domain, table);
tmp2 = (char *)xmlGetProp(root, (const unsigned char *)"translation-domain");
if (tmp2) {
@@ -263,16 +263,20 @@ ee_load(const char *path)
}
} else if (!strcmp((char *)scan->name, "button")) {
struct _e_error_button *b;
+ gchar *label = NULL;
+ gchar *stock = NULL;
b = g_malloc0(sizeof(*b));
tmp = (char *)xmlGetProp(scan, (const unsigned char *)"stock");
if (tmp) {
- b->stock = g_strdup(tmp);
+ stock = g_strdup(tmp);
+ b->stock = stock;
xmlFree(tmp);
}
tmp = (char *)xmlGetProp(scan, (const unsigned char *)"label");
if (tmp) {
- b->label = g_strdup(dgettext(table->translation_domain, tmp));
+ label = g_strdup(dgettext(table->translation_domain, tmp));
+ b->label = label;
xmlFree(tmp);
}
tmp = (char *)xmlGetProp(scan, (const unsigned char *)"response");
@@ -281,10 +285,10 @@ ee_load(const char *path)
xmlFree(tmp);
}
- if (b->stock == NULL && b->label == NULL) {
+ if (stock == NULL && label == NULL) {
g_warning("Error file '%s': missing button details in error '%s'", path, e->id);
- g_free(b->stock);
- g_free(b->label);
+ g_free(stock);
+ g_free(label);
g_free(b);
} else {
lastbutton->next = b;
@@ -293,7 +297,7 @@ ee_load(const char *path)
}
}
- g_hash_table_insert(table->errors, e->id, e);
+ g_hash_table_insert(table->errors, (gpointer) e->id, e);
}
}
@@ -319,8 +323,8 @@ ee_load_tables(void)
table->domain = "builtin";
table->errors = g_hash_table_new(g_str_hash, g_str_equal);
for (i=0;i<sizeof(default_errors)/sizeof(default_errors[0]);i++)
- g_hash_table_insert(table->errors, default_errors[i].id, &default_errors[i]);
- g_hash_table_insert(error_table, table->domain, table);
+ g_hash_table_insert(table->errors, (gpointer) default_errors[i].id, &default_errors[i]);
+ g_hash_table_insert(error_table, (gpointer) table->domain, table);
/* look for installed error tables */
base = g_build_filename (EVOLUTION_PRIVDATADIR, "errors", NULL);
@@ -525,7 +529,7 @@ e_error_newv(GtkWindow *parent, const char *tag, const char *arg0, va_list ap)
g_string_free (oerr, TRUE);
} else
perr = g_strdup (gtk_window_get_title (GTK_WINDOW (dialog)));
-
+
if (e->secondary) {
ee_build_label(out, e->secondary, args, TRUE);
oerr = g_string_new("");
@@ -557,7 +561,7 @@ e_error_newv(GtkWindow *parent, const char *tag, const char *arg0, va_list ap)
gtk_box_pack_start((GtkBox *)dialog->vbox, hbox, TRUE, TRUE, 0);
g_object_set_data_full ((GObject *) dialog, "primary", perr, g_free);
g_object_set_data_full ((GObject *) dialog, "secondary", serr, g_free);
-
+
return (GtkWidget *)dialog;
}