diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-09-11 17:59:30 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-09-11 17:59:30 +0800 |
commit | d65fb37051402d1df0d125540546f63cc6b46ea6 (patch) | |
tree | 287b9cc05ed644eab851b234dc837c16d457d611 /addressbook/gui/contact-editor/e-contact-editor.c | |
parent | e30911d7d0806677fbd6ee239d0c47284c05a228 (diff) | |
download | gsoc2013-evolution-d65fb37051402d1df0d125540546f63cc6b46ea6.tar.gz gsoc2013-evolution-d65fb37051402d1df0d125540546f63cc6b46ea6.tar.zst gsoc2013-evolution-d65fb37051402d1df0d125540546f63cc6b46ea6.zip |
Removed a bunch of redundant code. Made it so that when you set an address
2000-09-11 Christopher James Lahey <clahey@helixcode.com>
* backend/ebook/e-card-simple.c, backend/ebook/e-card-simple.h:
Removed a bunch of redundant code. Made it so that when you set
an address label, it sets the delivery address as well. Added
functions to set and get the delivery address.
* backend/ebook/e-card.c, backend/ebook/e-card.h: Added code to
convert and address label to a delivery address.
* contact-editor/Makefile.am: Added e-contact-editor-address.[ch],
fulladdr.glade, fulladdr.glade.h.
* contact-editor/contact-editor.glade,
contact-editor/e-contact-editor-strings.h: Switched from a label
to a button to show the parsed address.
* contact-editor/e-contact-editor-address.c,
contact-editor/e-contact-editor-address.h: New class to implement
the parsed address dialog.
* contact-editor/e-contact-editor-fullname.c,
contact-editor/e-contact-editor-fullname.h: Added const to the
_new function.
* contact-editor/e-contact-editor.c: Implemented clicking on the
address button.
* contact-editor/fulladdr.glade, contact-editor/fulladdr.glade.h:
New glade files for the parsed address dialog.
* contact-editor/fullname-strings.h, fullname.glade: Changed these
accellabels to labels.
* ename/Makefile.am: Added e-address-western.c.
* ename/e-address-western.c: Fixed some warnings.
svn path=/trunk/; revision=5317
Diffstat (limited to 'addressbook/gui/contact-editor/e-contact-editor.c')
-rw-r--r-- | addressbook/gui/contact-editor/e-contact-editor.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/addressbook/gui/contact-editor/e-contact-editor.c b/addressbook/gui/contact-editor/e-contact-editor.c index c2d4450a7b..16c14bf585 100644 --- a/addressbook/gui/contact-editor/e-contact-editor.c +++ b/addressbook/gui/contact-editor/e-contact-editor.c @@ -24,6 +24,7 @@ #include <gnome.h> #include "e-contact-editor.h" #include <e-contact-editor-fullname.h> +#include <e-contact-editor-address.h> #include <e-contact-editor-categories.h> #include <gdk-pixbuf/gdk-pixbuf.h> #include <gdk-pixbuf/gnome-canvas-pixbuf.h> @@ -501,6 +502,41 @@ full_name_clicked(GtkWidget *button, EContactEditor *editor) } static void +full_addr_clicked(GtkWidget *button, EContactEditor *editor) +{ + GnomeDialog *dialog; + int result; + const ECardDeliveryAddress *address; + + address = e_card_simple_get_delivery_address(editor->simple, editor->address_choice); + + dialog = GNOME_DIALOG(e_contact_editor_address_new(address)); + gtk_widget_show(GTK_WIDGET(dialog)); + + result = gnome_dialog_run (dialog); + if (result == 0) { + ECardDeliveryAddress *new_address; + + gtk_object_get(GTK_OBJECT(dialog), + "address", &new_address, + NULL); + e_card_simple_set_delivery_address(editor->simple, editor->address_choice, new_address); + e_card_delivery_address_free(new_address); + +#if 0 + GtkWidget *fname_widget; + fname_widget = glade_xml_get_widget(editor->gui, "text-address"); + if (fname_widget && GTK_IS_ENTRY(fname_widget)) { + char *full_name = e_card_delivery_address_to_string(address); + e_utf8_gtk_entry_set_text(GTK_ENTRY(fname_widget), full_name); + g_free(full_name); + } +#endif + } + gtk_object_unref(GTK_OBJECT(dialog)); +} + +static void categories_clicked(GtkWidget *button, EContactEditor *editor) { char *categories; @@ -1014,6 +1050,11 @@ e_contact_editor_init (EContactEditor *e_contact_editor) gtk_signal_connect(GTK_OBJECT(widget), "clicked", full_name_clicked, e_contact_editor); + widget = glade_xml_get_widget(e_contact_editor->gui, "button-fulladdr"); + if (widget && GTK_IS_BUTTON(widget)) + gtk_signal_connect(GTK_OBJECT(widget), "clicked", + full_addr_clicked, e_contact_editor); + widget = glade_xml_get_widget(e_contact_editor->gui, "button-categories"); if (widget && GTK_IS_BUTTON(widget)) gtk_signal_connect(GTK_OBJECT(widget), "clicked", |