[evolution] Stop using deprecated gtk-stock items



commit b48e21d9aa7eb16e559739b71b9d08f90dfa92be
Author: Milan Crha <mcrha redhat com>
Date:   Wed Feb 12 20:45:53 2014 +0100

    Stop using deprecated gtk-stock items

 addressbook/gui/contact-editor/contact-editor.ui   |   15 ++-
 .../gui/contact-editor/e-contact-editor-fullname.c |    4 +-
 addressbook/gui/contact-editor/e-contact-editor.c  |   15 ++--
 .../gui/contact-editor/e-contact-quick-add.c       |    4 +-
 addressbook/gui/contact-editor/fullname.ui         |   10 +-
 .../gui/contact-list-editor/contact-list-editor.ui |   44 ++++----
 addressbook/gui/widgets/e-addressbook-view.c       |    4 +-
 addressbook/gui/widgets/e-contact-map-window.c     |    8 +-
 addressbook/gui/widgets/eab-contact-display.c      |    2 +-
 addressbook/gui/widgets/eab-contact-merging.c      |   26 +----
 addressbook/gui/widgets/eab-gui-util.c             |    4 +-
 calendar/alarm-notify/alarm-notify.ui              |   32 ++----
 calendar/alarm-notify/alarm-queue.c                |    4 +-
 calendar/gui/dialogs/alarm-dialog.ui               |   10 +-
 calendar/gui/dialogs/alarm-list-dialog.ui          |   82 +++------------
 calendar/gui/dialogs/comp-editor.c                 |   48 ++++----
 calendar/gui/dialogs/e-delegate-dialog.ui          |   10 +-
 calendar/gui/dialogs/event-editor.c                |    6 +-
 calendar/gui/dialogs/event-page.c                  |   14 +--
 calendar/gui/dialogs/event-page.ui                 |   81 +++------------
 calendar/gui/dialogs/goto-dialog.ui                |    5 +-
 calendar/gui/dialogs/memo-page.c                   |    8 +-
 calendar/gui/dialogs/recurrence-page.c             |    4 +-
 calendar/gui/dialogs/recurrence-page.ui            |   71 ++-----------
 calendar/gui/dialogs/task-page.c                   |   12 +--
 calendar/gui/dialogs/task-page.ui                  |   57 ++--------
 calendar/gui/e-meeting-time-sel.c                  |    9 +-
 composer/e-composer-actions.c                      |   20 ++--
 designs/OOA/ooa.ui                                 |  112 +------------------
 designs/read_receipts/read.ui                      |    2 +-
 e-util/e-activity-bar.c                            |    9 +-
 e-util/e-activity-proxy.c                          |   11 +-
 e-util/e-alert-bar.c                               |   14 +--
 e-util/e-alert.c                                   |   24 ++--
 e-util/e-alert.h                                   |    2 +-
 e-util/e-attachment-button.c                       |   15 ++-
 e-util/e-attachment-dialog.c                       |    4 +-
 e-util/e-attachment-store.c                        |    6 +-
 e-util/e-attachment-view.c                         |   30 +++---
 e-util/e-attachment.c                              |    2 +-
 e-util/e-categories-dialog.c                       |    4 +-
 e-util/e-categories-editor.c                       |    7 +-
 e-util/e-category-editor.c                         |   15 +--
 e-util/e-charset-combo-box.c                       |    4 +-
 e-util/e-dialog-widgets.c                          |   35 ++++++
 e-util/e-dialog-widgets.h                          |    3 +
 e-util/e-filter-datespec.c                         |    4 +-
 e-util/e-filter-rule.c                             |    8 +-
 e-util/e-focus-tracker.c                           |   10 +-
 e-util/e-icon-factory.c                            |    2 +-
 e-util/e-import-assistant.c                        |    7 +-
 e-util/e-mail-signature-editor.c                   |    4 +-
 e-util/e-mail-signature-manager.c                  |   12 +--
 e-util/e-mail-signature-script-dialog.c            |   12 +-
 e-util/e-name-selector-dialog.c                    |    8 +-
 e-util/e-passwords.c                               |    4 +-
 e-util/e-preferences-window.c                      |    5 +-
 e-util/e-rule-context.c                            |    4 +-
 e-util/e-rule-editor.c                             |   12 +-
 e-util/e-search-bar.c                              |   20 ++--
 e-util/e-send-options.ui                           |   15 ++-
 e-util/e-source-config-dialog.c                    |   10 ++-
 e-util/e-source-selector-dialog.c                  |    4 +-
 e-util/e-spell-entry.c                             |    6 +-
 e-util/e-table-config.c                            |    6 +-
 e-util/e-table-config.ui                           |   42 ++++----
 e-util/e-table-field-chooser-dialog.c              |    2 +-
 e-util/e-text.c                                    |   12 ++-
 e-util/e-timezone-dialog.ui                        |   12 ++-
 e-util/e-url-entry.c                               |    4 +-
 e-util/e-web-view-gtkhtml.c                        |   12 +-
 e-util/e-web-view.c                                |   24 ++--
 e-util/evolution-source-viewer.c                   |   10 +-
 e-util/filter.ui                                   |   30 +++--
 e-util/gal-view-instance-save-as-dialog.c          |    4 +-
 e-util/test-preferences-window.c                   |    6 +-
 em-format/e-mail-formatter-error.c                 |    2 +-
 mail/e-mail-account-manager.c                      |   13 +--
 mail/e-mail-browser.c                              |   20 ++--
 mail/e-mail-config-security-page.c                 |    5 +-
 mail/e-mail-config-window.c                        |    4 +-
 mail/e-mail-label-dialog.c                         |    4 +-
 mail/e-mail-label-manager.c                        |    8 +-
 mail/e-mail-reader.c                               |   26 +++---
 mail/e-mail-tag-editor.c                           |    7 +-
 mail/em-filter-rule.c                              |    9 +-
 mail/em-folder-properties.c                        |    2 +-
 mail/em-folder-selector.c                          |    6 +-
 mail/em-subscription-editor.c                      |   10 +-
 mail/em-vfolder-editor-rule.c                      |    4 +-
 mail/mail-config.ui                                |   32 +++---
 mail/mail-dialogs.ui                               |   53 ++--------
 mail/mail-send-recv.c                              |   10 +--
 mail/mail-vfolder-ui.c                             |    8 +-
 modules/addressbook/e-book-shell-view-actions.c    |   32 +++---
 modules/backup-restore/evolution-backup-tool.c     |    7 +-
 .../book-config-ldap/evolution-book-config-ldap.c  |    6 +-
 .../cal-config-caldav/e-caldav-chooser-dialog.c    |    7 +-
 .../cal-config-google/e-google-chooser-dialog.c    |    7 +-
 modules/calendar/e-cal-attachment-handler.c        |    2 +-
 modules/calendar/e-cal-shell-view-actions.c        |   46 ++++----
 modules/calendar/e-cal-shell-view-memopad.c        |    8 +-
 modules/calendar/e-cal-shell-view-taskpad.c        |    8 +-
 modules/calendar/e-memo-shell-view-actions.c       |   30 +++---
 modules/calendar/e-task-shell-view-actions.c       |   30 +++---
 modules/itip-formatter/itip-view.c                 |   30 +++---
 modules/mail/e-mail-shell-view-actions.c           |   18 ++--
 modules/mail/em-composer-prefs.c                   |    4 +-
 modules/mailto-handler/evolution-mailto-handler.c  |    7 +-
 modules/plugin-manager/evolution-plugin-manager.c  |    2 +-
 .../e-mail-config-import-progress-page.c           |    3 +-
 plugins/attachment-reminder/attachment-reminder.c  |    8 +-
 plugins/email-custom-header/email-custom-header.c  |    8 +-
 .../org-gnome-email-custom-header.ui               |   15 ++-
 plugins/external-editor/external-editor.c          |    2 +-
 plugins/face/face.c                                |   12 +-
 plugins/mail-to-task/mail-to-task.c                |    6 +-
 plugins/publish-calendar/publish-calendar.c        |   20 ++--
 plugins/publish-calendar/publish-calendar.ui       |   86 ++-------------
 plugins/publish-calendar/url-editor-dialog.c       |    4 +-
 plugins/save-calendar/save-calendar.c              |   22 ++--
 plugins/templates/templates.c                      |   10 +-
 shell/e-shell-content.c                            |   10 +-
 shell/e-shell-utils.c                              |    8 +-
 shell/e-shell-window-actions.c                     |   60 +++++-----
 shell/main.c                                       |    2 +-
 smime/gui/certificate-manager.c                    |    6 +-
 smime/gui/e-cert-selector.c                        |    4 +-
 smime/gui/smime-ui.ui                              |   44 +++++---
 129 files changed, 828 insertions(+), 1188 deletions(-)
---
diff --git a/addressbook/gui/contact-editor/contact-editor.ui 
b/addressbook/gui/contact-editor/contact-editor.ui
index 919a5a4..7e48bc5 100644
--- a/addressbook/gui/contact-editor/contact-editor.ui
+++ b/addressbook/gui/contact-editor/contact-editor.ui
@@ -2400,12 +2400,13 @@
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="button-help">
-                <property name="label">gtk-help</property>
+                <property name="label" translatable="yes">_Help</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -2415,12 +2416,13 @@
             </child>
             <child>
               <object class="GtkButton" id="button-cancel">
-                <property name="label">gtk-cancel</property>
+                <property name="label" translatable="yes">_Cancel</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -2430,13 +2432,14 @@
             </child>
             <child>
               <object class="GtkButton" id="button-ok">
-                <property name="label">gtk-save</property>
+                <property name="label" translatable="yes">_Save</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="receives_default">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
                 <accelerator key="s" modifiers="GDK_CONTROL_MASK" signal="clicked"/>
               </object>
               <packing>
