diff options
author | Chris Toshok <toshok@ximian.com> | 2001-06-25 09:09:43 +0800 |
---|---|---|
committer | Chris Toshok <toshok@src.gnome.org> | 2001-06-25 09:09:43 +0800 |
commit | 8cb68557aebb62334f68beeea60cf3bbf5930f9e (patch) | |
tree | bc27d2cd32645cddfd8631f6d6cc602ab29eea4e /addressbook/contact-editor/e-contact-editor-fullname.c | |
parent | dcf2e1a4acef258ff7473425cbd8d119294e41c0 (diff) | |
download | gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.tar gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.tar.gz gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.tar.bz2 gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.tar.lz gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.tar.xz gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.tar.zst gsoc2013-evolution-8cb68557aebb62334f68beeea60cf3bbf5930f9e.zip |
correct path to libecontacteditor.a. (minicard_widget_test_LDADD): same.
2001-06-24 Chris Toshok <toshok@ximian.com>
* gui/widgets/Makefile.am (minicard_test_LDADD): correct path to
libecontacteditor.a.
(minicard_widget_test_LDADD): same.
(INCLUDES): same, for the includes.
* gui/widgets/e-minicard.h: correct e-contact-editor.h path.
* gui/widgets/e-addressbook-util.h: correct path to
e-contact-editor.h, and add e-contact-list-editor.h. Add
prototype for e_addressbook_show_contact_list_editor.
* gui/widgets/e-addressbook-util.c: remove #include
"e-contact-editor.h" (our header includes it.)
(added_cb): rename card_added_cb to this, and make it so it can be
reused in both the list and card cases. remove the g_print too.
(modified_cb): same for modified case.
(deleted_cb): same for deleted case.
(editor_closed_cb): change first arg to GtkObject* so we can reuse
this for both list and card.
(e_addressbook_show_contact_editor): use added_cb, modified_cb,
deleted_cb, and pass FALSE as user_data.
(e_addressbook_show_contact_list_editor): new function, same as
above but creating a contact-list-editor, and pass TRUE as
user_data.
* gui/component/e-address-popup.c: correct path to contact-editor.
* gui/component/e-address-widget.c: same.
* gui/component/select-names/e-select-names-popup.c: same.
* gui/component/select-names/e-select-names-text-model.c: same.
* gui/component/addressbook.c (new_contact_list_cb): new function.
(update_command_state): update ContactNewList command.
(verbs): remove ViewAll from the toolbar from the verb list. Add
ContactNewList.
(pixmaps): same for pixmaps.
* gui/component/Makefile.am (evolution_addressbook_LDADD): new
path for contact-editor.
(INCLUDES): same.
* gui/contact-list-editor/e-contact-list-model.h:
* gui/contact-list-editor/e-contact-list-model.c:
* gui/contact-list-editor/e-contact-list-editor.h:
* gui/contact-list-editor/e-contact-list-editor.c:
* gui/contact-list-editor/Makefile.am: Initial contact-list editor
commit.
* gui/Makefile.am (SUBDIRS): add contact-editor.
* Makefile.am: (SUBDIRS): remove contact-editor.
svn path=/trunk/; revision=10463
Diffstat (limited to 'addressbook/contact-editor/e-contact-editor-fullname.c')
-rw-r--r-- | addressbook/contact-editor/e-contact-editor-fullname.c | 243 |
1 files changed, 0 insertions, 243 deletions
diff --git a/addressbook/contact-editor/e-contact-editor-fullname.c b/addressbook/contact-editor/e-contact-editor-fullname.c deleted file mode 100644 index cf97854956..0000000000 --- a/addressbook/contact-editor/e-contact-editor-fullname.c +++ /dev/null @@ -1,243 +0,0 @@ -/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -/* - * e-contact-editor-fullname.c - * Copyright (C) 2000 Ximian, Inc. - * Author: Chris Lahey <clahey@ximian.com> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#include <config.h> -#include <libgnomeui/gnome-stock.h> -#include <gal/widgets/e-unicode.h> -#include "e-contact-editor-fullname.h" - -static void e_contact_editor_fullname_init (EContactEditorFullname *card); -static void e_contact_editor_fullname_class_init (EContactEditorFullnameClass *klass); -static void e_contact_editor_fullname_set_arg (GtkObject *o, GtkArg *arg, guint arg_id); -static void e_contact_editor_fullname_get_arg (GtkObject *object, GtkArg *arg, guint arg_id); -static void e_contact_editor_fullname_destroy (GtkObject *object); - -static void fill_in_info(EContactEditorFullname *editor); -static void extract_info(EContactEditorFullname *editor); - -static GnomeDialogClass *parent_class = NULL; - -/* The arguments we take */ -enum { - ARG_0, - ARG_NAME, - ARG_IS_READ_ONLY -}; - -GtkType -e_contact_editor_fullname_get_type (void) -{ - static GtkType contact_editor_fullname_type = 0; - - if (!contact_editor_fullname_type) - { - static const GtkTypeInfo contact_editor_fullname_info = - { - "EContactEditorFullname", - sizeof (EContactEditorFullname), - sizeof (EContactEditorFullnameClass), - (GtkClassInitFunc) e_contact_editor_fullname_class_init, - (GtkObjectInitFunc) e_contact_editor_fullname_init, - /* reserved_1 */ NULL, - /* reserved_2 */ NULL, - (GtkClassInitFunc) NULL, - }; - - contact_editor_fullname_type = gtk_type_unique (gnome_dialog_get_type (), &contact_editor_fullname_info); - } - - return contact_editor_fullname_type; -} - -static void -e_contact_editor_fullname_class_init (EContactEditorFullnameClass *klass) -{ - GtkObjectClass *object_class; - GnomeDialogClass *dialog_class; - - object_class = (GtkObjectClass*) klass; - dialog_class = (GnomeDialogClass *) klass; - - parent_class = gtk_type_class (gnome_dialog_get_type ()); - - gtk_object_add_arg_type ("EContactEditorFullname::name", GTK_TYPE_POINTER, - GTK_ARG_READWRITE, ARG_NAME); - - gtk_object_add_arg_type ("EContactEditorFullname::editable", GTK_TYPE_BOOL, - GTK_ARG_READWRITE, ARG_IS_READ_ONLY); - - object_class->set_arg = e_contact_editor_fullname_set_arg; - object_class->get_arg = e_contact_editor_fullname_get_arg; - object_class->destroy = e_contact_editor_fullname_destroy; -} - -static void -e_contact_editor_fullname_init (EContactEditorFullname *e_contact_editor_fullname) -{ - GladeXML *gui; - GtkWidget *widget; - - gnome_dialog_append_button ( GNOME_DIALOG(e_contact_editor_fullname), - GNOME_STOCK_BUTTON_OK); - - gnome_dialog_append_button ( GNOME_DIALOG(e_contact_editor_fullname), - GNOME_STOCK_BUTTON_CANCEL); - - gtk_window_set_policy(GTK_WINDOW(e_contact_editor_fullname), TRUE, TRUE, FALSE); - - e_contact_editor_fullname->name = NULL; - gui = glade_xml_new (EVOLUTION_GLADEDIR "/fullname.glade", NULL); - e_contact_editor_fullname->gui = gui; - - widget = glade_xml_get_widget(gui, "table-checkfullname"); - gtk_widget_ref(widget); - gtk_container_remove(GTK_CONTAINER(widget->parent), widget); - gtk_box_pack_start (GTK_BOX (GNOME_DIALOG (e_contact_editor_fullname)->vbox), widget, TRUE, TRUE, 0); - gtk_widget_unref(widget); -} - -void -e_contact_editor_fullname_destroy (GtkObject *object) -{ - EContactEditorFullname *e_contact_editor_fullname = E_CONTACT_EDITOR_FULLNAME(object); - - if (e_contact_editor_fullname->gui) - gtk_object_unref(GTK_OBJECT(e_contact_editor_fullname->gui)); - e_card_name_free(e_contact_editor_fullname->name); -} - -GtkWidget* -e_contact_editor_fullname_new (const ECardName *name) -{ - GtkWidget *widget = GTK_WIDGET (gtk_type_new (e_contact_editor_fullname_get_type ())); - gtk_object_set (GTK_OBJECT(widget), - "name", name, - NULL); - return widget; -} - -static void -e_contact_editor_fullname_set_arg (GtkObject *o, GtkArg *arg, guint arg_id) -{ - EContactEditorFullname *e_contact_editor_fullname; - - e_contact_editor_fullname = E_CONTACT_EDITOR_FULLNAME (o); - - switch (arg_id){ - case ARG_NAME: - if (e_contact_editor_fullname->name) - e_card_name_free(e_contact_editor_fullname->name); - e_contact_editor_fullname->name = e_card_name_copy(GTK_VALUE_POINTER (*arg)); - fill_in_info(e_contact_editor_fullname); - break; - case ARG_IS_READ_ONLY: { - int i; - char *entry_names[] = { - "combo-title", - "combo-suffix", - "entry-first", - "entry-middle", - "entry-last", - NULL - }; - e_contact_editor_fullname->editable = GTK_VALUE_BOOL (*arg) ? TRUE : FALSE; - for (i = 0; entry_names[i] != NULL; i ++) { - gtk_widget_set_sensitive (glade_xml_get_widget(e_contact_editor_fullname->gui, - entry_names[i]), - e_contact_editor_fullname->editable); - } - break; - } - } -} - -static void -e_contact_editor_fullname_get_arg (GtkObject *object, GtkArg *arg, guint arg_id) -{ - EContactEditorFullname *e_contact_editor_fullname; - - e_contact_editor_fullname = E_CONTACT_EDITOR_FULLNAME (object); - - switch (arg_id) { - case ARG_NAME: - extract_info(e_contact_editor_fullname); - GTK_VALUE_POINTER (*arg) = e_card_name_copy(e_contact_editor_fullname->name); - break; - case ARG_IS_READ_ONLY: - GTK_VALUE_BOOL (*arg) = e_contact_editor_fullname->editable ? TRUE : FALSE; - break; - default: - arg->type = GTK_TYPE_INVALID; - break; - } -} - -static void -fill_in_field(EContactEditorFullname *editor, char *field, char *string) -{ - GtkEntry *entry = GTK_ENTRY(glade_xml_get_widget(editor->gui, field)); - if (entry) { - if (string) - e_utf8_gtk_entry_set_text(entry, string); - else - gtk_entry_set_text(entry, ""); - } -} - -static void -fill_in_info(EContactEditorFullname *editor) -{ - ECardName *name = editor->name; - if (name) { - fill_in_field(editor, "entry-title", name->prefix); - fill_in_field(editor, "entry-first", name->given); - fill_in_field(editor, "entry-middle", name->additional); - fill_in_field(editor, "entry-last", name->family); - fill_in_field(editor, "entry-suffix", name->suffix); - } -} - -static char * -extract_field(EContactEditorFullname *editor, char *field) -{ - GtkEntry *entry = GTK_ENTRY(glade_xml_get_widget(editor->gui, field)); - if (entry) - return e_utf8_gtk_entry_get_text(entry); - else - return NULL; -} - -static void -extract_info(EContactEditorFullname *editor) -{ - ECardName *name = editor->name; - if (!name) { - name = e_card_name_new(); - editor->name = name; - } - - name->prefix = extract_field(editor, "entry-title" ); - name->given = extract_field(editor, "entry-first" ); - name->additional = extract_field(editor, "entry-middle"); - name->family = extract_field(editor, "entry-last" ); - name->suffix = extract_field(editor, "entry-suffix"); -} |