diff --git a/addressbook/gui/contact-editor/e-contact-editor-fullname.c 
b/addressbook/gui/contact-editor/e-contact-editor-fullname.c
index 6aabc09..6850797 100644
--- a/addressbook/gui/contact-editor/e-contact-editor-fullname.c
+++ b/addressbook/gui/contact-editor/e-contact-editor-fullname.c
@@ -220,8 +220,8 @@ e_contact_editor_fullname_init (EContactEditorFullname *e_contact_editor_fullnam
 
        gtk_dialog_add_buttons (
                dialog,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE);
 
diff --git a/addressbook/gui/contact-editor/e-contact-editor.c 
b/addressbook/gui/contact-editor/e-contact-editor.c
index c67353c..7f3aaa1 100644
--- a/addressbook/gui/contact-editor/e-contact-editor.c
+++ b/addressbook/gui/contact-editor/e-contact-editor.c
@@ -265,14 +265,14 @@ static GtkActionEntry undo_entries[] = {
          NULL }, /* just a fake undo menu, to get shortcuts working */
 
        { "undo",
-         GTK_STOCK_UNDO,
+         "edit-undo",
          NULL,
          "<Control>z",
          N_("Undo"),
          NULL }, /* Handled by EFocusTracker */
 
        { "redo",
-         GTK_STOCK_REDO,
+         "edit-redo",
          NULL,
          "<Control>y",
          N_("Redo"),
@@ -3565,17 +3565,16 @@ image_clicked (GtkWidget *button,
                EContactEditor *editor)
 {
        if (!editor->priv->file_selector) {
-               const gchar *title = _("Please select an image for this contact");
-               const gchar *no_image = _("_No image");
                GtkImage *preview;
                GtkFileFilter *filter;
 
                editor->priv->file_selector = gtk_file_chooser_dialog_new (
-                       title, GTK_WINDOW (editor->priv->app),
+                       _("Please select an image for this contact"),
+                       GTK_WINDOW (editor->priv->app),
                        GTK_FILE_CHOOSER_ACTION_OPEN,
-                       GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-                       GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
-                       no_image, GTK_RESPONSE_NO,
+                       _("_Cancel"), GTK_RESPONSE_CANCEL,
+                       _("_Open"), GTK_RESPONSE_ACCEPT,
+                       _("_No image"), GTK_RESPONSE_NO,
                        NULL);
 
                filter = gtk_file_filter_new ();
diff --git a/addressbook/gui/contact-editor/e-contact-quick-add.c 
b/addressbook/gui/contact-editor/e-contact-quick-add.c
index 65e3d6c..b6bbccd 100644
--- a/addressbook/gui/contact-editor/e-contact-quick-add.c
+++ b/addressbook/gui/contact-editor/e-contact-quick-add.c
@@ -452,8 +452,8 @@ build_quick_add_dialog (QuickAdd *qa)
                e_shell_get_active_window (NULL),
                0,
                _("_Edit Full"), QUICK_ADD_RESPONSE_EDIT_FULL,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_widget_ensure_style (dialog);
diff --git a/addressbook/gui/contact-editor/fullname.ui b/addressbook/gui/contact-editor/fullname.ui
index 0751fa3..2c550cd 100644
--- a/addressbook/gui/contact-editor/fullname.ui
+++ b/addressbook/gui/contact-editor/fullname.ui
@@ -74,12 +74,13 @@
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="button1">
-                <property name="label">gtk-ok</property>
+                <property name="label" translatable="yes">_OK</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -89,12 +90,13 @@
             </child>
             <child>
               <object class="GtkButton" id="button2">
-                <property name="label">gtk-cancel</property>
+                <property name="label" translatable="yes">_Cancel</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
diff --git a/addressbook/gui/contact-list-editor/contact-list-editor.ui 
b/addressbook/gui/contact-list-editor/contact-list-editor.ui
index d6a1978..c1a24f0 100644
--- a/addressbook/gui/contact-list-editor/contact-list-editor.ui
+++ b/addressbook/gui/contact-list-editor/contact-list-editor.ui
@@ -209,8 +209,9 @@
                                 <property name="can_default">True</property>
                                 <property name="has_tooltip">True</property>
                                 <property name="tooltip_text" translatable="yes">Add an email to the 
List</property>
-                                <property name="label">gtk-add</property>
-                                <property name="use_stock">True</property>
+                                <property name="label" translatable="yes">_Add</property>
+                                <property name="use_stock">False</property>
+                                <property name="use-underline">True</property>
                                 <property name="xalign">0</property>
                                 <signal handler="contact_list_editor_add_button_clicked_cb" name="clicked"/>
                               </object>
@@ -227,8 +228,9 @@
                                 <property name="can_default">True</property>
                                 <property name="has_tooltip">True</property>
                                 <property name="tooltip_text" translatable="yes">Remove an email address 
from the List</property>
-                                <property name="label">gtk-remove</property>
-                                <property name="use_stock">True</property>
+                                <property name="label" translatable="yes">_Remove</property>
+                                <property name="use_stock">False</property>
+                                <property name="use-underline">True</property>
                                 <property name="xalign">0</property>
                                 <signal handler="contact_list_editor_remove_button_clicked_cb" 
name="clicked"/>
                               </object>
@@ -262,9 +264,9 @@
                                 <property name="is_focus">True</property>
                                 <property name="can_default">True</property>
                                 <property name="has_default">True</property>
-                               <property name="use_underline">True</property>
-                               <property name="label">gtk-goto-top</property>
-                               <property name="use-stock">True</property>
+                               <property name="label" translatable="yes">_Top</property>
+                               <property name="use-stock">False</property>
+                               <property name="use-underline">True</property>
                                <property name="sensitive">False</property>
                                <signal name="clicked" handler="contact_list_editor_top_button_clicked_cb"/>
                              </object>
@@ -280,9 +282,9 @@
                                <property name="is_focus">True</property>
                                <property name="can_default">True</property>
                                <property name="has_default">True</property>
-                               <property name="use_underline">True</property>
-                               <property name="label">gtk-go-up</property>
-                               <property name="use-stock">True</property>
+                               <property name="label" translatable="yes">_Up</property>
+                               <property name="use-stock">False</property>
+                               <property name="use-underline">True</property>
                                <property name="sensitive">False</property>
                                <signal name="clicked" handler="contact_list_editor_up_button_clicked_cb"/>
                              </object>
@@ -297,9 +299,9 @@
                                <property name="visible">True</property>
                                <property name="is_focus">True</property>
                                <property name="has_focus">True</property>
-                               <property name="use_underline">True</property>
-                               <property name="label">gtk-go-down</property>
-                               <property name="use-stock">True</property>
+                               <property name="label" translatable="yes">_Down</property>
+                               <property name="use-stock">False</property>
+                               <property name="use-underline">True</property>
                                <property name="sensitive">False</property>
                                <signal name="clicked" handler="contact_list_editor_down_button_clicked_cb"/>
                              </object>
@@ -314,9 +316,9 @@
                                <property name="visible">True</property>
                                <property name="is_focus">True</property>
                                <property name="has_focus">True</property>
-                               <property name="use_underline">True</property>
-                               <property name="label">gtk-goto-bottom</property>
-                               <property name="use-stock">True</property>
+                               <property name="label" translatable="yes">_Bottom</property>
+                               <property name="use-stock">False</property>
+                               <property name="use-underline">True</property>
                                <property name="sensitive">False</property>
                                <signal name="clicked" 
handler="contact_list_editor_bottom_button_clicked_cb"/>
                              </object>
@@ -374,8 +376,9 @@
                 <property name="visible">True</property>
                 <property name="is_focus">True</property>
                 <property name="can_default">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+               <property name="use-underline">True</property>
                 <signal handler="contact_list_editor_cancel_button_clicked_cb" name="clicked"/>
               </object>
             </child>
@@ -383,8 +386,9 @@
               <object class="GtkButton" id="ok-button">
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
-                <property name="label">gtk-save</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Save</property>
+                <property name="use_stock">False</property>
+               <property name="use-underline">True</property>
                 <accelerator key="s" modifiers="GDK_CONTROL_MASK" signal="clicked"/>
                 <signal handler="contact_list_editor_ok_button_clicked_cb" name="clicked"/>
               </object>
diff --git a/addressbook/gui/widgets/e-addressbook-view.c b/addressbook/gui/widgets/e-addressbook-view.c
index 4aaa7ee..5817874 100644
--- a/addressbook/gui/widgets/e-addressbook-view.c
+++ b/addressbook/gui/widgets/e-addressbook-view.c
@@ -1327,8 +1327,8 @@ addressbook_view_confirm_delete (GtkWindow *parent,
                GTK_BUTTONS_NONE, "%s", message);
        gtk_dialog_add_buttons (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_DELETE, GTK_RESPONSE_ACCEPT,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Delete"), GTK_RESPONSE_ACCEPT,
                NULL);
        response = gtk_dialog_run (GTK_DIALOG (dialog));
        gtk_widget_destroy (dialog);
diff --git a/addressbook/gui/widgets/e-contact-map-window.c b/addressbook/gui/widgets/e-contact-map-window.c
index 85a85fa..736bad8 100644
--- a/addressbook/gui/widgets/e-contact-map-window.c
+++ b/addressbook/gui/widgets/e-contact-map-window.c
@@ -29,6 +29,8 @@
 
 #include <champlain/champlain.h>
 
+#include <e-util/e-util.h>
+
 #include "e-contact-map.h"
 
 #define E_CONTACT_MAP_WINDOW_GET_PRIVATE(obj) \
@@ -405,7 +407,7 @@ e_contact_map_window_init (EContactMapWindow *window)
        priv->spinner = button;
 
        /* Zoom-in button */
-       button = gtk_button_new_from_stock (GTK_STOCK_ZOOM_IN);
+       button = e_dialog_button_new_with_icon ("zoom-in", _("Zoom _In"));
        g_signal_connect (
                button, "clicked",
                G_CALLBACK (contact_map_window_zoom_in_cb), window);
@@ -413,7 +415,7 @@ e_contact_map_window_init (EContactMapWindow *window)
        gtk_container_add (GTK_CONTAINER (hbox), button);
 
        /* Zoom-out button */
-       button = gtk_button_new_from_stock (GTK_STOCK_ZOOM_OUT);
+       button = e_dialog_button_new_with_icon ("zoom-out", _("Zoom _Out"));
        g_signal_connect (
                button, "clicked",
                G_CALLBACK (contact_map_window_zoom_out_cb), window);
@@ -443,7 +445,7 @@ e_contact_map_window_init (EContactMapWindow *window)
        gtk_container_add (GTK_CONTAINER (hbox), entry);
 
        /* Search button */
-       button = gtk_button_new_from_stock (GTK_STOCK_FIND);
+       button = e_dialog_button_new_with_icon ("edit-find", _("_Find"));
        g_signal_connect (
                button, "clicked",
                G_CALLBACK (contact_map_window_find_contact_cb), window);
diff --git a/addressbook/gui/widgets/eab-contact-display.c b/addressbook/gui/widgets/eab-contact-display.c
index 35d9457..529bb0b 100644
--- a/addressbook/gui/widgets/eab-contact-display.c
+++ b/addressbook/gui/widgets/eab-contact-display.c
@@ -145,7 +145,7 @@ action_contact_send_message_cb (GtkAction *action,
 static GtkActionEntry internal_mailto_entries[] = {
 
        { "contact-mailto-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("Copy _Email Address"),
          NULL,
          N_("Copy the email address to the clipboard"),
diff --git a/addressbook/gui/widgets/eab-contact-merging.c b/addressbook/gui/widgets/eab-contact-merging.c
index 05bc696..f516eb3 100644
--- a/addressbook/gui/widgets/eab-contact-merging.c
+++ b/addressbook/gui/widgets/eab-contact-merging.c
@@ -359,7 +359,7 @@ mergeit (EContactMergingLookup *lookup)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
                _("_Merge"), GTK_RESPONSE_OK,
                NULL);
 
@@ -598,22 +598,6 @@ check_if_same (EContact *contact,
 }
 
 static GtkWidget *
-create_iconic_button (const gchar *label,
-                     const gchar *icon_name)
-{
-       GtkWidget *button, *image;
-
-       button = gtk_button_new_with_mnemonic (label);
-
-       if (icon_name) {
-               image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_BUTTON);
-               gtk_button_set_image (GTK_BUTTON (button), image);
-       }
-
-       return button;
-}
-
-static GtkWidget *
 create_duplicate_contact_detected_dialog (EContact *old_contact,
                                          EContact *new_contact,
                                          gboolean disable_merge,
@@ -633,13 +617,13 @@ create_duplicate_contact_detected_dialog (EContact *old_contact,
                "default-height", 400,
                NULL);
 
-       gtk_dialog_add_action_widget (dialog, create_iconic_button (_("_Cancel"), GTK_STOCK_CANCEL), 
GTK_RESPONSE_CANCEL);
+       gtk_dialog_add_action_widget (dialog, e_dialog_button_new_with_icon ("process-stop", _("_Cancel")), 
GTK_RESPONSE_CANCEL);
 
        if (is_for_commit) {
-               gtk_dialog_add_action_widget (dialog, create_iconic_button (_("_Save"), "document-save"), 
GTK_RESPONSE_OK);
+               gtk_dialog_add_action_widget (dialog, e_dialog_button_new_with_icon ("document-save", 
_("_Save")), GTK_RESPONSE_OK);
        } else {
-               gtk_dialog_add_action_widget (dialog, create_iconic_button (_("_Add"), "list-add"), 
GTK_RESPONSE_OK);
-               gtk_dialog_add_action_widget (dialog, create_iconic_button (_("_Merge"), NULL), 
GTK_RESPONSE_APPLY);
+               gtk_dialog_add_action_widget (dialog, e_dialog_button_new_with_icon ("list-add", _("_Add")), 
GTK_RESPONSE_OK);
+               gtk_dialog_add_action_widget (dialog, e_dialog_button_new_with_icon (NULL, _("_Merge")), 
GTK_RESPONSE_APPLY);
        }
 
        if (disable_merge)
diff --git a/addressbook/gui/widgets/eab-gui-util.c b/addressbook/gui/widgets/eab-gui-util.c
index ba8f5d0..78b26fb 100644
--- a/addressbook/gui/widgets/eab-gui-util.c
+++ b/addressbook/gui/widgets/eab-gui-util.c
@@ -315,8 +315,8 @@ eab_select_source (ESourceRegistry *registry,
        dialog = gtk_dialog_new_with_buttons (
                _("Select Address Book"), parent,
                GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_ACCEPT,
                NULL);
        gtk_window_set_default_size (GTK_WINDOW (dialog), 350, 300);
 
diff --git a/calendar/alarm-notify/alarm-notify.ui b/calendar/alarm-notify/alarm-notify.ui
index db83a54..45ced62 100644
--- a/calendar/alarm-notify/alarm-notify.ui
+++ b/calendar/alarm-notify/alarm-notify.ui
@@ -17,11 +17,6 @@
     <property name="step_increment">1</property>
     <property name="page_increment">5</property>
   </object>
-  <object class="GtkImage" id="apply-icon">
-    <property name="visible">True</property>
-    <property name="can_focus">False</property>
-    <property name="stock">gtk-apply</property>
-  </object>
   <object class="GtkDialog" id="alarm-notify">
     <property name="can_focus">False</property>
     <property name="border_width">5</property>
@@ -47,7 +42,6 @@
                 <property name="can_default">True</property>
                 <property name="receives_default">True</property>
                 <property name="use_action_appearance">False</property>
-                <property name="image">close-icon</property>
                 <property name="use_underline">True</property>
               </object>
               <packing>
@@ -81,7 +75,7 @@
                 <property name="halign">start</property>
                 <property name="valign">start</property>
                 <property name="yalign">0</property>
-                <property name="stock">gtk-dialog-info</property>
+                <property name="icon-name">dialog-information</property>
                 <property name="icon-size">6</property>
               </object>
               <packing>
@@ -157,7 +151,6 @@
                     <property name="can_default">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
-                    <property name="image">refresh-icon</property>
                     <property name="use_underline">True</property>
                   </object>
                   <packing>
@@ -168,14 +161,15 @@
                 </child>
                 <child>
                   <object class="GtkButton" id="edit-button">
-                    <property name="label">gtk-edit</property>
+                    <property name="label" translatable="yes">_Edit</property>
                     <property name="use_action_appearance">False</property>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="can_default">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
-                    <property name="use_stock">True</property>
+                    <property name="use_stock">False</property>
+                    <property name="use-underline">True</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -185,14 +179,15 @@
                 </child>
                 <child>
                   <object class="GtkButton" id="print-button">
-                    <property name="label">gtk-print</property>
+                    <property name="label" translatable="yes">_Print</property>
                     <property name="use_action_appearance">False</property>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="can_default">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
-                    <property name="use_stock">True</property>
+                    <property name="use_stock">False</property>
+                    <property name="use-underline">True</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -208,8 +203,7 @@
                     <property name="can_focus">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
-                    <property name="image">apply-icon</property>
-                    <property name="use_underline">True</property>
+                    <property name="use-underline">True</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -394,14 +388,4 @@
       <action-widget response="-7">dismiss-all-button</action-widget>
     </action-widgets>
   </object>
-  <object class="GtkImage" id="close-icon">
-    <property name="visible">True</property>
-    <property name="can_focus">False</property>
-    <property name="stock">gtk-close</property>
-  </object>
-  <object class="GtkImage" id="refresh-icon">
-    <property name="visible">True</property>
-    <property name="can_focus">False</property>
-    <property name="stock">gtk-refresh</property>
-  </object>
 </interface>
diff --git a/calendar/alarm-notify/alarm-queue.c b/calendar/alarm-notify/alarm-queue.c
index fb341e9..5c62a32 100644
--- a/calendar/alarm-notify/alarm-queue.c
+++ b/calendar/alarm-notify/alarm-queue.c
@@ -1963,8 +1963,8 @@ procedure_notification_dialog (const gchar *cmd,
 
        dialog = gtk_dialog_new_with_buttons (
                _("Warning"), NULL, 0,
-               GTK_STOCK_NO, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_YES, GTK_RESPONSE_OK,
+               _("_No"), GTK_RESPONSE_CANCEL,
+               _("_Yes"), GTK_RESPONSE_OK,
                NULL);
 
        str = g_strdup_printf (
diff --git a/calendar/gui/dialogs/alarm-dialog.ui b/calendar/gui/dialogs/alarm-dialog.ui
index c7c0310..5b02245 100644
--- a/calendar/gui/dialogs/alarm-dialog.ui
+++ b/calendar/gui/dialogs/alarm-dialog.ui
@@ -87,8 +87,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -98,8 +99,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-ok</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_OK</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
diff --git a/calendar/gui/dialogs/alarm-list-dialog.ui b/calendar/gui/dialogs/alarm-list-dialog.ui
index 70fa138..0973521 100644
--- a/calendar/gui/dialogs/alarm-list-dialog.ui
+++ b/calendar/gui/dialogs/alarm-list-dialog.ui
@@ -31,8 +31,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -42,8 +43,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-ok</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_OK</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -100,67 +102,11 @@
                         <property name="visible">True</property>
                         <property name="can_default">True</property>
                         <property name="can_focus">True</property>
+                        <property name="label" translatable="yes">_Add</property>
+                        <property name="use_stock">False</property>
+                        <property name="use_underline">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
                         <property name="focus_on_click">True</property>
-                        <child>
-                          <object class="GtkAlignment" id="alignment1">
-                            <property name="visible">True</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xscale">0</property>
-                            <property name="yscale">0</property>
-                            <property name="top_padding">0</property>
-                            <property name="bottom_padding">0</property>
-                            <property name="left_padding">0</property>
-                            <property name="right_padding">0</property>
-                            <child>
-                              <object class="GtkHBox" id="hbox56">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">2</property>
-                                <child>
-                                  <object class="GtkImage" id="image1">
-                                    <property name="visible">True</property>
-                                    <property name="stock">gtk-add</property>
-                                    <property name="icon_size">4</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="label65">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">A_dd</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                              </object>
-                            </child>
-                          </object>
-                        </child>
                       </object>
                     </child>
                     <child>
@@ -168,8 +114,9 @@
                         <property name="visible">True</property>
                         <property name="can_default">True</property>
                         <property name="can_focus">True</property>
-                        <property name="label">gtk-remove</property>
-                        <property name="use_stock">True</property>
+                        <property name="label" translatable="yes">_Remove</property>
+                        <property name="use_stock">False</property>
+                        <property name="use_underline">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
                         <property name="focus_on_click">True</property>
                       </object>
@@ -179,8 +126,9 @@
                         <property name="visible">True</property>
                         <property name="can_default">True</property>
                         <property name="can_focus">True</property>
-                        <property name="label">gtk-edit</property>
-                        <property name="use_stock">True</property>
+                        <property name="label" translatable="yes">_Edit</property>
+                        <property name="use_stock">False</property>
+                        <property name="use_underline">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
                         <property name="focus_on_click">True</property>
                       </object>
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c
index f635ab7..7653b20 100644
--- a/calendar/gui/dialogs/comp-editor.c
+++ b/calendar/gui/dialogs/comp-editor.c
@@ -1218,64 +1218,64 @@ action_view_type_cb (GtkToggleAction *action,
 static GtkActionEntry core_entries[] = {
 
        { "close",
-         GTK_STOCK_CLOSE,
-         NULL,
+         "window-close",
+         N_("_Close"),
          NULL,
          N_("Close the current window"),
          G_CALLBACK (action_close_cb) },
 
        { "copy-clipboard",
-         GTK_STOCK_COPY,
-         NULL,
+         "edit-copy",
+         N_("_Copy"),
          NULL,
          N_("Copy the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "cut-clipboard",
-         GTK_STOCK_CUT,
-         NULL,
+         "edit-cut",
+         N_("Cu_t"),
          NULL,
          N_("Cut the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "delete-selection",
-         GTK_STOCK_DELETE,
-         NULL,
+         "edit-delete",
+         N_("_Delete"),
          NULL,
          N_("Delete the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "help",
-         GTK_STOCK_HELP,
-         NULL,
+         "help-browser",
+         N_("_Help"),
          NULL,
          N_("View help"),
          G_CALLBACK (action_help_cb) },
 
        { "paste-clipboard",
-         GTK_STOCK_PASTE,
-         NULL,
+         "edit-paste",
+         N_("_Paste"),
          NULL,
          N_("Paste the clipboard"),
          NULL },  /* Handled by EFocusTracker */
 
        { "print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("_Print..."),
          "<Control>p",
          NULL,
          G_CALLBACK (action_print_cb) },
 
        { "print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
-         NULL,
+         "document-print-preview",
+         N_("Pre_view..."),
          NULL,
          NULL,
          G_CALLBACK (action_print_preview_cb) },
 
        { "save",
-         GTK_STOCK_SAVE,
-         NULL,
+         "document-save",
+         N_("_Save"),
          NULL,
          N_("Save current changes"),
          G_CALLBACK (action_save_cb) },
@@ -1288,21 +1288,21 @@ static GtkActionEntry core_entries[] = {
          G_CALLBACK (action_save_and_close_cb) },
 
        { "select-all",
-         GTK_STOCK_SELECT_ALL,
-         NULL,
+         "edit-select-all",
+         N_("Select _All"),
          "<Control>a",
          N_("Select all text"),
          NULL },  /* Handled by EFocusTracker */
 
        { "undo",
-         GTK_STOCK_UNDO,
+         "edit-undo",
          NULL,
          "<Control>z",
          N_("Undo"),
          NULL },  /* Handled by EFocusTracker */
 
        { "redo",
-         GTK_STOCK_REDO,
+         "edit-redo",
          NULL,
          "<Control>y",
          N_("Redo"),
@@ -2149,8 +2149,8 @@ comp_editor_init (CompEditor *editor)
                GIcon *emblemed_icon;
                GEmblem *emblem;
 
-               icon = g_themed_icon_new (GTK_STOCK_CLOSE);
-               emblemed_icon = g_themed_icon_new (GTK_STOCK_SAVE);
+               icon = g_themed_icon_new ("window-close");
+               emblemed_icon = g_themed_icon_new ("document-save");
                emblem = g_emblem_new (emblemed_icon);
                g_object_unref (emblemed_icon);
 
diff --git a/calendar/gui/dialogs/e-delegate-dialog.ui b/calendar/gui/dialogs/e-delegate-dialog.ui
index 95356d9..e50cfe3 100644
--- a/calendar/gui/dialogs/e-delegate-dialog.ui
+++ b/calendar/gui/dialogs/e-delegate-dialog.ui
@@ -22,8 +22,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
               </object>
             </child>
@@ -33,8 +34,9 @@
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-ok</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_OK</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
               </object>
             </child>
diff --git a/calendar/gui/dialogs/event-editor.c b/calendar/gui/dialogs/event-editor.c
index 2f54dcc..1097089 100644
--- a/calendar/gui/dialogs/event-editor.c
+++ b/calendar/gui/dialogs/event-editor.c
@@ -113,7 +113,7 @@ create_schedule_page (CompEditor *editor)
 
        priv->sched_window = gtk_dialog_new_with_buttons (
                _("Free/Busy"), GTK_WINDOW (editor), GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL);
+               _("_Close"), GTK_RESPONSE_CLOSE, NULL);
 
        content_area =
                gtk_dialog_get_content_area (GTK_DIALOG (priv->sched_window));
@@ -210,7 +210,7 @@ static GtkActionEntry editable_entries[] = {
 static GtkToggleActionEntry editable_toggle_entries[] = {
 
        { "show-time-busy",
-         GTK_STOCK_DIALOG_ERROR,
+         "dialog-error",
          N_("Show Time as _Busy"),
          NULL,
          N_("Toggles whether to show time as busy"),
@@ -307,7 +307,7 @@ event_editor_constructor (GType type,
 
        priv->recur_window = gtk_dialog_new_with_buttons (
                _("Recurrence"), GTK_WINDOW (editor), GTK_DIALOG_MODAL,
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL);
+               _("_Close"), GTK_RESPONSE_CLOSE, NULL);
        g_signal_connect (
                priv->recur_window, "response",
                G_CALLBACK (gtk_widget_hide), NULL);
diff --git a/calendar/gui/dialogs/event-page.c b/calendar/gui/dialogs/event-page.c
index 0eafc08..a8d8a66 100644
--- a/calendar/gui/dialogs/event-page.c
+++ b/calendar/gui/dialogs/event-page.c
@@ -153,7 +153,6 @@ struct _EventPagePrivate {
        GtkWidget *edit;
        GtkWidget *invite;
        GtkWidget *invite_label;
-       GtkWidget *attendees_label;
 
        /* ListView stuff */
        EMeetingStore *meeting_store;
@@ -556,7 +555,7 @@ check_starts_in_the_past (EventPage *epage)
 
        if (comp_editor_test_time_in_the_past (start_tt)) {
                gchar *tmp = g_strconcat ("<b>", _("Event's start time is in the past"), "</b>", NULL);
-               event_page_set_info_string (epage, GTK_STOCK_DIALOG_WARNING, tmp);
+               event_page_set_info_string (epage, "dialog-warning", tmp);
                g_free (tmp);
        } else {
                event_page_set_info_string (epage, NULL, NULL);
@@ -633,11 +632,11 @@ sensitize_widgets (EventPage *epage)
 
        if (read_only) {
                gchar *tmp = g_strconcat ("<b>", _("Event cannot be edited, because the selected calendar is 
read only"), "</b>", NULL);
-               event_page_set_info_string (epage, GTK_STOCK_DIALOG_INFO, tmp);
+               event_page_set_info_string (epage, "dialog-information", tmp);
                g_free (tmp);
        } else if (!sens) {
                gchar *tmp = g_strconcat ("<b>", _("Event cannot be fully edited, because you are not the 
organizer"), "</b>", NULL);
-               event_page_set_info_string (epage, GTK_STOCK_DIALOG_INFO, tmp);
+               event_page_set_info_string (epage, "dialog-information", tmp);
                g_free (tmp);
        } else if (!check_starts_in_the_past (epage)) {
                event_page_set_info_string (epage, NULL, NULL);
@@ -1929,9 +1928,9 @@ event_page_set_delegate (EventPage *page,
        g_return_if_fail (IS_EVENT_PAGE (page));
 
        if (set)
-               gtk_label_set_text_with_mnemonic ((GtkLabel *) page->priv->attendees_label, _("_Delegatees"));
+               gtk_button_set_label (GTK_BUTTON (page->priv->invite), _("_Delegatees"));
        else
-               gtk_label_set_text_with_mnemonic ((GtkLabel *) page->priv->attendees_label, _("Atte_ndees"));
+               gtk_button_set_label (GTK_BUTTON (page->priv->invite), _("Atte_ndees"));
 }
 
 static void
@@ -2530,7 +2529,7 @@ event_page_set_info_string (EventPage *epage,
 
        priv = epage->priv;
 
-       gtk_image_set_from_stock (GTK_IMAGE (priv->info_icon), icon, GTK_ICON_SIZE_BUTTON);
+       gtk_image_set_from_icon_name (GTK_IMAGE (priv->info_icon), icon, GTK_ICON_SIZE_BUTTON);
        gtk_label_set_markup (GTK_LABEL (priv->info_string), msg);
 
        if (msg && icon)
@@ -2592,7 +2591,6 @@ get_widgets (EventPage *epage)
                gtk_widget_show (priv->timezone_label);
                gtk_widget_show_all (priv->start_timezone);
        }
-       priv->attendees_label = GW ("attendees-label");
 
        g_object_ref (priv->main);
        parent = gtk_widget_get_parent (priv->main);
diff --git a/calendar/gui/dialogs/event-page.ui b/calendar/gui/dialogs/event-page.ui
index 8044575..8b8dda1 100644
--- a/calendar/gui/dialogs/event-page.ui
+++ b/calendar/gui/dialogs/event-page.ui
@@ -681,8 +681,9 @@
                             <property name="visible">True</property>
                             <property name="can_default">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label">gtk-add</property>
-                            <property name="use_stock">True</property>
+                            <property name="label" translatable="yes">_Add</property>
+                            <property name="use_stock">False</property>
+                            <property name="use_underline">True</property>
                             <property name="relief">GTK_RELIEF_NORMAL</property>
                             <property name="focus_on_click">True</property>
                           </object>
@@ -692,8 +693,9 @@
                             <property name="visible">True</property>
                             <property name="can_default">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label">gtk-remove</property>
-                            <property name="use_stock">True</property>
+                            <property name="label" translatable="yes">_Remove</property>
+                            <property name="use_stock">False</property>
+                            <property name="use_underline">True</property>
                             <property name="relief">GTK_RELIEF_NORMAL</property>
                             <property name="focus_on_click">True</property>
                           </object>
@@ -703,8 +705,9 @@
                             <property name="visible">True</property>
                             <property name="can_default">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label">gtk-edit</property>
-                            <property name="use_stock">True</property>
+                            <property name="label" translatable="yes">_Edit</property>
+                            <property name="use_stock">False</property>
+                            <property name="use_underline">True</property>
                             <property name="relief">GTK_RELIEF_NORMAL</property>
                             <property name="focus_on_click">True</property>
                           </object>
@@ -818,66 +821,9 @@
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
+                        <property name="label" translatable="yes">Atte_ndees...</property>
+                        <property name="use_underline">True</property>
                         <property name="focus_on_click">True</property>
-                        <child>
-                          <object class="GtkAlignment" id="alignment3">
-                            <property name="visible">True</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xscale">0</property>
-                            <property name="yscale">0</property>
-                            <property name="top_padding">0</property>
-                            <property name="bottom_padding">0</property>
-                            <property name="left_padding">0</property>
-                            <property name="right_padding">0</property>
-                            <child>
-                              <object class="GtkHBox" id="hbox62">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">2</property>
-                                <child>
-                                  <object class="GtkImage" id="image2">
-                                    <property name="visible">True</property>
-                                    <property name="stock">gtk-jump-to</property>
-                                    <property name="icon_size">4</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="attendees-label">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">Atte_ndees...</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                              </object>
-                            </child>
-                          </object>
-                        </child>
                       </object>
                       <packing>
                         <property name="padding">0</property>
@@ -997,8 +943,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-close</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Close</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
diff --git a/calendar/gui/dialogs/goto-dialog.ui b/calendar/gui/dialogs/goto-dialog.ui
index 4bcb1da..51d2702 100644
--- a/calendar/gui/dialogs/goto-dialog.ui
+++ b/calendar/gui/dialogs/goto-dialog.ui
@@ -92,8 +92,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
diff --git a/calendar/gui/dialogs/memo-page.c b/calendar/gui/dialogs/memo-page.c
index 28921bb..bb8884d 100644
--- a/calendar/gui/dialogs/memo-page.c
+++ b/calendar/gui/dialogs/memo-page.c
@@ -422,7 +422,7 @@ check_starts_in_the_past (MemoPage *mpage)
        if (e_date_edit_get_date (E_DATE_EDIT (priv->start_date), &start_tt.year, &start_tt.month, 
&start_tt.day) &&
            comp_editor_test_time_in_the_past (start_tt)) {
                gchar *tmp = g_strconcat ("<b>", _("Memo's start date is in the past"), "</b>", NULL);
-               memo_page_set_info_string (mpage, GTK_STOCK_DIALOG_WARNING, tmp);
+               memo_page_set_info_string (mpage, "dialog-warning", tmp);
                g_free (tmp);
        } else {
                memo_page_set_info_string (mpage, NULL, NULL);
@@ -458,11 +458,11 @@ sensitize_widgets (MemoPage *mpage)
 
        if (read_only) {
                gchar *tmp = g_strconcat ("<b>", _("Memo cannot be edited, because the selected memo list is 
read only"), "</b>", NULL);
-               memo_page_set_info_string (mpage, GTK_STOCK_DIALOG_INFO, tmp);
+               memo_page_set_info_string (mpage, "dialog-information", tmp);
                g_free (tmp);
        } else if (!sens) {
                gchar *tmp = g_strconcat ("<b>", _("Memo cannot be fully edited, because you are not the 
organizer"), "</b>", NULL);
-               memo_page_set_info_string (mpage, GTK_STOCK_DIALOG_INFO, tmp);
+               memo_page_set_info_string (mpage, "dialog-information", tmp);
                g_free (tmp);
        } else if (!check_starts_in_the_past (mpage)) {
                memo_page_set_info_string (mpage, NULL, NULL);
@@ -832,7 +832,7 @@ memo_page_set_info_string (MemoPage *mpage,
 
        priv = mpage->priv;
 
-       gtk_image_set_from_stock (GTK_IMAGE (priv->info_icon), icon, GTK_ICON_SIZE_BUTTON);
+       gtk_image_set_from_icon_name (GTK_IMAGE (priv->info_icon), icon, GTK_ICON_SIZE_BUTTON);
        gtk_label_set_markup (GTK_LABEL (priv->info_string), msg);
 
        if (msg && icon)
diff --git a/calendar/gui/dialogs/recurrence-page.c b/calendar/gui/dialogs/recurrence-page.c
index de6e339..35fafe4 100644
--- a/calendar/gui/dialogs/recurrence-page.c
+++ b/calendar/gui/dialogs/recurrence-page.c
@@ -2319,8 +2319,8 @@ create_exception_dialog (RecurrencePage *rpage,
        dialog = gtk_dialog_new_with_buttons (
                title, GTK_WINDOW (toplevel),
                GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT,
-               GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
+               _("_Cancel"), GTK_RESPONSE_REJECT,
+               _("_OK"), GTK_RESPONSE_ACCEPT,
                NULL);
 
        *date_edit = comp_editor_new_date_edit (TRUE, FALSE, TRUE);
diff --git a/calendar/gui/dialogs/recurrence-page.ui b/calendar/gui/dialogs/recurrence-page.ui
index 6f0d175..11afb67 100644
--- a/calendar/gui/dialogs/recurrence-page.ui
+++ b/calendar/gui/dialogs/recurrence-page.ui
@@ -415,8 +415,9 @@
                         <property name="visible">True</property>
                         <property name="can_default">True</property>
                         <property name="can_focus">True</property>
-                        <property name="label">gtk-add</property>
-                        <property name="use_stock">True</property>
+                        <property name="label" translatable="yes">_Add</property>
+                        <property name="use_stock">False</property>
+                        <property name="use_underline">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
                         <property name="focus_on_click">True</property>
                       </object>
@@ -428,65 +429,8 @@
                         <property name="can_focus">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
                         <property name="focus_on_click">True</property>
-                        <child>
-                          <object class="GtkAlignment" id="alignment1">
-                            <property name="visible">True</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xscale">0</property>
-                            <property name="yscale">0</property>
-                            <property name="top_padding">0</property>
-                            <property name="bottom_padding">0</property>
-                            <property name="left_padding">0</property>
-                            <property name="right_padding">0</property>
-                            <child>
-                              <object class="GtkHBox" id="hbox64">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">2</property>
-                                <child>
-                                  <object class="GtkImage" id="image1">
-                                    <property name="visible">True</property>
-                                    <property name="stock">gtk-preferences</property>
-                                    <property name="icon_size">4</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="label76">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">_Edit</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                              </object>
-                            </child>
-                          </object>
-                        </child>
+                        <property name="label" translatable="yes">_Edit</property>
+                        <property name="use_underline">True</property>
                       </object>
                     </child>
                     <child>
@@ -494,8 +438,9 @@
                         <property name="visible">True</property>
                         <property name="can_default">True</property>
                         <property name="can_focus">True</property>
-                        <property name="label">gtk-remove</property>
-                        <property name="use_stock">True</property>
+                        <property name="label" translatable="yes">_Remove</property>
+                        <property name="use_stock">False</property>
+                        <property name="use_underline">True</property>
                         <property name="relief">GTK_RELIEF_NORMAL</property>
                         <property name="focus_on_click">True</property>
                       </object>
diff --git a/calendar/gui/dialogs/task-page.c b/calendar/gui/dialogs/task-page.c
index 1acc93f..f4f76d6 100644
--- a/calendar/gui/dialogs/task-page.c
+++ b/calendar/gui/dialogs/task-page.c
@@ -104,7 +104,6 @@ struct _TaskPagePrivate {
        GtkWidget *remove;
        GtkWidget *edit;
        GtkWidget *invite;
-       GtkWidget *attendees_label;
 
        /* ListView stuff */
        ECalClient *client;
@@ -330,7 +329,7 @@ check_starts_in_the_past (TaskPage *tpage)
                gchar *tmp = g_strconcat (
                        "<b>", start_in_past ? _("Task's start date is in the past") : "",
                        start_in_past && due_in_past ? "\n" : "", due_in_past ? _("Task's due date is in the 
past") : "", "</b>", NULL);
-               task_page_set_info_string (tpage, GTK_STOCK_DIALOG_WARNING, tmp);
+               task_page_set_info_string (tpage, "dialog-warning", tmp);
                g_free (tmp);
        } else {
                task_page_set_info_string (tpage, NULL, NULL);
@@ -363,15 +362,15 @@ sensitize_widgets (TaskPage *tpage)
 
        if (read_only) {
                gchar *tmp = g_strconcat ("<b>", _("Task cannot be edited, because the selected task list is 
read only"), "</b>", NULL);
-               task_page_set_info_string (tpage, GTK_STOCK_DIALOG_INFO, tmp);
+               task_page_set_info_string (tpage, "dialog-information", tmp);
                g_free (tmp);
        } else if (!sens) {
                gchar *tmp = g_strconcat ("<b>", _("Task cannot be fully edited, because you are not the 
organizer"), "</b>", NULL);
-               task_page_set_info_string (tpage, GTK_STOCK_DIALOG_INFO, tmp);
+               task_page_set_info_string (tpage, "dialog-information", tmp);
                g_free (tmp);
        } else if ((flags & COMP_EDITOR_IS_ASSIGNED) != 0 && e_client_check_capability (E_CLIENT (client), 
CAL_STATIC_CAPABILITY_NO_TASK_ASSIGNMENT)) {
                gchar *tmp = g_strconcat ("<b>", _("Task cannot be edited, because the selected task list 
does not support assigned tasks"), "</b>", NULL);
-               task_page_set_info_string (tpage, GTK_STOCK_DIALOG_INFO, tmp);
+               task_page_set_info_string (tpage, "dialog-information", tmp);
                g_free (tmp);
                sens = FALSE;
                read_only = TRUE;
@@ -1695,7 +1694,7 @@ task_page_set_info_string (TaskPage *tpage,
 
        priv = tpage->priv;
 
-       gtk_image_set_from_stock (GTK_IMAGE (priv->info_icon), icon, GTK_ICON_SIZE_BUTTON);
+       gtk_image_set_from_icon_name (GTK_IMAGE (priv->info_icon), icon, GTK_ICON_SIZE_BUTTON);
        gtk_label_set_markup (GTK_LABEL (priv->info_string), msg);
 
        if (msg && icon)
@@ -1763,7 +1762,6 @@ get_widgets (TaskPage *tpage)
 
        priv->timezone = e_builder_get_widget (priv->builder, "timezone");
        priv->timezone_label = e_builder_get_widget (priv->builder, "timezone-label");
-       priv->attendees_label = e_builder_get_widget (priv->builder, "attendees-label");
        priv->description = e_builder_get_widget (priv->builder, "description");
        priv->categories_btn = e_builder_get_widget (priv->builder, "categories-button");
        priv->categories = e_builder_get_widget (priv->builder, "categories");
diff --git a/calendar/gui/dialogs/task-page.ui b/calendar/gui/dialogs/task-page.ui
index 8269f09..a97c9ce 100644
--- a/calendar/gui/dialogs/task-page.ui
+++ b/calendar/gui/dialogs/task-page.ui
@@ -354,12 +354,13 @@
                         <property name="layout_style">start</property>
                         <child>
                           <object class="GtkButton" id="add-attendee">
-                            <property name="label">gtk-add</property>
+                            <property name="label" translatable="yes">_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>
+                            <property name="use_stock">False</property>
+                            <property name="use_underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -369,12 +370,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="remove-attendee">
-                            <property name="label">gtk-remove</property>
+                            <property name="label" translatable="yes">_Remove</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>
+                            <property name="use_stock">False</property>
+                            <property name="use_underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -384,12 +386,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="edit-attendee">
-                            <property name="label">gtk-edit</property>
+                            <property name="label" translatable="yes">_Edit</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>
+                            <property name="use_stock">False</property>
+                            <property name="use_underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -425,46 +428,8 @@
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
-                        <child>
-                          <object class="GtkAlignment" id="alignment1">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xscale">0</property>
-                            <property name="yscale">0</property>
-                            <child>
-                              <object class="GtkHBox" id="hbox14">
-                                <property name="visible">True</property>
-                                <property name="can_focus">False</property>
-                                <property name="spacing">2</property>
-                                <child>
-                                  <object class="GtkImage" id="image1">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="stock">gtk-jump-to</property>
-                                  </object>
-                                  <packing>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                    <property name="position">0</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="attendees-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="label" translatable="yes">Atte_ndees...</property>
-                                    <property name="use_underline">True</property>
-                                  </object>
-                                  <packing>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                    <property name="position">1</property>
-                                  </packing>
-                                </child>
-                              </object>
-                            </child>
-                          </object>
-                        </child>
+                        <property name="label" translatable="yes">Atte_ndees...</property>
+                        <property name="use_underline">True</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
diff --git a/calendar/gui/e-meeting-time-sel.c b/calendar/gui/e-meeting-time-sel.c
index 53d6107..21eb97e 100644
--- a/calendar/gui/e-meeting-time-sel.c
+++ b/calendar/gui/e-meeting-time-sel.c
@@ -35,6 +35,8 @@
 #include <libebackend/libebackend.h>
 #include <libgnomecanvas/libgnomecanvas.h>
 
+#include <e-util/e-util.h>
+
 #include "e-meeting-utils.h"
 #include "e-meeting-list-view.h"
 #include "e-meeting-time-sel-item.h"
@@ -542,12 +544,7 @@ e_meeting_time_selector_construct (EMeetingTimeSelector *mts,
                0, 1, 3, 4, GTK_FILL, 0, 0, 0);
        gtk_widget_show (hbox);
 
-       mts->add_attendees_button =
-               gtk_button_new_with_mnemonic (_("Atte_ndees..."));
-       gtk_button_set_image (
-               GTK_BUTTON (mts->add_attendees_button),
-               gtk_image_new_from_stock (
-                       GTK_STOCK_JUMP_TO, GTK_ICON_SIZE_BUTTON));
+       mts->add_attendees_button = e_dialog_button_new_with_icon ("go-jump", _("Atte_ndees..."));
        gtk_box_pack_start (GTK_BOX (hbox), mts->add_attendees_button, TRUE, TRUE, 6);
        gtk_widget_show (mts->add_attendees_button);
        g_signal_connect (
diff --git a/composer/e-composer-actions.c b/composer/e-composer-actions.c
index 7c3c735..82315c6 100644
--- a/composer/e-composer-actions.c
+++ b/composer/e-composer-actions.c
@@ -201,8 +201,8 @@ action_save_as_cb (GtkAction *action,
        dialog = gtk_file_chooser_dialog_new (
                _("Save as..."), GTK_WINDOW (composer),
                GTK_FILE_CHOOSER_ACTION_SAVE,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_dialog_set_default_response (
@@ -271,7 +271,7 @@ static GtkActionEntry entries[] = {
          G_CALLBACK (action_attach_cb) },
 
        { "close",
-         GTK_STOCK_CLOSE,
+         "window-close",
          N_("_Close"),
          "<Control>w",
          N_("Close the current file"),
@@ -285,21 +285,21 @@ static GtkActionEntry entries[] = {
          G_CALLBACK (action_new_message_cb) },
 
        { "preferences",
-         GTK_STOCK_PREFERENCES,
-         NULL,
+         "preferences-system",
+         N_("_Preferences"),
          NULL,
          N_("Configure Evolution"),
          G_CALLBACK (action_preferences_cb) },
 
        { "save",
-         GTK_STOCK_SAVE,
+         "document-save",
          N_("_Save"),
          "<Shift><Control>s",
          N_("Save the current file"),
          G_CALLBACK (action_save_cb) },
 
        { "save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("Save _As..."),
          NULL,
          N_("Save the current file with a different name"),
@@ -325,21 +325,21 @@ static GtkActionEntry entries[] = {
 static GtkActionEntry async_entries[] = {
 
        { "print",
-         GTK_STOCK_PRINT,
+         "document-print",
          N_("_Print..."),
          "<Control>p",
          NULL,
          G_CALLBACK (action_print_cb) },
 
        { "print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
+         "document-print-preview",
          N_("Print Pre_view"),
          "<Shift><Control>p",
          NULL,
          G_CALLBACK (action_print_preview_cb) },
 
        { "save-draft",
-         GTK_STOCK_SAVE,
+         "document-save",
          N_("Save as _Draft"),
          "<Control>s",
          N_("Save as draft"),
diff --git a/designs/OOA/ooa.ui b/designs/OOA/ooa.ui
index 24c92cf..d318d80 100644
--- a/designs/OOA/ooa.ui
+++ b/designs/OOA/ooa.ui
@@ -23,7 +23,7 @@
             <child>
               <object class="GtkImage" id="image2">
                 <property name="visible">True</property>
-                <property name="stock">gtk-dialog-info</property>
+                <property name="icon-name">dialog-information</property>
                 <property name="icon_size">5</property>
                 <property name="xalign">0.5</property>
                 <property name="yalign">0.5</property>
@@ -260,7 +260,7 @@ mail to you while you are out of the office.&lt;/small&gt;</property>
             <child>
               <object class="GtkImage" id="image3">
                 <property name="visible">True</property>
-                <property name="stock">gtk-dialog-question</property>
+                <property name="icon-name">dialog-question</property>
                 <property name="icon_size">6</property>
                 <property name="xalign">0.5</property>
                 <property name="yalign">0.5</property>
@@ -323,58 +323,8 @@ Would you like to change your status to "In the Office"? </property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
-                <child>
-                  <object class="GtkAlignment" id="alignment2">
-                    <property name="visible">True</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xscale">0</property>
-                    <property name="yscale">0</property>
-                    <child>
-                      <object class="GtkHBox" id="hbox5">
-                        <property name="visible">True</property>
-                        <property name="homogeneous">False</property>
-                        <property name="spacing">2</property>
-                        <child>
-                          <object class="GtkImage" id="image6">
-                            <property name="visible">True</property>
-                            <property name="stock">gtk-no</property>
-                            <property name="icon_size">4</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="label9">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">No, Do not Change Status</property>
-                            <property name="use_underline">True</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                          </packing>
-                        </child>
-                      </object>
-                    </child>
-                  </object>
-                </child>
+                <property name="label" translatable="yes">No, Do not Change Status</property>
+                <property name="use_underline">True</property>
               </object>
             </child>
             <child>
@@ -383,58 +333,8 @@ Would you like to change your status to "In the Office"? </property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
-                <child>
-                  <object class="GtkAlignment" id="alignment1">
-                    <property name="visible">True</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xscale">0</property>
-                    <property name="yscale">0</property>
-                    <child>
-                      <object class="GtkHBox" id="hbox4">
-                        <property name="visible">True</property>
-                        <property name="homogeneous">False</property>
-                        <property name="spacing">2</property>
-                        <child>
-                          <object class="GtkImage" id="image5">
-                            <property name="visible">True</property>
-                            <property name="stock">gtk-yes</property>
-                            <property name="icon_size">4</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="label8">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">Yes, Change Status</property>
-                            <property name="use_underline">True</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                          </packing>
-                        </child>
-                      </object>
-                    </child>
-                  </object>
-                </child>
+                <property name="label" translatable="yes">Yes, Change Status</property>
+                <property name="use_underline">True</property>
               </object>
             </child>
           </object>
diff --git a/designs/read_receipts/read.ui b/designs/read_receipts/read.ui
index 25e39f5..b1e22ff 100644
--- a/designs/read_receipts/read.ui
+++ b/designs/read_receipts/read.ui
@@ -23,7 +23,7 @@
             <child>
               <object class="GtkImage" id="image3">
                 <property name="visible">True</property>
-                <property name="stock">gtk-dialog-info</property>
+                <property name="icon-name">dialog-information</property>
                 <property name="icon_size">5</property>
                 <property name="xalign">0.5</property>
                 <property name="yalign">0.5</property>
diff --git a/e-util/e-activity-bar.c b/e-util/e-activity-bar.c
index 4d7c272..3638435 100644
--- a/e-util/e-activity-bar.c
+++ b/e-util/e-activity-bar.c
@@ -19,8 +19,11 @@
 
 #include <config.h>
 
+#include <glib/gi18n-lib.h>
 #include <libedataserver/libedataserver.h>
 
+#include "e-dialog-widgets.h"
+
 #define E_ACTIVITY_BAR_GET_PRIVATE(obj) \
        (G_TYPE_INSTANCE_GET_PRIVATE \
        ((obj), E_TYPE_ACTIVITY_BAR, EActivityBarPrivate))
@@ -120,9 +123,9 @@ activity_bar_update (EActivityBar *bar)
                icon_name = COMPLETED_ICON_NAME;
 
        if (state == E_ACTIVITY_CANCELLED) {
-               gtk_image_set_from_stock (
+               gtk_image_set_from_icon_name (
                        GTK_IMAGE (bar->priv->image),
-                       GTK_STOCK_CANCEL, GTK_ICON_SIZE_BUTTON);
+                       "process-stop", GTK_ICON_SIZE_BUTTON);
                gtk_widget_show (bar->priv->image);
        } else if (icon_name != NULL) {
                gtk_image_set_from_icon_name (
@@ -293,7 +296,7 @@ e_activity_bar_init (EActivityBar *bar)
        gtk_widget_show (widget);
 
        /* This is only shown if the EActivity has a GCancellable. */
-       widget = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
+       widget = e_dialog_button_new_with_icon ("process-stop", _("_Cancel"));
        gtk_info_bar_add_action_widget (
                GTK_INFO_BAR (bar), widget, GTK_RESPONSE_CANCEL);
        bar->priv->cancel = widget;
diff --git a/e-util/e-activity-proxy.c b/e-util/e-activity-proxy.c
index 9f65958..bf8ab67 100644
--- a/e-util/e-activity-proxy.c
+++ b/e-util/e-activity-proxy.c
@@ -25,6 +25,8 @@
 
 #include <libedataserver/libedataserver.h>
 
+#include "e-dialog-widgets.h"
+
 #define E_ACTIVITY_PROXY_GET_PRIVATE(obj) \
        (G_TYPE_INSTANCE_GET_PRIVATE \
        ((obj), E_TYPE_ACTIVITY_PROXY, EActivityProxyPrivate))
@@ -125,9 +127,9 @@ activity_proxy_update (EActivityProxy *proxy)
                icon_name = COMPLETED_ICON_NAME;
 
        if (state == E_ACTIVITY_CANCELLED) {
-               gtk_image_set_from_stock (
+               gtk_image_set_from_icon_name (
                        GTK_IMAGE (proxy->priv->image),
-                       GTK_STOCK_CANCEL, GTK_ICON_SIZE_BUTTON);
+                       "process-stop", GTK_ICON_SIZE_BUTTON);
                gtk_widget_show (proxy->priv->image);
        } else if (icon_name != NULL) {
                gtk_image_set_from_icon_name (
@@ -300,10 +302,7 @@ e_activity_proxy_init (EActivityProxy *proxy)
        gtk_widget_show (widget);
 
        /* This is only shown if the EActivity has a GCancellable. */
-       widget = gtk_button_new ();
-       gtk_button_set_image (
-               GTK_BUTTON (widget), gtk_image_new_from_stock (
-               GTK_STOCK_CANCEL, GTK_ICON_SIZE_MENU));
+       widget = e_dialog_button_new_with_icon ("process-stop", NULL);
        gtk_button_set_relief (GTK_BUTTON (widget), GTK_RELIEF_NONE);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_set_tooltip_text (widget, _("Cancel"));
diff --git a/e-util/e-alert-bar.c b/e-util/e-alert-bar.c
index 2ed7dfe..233de93 100644
--- a/e-util/e-alert-bar.c
+++ b/e-util/e-alert-bar.c
@@ -20,6 +20,8 @@
 #include <config.h>
 #include <glib/gi18n-lib.h>
 
+#include "e-dialog-widgets.h"
+
 #define E_ALERT_BAR_GET_PRIVATE(obj) \
        (G_TYPE_INSTANCE_GET_PRIVATE \
        ((obj), E_TYPE_ALERT_BAR, EAlertBarPrivate))
@@ -65,7 +67,7 @@ alert_bar_show_alert (EAlertBar *alert_bar)
        GtkMessageType message_type;
        const gchar *primary_text;
        const gchar *secondary_text;
-       const gchar *stock_id;
+       const gchar *icon_name;
        gboolean have_primary_text;
        gboolean have_secondary_text;
        gboolean visible;
@@ -108,11 +110,7 @@ alert_bar_show_alert (EAlertBar *alert_bar)
        }
 
        /* Add a dismiss button. */
-       widget = gtk_button_new ();
-       gtk_button_set_image (
-               GTK_BUTTON (widget),
-               gtk_image_new_from_stock (
-               GTK_STOCK_CLOSE, GTK_ICON_SIZE_MENU));
+       widget = e_dialog_button_new_with_icon ("window-close", NULL);
        gtk_button_set_relief (
                GTK_BUTTON (widget), GTK_RELIEF_NONE);
        gtk_widget_set_tooltip_text (
@@ -166,9 +164,9 @@ alert_bar_show_alert (EAlertBar *alert_bar)
        gtk_widget_set_visible (widget, have_secondary_text);
        g_free (markup);
 
-       stock_id = e_alert_get_stock_id (alert);
+       icon_name = e_alert_get_icon_name (alert);
        image = GTK_IMAGE (alert_bar->priv->image);
-       gtk_image_set_from_stock (image, stock_id, ICON_SIZE);
+       gtk_image_set_from_icon_name (image, icon_name, ICON_SIZE);
 
        /* Avoid showing an image for one-line alerts,
         * which are usually questions or informational. */
diff --git a/e-util/e-alert.c b/e-util/e-alert.c
index 213a3e4..e98895b 100644
--- a/e-util/e-alert.c
+++ b/e-util/e-alert.c
@@ -74,7 +74,7 @@ static GHashTable *alert_table;
 /* ********************************************************************** */
 
 static EAlertButton default_ok_button = {
-       NULL, GTK_STOCK_OK, NULL, GTK_RESPONSE_OK
+       NULL, NULL, NULL, GTK_RESPONSE_OK
 };
 
 static struct _e_alert default_alerts[] = {
@@ -870,32 +870,32 @@ e_alert_set_secondary_text (EAlert *alert,
 }
 
 const gchar *
-e_alert_get_stock_id (EAlert *alert)
+e_alert_get_icon_name (EAlert *alert)
 {
-       const gchar *stock_id;
+       const gchar *icon_name;
 
        g_return_val_if_fail (E_IS_ALERT (alert), NULL);
 
        switch (e_alert_get_message_type (alert)) {
                case GTK_MESSAGE_INFO:
-                       stock_id = GTK_STOCK_DIALOG_INFO;
+                       icon_name = "dialog-information";
                        break;
                case GTK_MESSAGE_WARNING:
-                       stock_id = GTK_STOCK_DIALOG_WARNING;
+                       icon_name = "dialog-warning";
                        break;
                case GTK_MESSAGE_QUESTION:
-                       stock_id = GTK_STOCK_DIALOG_QUESTION;
+                       icon_name = "dialog-question";
                        break;
                case GTK_MESSAGE_ERROR:
-                       stock_id = GTK_STOCK_DIALOG_ERROR;
+                       icon_name = "dialog-error";
                        break;
                default:
-                       stock_id = GTK_STOCK_MISSING_IMAGE;
+                       icon_name = "image-missing";
                        g_warn_if_reached ();
                        break;
        }
 
-       return stock_id;
+       return icon_name;
 }
 
 void
@@ -929,13 +929,13 @@ GtkWidget *
 e_alert_create_image (EAlert *alert,
                       GtkIconSize size)
 {
-       const gchar *stock_id;
+       const gchar *icon_name;
 
        g_return_val_if_fail (E_IS_ALERT (alert), NULL);
 
-       stock_id = e_alert_get_stock_id (alert);
+       icon_name = e_alert_get_icon_name (alert);
 
-       return gtk_image_new_from_stock (stock_id, size);
+       return gtk_image_new_from_icon_name (icon_name, size);
 }
 
 void
diff --git a/e-util/e-alert.h b/e-util/e-alert.h
index 97fe45e..9d7cd3e 100644
--- a/e-util/e-alert.h
+++ b/e-util/e-alert.h
@@ -98,7 +98,7 @@ void          e_alert_set_primary_text        (EAlert *alert,
 const gchar *  e_alert_get_secondary_text      (EAlert *alert);
 void           e_alert_set_secondary_text      (EAlert *alert,
                                                 const gchar *secondary_text);
-const gchar *  e_alert_get_stock_id            (EAlert *alert);
+const gchar *  e_alert_get_icon_name           (EAlert *alert);
 void           e_alert_add_action              (EAlert *alert,
                                                 GtkAction *action,
                                                 gint response_id);
diff --git a/e-util/e-attachment-button.c b/e-util/e-attachment-button.c
index 74d6dc4..a04b85d 100644
--- a/e-util/e-attachment-button.c
+++ b/e-util/e-attachment-button.c
@@ -211,25 +211,28 @@ exit:
 static void
 attachment_button_update_pixbufs (EAttachmentButton *button)
 {
+       GtkIconTheme *icon_theme;
        GtkCellLayout *cell_layout;
        GtkCellRenderer *renderer;
        GdkPixbuf *pixbuf_expander_open;
        GdkPixbuf *pixbuf_expander_closed;
        GList *list;
 
+       icon_theme = gtk_icon_theme_get_default ();
+
        /* Grab the first cell renderer. */
        cell_layout = GTK_CELL_LAYOUT (button->priv->cell_view);
        list = gtk_cell_layout_get_cells (cell_layout);
        renderer = GTK_CELL_RENDERER (list->data);
        g_list_free (list);
 
-       pixbuf_expander_open = gtk_widget_render_icon (
-               GTK_WIDGET (button), GTK_STOCK_GO_DOWN,
-               GTK_ICON_SIZE_BUTTON, NULL);
+       pixbuf_expander_open = gtk_icon_theme_load_icon (
+               icon_theme, "go-down",
+               GTK_ICON_SIZE_BUTTON, 0, NULL);
 
-       pixbuf_expander_closed = gtk_widget_render_icon (
-               GTK_WIDGET (button), GTK_STOCK_GO_FORWARD,
-               GTK_ICON_SIZE_BUTTON, NULL);
+       pixbuf_expander_closed = gtk_icon_theme_load_icon (
+               icon_theme, "go-next",
+               GTK_ICON_SIZE_BUTTON, 0, NULL);
 
        g_object_set (
                renderer,
diff --git a/e-util/e-attachment-dialog.c b/e-util/e-attachment-dialog.c
index 8eb8503..0f71bc9 100644
--- a/e-util/e-attachment-dialog.c
+++ b/e-util/e-attachment-dialog.c
@@ -308,9 +308,9 @@ e_attachment_dialog_init (EAttachmentDialog *dialog)
        dialog->priv = E_ATTACHMENT_DIALOG_GET_PRIVATE (dialog);
 
        gtk_dialog_add_button (
-               GTK_DIALOG (dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+               GTK_DIALOG (dialog), _("_Cancel"), GTK_RESPONSE_CANCEL);
        gtk_dialog_add_button (
-               GTK_DIALOG (dialog), GTK_STOCK_OK, GTK_RESPONSE_OK);
+               GTK_DIALOG (dialog), _("_OK"), GTK_RESPONSE_OK);
        gtk_window_set_icon_name (
                GTK_WINDOW (dialog), "mail-attachment");
        gtk_window_set_title (
diff --git a/e-util/e-attachment-store.c b/e-util/e-attachment-store.c
index 58ccade..e867327 100644
--- a/e-util/e-attachment-store.c
+++ b/e-util/e-attachment-store.c
@@ -461,7 +461,7 @@ e_attachment_store_run_load_dialog (EAttachmentStore *store,
        dialog = gtk_file_chooser_dialog_new (
                _("Add Attachment"), parent,
                GTK_FILE_CHOOSER_ACTION_OPEN,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
                _("A_ttach"), GTK_RESPONSE_OK, NULL);
 
        file_chooser = GTK_FILE_CHOOSER (dialog);
@@ -542,8 +542,8 @@ e_attachment_store_run_save_dialog (EAttachmentStore *store,
 
        dialog = gtk_file_chooser_dialog_new (
                title, parent, action,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save"), GTK_RESPONSE_OK, NULL);
 
        file_chooser = GTK_FILE_CHOOSER (dialog);
        gtk_file_chooser_set_local_only (file_chooser, FALSE);
diff --git a/e-util/e-attachment-view.c b/e-util/e-attachment-view.c
index d548c28..dbfe804 100644
--- a/e-util/e-attachment-view.c
+++ b/e-util/e-attachment-view.c
@@ -366,8 +366,8 @@ action_show_all_cb (GtkAction *action,
 static GtkActionEntry standard_entries[] = {
 
        { "cancel",
-         GTK_STOCK_CANCEL,
-         NULL,
+         "process-stop",
+         N_("_Cancel"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_cancel_cb) },
@@ -380,15 +380,15 @@ static GtkActionEntry standard_entries[] = {
          G_CALLBACK (action_open_with_cb) },
 
        { "save-all",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("S_ave All"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_save_all_cb) },
 
        { "save-as",
-         GTK_STOCK_SAVE_AS,
-         NULL,
+         "document-save-as",
+         N_("Sa_ve As"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_save_as_cb) },
@@ -396,8 +396,8 @@ static GtkActionEntry standard_entries[] = {
        /* Alternate "save-all" label, for when
         * the attachment store has one row. */
        { "save-one",
-         GTK_STOCK_SAVE_AS,
-         NULL,
+         "document-save-as",
+         N_("Save _As"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_save_all_cb) },
@@ -406,22 +406,22 @@ static GtkActionEntry standard_entries[] = {
 static GtkActionEntry editable_entries[] = {
 
        { "add",
-         GTK_STOCK_ADD,
+         "list-add",
          N_("A_dd Attachment..."),
          NULL,
          N_("Attach a file"),
          G_CALLBACK (action_add_cb) },
 
        { "properties",
-         GTK_STOCK_PROPERTIES,
-         NULL,
+         "document-properties",
+         N_("_Properties"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_properties_cb) },
 
        { "remove",
-         GTK_STOCK_REMOVE,
-         NULL,
+         "list-remove",
+         N_("_Remove"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_remove_cb) }
@@ -1559,11 +1559,7 @@ e_attachment_view_drag_begin (EAttachmentView *view,
        priv->selected = e_attachment_view_get_selected_attachments (view);
        n_selected = g_list_length (priv->selected);
 
-       if (n_selected > 1)
-               gtk_drag_set_icon_stock (
-                       context, GTK_STOCK_DND_MULTIPLE, 0, 0);
-
-       else if (n_selected == 1) {
+       if (n_selected == 1) {
                EAttachment *attachment;
                GtkIconTheme *icon_theme;
                GtkIconInfo *icon_info;
diff --git a/e-util/e-attachment.c b/e-util/e-attachment.c
index 8230eab..b7c5977 100644
--- a/e-util/e-attachment.c
+++ b/e-util/e-attachment.c
@@ -42,7 +42,7 @@
 #define DEFAULT_ICON_NAME      "mail-attachment"
 
 /* Emblems */
-#define EMBLEM_CANCELLED       "gtk-cancel"
+#define EMBLEM_CANCELLED       "process-stop"
 #define EMBLEM_LOADING         "emblem-downloads"
 #define EMBLEM_SAVING          "document-save"
 #define EMBLEM_ENCRYPT_WEAK    "security-low"
diff --git a/e-util/e-categories-dialog.c b/e-util/e-categories-dialog.c
index ea1387b..dcd2d58 100644
--- a/e-util/e-categories-dialog.c
+++ b/e-util/e-categories-dialog.c
@@ -79,8 +79,8 @@ e_categories_dialog_init (ECategoriesDialog *dialog)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
        gtk_dialog_set_response_sensitive (
                GTK_DIALOG (dialog), GTK_RESPONSE_OK, FALSE);
diff --git a/e-util/e-categories-editor.c b/e-util/e-categories-editor.c
index 5c38331..f53c1f1 100644
--- a/e-util/e-categories-editor.c
+++ b/e-util/e-categories-editor.c
@@ -27,6 +27,7 @@
 #include "e-categories-selector.h"
 #include "e-category-completion.h"
 #include "e-category-editor.h"
+#include "e-dialog-widgets.h"
 
 #define E_CATEGORIES_EDITOR_GET_PRIVATE(obj) \
        (G_TYPE_INSTANCE_GET_PRIVATE \
@@ -270,15 +271,15 @@ e_categories_editor_init (ECategoriesEditor *editor)
        gtk_grid_attach (grid, hbuttonbox1, 0, 4, 1, 1);
        gtk_box_set_spacing (GTK_BOX (hbuttonbox1), 6);
 
-       button_new = gtk_button_new_from_stock (GTK_STOCK_NEW);
+       button_new = e_dialog_button_new_with_icon ("document-new", _("_New"));
        gtk_container_add (GTK_CONTAINER (hbuttonbox1), button_new);
        gtk_widget_set_can_default (button_new, TRUE);
 
-       button_edit = gtk_button_new_from_stock (GTK_STOCK_EDIT);
+       button_edit = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_container_add (GTK_CONTAINER (hbuttonbox1), button_edit);
        gtk_widget_set_can_default (button_edit, TRUE);
 
-       button_delete = gtk_button_new_from_stock (GTK_STOCK_DELETE);
+       button_delete = e_dialog_button_new_with_icon ("edit-delete", _("_Delete"));
        gtk_container_add (GTK_CONTAINER (hbuttonbox1), button_delete);
        gtk_widget_set_can_default (button_delete, TRUE);
 
diff --git a/e-util/e-category-editor.c b/e-util/e-category-editor.c
index 828e0b7..7d4223d 100644
--- a/e-util/e-category-editor.c
+++ b/e-util/e-category-editor.c
@@ -25,6 +25,7 @@
 #include <libedataserver/libedataserver.h>
 
 #include "e-category-editor.h"
+#include "e-dialog-widgets.h"
 
 #define E_CATEGORY_EDITOR_GET_PRIVATE(obj) \
        (G_TYPE_INSTANCE_GET_PRIVATE \
@@ -134,19 +135,15 @@ e_category_editor_init (ECategoryEditor *editor)
        chooser_dialog = gtk_file_chooser_dialog_new (
                _("Category Icon"),
                NULL, GTK_FILE_CHOOSER_ACTION_OPEN,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL, NULL);
 
-       no_image_button = gtk_button_new_with_mnemonic (_("_No Image"));
-       gtk_button_set_image (
-               GTK_BUTTON (no_image_button),
-               gtk_image_new_from_stock (
-               GTK_STOCK_CLOSE, GTK_ICON_SIZE_BUTTON));
+       no_image_button = e_dialog_button_new_with_icon ("window-close", _("_No Image"));
        gtk_dialog_add_action_widget (
                GTK_DIALOG (chooser_dialog),
                no_image_button, GTK_RESPONSE_NO);
        gtk_dialog_add_button (
                GTK_DIALOG (chooser_dialog),
-               GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT);
+               _("_Open"), GTK_RESPONSE_ACCEPT);
        gtk_file_chooser_set_local_only (
                GTK_FILE_CHOOSER (chooser_dialog), TRUE);
        gtk_widget_show (no_image_button);
@@ -208,8 +205,8 @@ e_category_editor_init (ECategoryEditor *editor)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (editor),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
        gtk_dialog_set_default_response (GTK_DIALOG (editor), GTK_RESPONSE_OK);
        gtk_window_set_title (GTK_WINDOW (editor), _("Category Properties"));
        gtk_window_set_type_hint (
diff --git a/e-util/e-charset-combo-box.c b/e-util/e-charset-combo-box.c
index c97cbe5..ececac3 100644
--- a/e-util/e-charset-combo-box.c
+++ b/e-util/e-charset-combo-box.c
@@ -98,8 +98,8 @@ charset_combo_box_run_dialog (ECharsetComboBox *combo_box)
        widget = gtk_dialog_new_with_buttons (
                _("Character Encoding"), parent,
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        /* Load the broken border width defaults so we can override them. */
        gtk_widget_ensure_style (widget);
diff --git a/e-util/e-dialog-widgets.c b/e-util/e-dialog-widgets.c
index 5657c21..1a64b4b 100644
--- a/e-util/e-dialog-widgets.c
+++ b/e-util/e-dialog-widgets.c
@@ -132,3 +132,38 @@ e_dialog_combo_box_get (GtkWidget *widget,
 
        return i;
 }
+
+/**
+ * e_dialog_button_new_with_icon:
+ * @icon_name: Icon's name to use; can be %NULL
+ * @label: Button label to set, with mnemonics
+ *
+ * Creates a new #GtkButton with preset @label and image set
+ * to @icon_name.
+ *
+ * Returns: (transfer-full): A new #GtkButton
+ *
+ * Since: 3.12
+ **/
+GtkWidget *
+e_dialog_button_new_with_icon (const gchar *icon_name,
+                              const gchar *label)
+{
+       GtkIconSize icon_size = GTK_ICON_SIZE_BUTTON;
+       GtkWidget *button;
+
+       if (label && *label) {
+               button = gtk_button_new_with_mnemonic (label);
+       } else {
+               button = gtk_button_new ();
+               icon_size = GTK_ICON_SIZE_MENU;
+       }
+
+       if (icon_name)
+               gtk_button_set_image (GTK_BUTTON (button),
+                       gtk_image_new_from_icon_name (icon_name, icon_size));
+
+       gtk_widget_show (button);
+
+       return button;
+}
diff --git a/e-util/e-dialog-widgets.h b/e-util/e-dialog-widgets.h
index 6899d43..f2f9ef3 100644
--- a/e-util/e-dialog-widgets.h
+++ b/e-util/e-dialog-widgets.h
@@ -33,4 +33,7 @@
 void e_dialog_combo_box_set (GtkWidget *widget, gint value, const gint *value_map);
 gint e_dialog_combo_box_get (GtkWidget *widget, const gint *value_map);
 
+GtkWidget *    e_dialog_button_new_with_icon   (const gchar *icon_name,
+                                                const gchar *label);
+
 #endif
diff --git a/e-util/e-filter-datespec.c b/e-util/e-filter-datespec.c
index cde0c38..71a3972 100644
--- a/e-util/e-filter-datespec.c
+++ b/e-util/e-filter-datespec.c
@@ -288,8 +288,8 @@ button_clicked (GtkButton *button,
                _("Select a time to compare against"));
        gtk_dialog_add_buttons (
                dialog,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        p->notebook_type = e_builder_get_widget (builder, "notebook_type");
diff --git a/e-util/e-filter-rule.c b/e-util/e-filter-rule.c
index d339efd..721ed74 100644
--- a/e-util/e-filter-rule.c
+++ b/e-util/e-filter-rule.c
@@ -30,6 +30,7 @@
 #include <glib/gi18n.h>
 
 #include "e-alert-dialog.h"
+#include "e-dialog-widgets.h"
 #include "e-filter-rule.h"
 #include "e-rule-context.h"
 
@@ -220,7 +221,7 @@ attach_rule (GtkWidget *rule,
                GTK_TABLE (data->parts), rule, 0, 1, row, row + 1,
                GTK_EXPAND | GTK_FILL, 0, 0, 0);
 
-       remove = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+       remove = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        g_object_set_data ((GObject *) remove, "rule", rule);
        g_signal_connect (
                remove, "clicked",
@@ -925,10 +926,7 @@ filter_rule_get_widget (EFilterRule *rule,
        hgrid = GTK_GRID (gtk_grid_new ());
        gtk_grid_set_column_spacing (hgrid, 3);
 
-       add = gtk_button_new_with_mnemonic (_("A_dd Condition"));
-       gtk_button_set_image (
-               GTK_BUTTON (add), gtk_image_new_from_stock (
-               GTK_STOCK_ADD, GTK_ICON_SIZE_BUTTON));
+       add = e_dialog_button_new_with_icon ("list-add", _("A_dd Condition"));
        g_signal_connect (
                add, "clicked",
                G_CALLBACK (more_parts), data);
diff --git a/e-util/e-focus-tracker.c b/e-util/e-focus-tracker.c
index 36d2421..0bc6f62 100644
--- a/e-util/e-focus-tracker.c
+++ b/e-util/e-focus-tracker.c
@@ -725,27 +725,27 @@ e_focus_tracker_init (EFocusTracker *focus_tracker)
 
        action = gtk_action_new (
                "cut-clipboard", NULL,
-               _("Cut the selection"), GTK_STOCK_CUT);
+               _("Cut the selection"), "edit-cut");
        focus_tracker->priv->cut_clipboard = action;
 
        action = gtk_action_new (
                "copy-clipboard", NULL,
-               _("Copy the selection"), GTK_STOCK_COPY);
+               _("Copy the selection"), "edit-copy");
        focus_tracker->priv->copy_clipboard = action;
 
        action = gtk_action_new (
                "paste-clipboard", NULL,
-               _("Paste the clipboard"), GTK_STOCK_PASTE);
+               _("Paste the clipboard"), "edit-paste");
        focus_tracker->priv->paste_clipboard = action;
 
        action = gtk_action_new (
                "delete-selection", NULL,
-               _("Delete the selection"), GTK_STOCK_DELETE);
+               _("Delete the selection"), "edit-delete");
        focus_tracker->priv->delete_selection = action;
 
        action = gtk_action_new (
                "select-all", NULL,
-               _("Select all text"), GTK_STOCK_SELECT_ALL);
+               _("Select all text"), "edit-select-all");
        focus_tracker->priv->select_all = action;
 }
 
diff --git a/e-util/e-icon-factory.c b/e-util/e-icon-factory.c
index dda9437..43c1239 100644
--- a/e-util/e-icon-factory.c
+++ b/e-util/e-icon-factory.c
@@ -112,7 +112,7 @@ e_icon_factory_get_icon (const gchar *icon_name,
 
                /* Fallback to missing image */
                pixbuf = gtk_icon_theme_load_icon (
-                       icon_theme, GTK_STOCK_MISSING_IMAGE,
+                       icon_theme, "image-missing",
                        height, 0, &error);
 
                if (error != NULL) {
diff --git a/e-util/e-import-assistant.c b/e-util/e-import-assistant.c
index d2b91e2..afba502 100644
--- a/e-util/e-import-assistant.c
+++ b/e-util/e-import-assistant.c
@@ -33,6 +33,7 @@
 #include <gdk/gdkkeysyms.h>
 #include <libebackend/libebackend.h>
 
+#include "e-dialog-widgets.h"
 #include "e-import.h"
 #include "e-util-private.h"
 
@@ -771,11 +772,7 @@ prepare_progress_page (GtkAssistant *assistant,
        gtk_assistant_commit (assistant);
 
        /* Install a custom "Cancel Import" button. */
-       cancel_button = gtk_button_new_with_mnemonic (_("_Cancel Import"));
-       gtk_button_set_image (
-               GTK_BUTTON (cancel_button),
-               gtk_image_new_from_stock (
-               GTK_STOCK_CANCEL, GTK_ICON_SIZE_BUTTON));
+       cancel_button = e_dialog_button_new_with_icon ("process-stop", _("_Cancel Import"));
        g_signal_connect_swapped (
                cancel_button, "clicked",
                G_CALLBACK (import_cancelled), assistant);
diff --git a/e-util/e-mail-signature-editor.c b/e-util/e-mail-signature-editor.c
index 697ba10..bb3e1de 100644
--- a/e-util/e-mail-signature-editor.c
+++ b/e-util/e-mail-signature-editor.c
@@ -303,14 +303,14 @@ action_save_and_close_cb (GtkAction *action,
 static GtkActionEntry entries[] = {
 
        { "close",
-         GTK_STOCK_CLOSE,
+         "window-close",
          N_("_Close"),
          "<Control>w",
          N_("Close"),
          G_CALLBACK (action_close_cb) },
 
        { "save-and-close",
-         GTK_STOCK_SAVE,
+         "document-save",
          N_("_Save and Close"),
          "<Control>Return",
          N_("Save and Close"),
diff --git a/e-util/e-mail-signature-manager.c b/e-util/e-mail-signature-manager.c
index f3a9549..7f75cb7 100644
--- a/e-util/e-mail-signature-manager.c
+++ b/e-util/e-mail-signature-manager.c
@@ -23,6 +23,7 @@
 
 #include <libedataserver/libedataserver.h>
 
+#include "e-dialog-widgets.h"
 #include "e-mail-signature-preview.h"
 #include "e-mail-signature-tree-view.h"
 #include "e-mail-signature-script-dialog.h"
@@ -323,7 +324,7 @@ mail_signature_manager_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_ADD);
+       widget = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->add_button = widget;  /* not referenced */
        gtk_widget_show (widget);
@@ -333,10 +334,7 @@ mail_signature_manager_constructed (GObject *object)
                G_CALLBACK (e_mail_signature_manager_add_signature),
                manager);
 
-       widget = gtk_button_new_with_mnemonic (_("Add _Script"));
-       gtk_button_set_image (
-               GTK_BUTTON (widget), gtk_image_new_from_stock (
-               GTK_STOCK_EXECUTE, GTK_ICON_SIZE_BUTTON));
+       widget = e_dialog_button_new_with_icon ("system-run", _("Add _Script"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->add_script_button = widget;  /* not referenced */
        gtk_widget_show (widget);
@@ -356,7 +354,7 @@ mail_signature_manager_constructed (GObject *object)
                G_CALLBACK (e_mail_signature_manager_add_signature_script),
                manager);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_EDIT);
+       widget = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->edit_button = widget;  /* not referenced */
        gtk_widget_show (widget);
@@ -366,7 +364,7 @@ mail_signature_manager_constructed (GObject *object)
                G_CALLBACK (e_mail_signature_manager_edit_signature),
                manager);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+       widget = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->remove_button = widget;  /* not referenced */
        gtk_widget_show (widget);
diff --git a/e-util/e-mail-signature-script-dialog.c b/e-util/e-mail-signature-script-dialog.c
index 2f419d6..0d239e0 100644
--- a/e-util/e-mail-signature-script-dialog.c
+++ b/e-util/e-mail-signature-script-dialog.c
@@ -363,11 +363,11 @@ mail_signature_script_dialog_constructed (GObject *object)
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL);
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_SAVE, GTK_RESPONSE_OK);
+               _("_Save"), GTK_RESPONSE_OK);
 
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
 
@@ -383,8 +383,8 @@ mail_signature_script_dialog_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_image_new_from_stock (
-               GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG);
+       widget = gtk_image_new_from_icon_name (
+               "dialog-information", GTK_ICON_SIZE_DIALOG);
        gtk_table_attach (
                GTK_TABLE (container), widget,
                0, 1, 0, 1, 0, 0, 0, 0);
@@ -466,8 +466,8 @@ mail_signature_script_dialog_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_image_new_from_stock (
-               GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_MENU);
+       widget = gtk_image_new_from_icon_name (
+               "dialog-warning", GTK_ICON_SIZE_MENU);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_show (widget);
 
diff --git a/e-util/e-name-selector-dialog.c b/e-util/e-name-selector-dialog.c
index 9211e19..e045a06 100644
--- a/e-util/e-name-selector-dialog.c
+++ b/e-util/e-name-selector-dialog.c
@@ -548,7 +548,7 @@ name_selector_dialog_constructed (GObject *object)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (object),
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE,
+               _("_Close"), GTK_RESPONSE_CLOSE,
                NULL);
 
        /* Try to figure out a sane default size for the dialog. We used to hard
@@ -900,7 +900,7 @@ setup_section_button (ENameSelectorDialog *name_selector_dialog,
        label = gtk_label_new_with_mnemonic (label_text);
        gtk_widget_show (label);
 
-       image = gtk_image_new_from_stock (icon_name, GTK_ICON_SIZE_BUTTON);
+       image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_BUTTON);
        gtk_widget_show (image);
 
        if (icon_before_label) {
@@ -992,11 +992,11 @@ add_section (ENameSelectorDialog *name_selector_dialog,
 
        /* "Add" button */
        gtk_container_add (GTK_CONTAINER (vgrid), GTK_WIDGET (section.transfer_button));
-       setup_section_button (name_selector_dialog, section.transfer_button, 0.7, _("_Add"), 
"gtk-go-forward", FALSE);
+       setup_section_button (name_selector_dialog, section.transfer_button, 0.7, _("_Add"), "go-next", 
FALSE);
 
        /* "Remove" button */
        gtk_container_add (GTK_CONTAINER (vgrid), GTK_WIDGET (section.remove_button));
-       setup_section_button (name_selector_dialog, section.remove_button, 0.5, _("_Remove"), "gtk-go-back", 
TRUE);
+       setup_section_button (name_selector_dialog, section.remove_button, 0.5, _("_Remove"), "go-previous", 
TRUE);
        gtk_widget_set_sensitive (GTK_WIDGET (section.remove_button), FALSE);
 
        /* hgrid for label and scrolled window. This is a separate hgrid, instead
diff --git a/e-util/e-passwords.c b/e-util/e-passwords.c
index c53914e..3ad39d8 100644
--- a/e-util/e-passwords.c
+++ b/e-util/e-passwords.c
@@ -465,8 +465,8 @@ ep_ask_password (EPassMsg *msg)
 
        widget = gtk_dialog_new_with_buttons (
                msg->title, msg->parent, 0,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
        gtk_dialog_set_default_response (
                GTK_DIALOG (widget), GTK_RESPONSE_OK);
diff --git a/e-util/e-preferences-window.c b/e-util/e-preferences-window.c
index f626be9..d15b208 100644
--- a/e-util/e-preferences-window.c
+++ b/e-util/e-preferences-window.c
@@ -27,6 +27,7 @@
 #include <glib/gi18n.h>
 #include <gdk/gdkkeysyms.h>
 
+#include "e-dialog-widgets.h"
 #include "e-misc-utils.h"
 
 #define SWITCH_PAGE_INTERVAL 250
@@ -375,7 +376,7 @@ e_preferences_window_init (EPreferencesWindow *window)
 
        container = widget;
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_HELP);
+       widget = e_dialog_button_new_with_icon ("help-browser", _("_Help"));
        g_signal_connect_swapped (
                widget, "clicked",
                G_CALLBACK (preferences_window_help_clicked_cb), window);
@@ -384,7 +385,7 @@ e_preferences_window_init (EPreferencesWindow *window)
                GTK_BUTTON_BOX (container), widget, TRUE);
        gtk_widget_show (widget);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
+       widget = e_dialog_button_new_with_icon ("window-close", _("_Close"));
        g_signal_connect_swapped (
                widget, "clicked",
                G_CALLBACK (gtk_widget_hide), window);
diff --git a/e-util/e-rule-context.c b/e-util/e-rule-context.c
index ac999ee..668bea2 100644
--- a/e-util/e-rule-context.c
+++ b/e-util/e-rule-context.c
@@ -812,8 +812,8 @@ e_rule_context_add_rule_gui (ERuleContext *context,
        dialog =(GtkDialog *) gtk_dialog_new ();
        gtk_dialog_add_buttons (
                dialog,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_window_set_title ((GtkWindow *) dialog, title);
diff --git a/e-util/e-rule-editor.c b/e-util/e-rule-editor.c
index dca7b1d..c99efa1 100644
--- a/e-util/e-rule-editor.c
+++ b/e-util/e-rule-editor.c
@@ -177,8 +177,8 @@ rule_add (GtkWidget *widget,
        editor->dialog = gtk_dialog_new ();
        gtk_dialog_add_buttons (
                GTK_DIALOG (editor->dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_window_set_title ((GtkWindow *) editor->dialog, _("Add Rule"));
@@ -279,8 +279,8 @@ rule_edit (GtkWidget *widget,
        editor->dialog = gtk_dialog_new ();
        gtk_dialog_add_buttons (
                (GtkDialog *) editor->dialog,
-                               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-                               GTK_STOCK_OK, GTK_RESPONSE_OK,
+                               _("_Cancel"), GTK_RESPONSE_CANCEL,
+                               _("_OK"), GTK_RESPONSE_OK,
                                NULL);
 
        gtk_window_set_title ((GtkWindow *) editor->dialog, _("Edit Rule"));
@@ -773,7 +773,7 @@ e_rule_editor_construct (ERuleEditor *editor,
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (editor),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 }
diff --git a/e-util/e-search-bar.c b/e-util/e-search-bar.c
index 1dd7506..13b4ee6 100644
--- a/e-util/e-search-bar.c
+++ b/e-util/e-search-bar.c
@@ -27,6 +27,8 @@
 #include <glib/gi18n.h>
 #include <gdk/gdkkeysyms.h>
 
+#include "e-dialog-widgets.h"
+
 #define E_SEARCH_BAR_GET_PRIVATE(obj) \
        (G_TYPE_INSTANCE_GET_PRIVATE \
        ((obj), E_TYPE_SEARCH_BAR, ESearchBarPrivate))
@@ -558,8 +560,8 @@ e_search_bar_init (ESearchBar *search_bar)
 
        widget = gtk_button_new ();
        gtk_button_set_image (
-               GTK_BUTTON (widget), gtk_image_new_from_stock (
-               GTK_STOCK_CLOSE, GTK_ICON_SIZE_MENU));
+               GTK_BUTTON (widget), gtk_image_new_from_icon_name (
+               "window-close", GTK_ICON_SIZE_MENU));
        gtk_button_set_relief (GTK_BUTTON (widget), GTK_RELIEF_NONE);
        gtk_widget_set_tooltip_text (widget, _("Close the find bar"));
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
@@ -576,9 +578,9 @@ e_search_bar_init (ESearchBar *search_bar)
        label = widget;
 
        widget = gtk_entry_new ();
-       gtk_entry_set_icon_from_stock (
+       gtk_entry_set_icon_from_icon_name (
                GTK_ENTRY (widget), GTK_ENTRY_ICON_SECONDARY,
-               GTK_STOCK_CLEAR);
+               "edit-clear");
        gtk_entry_set_icon_tooltip_text (
                GTK_ENTRY (widget), GTK_ENTRY_ICON_SECONDARY,
                _("Clear the search"));
@@ -605,10 +607,7 @@ e_search_bar_init (ESearchBar *search_bar)
                widget, "icon-release",
                G_CALLBACK (search_bar_icon_release_cb), search_bar);
 
-       widget = gtk_button_new_with_mnemonic (_("_Previous"));
-       gtk_button_set_image (
-               GTK_BUTTON (widget), gtk_image_new_from_stock (
-               GTK_STOCK_GO_BACK, GTK_ICON_SIZE_MENU));
+       widget = e_dialog_button_new_with_icon ("go-previous", _("_Previous"));
        gtk_button_set_relief (GTK_BUTTON (widget), GTK_RELIEF_NONE);
        gtk_widget_set_tooltip_text (
                widget, _("Find the previous occurrence of the phrase"));
@@ -620,10 +619,7 @@ e_search_bar_init (ESearchBar *search_bar)
                widget, "clicked",
                G_CALLBACK (search_bar_find_previous_cb), search_bar);
 
-       widget = gtk_button_new_with_mnemonic (_("_Next"));
-       gtk_button_set_image (
-               GTK_BUTTON (widget), gtk_image_new_from_stock (
-               GTK_STOCK_GO_FORWARD, GTK_ICON_SIZE_MENU));
+       widget = e_dialog_button_new_with_icon ("go-next", _("_Next"));
        gtk_button_set_relief (GTK_BUTTON (widget), GTK_RELIEF_NONE);
        gtk_widget_set_tooltip_text (
                widget, _("Find the next occurrence of the phrase"));
diff --git a/e-util/e-send-options.ui b/e-util/e-send-options.ui
index 681e6e0..13459e2 100644
--- a/e-util/e-send-options.ui
+++ b/e-util/e-send-options.ui
@@ -888,12 +888,13 @@
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="helpbutton1">
-                <property name="label">gtk-help</property>
+                <property name="label" translatable="yes">_Help</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>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -903,12 +904,13 @@
             </child>
             <child>
               <object class="GtkButton" id="cancelbutton1">
-                <property name="label">gtk-cancel</property>
+                <property name="label" translatable="yes">_Cancel</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>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -918,12 +920,13 @@
             </child>
             <child>
               <object class="GtkButton" id="okbutton1">
-                <property name="label">gtk-ok</property>
+                <property name="label" translatable="yes">_OK</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>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
diff --git a/e-util/e-source-config-dialog.c b/e-util/e-source-config-dialog.c
index 55dd1a1..5c84bda 100644
--- a/e-util/e-source-config-dialog.c
+++ b/e-util/e-source-config-dialog.c
@@ -15,6 +15,12 @@
  *
  */
 
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <glib/gi18n-lib.h>
+
 #include "e-source-config-dialog.h"
 
 #include "e-alert-bar.h"
@@ -366,8 +372,8 @@ e_source_config_dialog_init (ESourceConfigDialog *dialog)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_dialog_set_default_response (
diff --git a/e-util/e-source-selector-dialog.c b/e-util/e-source-selector-dialog.c
index 8136fcf..12160a2 100644
--- a/e-util/e-source-selector-dialog.c
+++ b/e-util/e-source-selector-dialog.c
@@ -345,8 +345,8 @@ e_source_selector_dialog_init (ESourceSelectorDialog *dialog)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
        gtk_dialog_set_default_response (
                GTK_DIALOG (dialog), GTK_RESPONSE_OK);
        gtk_dialog_set_response_sensitive (
diff --git a/e-util/e-spell-entry.c b/e-util/e-spell-entry.c
index f426ead..cea4039 100644
--- a/e-util/e-spell-entry.c
+++ b/e-util/e-spell-entry.c
@@ -481,7 +481,7 @@ build_spelling_menu (ESpellEntry *entry,
 
        gtk_image_menu_item_set_image (
                GTK_IMAGE_MENU_ITEM (mi),
-               gtk_image_new_from_stock (GTK_STOCK_ADD, GTK_ICON_SIZE_MENU));
+               gtk_image_new_from_icon_name ("list-add", GTK_ICON_SIZE_MENU));
 
        if (entry->priv->checkers->next == NULL) {
                checker = entry->priv->checkers->data;
@@ -529,7 +529,7 @@ build_spelling_menu (ESpellEntry *entry,
        mi = gtk_image_menu_item_new_with_label (_("Ignore All"));
        gtk_image_menu_item_set_image (
                GTK_IMAGE_MENU_ITEM (mi),
-               gtk_image_new_from_stock (GTK_STOCK_REMOVE, GTK_ICON_SIZE_MENU));
+               gtk_image_new_from_icon_name ("list-remove", GTK_ICON_SIZE_MENU));
        g_signal_connect (mi, "activate", G_CALLBACK (ignore_all), entry);
        gtk_widget_show_all (mi);
        gtk_menu_shell_append (GTK_MENU_SHELL (topmenu), mi);
@@ -553,7 +553,7 @@ spell_entry_add_suggestions_menu (ESpellEntry *entry,
        gtk_menu_shell_prepend (GTK_MENU_SHELL (menu), mi);
 
        /* Above the separator, show the suggestions menu */
-       icon = gtk_image_new_from_stock (GTK_STOCK_SPELL_CHECK, GTK_ICON_SIZE_MENU);
+       icon = gtk_image_new_from_icon_name ("tools-check-spelling", GTK_ICON_SIZE_MENU);
        mi = gtk_image_menu_item_new_with_label (_("Spelling Suggestions"));
        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (mi), icon);
 
diff --git a/e-util/e-table-config.c b/e-util/e-table-config.c
index f8d79f8..4d6be20 100644
--- a/e-util/e-table-config.c
+++ b/e-util/e-table-config.c
@@ -545,10 +545,8 @@ do_fields_config_dialog (ETableConfig *config)
                _("Show Fields"),
                GTK_WINDOW (config->dialog_toplevel),
                0, /* no flags */
-               GTK_STOCK_CANCEL,
-               GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK,
-               GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 5);
diff --git a/e-util/e-table-config.ui b/e-util/e-table-config.ui
index 79c3a30..6323a60 100644
--- a/e-util/e-table-config.ui
+++ b/e-util/e-table-config.ui
@@ -20,14 +20,14 @@
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="cancelbutton2">
-                <property name="label">gtk-cancel</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_Cancel</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_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -37,14 +37,14 @@
             </child>
             <child>
               <object class="GtkButton" id="applybutton2">
-                <property name="label">gtk-apply</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_Apply</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_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -54,14 +54,14 @@
             </child>
             <child>
               <object class="GtkButton" id="okbutton2">
-                <property name="label">gtk-ok</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_OK</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_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -296,14 +296,14 @@
             </child>
             <child>
               <object class="GtkButton" id="button42">
-                <property name="label">gtk-cancel</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_Cancel</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_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -313,14 +313,14 @@
             </child>
             <child>
               <object class="GtkButton" id="button41">
-                <property name="label">gtk-ok</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_OK</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_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -994,14 +994,14 @@
             </child>
             <child>
               <object class="GtkButton" id="button45">
-                <property name="label">gtk-cancel</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_Cancel</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_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -1011,15 +1011,15 @@
             </child>
             <child>
               <object class="GtkButton" id="button44">
-                <property name="label">gtk-ok</property>
-                <property name="use_action_appearance">False</property>
+                <property name="label" translatable="yes">_OK</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_action_appearance">False</property>
-                <property name="use_stock">True</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
diff --git a/e-util/e-table-field-chooser-dialog.c b/e-util/e-table-field-chooser-dialog.c
index b53fadd..88b3962 100644
--- a/e-util/e-table-field-chooser-dialog.c
+++ b/e-util/e-table-field-chooser-dialog.c
@@ -204,7 +204,7 @@ e_table_field_chooser_dialog_init (ETableFieldChooserDialog *e_table_field_choos
        e_table_field_chooser_dialog->full_header = NULL;
        e_table_field_chooser_dialog->header = NULL;
 
-       gtk_dialog_add_button (dialog, GTK_STOCK_CLOSE, GTK_RESPONSE_OK);
+       gtk_dialog_add_button (dialog, _("_Close"), GTK_RESPONSE_OK);
 
        gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE);
 
diff --git a/e-util/e-text.c b/e-util/e-text.c
index 398d553..b1c1af6 100644
--- a/e-util/e-text.c
+++ b/e-util/e-text.c
@@ -2068,7 +2068,9 @@ popup_targets_received (GtkClipboard *clipboard,
                popup_menu_detach);
 
        /* cut menu item */
-       menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_CUT, NULL);
+       menuitem = gtk_image_menu_item_new_with_mnemonic (_("Cu_t"));
+       gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menuitem),
+               gtk_image_new_from_icon_name ("edit-cut", GTK_ICON_SIZE_MENU));
        gtk_widget_show (menuitem);
        gtk_menu_shell_append (GTK_MENU_SHELL (popup_menu), menuitem);
        g_signal_connect_swapped (
@@ -2079,7 +2081,9 @@ popup_targets_received (GtkClipboard *clipboard,
                (text->selection_start != text->selection_end));
 
        /* copy menu item */
-       menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_COPY, NULL);
+       menuitem = gtk_image_menu_item_new_with_mnemonic (_("_Copy"));
+       gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menuitem),
+               gtk_image_new_from_icon_name ("edit-copy", GTK_ICON_SIZE_MENU));
        gtk_widget_show (menuitem);
        gtk_menu_shell_append (GTK_MENU_SHELL (popup_menu), menuitem);
        g_signal_connect_swapped (
@@ -2088,7 +2092,9 @@ popup_targets_received (GtkClipboard *clipboard,
        gtk_widget_set_sensitive (menuitem, text->selection_start != text->selection_end);
 
        /* paste menu item */
-       menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_PASTE, NULL);
+       menuitem = gtk_image_menu_item_new_with_mnemonic (_("_Paste"));
+       gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menuitem),
+               gtk_image_new_from_icon_name ("edit-paste", GTK_ICON_SIZE_MENU));
        gtk_widget_show (menuitem);
        gtk_menu_shell_append (GTK_MENU_SHELL (popup_menu), menuitem);
        g_signal_connect_swapped (
diff --git a/e-util/e-timezone-dialog.ui b/e-util/e-timezone-dialog.ui
index 5a23ec1..9c2508a 100644
--- a/e-util/e-timezone-dialog.ui
+++ b/e-util/e-timezone-dialog.ui
@@ -30,8 +30,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -42,8 +43,9 @@
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-ok</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_OK</property>
+                <property name="use_stock">False</property>
+                <property name="use_underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -72,7 +74,7 @@
                 <child>
                   <object class="GtkImage" id="image1">
                     <property name="visible">True</property>
-                    <property name="stock">gtk-dialog-info</property>
+                    <property name="icon-name">dialog-information</property>
                     <property name="icon_size">6</property>
                     <property name="xalign">0.5</property>
                     <property name="yalign">0.5</property>
diff --git a/e-util/e-url-entry.c b/e-util/e-url-entry.c
index 4d75069..1d5ada5 100644
--- a/e-util/e-url-entry.c
+++ b/e-util/e-url-entry.c
@@ -101,8 +101,8 @@ e_url_entry_init (EUrlEntry *url_entry)
 
        entry = GTK_ENTRY (url_entry);
 
-       gtk_entry_set_icon_from_stock (
-               entry, ICON_POSITION, GTK_STOCK_JUMP_TO);
+       gtk_entry_set_icon_from_icon_name (
+               entry, ICON_POSITION, "go-jump");
 
        gtk_entry_set_icon_tooltip_text (
                entry, ICON_POSITION, _("Click here to open the URL"));
diff --git a/e-util/e-web-view-gtkhtml.c b/e-util/e-web-view-gtkhtml.c
index e371d0b..5cc95a3 100644
--- a/e-util/e-web-view-gtkhtml.c
+++ b/e-util/e-web-view-gtkhtml.c
@@ -401,7 +401,7 @@ action_image_copy_cb (GtkAction *action,
 static GtkActionEntry uri_entries[] = {
 
        { "uri-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy Link Location"),
          NULL,
          N_("Copy the link to the clipboard"),
@@ -421,7 +421,7 @@ static GtkActionEntry http_entries[] = {
 static GtkActionEntry mailto_entries[] = {
 
        { "mailto-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy Email Address"),
          NULL,
          N_("Copy the email address to the clipboard"),
@@ -438,7 +438,7 @@ static GtkActionEntry mailto_entries[] = {
 static GtkActionEntry image_entries[] = {
 
        { "image-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy Image"),
          NULL,
          N_("Copy the image to the clipboard"),
@@ -448,7 +448,7 @@ static GtkActionEntry image_entries[] = {
 static GtkActionEntry selection_entries[] = {
 
        { "copy-clipboard",
-         GTK_STOCK_COPY,
+         "edit-copy",
          NULL,
          NULL,
          N_("Copy the selection"),
@@ -458,8 +458,8 @@ static GtkActionEntry selection_entries[] = {
 static GtkActionEntry standard_entries[] = {
 
        { "select-all",
-         GTK_STOCK_SELECT_ALL,
-         NULL,
+         "edit-select-all",
+         N_("Select _All"),
          NULL,
          N_("Select all text and images"),
          G_CALLBACK (action_select_all_cb) }
diff --git a/e-util/e-web-view.c b/e-util/e-web-view.c
index faf57a5..739e1cc 100644
--- a/e-util/e-web-view.c
+++ b/e-util/e-web-view.c
@@ -278,7 +278,7 @@ action_image_save_cb (GtkAction *action,
 static GtkActionEntry uri_entries[] = {
 
        { "uri-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy Link Location"),
          NULL,
          N_("Copy the link to the clipboard"),
@@ -298,7 +298,7 @@ static GtkActionEntry http_entries[] = {
 static GtkActionEntry mailto_entries[] = {
 
        { "mailto-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy Email Address"),
          NULL,
          N_("Copy the email address to the clipboard"),
@@ -315,14 +315,14 @@ static GtkActionEntry mailto_entries[] = {
 static GtkActionEntry image_entries[] = {
 
        { "image-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy Image"),
          NULL,
          N_("Copy the image to the clipboard"),
          G_CALLBACK (action_image_copy_cb) },
 
        { "image-save",
-         GTK_STOCK_SAVE,
+         "document-save",
          N_("Save _Image..."),
          NULL,
          N_("Save the image to a file"),
@@ -332,7 +332,7 @@ static GtkActionEntry image_entries[] = {
 static GtkActionEntry selection_entries[] = {
 
        { "copy-clipboard",
-         GTK_STOCK_COPY,
+         "edit-copy",
          NULL,
          NULL,
          N_("Copy the selection"),
@@ -342,8 +342,8 @@ static GtkActionEntry selection_entries[] = {
 static GtkActionEntry standard_entries[] = {
 
        { "select-all",
-         GTK_STOCK_SELECT_ALL,
-         NULL,
+         "edit-select-all",
+         N_("Select _All"),
          NULL,
          N_("Select all text and images"),
          G_CALLBACK (action_select_all_cb) }
@@ -1201,15 +1201,15 @@ web_view_submit_alert (EAlertSink *alert_sink,
 
        switch (e_alert_get_message_type (alert)) {
                case GTK_MESSAGE_INFO:
-                       icon_name = GTK_STOCK_DIALOG_INFO;
+                       icon_name = "dialog-information";
                        break;
 
                case GTK_MESSAGE_WARNING:
-                       icon_name = GTK_STOCK_DIALOG_WARNING;
+                       icon_name = "dialog-warning";
                        break;
 
                case GTK_MESSAGE_ERROR:
-                       icon_name = GTK_STOCK_DIALOG_ERROR;
+                       icon_name = "dialog-error";
                        break;
 
                default:
@@ -3078,8 +3078,8 @@ e_web_view_cursor_image_save (EWebView *web_view)
        dialog = gtk_file_chooser_dialog_new (
                _("Save Image"), toplevel,
                GTK_FILE_CHOOSER_ACTION_SAVE,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save"), GTK_RESPONSE_ACCEPT, NULL);
 
        gtk_dialog_set_default_response (
                GTK_DIALOG (dialog), GTK_RESPONSE_ACCEPT);
diff --git a/e-util/evolution-source-viewer.c b/e-util/evolution-source-viewer.c
index 0b188d7..8d6db0a 100644
--- a/e-util/evolution-source-viewer.c
+++ b/e-util/evolution-source-viewer.c
@@ -21,6 +21,8 @@
 
 #include <libedataserver/libedataserver.h>
 
+#include "e-dialog-widgets.h"
+
 /* XXX Even though this is all one file, I'm still being pedantic about data
  *     encapsulation (except for a private struct, even I'm not that anal!).
  *     I expect this program will eventually be too complex for one file
@@ -676,7 +678,7 @@ source_viewer_constructed (GObject *object)
        renderer = gtk_cell_renderer_pixbuf_new ();
        g_object_set (
                renderer,
-               "stock-id", GTK_STOCK_EDIT,
+               "icon-name", "media-record",
                "stock-size", GTK_ICON_SIZE_MENU,
                NULL);
        gtk_tree_view_column_pack_start (column, renderer, FALSE);
@@ -686,7 +688,7 @@ source_viewer_constructed (GObject *object)
        renderer = gtk_cell_renderer_pixbuf_new ();
        g_object_set (
                renderer,
-               "stock-id", GTK_STOCK_DELETE,
+               "icon-name", "list-remove",
                "stock-size", GTK_ICON_SIZE_MENU,
                NULL);
        gtk_tree_view_column_pack_start (column, renderer, FALSE);
@@ -798,7 +800,7 @@ source_viewer_constructed (GObject *object)
        viewer->viewing_label = widget;  /* do not reference */
        gtk_widget_show (widget);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_DELETE);
+       widget = e_dialog_button_new_with_icon ("edit-delete", _("_Delete"));
        gtk_box_pack_end (GTK_BOX (container), widget, FALSE, FALSE, 0);
        viewer->delete_button = widget;  /* do not reference */
        gtk_widget_hide (widget);
@@ -827,7 +829,7 @@ source_viewer_constructed (GObject *object)
        viewer->deleting_label = widget;  /* do not reference */
        gtk_widget_show (widget);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
+       widget = e_dialog_button_new_with_icon ("process-stop", _("_Cancel"));
        gtk_box_pack_end (GTK_BOX (container), widget, FALSE, FALSE, 0);
        viewer->deleting_cancel = widget;  /* do not reference */
        gtk_widget_show (widget);
diff --git a/e-util/filter.ui b/e-util/filter.ui
index d912927..80dc5ac 100644
--- a/e-util/filter.ui
+++ b/e-util/filter.ui
@@ -216,12 +216,13 @@
                         <property name="spacing">6</property>
                         <child>
                           <object class="GtkButton" id="rule_add">
-                            <property name="label">gtk-add</property>
+                            <property name="label" translatable="yes">_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>
+                            <property name="use_stock">False</property>
+                           <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -246,12 +247,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="rule_delete">
-                            <property name="label">gtk-remove</property>
+                            <property name="label" translatable="yes">_Remove</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>
+                            <property name="use_stock">False</property>
+                           <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -261,12 +263,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="rule_top">
-                            <property name="label">gtk-goto-top</property>
+                            <property name="label" translatable="yes">_Top</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>
+                            <property name="use_stock">False</property>
+                           <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -276,12 +279,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="rule_up">
-                            <property name="label">gtk-go-up</property>
+                            <property name="label" translatable="yes">_Up</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>
+                            <property name="use_stock">False</property>
+                           <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -291,12 +295,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="rule_down">
-                            <property name="label">gtk-go-down</property>
+                            <property name="label" translatable="yes">_Down</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>
+                            <property name="use_stock">False</property>
+                           <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -306,12 +311,13 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="rule_bottom">
-                            <property name="label">gtk-goto-bottom</property>
+                            <property name="label" translatable="yes">_Bottom</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>
+                            <property name="use_stock">False</property>
+                           <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
diff --git a/e-util/gal-view-instance-save-as-dialog.c b/e-util/gal-view-instance-save-as-dialog.c
index dee4030..d5febb4 100644
--- a/e-util/gal-view-instance-save-as-dialog.c
+++ b/e-util/gal-view-instance-save-as-dialog.c
@@ -266,8 +266,8 @@ gal_view_instance_save_as_dialog_init (GalViewInstanceSaveAsDialog *dialog)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save"), GTK_RESPONSE_OK,
                NULL);
 
        dialog->scrolledwindow = e_builder_get_widget (dialog->builder, "scrolledwindow2");
diff --git a/e-util/test-preferences-window.c b/e-util/test-preferences-window.c
index acf395b..b6d3b0f 100644
--- a/e-util/test-preferences-window.c
+++ b/e-util/test-preferences-window.c
@@ -59,15 +59,15 @@ add_pages (EPreferencesWindow *preferences_window)
 {
        e_preferences_window_add_page (
                preferences_window, "page-0",
-               "gtk-properties", "title 0", NULL,
+               "document-properties", "title 0", NULL,
                create_page_zero, 0);
        e_preferences_window_add_page (
                preferences_window, "page-1",
-               "gtk-properties", "title 1", NULL,
+               "document-properties", "title 1", NULL,
                create_page_one, 1);
        e_preferences_window_add_page (
                preferences_window, "page-2",
-               "gtk-properties", "title 2", NULL,
+               "document-properties", "title 2", NULL,
                create_page_two, 2);
 }
 
diff --git a/em-format/e-mail-formatter-error.c b/em-format/e-mail-formatter-error.c
index 7b5dae5..9c53a99 100644
--- a/em-format/e-mail-formatter-error.c
+++ b/em-format/e-mail-formatter-error.c
@@ -66,7 +66,7 @@ emfe_error_format (EMailFormatterExtension *extension,
                "<tr valign=\"top\"><td width=50>"
                "<img src=\"gtk-stock://%s/?size=%d\" /></td>\n"
                "<td style=\"color: red;\">",
-               GTK_STOCK_DIALOG_ERROR, GTK_ICON_SIZE_DIALOG);
+               "dialog-error", GTK_ICON_SIZE_DIALOG);
 
        camel_stream_write_string (stream, html, cancellable, NULL);
        g_free (html);
diff --git a/mail/e-mail-account-manager.c b/mail/e-mail-account-manager.c
index 0fc97df..6b2e057 100644
--- a/mail/e-mail-account-manager.c
+++ b/mail/e-mail-account-manager.c
@@ -21,6 +21,7 @@
 #include <glib/gi18n-lib.h>
 #include <gdk/gdkkeysyms.h>
 
+#include <e-util/e-util.h>
 #include <libemail-engine/libemail-engine.h>
 
 #include <mail/e-mail-account-tree-view.h>
@@ -715,7 +716,7 @@ mail_account_manager_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_ADD);
+       widget = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->add_button = widget;  /* not referenced */
        gtk_widget_show (widget);
@@ -724,7 +725,7 @@ mail_account_manager_constructed (GObject *object)
                widget, "clicked",
                G_CALLBACK (mail_account_manager_add_cb), manager);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_EDIT);
+       widget = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->edit_button = widget;  /* not referenced */
        gtk_widget_show (widget);
@@ -733,7 +734,7 @@ mail_account_manager_constructed (GObject *object)
                widget, "clicked",
                G_CALLBACK (mail_account_manager_edit_cb), manager);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_DELETE);
+       widget = e_dialog_button_new_with_icon ("edit-delete", _("_Delete"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->delete_button = widget;  /* not referenced */
        gtk_widget_show (widget);
@@ -742,11 +743,7 @@ mail_account_manager_constructed (GObject *object)
                widget, "clicked",
                G_CALLBACK (mail_account_manager_remove_cb), manager);
 
-       widget = gtk_button_new_with_mnemonic (_("De_fault"));
-       gtk_button_set_image (
-               GTK_BUTTON (widget),
-               gtk_image_new_from_icon_name (
-               "emblem-default", GTK_ICON_SIZE_BUTTON));
+       widget = e_dialog_button_new_with_icon ("emblem-default", _("De_fault"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->default_button = widget;  /* not referenced */
        gtk_widget_show (widget);
diff --git a/mail/e-mail-browser.c b/mail/e-mail-browser.c
index d9e6378..580d897 100644
--- a/mail/e-mail-browser.c
+++ b/mail/e-mail-browser.c
@@ -122,36 +122,36 @@ action_close_cb (GtkAction *action,
 static GtkActionEntry mail_browser_entries[] = {
 
        { "close",
-         GTK_STOCK_CLOSE,
-         NULL,
+         "window-close",
+         N_("_Close"),
          NULL,
          N_("Close this window"),
          G_CALLBACK (action_close_cb) },
 
        { "copy-clipboard",
-         GTK_STOCK_COPY,
-         NULL,
+         "edit-copy",
+         N_("_Copy"),
          NULL,
          N_("Copy the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "cut-clipboard",
-         GTK_STOCK_CUT,
-         NULL,
+         "edit-cut",
+         N_("Cu_t"),
          NULL,
          N_("Cut the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "paste-clipboard",
-         GTK_STOCK_PASTE,
-         NULL,
+         "edit-paste",
+         N_("_Paste"),
          NULL,
          N_("Paste the clipboard"),
          NULL },  /* Handled by EFocusTracker */
 
        { "select-all",
-         GTK_STOCK_SELECT_ALL,
-         NULL,
+         "edit-select-all",
+         N_("Select _All"),
          NULL,
          N_("Select all text"),
          NULL },  /* Handled by EFocusTracker */
diff --git a/mail/e-mail-config-security-page.c b/mail/e-mail-config-security-page.c
index 744b912..c6b2de3 100644
--- a/mail/e-mail-config-security-page.c
+++ b/mail/e-mail-config-security-page.c
@@ -20,6 +20,7 @@
 #include <config.h>
 #include <glib/gi18n-lib.h>
 
+#include <e-util/e-util.h>
 #include <libebackend/libebackend.h>
 
 #if defined (HAVE_NSS)
@@ -449,7 +450,7 @@ mail_config_security_page_constructed (GObject *object)
                G_CALLBACK (mail_config_security_page_select_sign_cert),
                entry);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_CLEAR);
+       widget = e_dialog_button_new_with_icon ("edit-clear", _("_Clear"));
        gtk_grid_attach (GTK_GRID (container), widget, 3, 1, 1, 1);
        gtk_widget_show (widget);
 
@@ -555,7 +556,7 @@ mail_config_security_page_constructed (GObject *object)
                G_CALLBACK (mail_config_security_page_select_encrypt_cert),
                entry);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_CLEAR);
+       widget = e_dialog_button_new_with_icon ("edit-clear", _("_Clear"));
        gtk_grid_attach (GTK_GRID (container), widget, 3, 4, 1, 1);
        gtk_widget_show (widget);
 
diff --git a/mail/e-mail-config-window.c b/mail/e-mail-config-window.c
index 9059618..1608e67 100644
--- a/mail/e-mail-config-window.c
+++ b/mail/e-mail-config-window.c
@@ -328,8 +328,8 @@ mail_config_window_constructed (GObject *object)
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (window),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
                NULL);
 
        container = gtk_dialog_get_content_area (GTK_DIALOG (window));
diff --git a/mail/e-mail-label-dialog.c b/mail/e-mail-label-dialog.c
index 282dc88..eb02461 100644
--- a/mail/e-mail-label-dialog.c
+++ b/mail/e-mail-label-dialog.c
@@ -193,11 +193,11 @@ e_mail_label_dialog_init (EMailLabelDialog *dialog)
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL);
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_OK, GTK_RESPONSE_OK);
+               _("OK"), GTK_RESPONSE_OK);
 
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
 
diff --git a/mail/e-mail-label-manager.c b/mail/e-mail-label-manager.c
index 2cfb3f5..ac0e0d3 100644
--- a/mail/e-mail-label-manager.c
+++ b/mail/e-mail-label-manager.c
@@ -25,6 +25,8 @@
 #include "e-mail-label-manager.h"
 
 #include <glib/gi18n.h>
+#include <e-util/e-util.h>
+
 #include "e-mail-label-dialog.h"
 #include "e-mail-label-tree-view.h"
 
@@ -368,7 +370,7 @@ e_mail_label_manager_init (EMailLabelManager *manager)
 
        container = widget;
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_ADD);
+       widget = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->add_button = g_object_ref (widget);
        gtk_widget_show (widget);
@@ -377,7 +379,7 @@ e_mail_label_manager_init (EMailLabelManager *manager)
                widget, "clicked",
                G_CALLBACK (e_mail_label_manager_add_label), manager);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_EDIT);
+       widget = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->edit_button = g_object_ref (widget);
        gtk_widget_show (widget);
@@ -386,7 +388,7 @@ e_mail_label_manager_init (EMailLabelManager *manager)
                widget, "clicked",
                G_CALLBACK (e_mail_label_manager_edit_label), manager);
 
-       widget = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+       widget = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        gtk_box_pack_start (GTK_BOX (container), widget, TRUE, TRUE, 0);
        manager->priv->remove_button = g_object_ref (widget);
        gtk_widget_show (widget);
diff --git a/mail/e-mail-reader.c b/mail/e-mail-reader.c
index 3b6aaa3..815e041 100644
--- a/mail/e-mail-reader.c
+++ b/mail/e-mail-reader.c
@@ -1921,7 +1921,7 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_filters_apply_cb) },
 
        { "mail-find",
-         GTK_STOCK_FIND,
+         "edit-find",
          N_("_Find in Message..."),
          "<Shift><Control>f",
          N_("Search for text in the body of the displayed message"),
@@ -2068,7 +2068,7 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_move_cb) },
 
        { "mail-next",
-         GTK_STOCK_GO_FORWARD,
+         "go-next",
          N_("_Next Message"),
          "<Control>Page_Down",
          N_("Display the next message"),
@@ -2096,7 +2096,7 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_next_unread_cb) },
 
        { "mail-previous",
-         GTK_STOCK_GO_BACK,
+         "go-previous",
          N_("_Previous Message"),
          "<Control>Page_Up",
          N_("Display the previous message"),
@@ -2124,15 +2124,15 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_previous_unread_cb) },
 
        { "mail-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("_Print..."),
          "<Control>p",
          N_("Print this message"),
          G_CALLBACK (action_mail_print_cb) },
 
        { "mail-print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
-         NULL,
+         "document-print-preview",
+         N_("Pre_view..."),
          NULL,
          N_("Preview the message to be printed"),
          G_CALLBACK (action_mail_print_preview_cb) },
@@ -2145,7 +2145,7 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_redirect_cb) },
 
        { "mail-remove-attachments",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("Remo_ve Attachments"),
          NULL,
          N_("Remove attachments"),
@@ -2180,7 +2180,7 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_reply_sender_cb) },
 
        { "mail-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("_Save as mbox..."),
          "<Control>s",
          N_("Save selected messages as an mbox file"),
@@ -2208,21 +2208,21 @@ static GtkActionEntry mail_reader_entries[] = {
          G_CALLBACK (action_mail_undelete_cb) },
 
        { "mail-zoom-100",
-         GTK_STOCK_ZOOM_100,
+         "zoom-original",
          N_("_Normal Size"),
          "<Control>0",
          N_("Reset the text to its original size"),
          G_CALLBACK (action_mail_zoom_100_cb) },
 
        { "mail-zoom-in",
-         GTK_STOCK_ZOOM_IN,
+         "zoom-in",
          N_("_Zoom In"),
          "<Control>plus",
          N_("Increase the text size"),
          G_CALLBACK (action_mail_zoom_in_cb) },
 
        { "mail-zoom-out",
-         GTK_STOCK_ZOOM_OUT,
+         "zoom-out",
          N_("Zoom _Out"),
          "<Control>minus",
          N_("Decrease the text size"),
@@ -2259,7 +2259,7 @@ static GtkActionEntry mail_reader_entries[] = {
          NULL },
 
        { "mail-goto-menu",
-         GTK_STOCK_JUMP_TO,
+         "go-jump",
          N_("_Go To"),
          NULL,
          NULL,
diff --git a/mail/e-mail-tag-editor.c b/mail/e-mail-tag-editor.c
index 7c24c3c..9a0fe04 100644
--- a/mail/e-mail-tag-editor.c
+++ b/mail/e-mail-tag-editor.c
@@ -237,9 +237,10 @@ e_mail_tag_editor_init (EMailTagEditor *editor)
        gtk_window_set_title (window, _("Flag to Follow Up"));
        gtk_window_set_icon_name (window, "stock_mail-flag-for-followup");
 
-       gtk_dialog_add_buttons (
-               dialog, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+       gtk_dialog_add_buttons (dialog,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK,
+               NULL);
 
        gtk_dialog_set_default_response (dialog, GTK_RESPONSE_OK);
 
diff --git a/mail/em-filter-rule.c b/mail/em-filter-rule.c
index 4dc6fe6..9bfb032 100644
--- a/mail/em-filter-rule.c
+++ b/mail/em-filter-rule.c
@@ -29,6 +29,8 @@
 #include <gtk/gtk.h>
 #include <glib/gi18n.h>
 
+#include <e-util/e-util.h>
+
 #include "em-filter-rule.h"
 #include "em-filter-context.h"
 
@@ -435,7 +437,7 @@ attach_rule (GtkWidget *rule,
                GTK_TABLE (data->parts), rule, 0, 1, row, row + 1,
                GTK_EXPAND | GTK_FILL, 0, 0, 0);
 
-       remove = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+       remove = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        g_object_set_data ((GObject *) remove, "rule", rule);
        /*gtk_button_set_relief(GTK_BUTTON(remove), GTK_RELIEF_NONE);*/
        g_signal_connect (
@@ -647,10 +649,7 @@ get_widget (EFilterRule *fr,
        hgrid = GTK_GRID (gtk_grid_new ());
        gtk_grid_set_column_spacing (hgrid, 3);
 
-       add = gtk_button_new_with_mnemonic (_("Add Ac_tion"));
-       gtk_button_set_image (
-               GTK_BUTTON (add), gtk_image_new_from_stock (
-               GTK_STOCK_ADD, GTK_ICON_SIZE_BUTTON));
+       add = e_dialog_button_new_with_icon ("list-add", _("Add Ac_tion"));
        g_signal_connect (
                add, "clicked",
                G_CALLBACK (more_parts), data);
diff --git a/mail/em-folder-properties.c b/mail/em-folder-properties.c
index 2b3ad31..ba51b64 100644
--- a/mail/em-folder-properties.c
+++ b/mail/em-folder-properties.c
@@ -413,7 +413,7 @@ emfp_dialog_run (AsyncContext *context)
                _("Folder Properties"),
                context->parent_window,
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL);
+               _("_Close"), GTK_RESPONSE_OK, NULL);
        gtk_window_set_default_size ((GtkWindow *) dialog, 192, 160);
 
        gtk_widget_ensure_style (dialog);
diff --git a/mail/em-folder-selector.c b/mail/em-folder-selector.c
index 1e67cef..2148418 100644
--- a/mail/em-folder-selector.c
+++ b/mail/em-folder-selector.c
@@ -266,7 +266,7 @@ folder_selector_construct (EMFolderSelector *emfs,
        emfs->flags = flags;
        if (flags & EM_FOLDER_SELECTOR_CAN_CREATE) {
                gtk_dialog_add_button (
-                       GTK_DIALOG (emfs), GTK_STOCK_NEW,
+                       GTK_DIALOG (emfs), _("_New"),
                        EM_FOLDER_SELECTOR_RESPONSE_NEW);
                g_signal_connect (
                        emfs, "response",
@@ -275,8 +275,8 @@ folder_selector_construct (EMFolderSelector *emfs,
 
        gtk_dialog_add_buttons (
                GTK_DIALOG (emfs),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               oklabel ? oklabel : GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               oklabel ? oklabel : _("_OK"), GTK_RESPONSE_OK, NULL);
 
        gtk_dialog_set_response_sensitive (
                GTK_DIALOG (emfs), GTK_RESPONSE_OK, FALSE);
diff --git a/mail/em-subscription-editor.c b/mail/em-subscription-editor.c
index 13526c0..2d816c7 100644
--- a/mail/em-subscription-editor.c
+++ b/mail/em-subscription-editor.c
@@ -1711,7 +1711,7 @@ em_subscription_editor_init (EMSubscriptionEditor *editor)
 
        gtk_dialog_add_button (
                GTK_DIALOG (editor),
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE);
+               _("_Close"), GTK_RESPONSE_CLOSE);
 
        container = gtk_dialog_get_content_area (GTK_DIALOG (editor));
 
@@ -1748,9 +1748,9 @@ em_subscription_editor_init (EMSubscriptionEditor *editor)
        gtk_widget_show (widget);
 
        widget = gtk_entry_new ();
-       gtk_entry_set_icon_from_stock (
+       gtk_entry_set_icon_from_icon_name (
                GTK_ENTRY (widget),
-               GTK_ENTRY_ICON_SECONDARY, GTK_STOCK_CLEAR);
+               GTK_ENTRY_ICON_SECONDARY, "edit-clear");
        gtk_entry_set_icon_tooltip_text (
                GTK_ENTRY (widget),
                GTK_ENTRY_ICON_SECONDARY, _("Clear Search"));
@@ -1926,7 +1926,7 @@ em_subscription_editor_init (EMSubscriptionEditor *editor)
                G_CALLBACK (subscription_editor_expand_all), editor);
 
        tooltip = _("Refresh the folder list");
-       widget = gtk_button_new_from_stock (GTK_STOCK_REFRESH);
+       widget = e_dialog_button_new_with_icon ("view-refresh", _("_Refresh"));
        gtk_widget_set_tooltip_text (widget, tooltip);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_set_sensitive (widget, FALSE);
@@ -1938,7 +1938,7 @@ em_subscription_editor_init (EMSubscriptionEditor *editor)
                G_CALLBACK (subscription_editor_refresh), editor);
 
        tooltip = _("Stop the current operation");
-       widget = gtk_button_new_from_stock (GTK_STOCK_STOP);
+       widget = e_dialog_button_new_with_icon ("process-stop", _("_Stop"));
        gtk_widget_set_tooltip_text (widget, tooltip);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_set_sensitive (widget, FALSE);
diff --git a/mail/em-vfolder-editor-rule.c b/mail/em-vfolder-editor-rule.c
index d72becc..111a74c 100644
--- a/mail/em-vfolder-editor-rule.c
+++ b/mail/em-vfolder-editor-rule.c
@@ -619,12 +619,12 @@ get_widget (EFilterRule *fr,
                NULL);
        gtk_container_add (GTK_CONTAINER (hgrid), vgrid);
 
-       data->buttons[BUTTON_ADD] = gtk_button_new_from_stock (GTK_STOCK_ADD);
+       data->buttons[BUTTON_ADD] = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        g_signal_connect (
                data->buttons[BUTTON_ADD], "clicked",
                G_CALLBACK (source_add), data);
 
-       data->buttons[BUTTON_REMOVE] = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+       data->buttons[BUTTON_REMOVE] = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        g_signal_connect (
                data->buttons[BUTTON_REMOVE], "clicked",
                G_CALLBACK (source_remove), data);
diff --git a/mail/mail-config.ui b/mail/mail-config.ui
index 0611b90..1b7fbe3 100644
--- a/mail/mail-config.ui
+++ b/mail/mail-config.ui
@@ -21,12 +21,12 @@
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="junk-header-cancel">
-                <property name="label">gtk-cancel</property>
+                <property name="label" translatable="yes">_Cancel</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="use_stock">True</property>
+                <property name="use_stock">False</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -36,12 +36,12 @@
             </child>
             <child>
               <object class="GtkButton" id="junk-header-ok">
-                <property name="label">gtk-ok</property>
+                <property name="label" translatable="yes">_OK</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="use_stock">True</property>
+                <property name="use_stock">False</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -693,7 +693,7 @@
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="yalign">0</property>
-                        <property name="stock">gtk-dialog-info</property>
+                        <property name="icon-name">dialog-information</property>
                       </object>
                       <packing>
                         <property name="left_attach">0</property>
@@ -2413,12 +2413,13 @@
                         <property name="spacing">6</property>
                         <child>
                           <object class="GtkButton" id="cmdHeadersAdd">
-                            <property name="label">gtk-add</property>
+                            <property name="label" translatable="yes">_Add</property>
                             <property name="visible">True</property>
                             <property name="sensitive">False</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">True</property>
-                            <property name="use_stock">True</property>
+                            <property name="use_stock">False</property>
+                            <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -2428,11 +2429,12 @@
                         </child>
                         <child>
                           <object class="GtkButton" id="cmdHeadersRemove">
-                            <property name="label">gtk-remove</property>
+                            <property name="label" translatable="yes">_Remove</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">True</property>
-                            <property name="use_stock">True</property>
+                            <property name="use_stock">False</property>
+                            <property name="use-underline">True</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -2716,12 +2718,13 @@
                                 <property name="layout_style">start</property>
                                 <child>
                                   <object class="GtkButton" id="junk_header_add">
-                                    <property name="label">gtk-add</property>
+                                    <property name="label" translatable="yes">_Add</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="can_default">True</property>
                                     <property name="receives_default">True</property>
-                                    <property name="use_stock">True</property>
+                                    <property name="use_stock">False</property>
+                                    <property name="use-underline">True</property>
                                   </object>
                                   <packing>
                                     <property name="expand">False</property>
@@ -2731,12 +2734,13 @@
                                 </child>
                                 <child>
                                   <object class="GtkButton" id="junk_header_remove">
-                                    <property name="label">gtk-remove</property>
+                                    <property name="label" translatable="yes">_Remove</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="can_default">True</property>
                                     <property name="receives_default">True</property>
-                                    <property name="use_stock">True</property>
+                                    <property name="use_stock">False</property>
+                                    <property name="use-underline">True</property>
                                   </object>
                                   <packing>
                                     <property name="expand">False</property>
@@ -2803,7 +2807,7 @@
                               <object class="GtkImage" id="image11">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="stock">gtk-info</property>
+                                <property name="icon-name">dialog-information</property>
                               </object>
                               <packing>
                                 <property name="expand">False</property>
diff --git a/mail/mail-dialogs.ui b/mail/mail-dialogs.ui
index 64f5cfa..f41cf29 100644
--- a/mail/mail-dialogs.ui
+++ b/mail/mail-dialogs.ui
@@ -96,11 +96,12 @@ Please select a follow up action from the "Flag" menu.</property>
         </child>
         <child>
           <object class="GtkButton" id="clear">
-            <property name="label">gtk-clear</property>
+            <property name="label" translatable="yes">_Clear</property>
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="receives_default">False</property>
-            <property name="use_stock">True</property>
+            <property name="use_stock">False</property>
+            <property name="use-underline">True</property>
           </object>
           <packing>
             <property name="left_attach">2</property>
@@ -271,12 +272,13 @@ Please select a follow up action from the "Flag" menu.</property>
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="lic_no_button">
-                <property name="label">gtk-no</property>
+                <property name="label" translatable="yes">_No</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -290,42 +292,8 @@ Please select a follow up action from the "Flag" menu.</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
-                <child>
-                  <object class="GtkAlignment" id="alignment1">
-                    <property name="visible">True</property>
-                    <property name="xscale">0</property>
-                    <property name="yscale">0</property>
-                    <child>
-                      <object class="GtkHBox" id="hbox3">
-                        <property name="visible">True</property>
-                        <property name="spacing">2</property>
-                        <child>
-                          <object class="GtkImage" id="image1">
-                            <property name="visible">True</property>
-                            <property name="stock">gtk-yes</property>
-                          </object>
-                          <packing>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                            <property name="position">0</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="label2">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">_Accept License</property>
-                            <property name="use_underline">True</property>
-                          </object>
-                          <packing>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                            <property name="position">1</property>
-                          </packing>
-                        </child>
-                      </object>
-                    </child>
-                  </object>
-                </child>
+                <property name="label" translatable="yes">_Accept License</property>
+                <property name="use_underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -441,12 +409,13 @@ Please select a follow up action from the "Flag" menu.</property>
             <property name="layout_style">end</property>
             <child>
               <object class="GtkButton" id="okbutton1">
-                <property name="label">gtk-ok</property>
+                <property name="label" translatable="yes">_OK</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
diff --git a/mail/mail-send-recv.c b/mail/mail-send-recv.c
index dc5e18b..a04c3a5 100644
--- a/mail/mail-send-recv.c
+++ b/mail/mail-send-recv.c
@@ -539,11 +539,7 @@ build_dialog (GtkWindow *parent,
        container = gtk_dialog_get_content_area (gd);
        gtk_container_set_border_width (GTK_CONTAINER (container), 0);
 
-       cancel_button = gtk_button_new_with_mnemonic (_("Cancel _All"));
-       gtk_button_set_image (
-               GTK_BUTTON (cancel_button),
-               gtk_image_new_from_stock (
-                       GTK_STOCK_CANCEL, GTK_ICON_SIZE_BUTTON));
+       cancel_button = e_dialog_button_new_with_icon ("process-stop", _("Cancel _All"));
        gtk_widget_show (cancel_button);
        gtk_dialog_add_action_widget (gd, cancel_button, GTK_RESPONSE_CANCEL);
 
@@ -636,7 +632,7 @@ build_dialog (GtkWindow *parent,
                        _("Updating...") : _("Waiting..."));
                gtk_widget_set_margin_bottom (progress_bar, 12);
 
-               cancel_button = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
+               cancel_button = e_dialog_button_new_with_icon ("process-stop", _("_Cancel"));
                gtk_widget_set_valign (cancel_button, GTK_ALIGN_END);
                gtk_widget_set_margin_bottom (cancel_button, 12);
 
@@ -718,7 +714,7 @@ build_dialog (GtkWindow *parent,
                        GTK_PROGRESS_BAR (progress_bar), _("Waiting..."));
                gtk_widget_set_margin_bottom (progress_bar, 12);
 
-               cancel_button = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
+               cancel_button = e_dialog_button_new_with_icon ("process-stop", _("_Cancel"));
                gtk_widget_set_valign (cancel_button, GTK_ALIGN_END);
 
                gtk_misc_set_alignment (GTK_MISC (label), 0, .5);
diff --git a/mail/mail-vfolder-ui.c b/mail/mail-vfolder-ui.c
index 849295e..7ada540 100644
--- a/mail/mail-vfolder-ui.c
+++ b/mail/mail-vfolder-ui.c
@@ -145,8 +145,8 @@ vfolder_edit_rule (EMailSession *session,
        dialog = gtk_dialog_new_with_buttons (
                _("Edit Search Folder"), NULL,
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 6);
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
@@ -267,8 +267,8 @@ vfolder_gui_add_rule (EMVFolderRule *rule)
                _("New Search Folder"),
                NULL,
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        gtk_dialog_set_default_response (gd, GTK_RESPONSE_OK);
        gtk_container_set_border_width (GTK_CONTAINER (gd), 6);
diff --git a/modules/addressbook/e-book-shell-view-actions.c b/modules/addressbook/e-book-shell-view-actions.c
index c0a8af7..22efb45 100644
--- a/modules/addressbook/e-book-shell-view-actions.c
+++ b/modules/addressbook/e-book-shell-view-actions.c
@@ -874,14 +874,14 @@ action_contact_view_cb (GtkRadioAction *action,
 static GtkActionEntry contact_entries[] = {
 
        { "address-book-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("Co_py All Contacts To..."),
          NULL,
          N_("Copy the contacts of the selected address book to another"),
          G_CALLBACK (action_address_book_copy_cb) },
 
        { "address-book-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("D_elete Address Book"),
          NULL,
          N_("Delete the selected address book"),
@@ -902,14 +902,14 @@ static GtkActionEntry contact_entries[] = {
          G_CALLBACK (action_address_book_new_cb) },
 
        { "address-book-properties",
-         GTK_STOCK_PROPERTIES,
+         "document-properties",
          N_("Address _Book Properties"),
          NULL,
          N_("Show properties of the selected address book"),
          G_CALLBACK (action_address_book_properties_cb) },
 
        { "address-book-refresh",
-         GTK_STOCK_REFRESH,
+         "view-refresh",
          N_("Re_fresh"),
          NULL,
          N_("Refresh the selected address book"),
@@ -930,8 +930,8 @@ static GtkActionEntry contact_entries[] = {
          G_CALLBACK (action_address_book_rename_cb) },
 
        { "address-book-stop",
-         GTK_STOCK_STOP,
-         NULL,
+         "process-stop",
+         N_("_Stop"),
          NULL,
          N_("Stop loading"),
          G_CALLBACK (action_address_book_stop_cb) },
@@ -944,14 +944,14 @@ static GtkActionEntry contact_entries[] = {
          G_CALLBACK (action_contact_copy_cb) },
 
        { "contact-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("_Delete Contact"),
          "<Control>d",
          N_("Delete selected contacts"),
          G_CALLBACK (action_contact_delete_cb) },
 
        { "contact-find",
-         GTK_STOCK_FIND,
+         "edit-find",
          N_("_Find in Contact..."),
          "<Shift><Control>f",
          N_("Search for text in the displayed contact"),
@@ -1156,22 +1156,22 @@ static GtkRadioActionEntry contact_search_entries[] = {
 static GtkActionEntry lockdown_printing_entries[] = {
 
        { "address-book-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("_Print..."),
          "<Control>p",
          N_("Print all shown contacts"),
          G_CALLBACK (action_address_book_print_cb) },
 
        { "address-book-print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
-         NULL,
+         "document-print-preview",
+         N_("Pre_view..."),
          NULL,
          N_("Preview the contacts to be printed"),
          G_CALLBACK (action_address_book_print_preview_cb) },
 
        { "contact-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("_Print..."),
          NULL,
          N_("Print selected contacts"),
          G_CALLBACK (action_contact_print_cb) }
@@ -1187,14 +1187,14 @@ static EPopupActionEntry lockdown_printing_popup_entries[] = {
 static GtkActionEntry lockdown_save_to_disk_entries[] = {
 
        { "address-book-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("S_ave Address Book as vCard"),
          NULL,
          N_("Save the contacts of the selected address book as a vCard"),
          G_CALLBACK (action_address_book_save_as_cb) },
 
        { "contact-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          /* Translators: This is an action label */
          N_("_Save as vCard..."),
          NULL,
diff --git a/modules/backup-restore/evolution-backup-tool.c b/modules/backup-restore/evolution-backup-tool.c
index e94a3ff..65e525c 100644
--- a/modules/backup-restore/evolution-backup-tool.c
+++ b/modules/backup-restore/evolution-backup-tool.c
@@ -946,8 +946,7 @@ main (gint argc,
                progress_dialog = gtk_dialog_new_with_buttons (
                        title, NULL,
                        GTK_DIALOG_MODAL,
-                       GTK_STOCK_CANCEL,
-                       GTK_RESPONSE_REJECT,
+                       _("_Cancel"), GTK_RESPONSE_REJECT,
                        NULL);
 
                gtk_container_set_border_width (
@@ -975,8 +974,8 @@ main (gint argc,
                gtk_box_pack_start (
                        GTK_BOX (content_area), container, FALSE, TRUE, 0);
 
-               widget = gtk_image_new_from_stock (
-                       GTK_STOCK_COPY, GTK_ICON_SIZE_DIALOG);
+               widget = gtk_image_new_from_icon_name (
+                       "edit-copy", GTK_ICON_SIZE_DIALOG);
                gtk_misc_set_alignment (GTK_MISC (widget), 0.0, 0.0);
                gtk_widget_show (widget);
 
diff --git a/modules/book-config-ldap/evolution-book-config-ldap.c 
b/modules/book-config-ldap/evolution-book-config-ldap.c
index dd25429..7e6880b 100644
--- a/modules/book-config-ldap/evolution-book-config-ldap.c
+++ b/modules/book-config-ldap/evolution-book-config-ldap.c
@@ -744,11 +744,7 @@ book_config_ldap_insert_widgets (ESourceConfigBackend *backend,
        context->search_base_combo = g_object_ref (widget);
        gtk_widget_show (widget);
 
-       widget = gtk_button_new_with_label (
-               _("Find Possible Search Bases"));
-       gtk_button_set_image (
-               GTK_BUTTON (widget), gtk_image_new_from_stock (
-               GTK_STOCK_FIND, GTK_ICON_SIZE_BUTTON));
+       widget = e_dialog_button_new_with_icon ("edit-find", _("Find Possible Search Bases"));
        book_config_ldap_insert_notebook_widget (
                container, size_group, NULL, widget);
        context->search_base_button = g_object_ref (widget);
diff --git a/modules/cal-config-caldav/e-caldav-chooser-dialog.c 
b/modules/cal-config-caldav/e-caldav-chooser-dialog.c
index 09a77b6..b01c100 100644
--- a/modules/cal-config-caldav/e-caldav-chooser-dialog.c
+++ b/modules/cal-config-caldav/e-caldav-chooser-dialog.c
@@ -275,11 +275,11 @@ caldav_chooser_dialog_constructed (GObject *object)
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL);
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_APPLY, GTK_RESPONSE_APPLY);
+               _("_Apply"), GTK_RESPONSE_APPLY);
 
        gtk_dialog_set_default_response (
                GTK_DIALOG (dialog), GTK_RESPONSE_APPLY);
@@ -337,8 +337,7 @@ caldav_chooser_dialog_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_image_new_from_stock (
-               GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_MENU);
+       widget = gtk_image_new_from_icon_name ("dialog-warning", GTK_ICON_SIZE_MENU);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_show (widget);
 
diff --git a/modules/cal-config-google/e-google-chooser-dialog.c 
b/modules/cal-config-google/e-google-chooser-dialog.c
index 4324885..64d24d9 100644
--- a/modules/cal-config-google/e-google-chooser-dialog.c
+++ b/modules/cal-config-google/e-google-chooser-dialog.c
@@ -185,11 +185,11 @@ google_chooser_dialog_constructed (GObject *object)
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL);
 
        gtk_dialog_add_button (
                GTK_DIALOG (dialog),
-               GTK_STOCK_APPLY, GTK_RESPONSE_APPLY);
+               _("_Apply"), GTK_RESPONSE_APPLY);
 
        gtk_dialog_set_default_response (
                GTK_DIALOG (dialog), GTK_RESPONSE_APPLY);
@@ -248,8 +248,7 @@ google_chooser_dialog_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_image_new_from_stock (
-               GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_MENU);
+       widget = gtk_image_new_from_icon_name ("dialog-warning", GTK_ICON_SIZE_MENU);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_show (widget);
 
diff --git a/modules/calendar/e-cal-attachment-handler.c b/modules/calendar/e-cal-attachment-handler.c
index 28aa93d..2aed148 100644
--- a/modules/calendar/e-cal-attachment-handler.c
+++ b/modules/calendar/e-cal-attachment-handler.c
@@ -314,7 +314,7 @@ attachment_handler_run_dialog (GtkWindow *parent,
 
        dialog = gtk_dialog_new_with_buttons (
                title, parent, GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL, NULL);
 
        widget = gtk_button_new_with_mnemonic (_("I_mport"));
        gtk_button_set_image (
diff --git a/modules/calendar/e-cal-shell-view-actions.c b/modules/calendar/e-cal-shell-view-actions.c
index 30604d9..1dd1b33 100644
--- a/modules/calendar/e-cal-shell-view-actions.c
+++ b/modules/calendar/e-cal-shell-view-actions.c
@@ -1346,28 +1346,28 @@ action_event_schedule_appointment_cb (GtkAction *action,
 static GtkActionEntry calendar_entries[] = {
 
        { "calendar-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_calendar_copy_cb) },
 
        { "calendar-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("D_elete Calendar"),
          NULL,
          N_("Delete the selected calendar"),
          G_CALLBACK (action_calendar_delete_cb) },
 
        { "calendar-go-back",
-         GTK_STOCK_GO_BACK,
+         "go-previous",
          N_("Previous"),
          NULL,
          N_("Go Back"),
          G_CALLBACK (action_calendar_go_back_cb) },
 
        { "calendar-go-forward",
-         GTK_STOCK_GO_FORWARD,
+         "go-next",
          N_("Next"),
          NULL,
          N_("Go Forward"),
@@ -1381,7 +1381,7 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_calendar_go_today_cb) },
 
        { "calendar-jump-to",
-         GTK_STOCK_JUMP_TO,
+         "go-jump",
          N_("Select _Date"),
          "<Control>g",
          N_("Select a specific date"),
@@ -1395,8 +1395,8 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_calendar_new_cb) },
 
        { "calendar-properties",
-         GTK_STOCK_PROPERTIES,
-         NULL,
+         "document-properties",
+         N_("_Properties"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_calendar_properties_cb) },
@@ -1409,7 +1409,7 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_calendar_purge_cb) },
 
        { "calendar-refresh",
-         GTK_STOCK_REFRESH,
+         "view-refresh",
          N_("Re_fresh"),
          NULL,
          N_("Refresh the selected calendar"),
@@ -1423,21 +1423,21 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_calendar_rename_cb) },
 
        { "calendar-search-next",
-         GTK_STOCK_GO_FORWARD,
+         "go-next",
          N_("Find _Next"),
          "<Control><Shift>n",
          N_("Find next occurrence of the current search string"),
          G_CALLBACK (action_calendar_search_next_cb) },
 
        { "calendar-search-prev",
-         GTK_STOCK_GO_BACK,
+         "go-previous",
          N_("Find _Previous"),
          "<Control><Shift>p",
          N_("Find previous occurrence of the current search string"),
          G_CALLBACK (action_calendar_search_prev_cb) },
 
        { "calendar-search-stop",
-         GTK_STOCK_STOP,
+         "process-stop",
          N_("Stop _Running Search"),
          NULL,
          N_("Stop currently running search"),
@@ -1465,21 +1465,21 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_event_delegate_cb) },
 
        { "event-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("_Delete Appointment"),
          "<Control>d",
          N_("Delete selected appointments"),
          G_CALLBACK (action_event_delete_cb) },
 
        { "event-delete-occurrence",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("Delete This _Occurrence"),
          NULL,
          N_("Delete this occurrence"),
          G_CALLBACK (action_event_delete_occurrence_cb) },
 
        { "event-delete-occurrence-all",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("Delete All Occ_urrences"),
          NULL,
          N_("Delete all occurrences"),
@@ -1528,7 +1528,7 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_event_occurrence_movable_cb) },
 
        { "event-open",
-         GTK_STOCK_OPEN,
+         "document-open",
          N_("_Open Appointment"),
          "<Control>o",
          N_("View the current appointment"),
@@ -1563,7 +1563,7 @@ static GtkActionEntry calendar_entries[] = {
          G_CALLBACK (action_event_schedule_appointment_cb) },
 
        { "quit-calendar",
-         GTK_STOCK_CLOSE,
+         "window-close",
          N_("Quit"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
@@ -1790,22 +1790,22 @@ static GtkRadioActionEntry calendar_search_entries[] = {
 static GtkActionEntry lockdown_printing_entries[] = {
 
        { "calendar-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          "<Control>p",
          N_("Print this calendar"),
          G_CALLBACK (action_calendar_print_cb) },
 
        { "calendar-print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
-         NULL,
+         "document-print-preview",
+         N_("Pre_view..."),
          NULL,
          N_("Preview the calendar to be printed"),
          G_CALLBACK (action_calendar_print_preview_cb) },
 
        { "event-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_event_print_cb) }
@@ -1821,7 +1821,7 @@ static EPopupActionEntry lockdown_printing_popup_entries[] = {
 static GtkActionEntry lockdown_save_to_disk_entries[] = {
 
        { "event-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("_Save as iCalendar..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
diff --git a/modules/calendar/e-cal-shell-view-memopad.c b/modules/calendar/e-cal-shell-view-memopad.c
index f14519b..c7917ea 100644
--- a/modules/calendar/e-cal-shell-view-memopad.c
+++ b/modules/calendar/e-cal-shell-view-memopad.c
@@ -274,7 +274,7 @@ static GtkActionEntry calendar_memopad_entries[] = {
          G_CALLBACK (action_calendar_memopad_new_cb) },
 
        { "calendar-memopad-open",
-         GTK_STOCK_OPEN,
+         "document-open",
          N_("_Open Memo"),
          NULL,
          N_("View the selected memo"),
@@ -291,8 +291,8 @@ static GtkActionEntry calendar_memopad_entries[] = {
 static GtkActionEntry lockdown_printing_entries[] = {
 
        { "calendar-memopad-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          NULL,
          N_("Print the selected memo"),
          G_CALLBACK (action_calendar_memopad_print_cb) }
@@ -301,7 +301,7 @@ static GtkActionEntry lockdown_printing_entries[] = {
 static GtkActionEntry lockdown_save_to_disk_entries[] = {
 
        { "calendar-memopad-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("_Save as iCalendar..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
diff --git a/modules/calendar/e-cal-shell-view-taskpad.c b/modules/calendar/e-cal-shell-view-taskpad.c
index d5c8b21..6b881bb 100644
--- a/modules/calendar/e-cal-shell-view-taskpad.c
+++ b/modules/calendar/e-cal-shell-view-taskpad.c
@@ -361,7 +361,7 @@ static GtkActionEntry calendar_taskpad_entries[] = {
          G_CALLBACK (action_calendar_taskpad_new_cb) },
 
        { "calendar-taskpad-open",
-         GTK_STOCK_OPEN,
+         "document-open",
          N_("_Open Task"),
          NULL,
          N_("View the selected task"),
@@ -378,8 +378,8 @@ static GtkActionEntry calendar_taskpad_entries[] = {
 static GtkActionEntry lockdown_printing_entries[] = {
 
        { "calendar-taskpad-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          NULL,
          N_("Print the selected task"),
          G_CALLBACK (action_calendar_taskpad_print_cb) }
@@ -388,7 +388,7 @@ static GtkActionEntry lockdown_printing_entries[] = {
 static GtkActionEntry lockdown_save_to_disk_entries[] = {
 
        { "calendar-taskpad-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("_Save as iCalendar..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
diff --git a/modules/calendar/e-memo-shell-view-actions.c b/modules/calendar/e-memo-shell-view-actions.c
index e1cc3cb..251eb39 100644
--- a/modules/calendar/e-memo-shell-view-actions.c
+++ b/modules/calendar/e-memo-shell-view-actions.c
@@ -582,14 +582,14 @@ action_memo_view_cb (GtkRadioAction *action,
 static GtkActionEntry memo_entries[] = {
 
        { "memo-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("_Delete Memo"),
          NULL,
          N_("Delete selected memos"),
          G_CALLBACK (action_memo_delete_cb) },
 
        { "memo-find",
-         GTK_STOCK_FIND,
+         "edit-find",
          N_("_Find in Memo..."),
          "<Shift><Control>f",
          N_("Search for text in the displayed memo"),
@@ -603,14 +603,14 @@ static GtkActionEntry memo_entries[] = {
          G_CALLBACK (action_memo_forward_cb) },
 
        { "memo-list-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("_Copy..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_memo_list_copy_cb) },
 
        { "memo-list-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("D_elete Memo List"),
          NULL,
          N_("Delete the selected memo list"),
@@ -624,14 +624,14 @@ static GtkActionEntry memo_entries[] = {
          G_CALLBACK (action_memo_list_new_cb) },
 
        { "memo-list-properties",
-         GTK_STOCK_PROPERTIES,
-         NULL,
+         "document-properties",
+         N_("_Properties"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_memo_list_properties_cb) },
 
        { "memo-list-refresh",
-         GTK_STOCK_REFRESH,
+         "view-refresh",
          N_("Re_fresh"),
          NULL,
          N_("Refresh the selected memo list"),
@@ -659,7 +659,7 @@ static GtkActionEntry memo_entries[] = {
          G_CALLBACK (action_memo_new_cb) },
 
        { "memo-open",
-         GTK_STOCK_OPEN,
+         "document-open",
          N_("_Open Memo"),
          "<Control>o",
          N_("View the selected memo"),
@@ -810,22 +810,22 @@ static GtkRadioActionEntry memo_search_entries[] = {
 static GtkActionEntry lockdown_printing_entries[] = {
 
        { "memo-list-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          "<Control>p",
          N_("Print the list of memos"),
          G_CALLBACK (action_memo_list_print_cb) },
 
        { "memo-list-print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
-         NULL,
+         "document-print-preview",
+         N_("Pre_view..."),
          NULL,
          N_("Preview the list of memos to be printed"),
          G_CALLBACK (action_memo_list_print_preview_cb) },
 
        { "memo-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          NULL,
          N_("Print the selected memo"),
          G_CALLBACK (action_memo_print_cb) }
@@ -841,7 +841,7 @@ static EPopupActionEntry lockdown_printing_popup_entries[] = {
 static GtkActionEntry lockdown_save_to_disk_entries[] = {
 
        { "memo-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("_Save as iCalendar..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
diff --git a/modules/calendar/e-task-shell-view-actions.c b/modules/calendar/e-task-shell-view-actions.c
index 63a4e6e..b5e3479 100644
--- a/modules/calendar/e-task-shell-view-actions.c
+++ b/modules/calendar/e-task-shell-view-actions.c
@@ -706,14 +706,14 @@ static GtkActionEntry task_entries[] = {
          G_CALLBACK (action_task_assign_cb) },
 
        { "task-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("_Delete Task"),
          NULL,
          N_("Delete selected tasks"),
          G_CALLBACK (action_task_delete_cb) },
 
        { "task-find",
-         GTK_STOCK_FIND,
+         "edit-find",
          N_("_Find in Task..."),
          "<Shift><Control>f",
          N_("Search for text in the displayed task"),
@@ -727,14 +727,14 @@ static GtkActionEntry task_entries[] = {
          G_CALLBACK (action_task_forward_cb) },
 
        { "task-list-copy",
-         GTK_STOCK_COPY,
+         "edit-copy",
          N_("Copy..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_task_list_copy_cb) },
 
        { "task-list-delete",
-         GTK_STOCK_DELETE,
+         "edit-delete",
          N_("D_elete Task List"),
          NULL,
          N_("Delete the selected task list"),
@@ -748,14 +748,14 @@ static GtkActionEntry task_entries[] = {
          G_CALLBACK (action_task_list_new_cb) },
 
        { "task-list-properties",
-         GTK_STOCK_PROPERTIES,
-         NULL,
+         "document-properties",
+         N_("_Properties"),
          NULL,
          NULL,  /* XXX Add a tooltip! */
          G_CALLBACK (action_task_list_properties_cb) },
 
        { "task-list-refresh",
-         GTK_STOCK_REFRESH,
+         "view-refresh",
          N_("Re_fresh"),
          NULL,
          N_("Refresh the selected task list"),
@@ -797,7 +797,7 @@ static GtkActionEntry task_entries[] = {
          G_CALLBACK (action_task_new_cb) },
 
        { "task-open",
-         GTK_STOCK_OPEN,
+         "document-open",
          N_("_Open Task"),
          "<Control>o",
          N_("View the selected task"),
@@ -1009,22 +1009,22 @@ static GtkRadioActionEntry task_search_entries[] = {
 static GtkActionEntry lockdown_printing_entries[] = {
 
        { "task-list-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          "<Control>p",
          N_("Print the list of tasks"),
          G_CALLBACK (action_task_list_print_cb) },
 
        { "task-list-print-preview",
-         GTK_STOCK_PRINT_PREVIEW,
-         NULL,
+         "document-print-preview",
+         N_("Pre_view..."),
          NULL,
          N_("Preview the list of tasks to be printed"),
          G_CALLBACK (action_task_list_print_preview_cb) },
 
        { "task-print",
-         GTK_STOCK_PRINT,
-         NULL,
+         "document-print",
+         N_("Print..."),
          NULL,
          N_("Print the selected task"),
          G_CALLBACK (action_task_print_cb) }
@@ -1040,7 +1040,7 @@ static EPopupActionEntry lockdown_printing_popup_entries[] = {
 static GtkActionEntry lockdown_save_to_disk_entries[] = {
 
        { "task-save-as",
-         GTK_STOCK_SAVE_AS,
+         "document-save-as",
          N_("_Save as iCalendar..."),
          NULL,
          NULL,  /* XXX Add a tooltip! */
diff --git a/modules/itip-formatter/itip-view.c b/modules/itip-formatter/itip-view.c
index 8c08134..b33d85b 100644
--- a/modules/itip-formatter/itip-view.c
+++ b/modules/itip-formatter/itip-view.c
@@ -915,16 +915,16 @@ append_info_item_row (ItipView *view,
 
        switch (item->type) {
                case ITIP_VIEW_INFO_ITEM_TYPE_INFO:
-                       icon_name = GTK_STOCK_DIALOG_INFO;
+                       icon_name = "dialog-information";
                        break;
                case ITIP_VIEW_INFO_ITEM_TYPE_WARNING:
-                       icon_name = GTK_STOCK_DIALOG_WARNING;
+                       icon_name = "dialog-warning";
                        break;
                case ITIP_VIEW_INFO_ITEM_TYPE_ERROR:
-                       icon_name = GTK_STOCK_DIALOG_ERROR;
+                       icon_name = "dialog-error";
                        break;
                case ITIP_VIEW_INFO_ITEM_TYPE_PROGRESS:
-                       icon_name = GTK_STOCK_FIND;
+                       icon_name = "edit-find";
                        break;
                case ITIP_VIEW_INFO_ITEM_TYPE_NONE:
                        default:
@@ -1019,34 +1019,34 @@ append_buttons_table (GString *buffer)
         /* Everything gets the open button */
        buttons_table_write_button (
                buffer, BUTTON_OPEN_CALENDAR, _("Ope_n Calendar"),
-               GTK_STOCK_JUMP_TO, ITIP_VIEW_RESPONSE_OPEN);
+               "go-jump", ITIP_VIEW_RESPONSE_OPEN);
        buttons_table_write_button (
                buffer, BUTTON_DECLINE_ALL, _("_Decline all"),
-               GTK_STOCK_CANCEL, ITIP_VIEW_RESPONSE_DECLINE);
+               "process-stop", ITIP_VIEW_RESPONSE_DECLINE);
        buttons_table_write_button (
                buffer, BUTTON_DECLINE, _("_Decline"),
-               GTK_STOCK_CANCEL, ITIP_VIEW_RESPONSE_DECLINE);
+               "process-stop", ITIP_VIEW_RESPONSE_DECLINE);
        buttons_table_write_button (
                buffer, BUTTON_TENTATIVE_ALL, _("_Tentative all"),
-               GTK_STOCK_DIALOG_QUESTION, ITIP_VIEW_RESPONSE_TENTATIVE);
+               "dialog-question", ITIP_VIEW_RESPONSE_TENTATIVE);
        buttons_table_write_button (
                buffer, BUTTON_TENTATIVE, _("_Tentative"),
-               GTK_STOCK_DIALOG_QUESTION, ITIP_VIEW_RESPONSE_TENTATIVE);
+               "dialog-question", ITIP_VIEW_RESPONSE_TENTATIVE);
        buttons_table_write_button (
                buffer, BUTTON_ACCEPT_ALL, _("Acce_pt all"),
-               GTK_STOCK_APPLY, ITIP_VIEW_RESPONSE_ACCEPT);
+               "dialog-apply", ITIP_VIEW_RESPONSE_ACCEPT);
        buttons_table_write_button (
                buffer, BUTTON_ACCEPT, _("Acce_pt"),
-               GTK_STOCK_APPLY, ITIP_VIEW_RESPONSE_ACCEPT);
+               "dialog-apply", ITIP_VIEW_RESPONSE_ACCEPT);
        buttons_table_write_button (
                buffer, BUTTON_SEND_INFORMATION, _("Send _Information"),
-               GTK_STOCK_REFRESH, ITIP_VIEW_RESPONSE_REFRESH);
+               "view-refresh", ITIP_VIEW_RESPONSE_REFRESH);
        buttons_table_write_button (
                buffer, BUTTON_UPDATE_ATTENDEE_STATUS, _("_Update Attendee Status"),
-               GTK_STOCK_REFRESH, ITIP_VIEW_RESPONSE_UPDATE);
+               "view-refresh", ITIP_VIEW_RESPONSE_UPDATE);
        buttons_table_write_button (
                buffer, BUTTON_UPDATE,  _("_Update"),
-               GTK_STOCK_REFRESH, ITIP_VIEW_RESPONSE_CANCEL);
+               "view-refresh", ITIP_VIEW_RESPONSE_CANCEL);
 
        g_string_append (buffer, "</tr></table>");
 }
@@ -3114,7 +3114,7 @@ itip_view_set_error (ItipView *view,
 
                buttons_table_write_button (
                        str, BUTTON_SAVE, _("Sa_ve"),
-                       GTK_STOCK_SAVE, ITIP_VIEW_RESPONSE_SAVE);
+                       "document-save", ITIP_VIEW_RESPONSE_SAVE);
 
                g_string_append (str, "</tr></table>");
        }
diff --git a/modules/mail/e-mail-shell-view-actions.c b/modules/mail/e-mail-shell-view-actions.c
index 2be3f59..a93191c 100644
--- a/modules/mail/e-mail-shell-view-actions.c
+++ b/modules/mail/e-mail-shell-view-actions.c
@@ -1522,14 +1522,14 @@ static GtkActionEntry mail_entries[] = {
          G_CALLBACK (action_mail_folder_expunge_cb) },
 
        { "mail-account-properties",
-         GTK_STOCK_PROPERTIES,
+         "document-properties",
          N_("_Properties"),
          NULL,
          N_("Edit properties of this account"),
          G_CALLBACK (action_mail_account_properties_cb) },
 
        { "mail-account-refresh",
-         GTK_STOCK_REFRESH,
+         "view-refresh",
          N_("_Refresh"),
          NULL,
          N_("Refresh list of folders of this account"),
@@ -1557,8 +1557,8 @@ static GtkActionEntry mail_entries[] = {
          G_CALLBACK (action_mail_folder_copy_cb) },
 
        { "mail-folder-delete",
-         GTK_STOCK_DELETE,
-         NULL,
+         "edit-delete",
+         N_("_Delete"),
          NULL,
          N_("Permanently remove this folder"),
          G_CALLBACK (action_mail_folder_delete_cb) },
@@ -1592,15 +1592,15 @@ static GtkActionEntry mail_entries[] = {
          G_CALLBACK (action_mail_folder_new_cb) },
 
        { "mail-folder-properties",
-         GTK_STOCK_PROPERTIES,
-         NULL,
+         "document-properties",
+         N_("_Properties"),
          NULL,
          N_("Change the properties of this folder"),
          G_CALLBACK (action_mail_folder_properties_cb) },
 
        { "mail-folder-refresh",
-         GTK_STOCK_REFRESH,
-         NULL,
+         "view-refresh",
+         N_("_Refresh"),
          "F5",
          N_("Refresh the folder"),
          G_CALLBACK (action_mail_folder_refresh_cb) },
@@ -1720,7 +1720,7 @@ static GtkActionEntry mail_entries[] = {
          G_CALLBACK (action_mail_smart_forward_cb) },
 
        { "mail-stop",
-         GTK_STOCK_STOP,
+         "process-stop",
          N_("Cancel"),
          NULL,
          N_("Cancel the current mail operation"),
diff --git a/modules/mail/em-composer-prefs.c b/modules/mail/em-composer-prefs.c
index 090dc2e..495274d 100644
--- a/modules/mail/em-composer-prefs.c
+++ b/modules/mail/em-composer-prefs.c
@@ -1198,9 +1198,9 @@ em_composer_prefs_construct (EMComposerPrefs *prefs,
        selection = gtk_tree_view_get_selection (view);
        gtk_tree_selection_set_mode (selection, GTK_SELECTION_NONE);
        info_pixmap = e_builder_get_widget (prefs->builder, "pixmapSpellInfo");
-       gtk_image_set_from_stock (
+       gtk_image_set_from_icon_name (
                GTK_IMAGE (info_pixmap),
-               GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_BUTTON);
+               "dialog-information", GTK_ICON_SIZE_BUTTON);
 
        widget = e_builder_get_widget (prefs->builder, "colorButtonSpellCheckColor");
        g_settings_bind_with_mapping (
diff --git a/modules/mailto-handler/evolution-mailto-handler.c 
b/modules/mailto-handler/evolution-mailto-handler.c
index d86bd5b..3da4b58 100644
--- a/modules/mailto-handler/evolution-mailto-handler.c
+++ b/modules/mailto-handler/evolution-mailto-handler.c
@@ -111,8 +111,8 @@ mailto_handler_prompt (EMailtoHandler *extension)
 
        dialog = gtk_dialog_new_with_buttons (
                "", NULL, 0,
-               GTK_STOCK_NO, GTK_RESPONSE_NO,
-               GTK_STOCK_YES, GTK_RESPONSE_YES,
+               _("_No"), GTK_RESPONSE_NO,
+               _("_Yes"), GTK_RESPONSE_YES,
                NULL);
 
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_YES);
@@ -127,8 +127,7 @@ mailto_handler_prompt (EMailtoHandler *extension)
 
        container = widget;
 
-       widget = gtk_image_new_from_stock (
-               GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
+       widget = gtk_image_new_from_icon_name ("dialog-question", GTK_ICON_SIZE_DIALOG);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_show (widget);
 
diff --git a/modules/plugin-manager/evolution-plugin-manager.c 
b/modules/plugin-manager/evolution-plugin-manager.c
index 52eb91c..a042481 100644
--- a/modules/plugin-manager/evolution-plugin-manager.c
+++ b/modules/plugin-manager/evolution-plugin-manager.c
@@ -253,7 +253,7 @@ action_plugin_manager_cb (GtkAction *action,
                _("Plugin Manager"),
                GTK_WINDOW (extensible),
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL);
+               _("_Close"), GTK_RESPONSE_CLOSE, NULL);
 
        content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
 
diff --git a/modules/startup-wizard/e-mail-config-import-progress-page.c 
b/modules/startup-wizard/e-mail-config-import-progress-page.c
index 22febdd..6dbc4b7 100644
--- a/modules/startup-wizard/e-mail-config-import-progress-page.c
+++ b/modules/startup-wizard/e-mail-config-import-progress-page.c
@@ -252,8 +252,7 @@ mail_config_import_progress_page_constructed (GObject *object)
 
        container = widget;
 
-       widget = gtk_image_new_from_stock (
-               GTK_STOCK_CANCEL, GTK_ICON_SIZE_MENU);
+       widget = gtk_image_new_from_icon_name ("process-stop", GTK_ICON_SIZE_MENU);
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
        gtk_widget_show (widget);
 
diff --git a/plugins/attachment-reminder/attachment-reminder.c 
b/plugins/attachment-reminder/attachment-reminder.c
index fc69cff..cd41cfb 100644
--- a/plugins/attachment-reminder/attachment-reminder.c
+++ b/plugins/attachment-reminder/attachment-reminder.c
@@ -27,6 +27,8 @@
 #include <glib/gi18n.h>
 #include <string.h>
 
+#include <e-util/e-util.h>
+
 #include <mail/em-config.h>
 #include <mail/em-event.h>
 
@@ -552,17 +554,17 @@ e_plugin_lib_get_configure_widget (EPlugin *plugin)
        gtk_button_box_set_layout (GTK_BUTTON_BOX (vbuttonbox2), GTK_BUTTONBOX_START);
        gtk_box_set_spacing (GTK_BOX (vbuttonbox2), 6);
 
-       clue_add = gtk_button_new_from_stock ("gtk-add");
+       clue_add = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        gtk_widget_show (clue_add);
        gtk_container_add (GTK_CONTAINER (vbuttonbox2), clue_add);
        gtk_widget_set_can_default (clue_add, TRUE);
 
-       clue_edit = gtk_button_new_from_stock ("gtk-edit");
+       clue_edit = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_widget_show (clue_edit);
        gtk_container_add (GTK_CONTAINER (vbuttonbox2), clue_edit);
        gtk_widget_set_can_default (clue_edit, TRUE);
 
-       clue_remove = gtk_button_new_from_stock ("gtk-remove");
+       clue_remove = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        gtk_widget_show (clue_remove);
        gtk_container_add (GTK_CONTAINER (vbuttonbox2), clue_remove);
        gtk_widget_set_can_default (clue_remove, TRUE);
diff --git a/plugins/email-custom-header/email-custom-header.c 
b/plugins/email-custom-header/email-custom-header.c
index e2dc238..1642ea5 100644
--- a/plugins/email-custom-header/email-custom-header.c
+++ b/plugins/email-custom-header/email-custom-header.c
@@ -26,6 +26,8 @@
 #include <string.h>
 #include <glib/gi18n.h>
 
+#include <e-util/e-util.h>
+
 #include "mail/em-utils.h"
 #include "mail/em-event.h"
 #include "composer/e-msg-composer.h"
@@ -833,17 +835,17 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
        gtk_button_box_set_layout (GTK_BUTTON_BOX (vbuttonbox1), GTK_BUTTONBOX_START);
        gtk_box_set_spacing (GTK_BOX (vbuttonbox1), 6);
 
-       header_add = gtk_button_new_from_stock ("gtk-add");
+       header_add = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        gtk_widget_show (header_add);
        gtk_container_add (GTK_CONTAINER (vbuttonbox1), header_add);
        gtk_widget_set_can_default (header_add, TRUE);
 
-       header_edit = gtk_button_new_from_stock ("gtk-edit");
+       header_edit = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_widget_show (header_edit);
        gtk_container_add (GTK_CONTAINER (vbuttonbox1), header_edit);
        gtk_widget_set_can_default (header_edit, TRUE);
 
-       header_remove = gtk_button_new_from_stock ("gtk-remove");
+       header_remove = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        gtk_widget_show (header_remove);
        gtk_container_add (GTK_CONTAINER (vbuttonbox1), header_remove);
        gtk_widget_set_can_default (header_remove, TRUE);
diff --git a/plugins/email-custom-header/org-gnome-email-custom-header.ui 
b/plugins/email-custom-header/org-gnome-email-custom-header.ui
index 26857d9..782ad2b 100644
--- a/plugins/email-custom-header/org-gnome-email-custom-header.ui
+++ b/plugins/email-custom-header/org-gnome-email-custom-header.ui
@@ -32,8 +32,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-help</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Help</property>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -43,8 +44,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_Cancel</property>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
@@ -54,8 +56,9 @@
                 <property name="visible">True</property>
                 <property name="can_default">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-ok</property>
-                <property name="use_stock">True</property>
+                <property name="label" translatable="yes">_OK</property>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
                 <property name="relief">GTK_RELIEF_NORMAL</property>
                 <property name="focus_on_click">True</property>
               </object>
diff --git a/plugins/external-editor/external-editor.c b/plugins/external-editor/external-editor.c
index c58ac88..46f3be3 100644
--- a/plugins/external-editor/external-editor.c
+++ b/plugins/external-editor/external-editor.c
@@ -413,7 +413,7 @@ static void launch_editor (GtkAction *action, EMsgComposer *composer)
 
 static GtkActionEntry entries[] = {
        { "ExternalEditor",
-         GTK_STOCK_EDIT,
+         NULL,
          N_("Compose in External Editor"),
          "<Shift><Control>e",
          N_("Compose in External Editor"),
diff --git a/plugins/face/face.c b/plugins/face/face.c
index 1f0249c..e40bdfc 100644
--- a/plugins/face/face.c
+++ b/plugins/face/face.c
@@ -285,12 +285,12 @@ choose_new_face (void)
        GtkFileFilter *filter;
 
        filesel = gtk_file_chooser_dialog_new (
-                               _("Select a Face Picture"),
-                               NULL,
-                               GTK_FILE_CHOOSER_ACTION_OPEN,
-                               GTK_STOCK_CANCEL,
-                               GTK_RESPONSE_CANCEL,
-                               GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL);
+               _("Select a Face Picture"),
+               NULL,
+               GTK_FILE_CHOOSER_ACTION_OPEN,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Open"), GTK_RESPONSE_OK,
+               NULL);
 
        gtk_dialog_set_default_response (GTK_DIALOG (filesel), GTK_RESPONSE_OK);
 
diff --git a/plugins/mail-to-task/mail-to-task.c b/plugins/mail-to-task/mail-to-task.c
index 807b523..a93848c 100644
--- a/plugins/mail-to-task/mail-to-task.c
+++ b/plugins/mail-to-task/mail-to-task.c
@@ -590,9 +590,9 @@ do_ask (const gchar *text,
        if (is_create_edit_add) {
                gtk_dialog_add_buttons (
                        GTK_DIALOG (dialog),
-                       GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-                       GTK_STOCK_EDIT, GTK_RESPONSE_YES,
-                       GTK_STOCK_NEW, GTK_RESPONSE_NO,
+                       _("_Cancel"), GTK_RESPONSE_CANCEL,
+                       _("_Edit"), GTK_RESPONSE_YES,
+                       _("_New"), GTK_RESPONSE_NO,
                        NULL);
        }
 
diff --git a/plugins/publish-calendar/publish-calendar.c b/plugins/publish-calendar/publish-calendar.c
index 67bfef9..455c34a 100644
--- a/plugins/publish-calendar/publish-calendar.c
+++ b/plugins/publish-calendar/publish-calendar.c
@@ -98,7 +98,7 @@ update_publish_notification (GtkMessageType msg_type,
        static gboolean can_notify = TRUE;
        #endif
        gboolean new_icon = !status_icon;
-       const gchar *stock_name;
+       const gchar *icon_name;
 
        g_return_if_fail (msg_text != NULL);
 
@@ -114,13 +114,13 @@ update_publish_notification (GtkMessageType msg_type,
 
        switch (msg_type) {
        case GTK_MESSAGE_WARNING:
-               stock_name = GTK_STOCK_DIALOG_WARNING;
+               icon_name = "dialog-warning";
                break;
        case GTK_MESSAGE_ERROR:
-               stock_name = GTK_STOCK_DIALOG_ERROR;
+               icon_name = "dialog-error";
                break;
        default:
-               stock_name = GTK_STOCK_DIALOG_INFO;
+               icon_name = "dialog-information";
                break;
        }
 
@@ -131,20 +131,20 @@ update_publish_notification (GtkMessageType msg_type,
                g_string_append (actual_msg, msg_text);
        }
 
-       gtk_status_icon_set_from_stock (status_icon, stock_name);
+       gtk_status_icon_set_from_icon_name (status_icon, icon_name);
        gtk_status_icon_set_tooltip_text (status_icon, actual_msg->str);
 
 #ifdef HAVE_LIBNOTIFY
        if (can_notify) {
                if (notify) {
-                       notify_notification_update (notify, _("Calendar Publishing"), actual_msg->str, 
stock_name);
+                       notify_notification_update (notify, _("Calendar Publishing"), actual_msg->str, 
icon_name);
                } else {
                        if (!notify_init ("evolution-publish-calendar")) {
                                can_notify = FALSE;
                                return;
                        }
 
-                       notify  = notify_notification_new (_("Calendar Publishing"), actual_msg->str, 
stock_name);
+                       notify  = notify_notification_new (_("Calendar Publishing"), actual_msg->str, 
icon_name);
                        notify_notification_set_urgency (notify, NOTIFY_URGENCY_NORMAL);
                        notify_notification_set_timeout (notify, NOTIFY_EXPIRES_DEFAULT);
                        notify_notification_set_hint (
@@ -803,8 +803,8 @@ url_remove_clicked (GtkButton *button,
                NULL, GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
                _("Are you sure you want to remove this location?"));
-       gtk_dialog_add_button (GTK_DIALOG (confirm), GTK_STOCK_CANCEL, GTK_RESPONSE_NO);
-       gtk_dialog_add_button (GTK_DIALOG (confirm), GTK_STOCK_REMOVE, GTK_RESPONSE_YES);
+       gtk_dialog_add_button (GTK_DIALOG (confirm), _("_Cancel"), GTK_RESPONSE_NO);
+       gtk_dialog_add_button (GTK_DIALOG (confirm), _("_Remove"), GTK_RESPONSE_YES);
        gtk_dialog_set_default_response (GTK_DIALOG (confirm), GTK_RESPONSE_CANCEL);
 
        response = gtk_dialog_run (GTK_DIALOG (confirm));
@@ -933,7 +933,7 @@ publish_calendar_locations (EPlugin *epl,
        gtk_widget_set_sensitive (GTK_WIDGET (ui->url_remove), FALSE);
        gtk_widget_set_sensitive (GTK_WIDGET (ui->url_enable), FALSE);
 
-       gtk_button_set_image (GTK_BUTTON (ui->url_enable), gtk_image_new_from_stock (GTK_STOCK_APPLY, 
GTK_ICON_SIZE_BUTTON));
+       gtk_button_set_image (GTK_BUTTON (ui->url_enable), gtk_image_new_from_icon_name ("dialog-apply", 
GTK_ICON_SIZE_BUTTON));
        gtk_button_set_use_underline (GTK_BUTTON (ui->url_enable), TRUE);
 
        l = publish_uris;
diff --git a/plugins/publish-calendar/publish-calendar.ui b/plugins/publish-calendar/publish-calendar.ui
index 88bce42..f59ba9f 100644
--- a/plugins/publish-calendar/publish-calendar.ui
+++ b/plugins/publish-calendar/publish-calendar.ui
@@ -716,12 +716,13 @@
         <property name="layout_style">start</property>
         <child>
           <object class="GtkButton" id="url add">
-            <property name="label">gtk-add</property>
+            <property name="label" translatable="yes">_Add</property>
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="can_default">True</property>
             <property name="receives_default">True</property>
-            <property name="use_stock">True</property>
+            <property name="use_stock">False</property>
+            <property name="use-underline">True</property>
           </object>
           <packing>
             <property name="expand">False</property>
@@ -735,42 +736,8 @@
             <property name="can_focus">True</property>
             <property name="can_default">True</property>
             <property name="receives_default">True</property>
-            <child>
-              <object class="GtkAlignment" id="alignment2">
-                <property name="visible">True</property>
-                <property name="xscale">0</property>
-                <property name="yscale">0</property>
-                <child>
-                  <object class="GtkHBox" id="hbox2">
-                    <property name="visible">True</property>
-                    <property name="spacing">2</property>
-                    <child>
-                      <object class="GtkImage" id="image2">
-                        <property name="visible">True</property>
-                        <property name="stock">gtk-properties</property>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">0</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="label2">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">_Edit</property>
-                        <property name="use_underline">True</property>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </object>
-                </child>
-              </object>
-            </child>
+            <property name="label" translatable="yes">_Edit</property>
+            <property name="use_underline">True</property>
           </object>
           <packing>
             <property name="expand">False</property>
@@ -780,12 +747,13 @@
         </child>
         <child>
           <object class="GtkButton" id="url remove">
-            <property name="label">gtk-remove</property>
+            <property name="label" translatable="yes">_Remove</property>
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="can_default">True</property>
             <property name="receives_default">True</property>
-            <property name="use_stock">True</property>
+            <property name="use_stock">False</property>
+            <property name="use-underline">True</property>
           </object>
           <packing>
             <property name="expand">False</property>
@@ -799,42 +767,8 @@
             <property name="can_focus">True</property>
             <property name="can_default">True</property>
             <property name="receives_default">True</property>
-            <child>
-              <object class="GtkAlignment" id="alignment1">
-                <property name="visible">True</property>
-                <property name="xscale">0</property>
-                <property name="yscale">0</property>
-                <child>
-                  <object class="GtkHBox" id="hbox1">
-                    <property name="visible">True</property>
-                    <property name="spacing">2</property>
-                    <child>
-                      <object class="GtkImage" id="image1">
-                        <property name="visible">True</property>
-                        <property name="stock">gtk-apply</property>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">0</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="label1">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">E_nable</property>
-                        <property name="use_underline">True</property>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                  </object>
-                </child>
-              </object>
-            </child>
+            <property name="label" translatable="yes">E_nable</property>
+            <property name="use_underline">True</property>
           </object>
           <packing>
             <property name="expand">False</property>
diff --git a/plugins/publish-calendar/url-editor-dialog.c b/plugins/publish-calendar/url-editor-dialog.c
index 9173cde..dfbbe69 100644
--- a/plugins/publish-calendar/url-editor-dialog.c
+++ b/plugins/publish-calendar/url-editor-dialog.c
@@ -418,8 +418,8 @@ url_editor_dialog_construct (UrlEditorDialog *dialog)
 
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 6);
 
-       dialog->cancel = gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
-       dialog->ok = gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_OK, GTK_RESPONSE_OK);
+       dialog->cancel = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Cancel"), GTK_RESPONSE_CANCEL);
+       dialog->ok = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_OK"), GTK_RESPONSE_OK);
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
        gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
        gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog), GTK_RESPONSE_OK, FALSE);
diff --git a/plugins/save-calendar/save-calendar.c b/plugins/save-calendar/save-calendar.c
index 79f3117..9d02ab8 100644
--- a/plugins/save-calendar/save-calendar.c
+++ b/plugins/save-calendar/save-calendar.c
@@ -186,8 +186,8 @@ ask_destination_and_save (ESourceSelector *selector,
                _("Select destination file"),
                NULL,
                GTK_FILE_CHOOSER_ACTION_SAVE,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE_AS, GTK_RESPONSE_OK,
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save As"), GTK_RESPONSE_OK,
                NULL);
 
        gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
@@ -338,15 +338,15 @@ calendar_save_as_init (GtkUIManager *ui_manager,
        GtkActionGroup *action_group;
        GtkAction *action;
        const gchar *tooltip;
-       const gchar *stock_id;
+       const gchar *icon_name;
        const gchar *name;
 
        shell_window = e_shell_view_get_shell_window (shell_view);
 
        name = "calendar-save-as";
        tooltip = _("Save the selected calendar to disk");
-       stock_id = GTK_STOCK_SAVE_AS;
-       action = gtk_action_new (name, NULL, tooltip, stock_id);
+       icon_name = "document-save-as";
+       action = gtk_action_new (name, _("Save _As"), tooltip, icon_name);
 
        name = "lockdown-save-to-disk";
        action_group = e_shell_window_get_action_group (shell_window, name);
@@ -369,15 +369,15 @@ memo_list_save_as_init (GtkUIManager *ui_manager,
        GtkActionGroup *action_group;
        GtkAction *action;
        const gchar *tooltip;
-       const gchar *stock_id;
+       const gchar *icon_name;
        const gchar *name;
 
        shell_window = e_shell_view_get_shell_window (shell_view);
 
        name = "memo-list-save-as";
        tooltip = _("Save the selected memo list to disk");
-       stock_id = GTK_STOCK_SAVE_AS;
-       action = gtk_action_new (name, NULL, tooltip, stock_id);
+       icon_name = "document-save-as";
+       action = gtk_action_new (name, _("Save _As"), tooltip, icon_name);
 
        name = "lockdown-save-to-disk";
        action_group = e_shell_window_get_action_group (shell_window, name);
@@ -400,15 +400,15 @@ task_list_save_as_init (GtkUIManager *ui_manager,
        GtkActionGroup *action_group;
        GtkAction *action;
        const gchar *tooltip;
-       const gchar *stock_id;
+       const gchar *icon_name;
        const gchar *name;
 
        shell_window = e_shell_view_get_shell_window (shell_view);
 
        name = "task-list-save-as";
        tooltip = _("Save the selected task list to disk");
-       stock_id = GTK_STOCK_SAVE_AS;
-       action = gtk_action_new (name, NULL, tooltip, stock_id);
+       icon_name = "document-save-as";
+       action = gtk_action_new (name, _("Save _As"), tooltip, icon_name);
 
        name = "lockdown-save-to-disk";
        action_group = e_shell_window_get_action_group (shell_window, name);
diff --git a/plugins/templates/templates.c b/plugins/templates/templates.c
index 070c7b2..fbe20d0 100644
--- a/plugins/templates/templates.c
+++ b/plugins/templates/templates.c
@@ -29,6 +29,8 @@
 #include <glib/gi18n.h>
 #include <string.h>
 
+#include <e-util/e-util.h>
+
 #include <shell/e-shell-view.h>
 
 #include <mail/e-mail-reader.h>
@@ -448,17 +450,17 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
        gtk_button_box_set_layout (GTK_BUTTON_BOX (vbuttonbox2), GTK_BUTTONBOX_START);
        gtk_box_set_spacing (GTK_BOX (vbuttonbox2), 6);
 
-       clue_add = gtk_button_new_from_stock ("gtk-add");
+       clue_add = e_dialog_button_new_with_icon ("list-add", _("_Add"));
        gtk_widget_show (clue_add);
        gtk_container_add (GTK_CONTAINER (vbuttonbox2), clue_add);
        gtk_widget_set_can_default (clue_add, TRUE);
 
-       clue_edit = gtk_button_new_from_stock ("gtk-edit");
+       clue_edit = gtk_button_new_with_mnemonic (_("_Edit"));
        gtk_widget_show (clue_edit);
        gtk_container_add (GTK_CONTAINER (vbuttonbox2), clue_edit);
        gtk_widget_set_can_default (clue_edit, TRUE);
 
-       clue_remove = gtk_button_new_from_stock ("gtk-remove");
+       clue_remove = e_dialog_button_new_with_icon ("list-remove", _("_Remove"));
        gtk_widget_show (clue_remove);
        gtk_container_add (GTK_CONTAINER (vbuttonbox2), clue_remove);
        gtk_widget_set_can_default (clue_remove, TRUE);
@@ -1249,7 +1251,7 @@ action_template_cb (GtkAction *action,
 static GtkActionEntry composer_entries[] = {
 
        { "template",
-         GTK_STOCK_SAVE,
+         "document-save",
          N_("Save as _Template"),
          "<Shift><Control>t",
          N_("Save as Template"),
diff --git a/shell/e-shell-content.c b/shell/e-shell-content.c
index 96297b6..de4a58d 100644
--- a/shell/e-shell-content.c
+++ b/shell/e-shell-content.c
@@ -656,9 +656,9 @@ e_shell_content_run_advanced_search_dialog (EShellContent *shell_content)
        dialog = gtk_dialog_new_with_buttons (
                _("Advanced Search"), GTK_WINDOW (shell_window),
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE, GTK_RESPONSE_APPLY,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save"), GTK_RESPONSE_APPLY,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 7);
        gtk_container_set_border_width (GTK_CONTAINER (widget), 3);
@@ -763,8 +763,8 @@ e_shell_content_run_save_search_dialog (EShellContent *shell_content)
        dialog = gtk_dialog_new_with_buttons (
                _("Save Search"), GTK_WINDOW (shell_window),
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 7);
        gtk_container_set_border_width (GTK_CONTAINER (widget), 3);
diff --git a/shell/e-shell-utils.c b/shell/e-shell-utils.c
index 984c90b..56430ab 100644
--- a/shell/e-shell-utils.c
+++ b/shell/e-shell-utils.c
@@ -67,8 +67,8 @@ e_shell_run_open_dialog (EShell *shell,
        dialog = gtk_file_chooser_dialog_new (
                title, parent,
                GTK_FILE_CHOOSER_ACTION_OPEN,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Open"), GTK_RESPONSE_ACCEPT, NULL);
 
        file_chooser = GTK_FILE_CHOOSER (dialog);
 
@@ -131,8 +131,8 @@ e_shell_run_save_dialog (EShell *shell,
        dialog = gtk_file_chooser_dialog_new (
                title, parent,
                GTK_FILE_CHOOSER_ACTION_SAVE,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Save"), GTK_RESPONSE_ACCEPT, NULL);
 
        file_chooser = GTK_FILE_CHOOSER (dialog);
 
diff --git a/shell/e-shell-window-actions.c b/shell/e-shell-window-actions.c
index 4ff9b5a..fcf1e07 100644
--- a/shell/e-shell-window-actions.c
+++ b/shell/e-shell-window-actions.c
@@ -340,7 +340,7 @@ action_categories_cb (GtkAction *action,
                _("Categories Editor"),
                GTK_WINDOW (shell_window),
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL);
+               _("_Close"), GTK_RESPONSE_CLOSE, NULL);
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 12);
        content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
        gtk_box_pack_start (
@@ -846,57 +846,57 @@ action_work_online_cb (GtkAction *action,
 static GtkActionEntry shell_entries[] = {
 
        { "about",
-         GTK_STOCK_ABOUT,
-         NULL,
+         "help-about",
+         N_("_About"),
          NULL,
          N_("Show information about Evolution"),
          G_CALLBACK (action_about_cb) },
 
        { "close",
-         GTK_STOCK_CLOSE,
+         "window-close",
          N_("_Close Window"),
          "<Control>w",
          N_("Close this window"),
          G_CALLBACK (action_close_cb) },
 
        { "close-window-menu",
-         GTK_STOCK_CLOSE,
-         NULL,
+         "window-close",
+         N_("_Close"),
          "<Control>w",
          N_("Close this window"),
          G_CALLBACK (action_close_cb) },
 
        { "close-window",
-         GTK_STOCK_CLOSE,
+         "window-close",
          N_("_Close Window"),
          "<Control>w",
          N_("Close this window"),
          G_CALLBACK (action_close_cb) },
 
        { "contents",
-         GTK_STOCK_HELP,
+         "help-browser",
          N_("_Contents"),
          "F1",
          N_("Open the Evolution User Guide"),
          G_CALLBACK (action_contents_cb) },
 
        { "copy-clipboard",
-         GTK_STOCK_COPY,
-         NULL,
+         "edit-copy",
+         N_("_Copy"),
          NULL,
          N_("Copy the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "cut-clipboard",
-         GTK_STOCK_CUT,
-         NULL,
+         "edit-cut",
+         N_("Cu_t"),
          NULL,
          N_("Cut the selection"),
          NULL },  /* Handled by EFocusTracker */
 
        { "delete-selection",
-         GTK_STOCK_DELETE,
-         NULL,
+         "edit-delete",
+         N_("_Delete"),
          NULL,
          N_("Delete the selection"),
          NULL },  /* Handled by EFocusTracker */
@@ -916,8 +916,8 @@ static GtkActionEntry shell_entries[] = {
          G_CALLBACK (action_new_window_cb) },
 
        { "paste-clipboard",
-         GTK_STOCK_PASTE,
-         NULL,
+         "edit-paste",
+         N_("_Paste"),
          NULL,
          N_("Paste the clipboard"),
          NULL },  /* Handled by EFocusTracker */
@@ -930,8 +930,8 @@ static GtkActionEntry shell_entries[] = {
          G_CALLBACK (action_categories_cb) },
 
        { "preferences",
-         GTK_STOCK_PREFERENCES,
-         NULL,
+         "preferences-system",
+         N_("_Preferences"),
          "<Control><Shift>s",
          N_("Configure Evolution"),
          G_CALLBACK (action_preferences_cb) },
@@ -944,8 +944,8 @@ static GtkActionEntry shell_entries[] = {
          G_CALLBACK (action_quick_reference_cb) },
 
        { "quit",
-         GTK_STOCK_QUIT,
-         NULL,
+         "application-exit",
+         N_("_Quit"),
          NULL,
          N_("Exit the program"),
          G_CALLBACK (action_quit_cb) },
@@ -958,8 +958,8 @@ static GtkActionEntry shell_entries[] = {
          G_CALLBACK (action_search_advanced_cb) },
 
        { "search-clear",
-         GTK_STOCK_CLEAR,
-         NULL,
+         "edit-clear",
+         N_("_Clear"),
          "<Control><Shift>q",
          N_("Clear the current search parameters"),
          G_CALLBACK (action_search_clear_cb) },
@@ -972,14 +972,14 @@ static GtkActionEntry shell_entries[] = {
          G_CALLBACK (action_search_edit_cb) },
 
        { "search-options",
-         GTK_STOCK_FIND,
-         NULL,
+         "edit-find",
+         N_("_Find"),
          NULL,
          N_("Click here to change the search type"),
          G_CALLBACK (action_search_options_cb) },
 
        { "search-quick",
-         GTK_STOCK_FIND,
+         "edit-find",
          N_("_Find Now"),
          "",      /* Block the default Ctrl+F. */
          N_("Execute the current search parameters"),
@@ -993,8 +993,8 @@ static GtkActionEntry shell_entries[] = {
          G_CALLBACK (action_search_save_cb) },
 
        { "select-all",
-         GTK_STOCK_SELECT_ALL,
-         NULL,
+         "edit-select-all",
+         N_("Select _All"),
          "<Control>a",
          N_("Select all text"),
          NULL },  /* Handled by EFocusTracker */
@@ -1051,7 +1051,7 @@ static GtkActionEntry shell_entries[] = {
          NULL },
 
        { "new-menu",
-         GTK_STOCK_NEW,
+         "document-new",
          N_("_New"),
          "",
          NULL,
@@ -1223,8 +1223,8 @@ static GtkRadioActionEntry shell_gal_view_radio_entries[] = {
 static GtkActionEntry shell_lockdown_print_setup_entries[] = {
 
        { "page-setup",
-         GTK_STOCK_PAGE_SETUP,
-         NULL,
+         "document-page-setup",
+         N_("Page Set_up..."),
          NULL,
          N_("Change the page settings for your current printer"),
          G_CALLBACK (action_page_setup_cb) }
diff --git a/shell/main.c b/shell/main.c
index 40bf83e..29a7364 100644
--- a/shell/main.c
+++ b/shell/main.c
@@ -164,7 +164,7 @@ show_development_warning (void)
                GTK_WINDOW (warning_dialog), TRUE);
        gtk_dialog_add_button (
                GTK_DIALOG (warning_dialog),
-               GTK_STOCK_OK, GTK_RESPONSE_OK);
+               _("_OK"), GTK_RESPONSE_OK);
 
        action_area = gtk_dialog_get_action_area (GTK_DIALOG (warning_dialog));
        content_area = gtk_dialog_get_content_area (GTK_DIALOG (warning_dialog));
diff --git a/smime/gui/certificate-manager.c b/smime/gui/certificate-manager.c
index afdd488..a955303 100644
--- a/smime/gui/certificate-manager.c
+++ b/smime/gui/certificate-manager.c
@@ -620,8 +620,8 @@ import_cert (GtkWidget *button,
        filesel = gtk_file_chooser_dialog_new (
                _("Select a certificate to import..."), NULL,
                GTK_FILE_CHOOSER_ACTION_OPEN,
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_Open"), GTK_RESPONSE_OK, NULL);
        gtk_dialog_set_default_response (GTK_DIALOG (filesel), GTK_RESPONSE_OK);
 
        filter = gtk_file_filter_new ();
@@ -1179,7 +1179,7 @@ e_cert_manager_new_certificate_viewer (GtkWindow *parent,
        dialog = gtk_dialog_new_with_buttons (
                subject_name, parent,
                GTK_DIALOG_DESTROY_WITH_PARENT,
-               GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE,
+               _("_Close"), GTK_RESPONSE_CLOSE,
                NULL);
 
        gtk_container_set_border_width (GTK_CONTAINER (dialog), 5);
diff --git a/smime/gui/e-cert-selector.c b/smime/gui/e-cert-selector.c
index 1ecc34f..a3d4d98 100644
--- a/smime/gui/e-cert-selector.c
+++ b/smime/gui/e-cert-selector.c
@@ -229,8 +229,8 @@ e_cert_selector_init (ECertSelector *ecs)
 {
        gtk_dialog_add_buttons (
                GTK_DIALOG (ecs),
-               GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-               GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
+               _("_Cancel"), GTK_RESPONSE_CANCEL,
+               _("_OK"), GTK_RESPONSE_OK, NULL);
 
        ecs->priv = E_CERT_SELECTOR_GET_PRIVATE (ecs);
 }
diff --git a/smime/gui/smime-ui.ui b/smime/gui/smime-ui.ui
index 5622c4d..0214087 100644
--- a/smime/gui/smime-ui.ui
+++ b/smime/gui/smime-ui.ui
@@ -139,13 +139,14 @@
                     </child>
                     <child>
                       <object class="GtkButton" id="your-delete-button">
-                        <property name="label">gtk-delete</property>
+                        <property name="label" translatable="yes">_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>
+                        <property name="use_stock">False</property>
+                        <property name="use-underline">True</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -244,13 +245,14 @@
                     </child>
                     <child>
                       <object class="GtkButton" id="contact-edit-button">
-                        <property name="label">gtk-edit</property>
+                        <property name="label" translatable="yes">_Edit</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>
+                        <property name="use_stock">False</property>
+                        <property name="use-underline">True</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -275,13 +277,14 @@
                     </child>
                     <child>
                       <object class="GtkButton" id="contact-delete-button">
-                        <property name="label">gtk-delete</property>
+                        <property name="label" translatable="yes">_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>
+                        <property name="use_stock">False</property>
+                        <property name="use-underline">True</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -379,13 +382,14 @@
                     </child>
                     <child>
                       <object class="GtkButton" id="authority-edit-button">
-                        <property name="label">gtk-edit</property>
+                        <property name="label" translatable="yes">_Edit</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>
+                        <property name="use_stock">False</property>
+                        <property name="use-underline">True</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -410,13 +414,14 @@
                     </child>
                     <child>
                       <object class="GtkButton" id="authority-delete-button">
-                        <property name="label">gtk-delete</property>
+                        <property name="label" translatable="yes">_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>
+                        <property name="use_stock">False</property>
+                        <property name="use-underline">True</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -562,12 +567,13 @@
             </child>
             <child>
               <object class="GtkButton" id="cancelbutton">
-                <property name="label">gtk-cancel</property>
+                <property name="label" translatable="yes">_Cancel</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -577,12 +583,13 @@
             </child>
             <child>
               <object class="GtkButton" id="okbutton">
-                <property name="label">gtk-ok</property>
+                <property name="label" translatable="yes">_OK</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -761,12 +768,13 @@
             </child>
             <child>
               <object class="GtkButton" id="editok">
-                <property name="label">gtk-ok</property>
+                <property name="label" translatable="yes">_OK</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>
+                <property name="use_stock">False</property>
+                <property name="use-underline">True</property>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -790,10 +798,10 @@
   </object>
   <object class="GtkImage" id="backup-image">
     <property name="visible">True</property>
-    <property name="stock">gtk-save</property>
+    <property name="icon-name">document-save</property>
   </object>
   <object class="GtkImage" id="backup-all-image">
     <property name="visible">True</property>
-    <property name="stock">gtk-save</property>
+    <property name="icon-name">document-save</property>
   </object>
 </interface>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]