Updated Traditional Chinese translation.
[evolution.git] / addressbook / ChangeLog
blobf215393e2a75d500fa81f35c3d8595f7b28d7e18
1 2005-03-05  Sushma Rai  <rsushma@novell.com>
3         * gui/widgets/eab-contact-display.c (render_contact): Using 
4         gtk_html_stream_printf() with format specifier. Vulnerability patch
5         submitted by "Sitic Vulnerability Advisory <sitic@pts.se>"
7 2005-03-05  Sushma Rai  <rsushma@novell.com>
9         * importers/evolution-ldif-importer.c (ldif_import): Initialize gci->size to
10         the file size, which is used for indicationg the import progress. Fixes the
11         crash due to devide by zero, while importing more than fifty contacts.
13 2005-08-03  Jules Colding  <colding@omesc.com>
15         * gui/component/addressbook-view.c: Added forward references to functions that were
16         used before being defined.
18 2005-03-03  Sushma Rai  <rsushma@novell.com>
20         * gui/widgets/eab-gui-util.c (eab_transfer_contacts): Initialize the
21         flag status to FALSE.
22         (got_book_cb): Set status to TRUE on loading the address book.
23         (contact_added_cb): Set status to FALSE on error or cancel operation.
24         Set status to true on success. Call process_unref always.
25         (delete_contacts): Delete the contacts only on success.
26         Fixes #311133, #273716. 
28 2005-08-03  Srinivasa Ragavan <sragavan@novell.com>
30         * gui/widgets/eab-gui-util.c (eab_load_error_dialog): Made the error dialog
31         for load-error nonmodal, since it blocks the UI along with popup menu.
33         * gui/component/addressbook-view.c (load_uri_for_selection) 
34         (primary_source_selection_changed_callback) (addressbook_view_init):
35         Checks whether  the book is already selected. If so it doesn't reselect 
36         it on a right-click. Fixes the bug #309247
38 2005-08-03  Frank Arnold  <farnold@cvs.gnome.org>
40         * addressbook.error.xml: Marked string for translation
41         and removed trailing space. Fixes bug #254923 again.
43 2005-08-01  Devashish Sharma  <sdevashish@novell.com>
45         * gui/contact-editor/eab-editor.c (sensitize_ok): fixes the behaviour 
46         of OK button. OK is not enabled until both Full name and File Under are
47         specified. Fixes #258257.
49 2005-07-29  Srinivasa Ragavan <sragavan@novell.com>
51         * gui/contact-editor/eab-editor.c: (eab_editor_prompt_to_save_changes)
52         (eab_editor_request_close_all) Fixes the bug #309416
54 2005-07-29  Srinivasa Ragavan <sragavan@novell.com>
56         * tools/evolution-addressbook-export-list-cards.c: (output_n_cards_file)
57         Fixes the bug #269870. Commiting Michael Meeks patch.
59 2005-07-29  Srinivasa Ragavan <sragavan@novell.com>
61         * gui/contact-editor/e-contact-editor.c: (extract_simple_field) 
62         (image_selected): Fixed in a genereic way, the resizing of contact 
63         photos.
65 2005-07-26  Harish Krishnaswamy  <kharish@novell.com>
67         * gui/component/Makefile.am: fix make distcheck issues.
68         * gui/component/addressbook-config.c: remove duplicate
69          inclusion of header
71 2005-07-25  Srinivasa Ragavan <sragavam@novell.com>
73         * addressbook.error.xml: Added a string for resize popup
74         * gui/contact-editor/e-contact-editor.c: (image_selected) Added
75         code to check the size of image and prompt for resize.
77 2005-07-25  Arunprakash <arunp@novell.com>
79         * gui/contact-editor/e-contact-editor.c (file_as_entry_changed)
80         (fill_in_simple) : Modified the way of constructing the title
81         for the contact editor to facilitate proper translation.
83 2005-07-22  Sushma Rai  <rsushma@novell.com>
85         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Using 
86         autocompletion stock icon instead of contacts icon, for 
87         autocompletion. Fixes #257329.  
89 2005-07-22  Arunprakash <arunp@novell.com>
91         * gui/contact-editor/e-contact-editor.c (name_entry_changed): Modified
92         to reset the title of the contact editor when the name is deleted
93         completely.
94         (file_as_entry_changed) : Modified to update the title with the new
95         file_as name.
96         (fill_in_simple) : Modified to set the title initially with the file_as
97         name. Fixes #235830.
99 2005-07-21  Sushma Rai  <rsushma@novell.com>
101         * gui/widgets/e-addressbook-view.[ch] (eab_view_delete_selection):
102         Prompt for confirmation only while deleting the contact, and not for
103         cut operation.
104         (delete)(eab_view_cut): Using the flag to inidicate delete/cut.
106         * addressbook/gui/component/addressbook-view.c (delete_contact_cb):
107         Similar. Fixes #311090
109 2005-07-19  Arunprakash <arunp@novell.com>
111         * gui/widgets/eab-gui-util.c: Added two new entries in array 
112         status_to_string for two left out values of EBookStatus. Fixes #310343.
113         (eab_error_dialog): Marked status_str for translation.
115 2005-07-15  Sushma Rai  <rsushma@novell.com>
117         * gui/component/addressbook-migrate.c (migrate_contacts): unref query.
118         (migrate_contact_lists_for_local_folders): Similar.
119         (migrate_company_phone_for_local_folders): Similar. 
121         * util/eab-book-util.c: using e_book_query_unref instead of 
122         g_object_unref.
124 2005-07-13  Sushma Rai  <rsushma@novell.com>
126         * addressbook/importers/evolution-vcard-importer.c (vcard_supported):
127         Return false in the source URI does not start with "file://".
129         * addressbook/importers/evolution-ldif-importer.c 
130         (ldif_import_contacts): Using the proper file pointer.
131         (ldif_supported): Return false in the source URI does not start with 
132         "file://".
133         (ldif_import_done): Close the file opened.
134         (ldif_import): Opening the proper file.
136 2005-07-09  Veerapuram Varadhan <vvaradhan@novell.com>
137         
138         * gui/component/addressbook-component.c: (impl_createControls):
139         * gui/component/addressbook-view.[c,h]: (addressbook_view_edit_contact):
140         (impl_handleURI): Handle contacts:// uris.
141         
142 2005-07-08  Sushma Rai  <rsushma@novell.com>
144         * gui/widgets/eab-gui-util.c (eab_load_error_dialog): Including the
145         file path in the error string. Fixes #309624
147 2005-07-07  Frederic Crozat  <fcrozat@mandriva.com>
149         * gui/component/addressbook-component.c: (ensure_sources):
150         * gui/component/addressbook-migrate.c: (create_groups):
151         Enable autocompletion on personal addressbook when creating it
152         (Mandriva bug #16427).
154 2005-07-06  Vivek Jain <jvivek@novell.com>
155         
156         * gui/component/addressbook-view.c: (popup_event_callback)
157         * gui/widget/e-addressbook-view.c :(do_popup_menu)
158         added comments about the hookpoints
160 2005-07-06  Srinivasa Ragavan <sragavan@novell.com>
161         * gui/widgets/eab-gui-util.c: (contact_added_cb): Fixed for bug 
162         309245.
163         * /gui/widgets/e-addressbook-view.c:  Fixes the bug 206774, 242154.
164         * gui/widgets/eab-popup.c: (eab_popup_target_new_select)  Fixes the
165         bug 206774, 242154.
166         * gui/widgets/eab-popup.h: Fixes the bug 206774, 242154.
168 2005-07-06  Not Zed  <NotZed@Ximian.com>
170         * Makefile.am (SUBDIRS): build importers before the gui code.
172         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
173         link to importer plugin builtins.
175         * importers/Makefile.am: just build a shared library with all the
176         importers in it, we dont install a plugin, it is just linked to
177         the main app for simplicity.
179         * importers/GNOME_Evolution_Addressbook_VCard_Importer.server.in.in: 
180         * importers/GNOME_Evolution_Addressbook_LDIF_Importer.server.in.in:
181         removed.
183         * importers/evolution-vcard-importer.c: ported
184         to eimport, simplified some logic (why test extensions and then test
185         file content anyway), fixed some memory leaks, etc.
187         * importers/evolution-ldif-importer.c (ldif_import): remove
188         progress dialog stuff, move to update e-import api.
190 2005-07-01  Not Zed  <NotZed@Ximian.com>
192         * gui/component/addressbook-component.c
193         (addressbook_component_init): hookup the builtin importer
194         'plugins'.
196         * importers/*: fix for importers->eplugin, also added a
197         window/progress dialog and cancel button.
199 2005-06-25  Harish Krishnaswamy <kharish@novell.com>
201         * gui/contact-list-editor/Makefile.am: The previous commit breaks
202         the build by introducing a circular dependancy. Revert the
203         changes.
204         
205 2005-06-25  Sushma Rai  <rsushma@novell.com>
207         * gui/component/addressbook-migrate.c (migrate_contacts): Setting 
208         TYPE=OTHER default parameter to email attribute. Fixes #240756.
210 2005-06-25  Sushma Rai  <rsushma@novell.com>
212         * gui/contact-list-editor/Makefile.am: Linking to 
213         libevolution-addressbook.
215 2005-06-18  Tor Lillqvist  <tml@novell.com>
217         * gui/component/Makefile.am
218         * gui/contact-editor/Makefile.am
219         * gui/contact-list-editor/Makefile.am
220         * gui/merging/Makefile.am
221         * gui/search/Makefile.am
222         * gui/widgets/Makefile.am: Prune unnecessary and nonexistent
223         directories from the -I options. Prune pathname macros not used in
224         the sources in that directory from the -D options.
226         * gui/component/Makefile.am
227         * gui/contact-editor/Makefile.am
228         * gui/contact-list-editor/Makefile.am
229         * util/Makefile.am: Use NO_UNDEFINED. Link with all necessary
230         libraries.
232         * gui/component/Makefile.am: Use Win32-specific hack to work
233         around MSYS feature in the gconftool invocation.
235         * gui/contact-editor/Makefile.am
236         * gui/contact-list-editor/Makefile.am: Use bootstrap library
237         libevolution-addressbook on Win32.
239         * gui/contact-editor/Makefile.am
240         * gui/contact-list-editor/Makefile.am
241         * util/Makefile.am: Use privsolib_LTLIBRARIES instead of
242         privlib_LTLIBRARIES (see ../ChangeLog).
244         * gui/component/GNOME_Evolution_Addressbook.server.in.in
245         * importers/GNOME_Evolution_Addressbook_LDIF_Importer.server.in.in
246         * importers/GNOME_Evolution_Addressbook_VCard_Importer.server.in.in: 
247         Use SOEXT.
249 2005-06-09  Sushma Rai  <rsushma@novell.com>
251         * gui/widgets/e-addressbook-view.c: 
252         Patch submitted by Hans Petter Jansson  <hpj@novell.com>, for
253         Removing the references to the old wombat master category list, 
254         replacing them with e-categories from libedataserver.
256 2005-05-16  Not Zed  <NotZed@Ximian.com>
258         * moved e-error to e-util
260         * Makefile.am: renamed error xml file & u18n stuff.
262 2005-05-16  Srinivasa Ragavan <sragavan@novell.com>
264         * gui/components/GNOME_Evolution_Addressbook.server.in.in: Added tooltips
265         
266 2005-05-12  Ulrich Neumann  <uli@myuli.com>
268         * gui/contact-editor/contact-editor.glade:
269         Fixed wrong xalign of Zip/Postal Code. This
270         was very ugly in languages like german, dutch etc.
272 2005-05-11  Srinivasa Ragavan <sragavan@novell.com>
273         * gui/widgets//e-minicard.c: (add_field), (remodel):
274         Fixed the bug 209416. It shows a different view for contact lists
275         
276         
277 2005-05-09  Sushma Rai  <rsushma@novell.com>
279         * gui/widgets/eab-gui-util.c (eab_contact_save)(eab_contact_list_save):
280         Finding if multiple contacts or a single contact has been selected for
281         saving, and storing it in SaveAsInfo structure.
282         (save_it): Depending on selected contacts, forming a part of error
283         message. 
285         * addressbook-errors.xml: Changed the save-error message, to read
286         string contact/contacts.
287         Fixes #261969.
289 2005-05-09  Sushma Rai  <rsushma@novell.com>
291         * gui/widgets/e-addressbook-view.c (eab_view_delete_selection): Checking
292         if single or multiple contacts/contact lists are being deleted. Also
293         finding the name, if the single contact/contact list is being deleted. 
295         * gui/contact-editor/eab-editor.c (eab_editor_confirm_delete): Forming
296         the display messages based on the contact/contact list and number of
297         contacts/contact lists being deleted. 
298         Fixes #222599
300 2005-05-06  Chenthill Palanisamy  <pchenthill@novell.com>
301         
302         Fixes #301459
303         * gui/contact-list-editor/contact-list-editor.glade: Corrected 
304         the spelling for addresses and address.
306 2005-05-06  Chenthill Palanisamy  <pchenthill@novell.com>
308         Fixes #272464
309         * addressbook-errors.xml:
310         * addressbook-errors.xml.h: Changed the primary and secondary
311         to make it more clear.
313 2005-04-28  Ross Burton  <ross@burtonini.com>
315         * gui/widgets/e-addressbook-view.c:
316         * gui/widgets/eab-contact-display.c:
317         Fix some memory leaks.
319 2005-04-21  Mengjie Yu  <meng-jie.yu@sun.com>
321         * gui/widgets/e-minicard-view-widget.c:
322         (e_minicard_view_widget_class_init),
323         (e_minicard_view_widget_real_focus_in_event):
324         Add focus_in_event function.
326         Fixes #300968 (gnome bugzilla bugID)
328 2005-04-17  Mengjie Yu  <meng-jie.yu@sun.com>
330         * gui/widgets/e-minicard.c: (e_minicard_event):
331         We should incarnate the reflow item if it doesn't exist.
333         Fixes #300970 (gnome bugzilla bugID)
335 2005-04-04  Sivaiah Nallagatla <snallagatla@novell.com>
337        * gui/component/addressbook.c (load_source_auth_cb)
338         (addressbook_authenticate) : get the uri from Ebook
339        instead of Esource. e_source_get_uri returns NULL when
340        it does not have a reference to source group with it
341        which happens when the source list from which this source
342        was taken is destroyed but Ebook has reference to that source.
343        e_book_get_uri returns the same uri and it will be always present
344        Fixes #73330
346 2005-04-03  Sivaiah Nallagatla <snallagatla@novell.com>
348         * gui/widgets/eab-gui-util.c (do_copy) :
349         use eab_merging_book_add_contact instead of 
350         e_book_async_add_contact to take care of duplicate
351         checking 
352         Fixes #74255
354 2005-03-16  Li Yuan  <li.yuan@sun.com>
356         * gui/widgets/gal-view-minicard.c: (gal_view_minicard_class_init):
357         remove the edit function.
359         Fixes #40762
361 2005-03-16  Mengjie Yu  <meng-jie.yu@sun.com>
363         * gui/widgets/e-addressbook-view.c: (search_menu_activated):
364         make the search field consistent with the Search Dialog.
366         Fixes #73270
369 2005-03-03   Sivaiah Nallagatla <snallagatla@novell.com>
371         * gui/component/addressbook.c (load_source_auth_cb):
372         Make sure LoadSourceData has call back installed
373         before calling it. cb is NULL when called from 
374         auth_required_cb 
375         Fixes #73206 
376         
377 2005-02-26   Sivaiah Nallagatla <snallagatla@novell.com>
379         * gui/widgets/e-addressbook-view.c :
380         Change the e-popup item type for "Cut"
381         from E_POPUP_BAR to E_POPUP_ITEM
382         
383         Fixes #73013
385 2005-02-25   Sivaiah Nallagatla <snallagatla@novell.com>
387         * gui/conact-editor/eab-editor.c 
388         (eab_editor_prompt_to_save_changes) : Just close 
389         the editor when user presees cancel or closes the editor
390         when there are no changes. Seems to be broken 
391         by earlier Change for #70371
393         Fixes #73005
394          
396 2005-02-24  Sushma Rai  <rsushma@novell.com>
398         * gui/component/addressbook-config.c (addressbook_config_edit_source):
399         Removed the hack, setting absolute URI to NULL. Fixes #72715
401 2005-02-23  Hans Petter Jansson  <hpj@novell.com>
403         * gui/component/addressbook-view.c:
404         * gui/component/addressbook.c: Include
405         <libedataserverui/e-passwords.h>.
407 2005-02-19  Sivaiah Nallagatla <snallagatla@novell.com>
409        * gui/contact-editor/eab-editor.c
410        (eab_editor_prompt_to_save_changes) : close
411        the editor here in case of save and discard
412        so that callers need not worry about closing
414        * gui/contact-list-editor/e-contact-list-editor.c
415        (closed_cb) (app_delete_event_cb) : don't close
416        the editor here as that is handled by _save_changes
417        call. Also no need to check for return value of that
418        function as it does not matter here.
420        Fixes #70371
422 2005-02-19  Sivaiah Nallagatla <snallagatla@novell.com>
424         * gui/component/addressbook-component.c 
425         (ensure_sources) : update the base uri 
426         of the "On This Computer" group when user home dir 
427         changes. Also unref personal source if created here.
429         Fixes #67724  
430         
431 2005-02-09  Sivaiah Nallagatla <snallagatla@novell.com>
432                                                                                 
433         * gui/component/addressbook-config.c
434         (eabc_details_limit) : connect to "value_changed"
435         signal of spin button instead of "changed"
436                                                                                 
437         Fixes #72369
439 2005-02-09  Hans Petter Jansson  <hpj@novell.com>
441         * gui/contact-editor/Makefile.am:
442         * gui/contact-list-editor/Makefile.am:
443         * util/Makefile.am: Install shared libraries to privlibdir.
445 2005-02-08  Christophe Fergeau <teuf@users.sourceforge.net>
447         * importers/evolution-vcard-importer.c (has_bom)
448         (fix_utf16_endianness) (utf16_to_utf8) 
449         guess_vcard_encoding) : New functions which peeks at 
450         the conents of the file and guesses the encoding and 
451         to convert UTF-16 strings to UTF-8.
452         (load_file_fn) : check the encoding of the file
453         and convert UTF-16 and locale encoding to UTF-8
455         Fixes #54825 
457 2005-02-07  JP Rosevear  <jpr@novell.com>
459         * gui/component/apps_evolution_addressbook.schemas.in.in: clean up
460         descriptions
462 2005-01-06  Sivaiah Nallagatla <snallagatla@novell.com>
464         * e-minicard.c (remodel) : changed the loop
465         termination check to E_CONACT_LAST_SIMPLE_STRING -1
466         so that we will avoid displaying revision field
467         value in the minicard 
469 2005-01-04 vivek jain <jvivek@novell.com>
470         
471         * gui/component/addressbook.c (load_source_auth_cb):
472         display a warning dialog if the server version is not proper
474         * addressbook-errors.xml: added warning message for
475          invalid server version
477 2004-02-02  Hans Petter Jansson  <hpj@ximian.com>
479        * gui/component/addressbook-component.c (ensure_sources): Implement
480        based on the create_groups () function in addressbook-migrate.c.
481        (addressbook_component_init): Call ensure_sources (). This will create
482        the necessary addressbook source groups if they somehow disappeared
483        from GConf.
485        * gui/component/addressbook-config.c (addressbook_config_edit_source):
486        If we can't get any source groups, just issue a console warning and
487        return NULL. Creating sources without groups is meaningless.
488         Work around for #67411
490 2005-02-02  Rodney Dawes  <dobey@novell.com>
492         * gui/component/ldap-config.glade: Fix a small spacing issue in the
493         Display section's children, to be HIG compliant
495 2005-01-31  Hans Petter Jansson  <hpj@novell.com>
497         * gui/widgets/eab-config.c (_EABConfigPrivate): Use guint instead of
498         ulong for signal ID.
500 2004-01-29 Parthasarathi Susarla <sparthasarathi@novell.com>
501         
502         * addressbook/gui/contact-list-editor/e-contact-list-editor.c
503          (save_contact) : call the eab_merging_* functions instead of
504          e_book_sync* directly. The merging function check for duplication. 
505          The following functions have been called:
506          1. eab_merging_book_add_contact for adding a new entry
507          2. eab_merging_book_commit_contact for commiting a modified entry
508         
509          Fixes bug #57819
511 2005-01-29  Sivaiah Nallagatla <snallagatla@novell.com>
513         * gui/contact-editor/e-contact-editor.c 
514         (sensitize_im_types) : new function to sensitize
515         im types based on supported fields
516         
517         (sensitize_im_record) : call sensitize_im_types
518         for each record 
519         (sensitize_im) : if none of the im types 
520         are supported disable the im entries 
521         Fixes #68799
523 2005-01-28  Sivaiah Nallagatla <snallagatla@novell.com>
525         * gui/widgets/eab-vcard-control.c (pstream_load) :
526         Changed a string to make it complete and clear
527         for transaltion 
528         Fixes #61067 
530 2005-01-26  Sivaiah Nallagatla <snallagatla@novell.com>
531                                                                                                                              
532         * gui/component/addressbook.c (addressbook_authenticate) :
533         Remove leading "%s" from the transalatable string
534         Fixes #36137
536 2005-01-26  Sivaiah Nallagatla <snallagatla@novell.com>
538        * util/eab-book-util.c (strstrcase) :
539        case insesitive version of strstr. Used
540        from camel
542        (eab_contact_list_from_string) : do case in sensitive
543        search for "BEGIN:VCARD" and "END:VCARD" to
544        take care of broken vcards
546        Fixes #70339
549 2005-01-26 Hao Sheng  <hao.sheng@sun.com>
551         * gui/contact-list-editor/e-contact-list-editor.c:
552         (setup_name_selector): add access key to 'Member' Button.
554 2005-01-25  Rodrigo Moya <rodrigo@novell.com>
556         * gui/contact-editor/e-contact-editor.c (categories_clicked): use the
557         new ECategoriesDialog widget.
559 2005-01-21  JP Rosevear  <jpr@novell.com>
561         Fixes #70622
562         
563         * gui/widgets/eab-contact-display.c (eab_contact_display_init):
564         construct the html widget
566 2005-01-21 Sivaiah Nallagatla <snallagatla@novell.com>
568        * gui/widgets/e-addressbook-model.[ch]
569        (eab_model_class_init) : renamed the signal
570        CONTACT_REMOVED to CONTACTS_REMOVED and chaned
571        the param type POINTER from INT
572        (remove_contact) : delete all the contacts
573        from the model and emit CONATCTS_REMOVED
574        signal instead of emitting it many times
576        * gui/widgets/e-addressbook-reflow-adpater.c
577        (e_addressbook_reflow_adapter_construct)
578        (remove_contacts) : renamed remove_contact to remove_contacts
579        and when number of conacts is more than 1 use _model_changed
580        instead of _remove_item
582        * gui/widgets/e-addressbook-table-adapter.c
583        (eab_table_adapter_construct)
584        (remove_contacts) : ditto
586        * gui/widgets/e-addressbook-view.c
587        (eab_view_new) :
588        (contacts_removed) : renamed contact_removed
589        to contacts_removed and traverese over indices
590        to find displayed contact indiex
592        fixes #71448
594 2005-01-21  Rodney Dawes  <dobey@novell.com>
596         * gui/contact-editor/e-contact-quick-add.c (build_quick_add_dialog):
597         Change the xpad and ypad to 0 here, we don't need the extra padding
598         Add the GTK_DIALOG_NO_SEPARATOR flag for creating the dialog
599         Set proper border widths on some dialog containers for the HIG
600         Set the row/column spacings for the table widget
601         Create the labels outside of the table packing calls and set the proper
602         alignment for them to be HIG compliant
603         Set the border width of the table widget to 12 for HIG compliance
604         
605         * gui/widgets/eab-popup-control.c (edit_contact_info_cb): Removed
606         (eab_popup_control_display_contact): Just go ahead and open the
607         editor, no need to have an intermittent window with a button for it
608         (add_contacts_cb): Remove this as we don't need it any more
609         (eab_popup_control_no_matches): Just go straight to the quick-add
610         dialog, and don't pop up an intermittent window with a button
612         Fixes #41210 #60852 
614 2005-01-21  Rodney Dawes  <dobey@novell.com>
616         * gui/contact-editor/e-contact-editor.c (e_contact_editor_init):
617         Call gtk_widget_ensure_style to ensure that we set the border widths
618         of some dialog containers properly for HIG compliance
620 2005-01-21  Rodney Dawes  <dobey@novell.com>
622         * gui/merging/eab-contact-duplicate-detected.glade:
623         Fix some spacing and remove the separator for HIG compliance
624         * gui/merging/eab-contact-merging.c (match_query_callback): 
625         Set proper border widths on some dialog containers for the HIG
627         Fixes #41228
629 2005-01-21  JP Rosevear  <jpr@novell.com>
630         
631         Fixes #46404    
632         
633         * gui/widgets/e-addressbook-view.c (eab_view_print): just show the
634         dialog, not show all (margin settings aren't supposed to be used);
635         use e_print to get the dialog
636         (eab_view_print_preview): use e_print config for previewing
638         * printing/e-contact-print.c (e_contact_print_preview): get the
639         e_print config for previewing
640         (e_contact_print_contact_dialog_new): use e_print to get the
641         print dialog
643         * printing/e-contact-print-envelope.c
644         (e_contact_print_envelope_dialog_new): use e_print to get the
645         print dialog
647 2005-01-21  Hans Petter Jansson  <hpj@novell.com>
649         * gui/contact-editor/e-contact-quick-add.c (quick_add_set_name)
650         (quick_add_set_email): Don't set properties on the contact immediately.
651         (clicked_cb): Set the properties on the contact immediately before
652         passing it on. This way, the FULL_NAME will only be set once, and so
653         the FILE_AS field will be updated here.
655 2005-01-21 Sivaiah Nallagatla <snallagatla@novell.com>
657         * gui/component/addressbook-config.c 
658         (eabc_commit) : in case of new book
659         set the uid of the source as the relative 
660         uri. 
662 2005-01-19  Hao Sheng <hao.sheng@sun.com>
664         * gui/contact-editor/contact-editor.glade:
665         add accessable key to the contact editor UI.
666         * gui/contact-list-editor/contact-list-editor.glade:
667         add accessable key to the contact list editor UI.
669 2005-01-18  Hao Sheng <hao.sheng@sun.com>
671         * gui/component/addressbook-view.c:
672         (addressbook_view_init): add a11y name for the contact's
673         treeview.
675 2005-01-18 Hao Sheng <hao.sheng@sun.com>
677         * gui/contact-editor/contact-editor.glade:
678         add a11y names for widgets named "Image","Anniversary" and "Birthday".
679         * gui/contact-editor/e-contact-editor.c:
680         (e_contact_editor_create_date): add string1 as entry's a11y name.
682 2005-01-17 Sivaiah Nallagatla <snallagatla@novell.com>
684         * gui/contact-editor/e-contact-editor.c 
685         (fill_in_email_record) : show "other" when email 
686         does not carry "TYPE"
687         (fill_in_email) : pass deafult email 
688         types instead of -1 when clearing fields 
689         
690         Fixes #70922 
691         
692 2005-01-17 Hao Sheng  <hao.sheng@sun.com>
694         * gui/contact-editor/contact-editor.glade:
695         add the a11y name for arrow-button named "Telephone".
697 2005-01-12  JP Rosevear  <jpr@novell.com>
699         Fixes #61973
700         
701         * gui/widgets/e-addressbook-view.etspec: add translator comment for TTYTDD 
703 2005-01-11  Not Zed  <NotZed@Ximian.com>
705         * util/eab-book-util.c (eab_name_and_email_query): cast length
706         specifier to int.
708 2005-01-10  Hans Petter Jansson  <hpj@novell.com>
710         * gui/widgets/e-minicard.c (e_minicard_activate_editor): When spawning
711         an editor, set the initial editability from the target book, not from
712         the minicard's own (usually stale, useless) editable state.
714 2005-01-06  JP Rosevear  <jpr@novell.com>
716         * gui/component/Makefile.am: install schemas properly
718 2004-12-21  Andre Klapper <a9016009@gmx.de>
719        
720        * tools/evolution-addressbook-export.c:
721        Fixing bug 61068 (removing a white space in a string).
723 2004-12-23  Sivaiah Nallagatla <snallagatla@novell.com>
725         Part of merge from offline branch 
726         
727         * gui/widgets/addresbook-config.c (eabc_general_offline) :
728         fix some compile warings
729         (offline_status_changed_cb) : set "0" instead of NULL
730         as e-source property when offline is not checked  
731                 
732 2004-11-23  Sivaiah Nallagatla <snallagatla@novell.com>
733                                           
734         Part of merge from offline brnach 
735                                                                         
736         * gui/widgets/eab-gui-util.c (eab_load_error_dialog) :
737         added message which gets prompted when user tries
738         to access a book which is not available in offline mode
739                                                                                                                              
740         * gui/component/addressbook-config.c (eabc_general_offline)
741         (offline_status_changed_cb) : added a new check box
742         to properties page to mark a book for offline usage
743                                                                                                                              
744         * gui/component/addressbook.c (load_source_cb) : do no try to
745         authenticate in case of offline mode.
746         (auth_required_cb) : new call back which gets called
747         when backend sends notification for  password to client
748         
749 2004-12-23  Hans Petter Jansson  <hpj@novell.com>
751         This is the last we see of ESelectNames.
753         * gui/component/select-names/Evolution-Addressbook-SelectNames.idl
754         * gui/component/select-names/GNOME_Evolution_Addressbook_SelectNames.server.in.in
755         * gui/component/select-names/Makefile.am
756         * gui/component/select-names/e-select-names-bonobo.c
757         * gui/component/select-names/e-select-names-bonobo.h
758         * gui/component/select-names/e-select-names-completion.c
759         * gui/component/select-names/e-select-names-completion.h
760         * gui/component/select-names/e-select-names-config-keys.h
761         * gui/component/select-names/e-select-names-config.c
762         * gui/component/select-names/e-select-names-config.h
763         * gui/component/select-names/e-select-names-factory.c
764         * gui/component/select-names/e-select-names-factory.h
765         * gui/component/select-names/e-select-names-manager.c
766         * gui/component/select-names/e-select-names-manager.h
767         * gui/component/select-names/e-select-names-marshal.list
768         * gui/component/select-names/e-select-names-model.c
769         * gui/component/select-names/e-select-names-model.h
770         * gui/component/select-names/e-select-names-popup.c
771         * gui/component/select-names/e-select-names-popup.h
772         * gui/component/select-names/e-select-names-section.etspec
773         * gui/component/select-names/e-select-names-table-model.c
774         * gui/component/select-names/e-select-names-table-model.h
775         * gui/component/select-names/e-select-names-text-model.c
776         * gui/component/select-names/e-select-names-text-model.h
777         * gui/component/select-names/e-select-names.c
778         * gui/component/select-names/e-select-names.etspec
779         * gui/component/select-names/e-select-names.h
780         * gui/component/select-names/recipient.glade
781         * gui/component/select-names/select-names.glade: Begone.
783 2004-12-23  Hans Petter Jansson  <hpj@novell.com>
785         * gui/component/Makefile.am (SUBDIRS): No more select-names.
786         (libevolution_addressbook_la_LIBADD): Remove libeselectnames.la.
788         * gui/component/component-factory.c (factory): Remove the select-names
789         component.
791         * gui/contact-list-editor/Makefile.am (IDL)
792         (IDL_GENERATED_H)
793         (selectnamesdir): No longer needed, so removed.
795 2004-12-22  Hans Petter Jansson  <hpj@novell.com>
797         * gui/contact-list-editor/e-contact-list-editor.c
798         (e_contact_list_editor_dispose): Unref the name selector.
799         (e_contact_list_editor_save_contact): Fix a warning.
800         (add_to_model): Take a list instead of a vector of destinations.
801         (select_names_ok_cb): Adapt to new name selector.
802         (setup_corba): Renamed to setup_name_selector () and adapted.
803         (select_cb): Adapt to new name selector.
805         * gui/contact-list-editor/e-contact-list-editor.h: Adapt to new
806         name selector and remove CORBA/Bonobo.
808         * gui/widgets/eab-popup.c (eabp_target_free)
809         (eabp_popup_target_new_select_names): #ifdef out code that
810         depended on the old name selector.
812 2004-12-17  Not Zed  <NotZed@Ximian.com>
814         * util/ea-popup.c (emp_standard_menu_factory): 
816         * gui/component/select-names/e-select-names.c (section_right_click_cb): 
818         * gui/component/addressbook-view.c (popup_event_callback): 
820         * gui/widgets/e-addressbook-view.c (do_popup_menu): api changes.
822 2004-12-21  JP Rosevear  <jpr@novell.com>
824         Fixes #61975
825         
826         * gui/widgets/test-reflow.c: kill translated strings that were #if
827         0'd anyhow
829 2004-12-21  JP Rosevear  <jpr@novell.com>
830         
831         * gui/search/e-addressbook-search-dialog.c: convert to
832         G_DEFINE_TYPE
833         
834         * gui/widgets/gal-view-factory-minicard.c: ditto
836         * gui/widgets/gal-view-factory-treeview.c: ditto
838 2004-12-13  Vivek Jain <jvivek@novell.com>
840         * gui/component/addressbook-config.c (addressbook_config_edit_source): set the
841         window title based upon the source
843 2004-12-08  Hans Petter Jansson  <hpj@novell.com>
845         * gui/component/addressbook-migrate.c
846         * gui/component/select-names/e-select-names-completion.c
847         * gui/component/select-names/e-select-names-manager.c
848         * gui/component/select-names/e-select-names-model.h
849         * gui/contact-list-editor/e-contact-list-editor.h
850         * gui/contact-list-editor/e-contact-list-model.h
851         * gui/widgets/e-minicard.c
852         * gui/widgets/eab-gui-util.c
853         * importers/evolution-ldif-importer.c
854         * importers/evolution-vcard-importer.c: Include
855         <libebook/e-destination.h> from evolution-data-server.
856         * util/Makefile.am: Remove e-destination.[ch] from here.
857         * util/e-destination.[ch]: Removed.
859 2004-12-08  S. Caglar Onur  <caglar@uludag.org.tr>
861         * evolution-2.0.2/addressbook/gui/contact-editor/e-contact-editor.c
862         (get_ui_slot_param)
863         (get_attributes_named): some strcasecmp() calls changed with
864         g_ascii_strcasecmp() for Turkish character conversiton problems
865         [ http://www.i18nguy.com/unicode/turkish-i18n.html ]
867 2004-12-06  Not Zed  <NotZed@Ximian.com>
869         * gui/component/addressbook-config.c (eabc_general_type): set the
870         active item based on the current group.
872 2004-12-01  Sivaiah Nallagatla <snallagatla@novell.com> 
874         * gui/contact-editor/e-contact-editor.c (save_contact) :
875         save the uid and set it again in the contact. Otherwise, there is
876         possibility we trying to save the contact wiht out UID, as we destory the 
877         contact and create new one when data is wrong  
879          
880 2004-11-28  Sivaiah Nallagatla <snallagatla@novell.com>
882         * gui/contact-editor/e-contact-editor.h : Define
883         new list for storing required fields
885         * gui/contact-editor/e-contact-editor.c 
886         (e_contact_editor_class_init) : install new REQUIRED_FIELDS
887         property 
888         (e_contact_editor_set_property)
889         (e_contact_editor_get_property) : added handling 
890         for new RQUIRED_FIELDS_PROPERTY
891         (e_contact_editor_dispose) : unref the new 
892         required_fields member 
893         (required_fields_cb) : call back to set required fields into
894         contact editor
895         (is_non_string_field) : new method to detect
896         whether a particular field in contact is a string or not
897         (e_contact_editor_is_valid) : check for presence of 
898         all required fields
899         (save_contact) : extract all the data before 
900         calling e_contact_editor_is_valid so that
901         it can check for required fields. Clean up the contact
902         if there is an error
903         
904 2004-11-27  Sushma Rai  <rsushma@novell.com>
906         * gui/widgets/e-minicard-view.c (set_empty_message):
907         Checking for the static capability "do-initial-query",
908         and setting the relevent empty addressbook message.
910 2004-11-26  JP Rosevear  <jpr@novell.com>
912         * gui/component/select-names/e-select-names-popup.c
913         (populate_popup_contact): get image directly from icon factory
915         * gui/contact-editor/e-contact-editor-im.c
916         (setup_service_optmenu): ditto
917         
918 2004-11-25  Hao Sheng  <hao.sheng@sun.com>
920         * gui/contact-editor/contact-editor.glade:
921         add "labelled by" between entry and label,
922         make accessbility work.
923         * gui/contact-editor/e-contact-editor.c:
924         (e_contact_editor_create_web): add accessible name to e_url_entry.
926 2004-11-22  Joan Sanfeliu  <joan@fibranet.com>
928         * gui/component/apps_evolution_addressbook.schemas.in.in:
929         * gui/component/ldap-config.glade : Evolution product name spelled
930         with an uppercase E
932         Fixes #61065
934 2004-11-22  Rodney Dawes  <dobey@novell.com>
936         * importers/GNOME_Evolution_Addressbook_VCard_Importer.server.in.in:
937         Fix name attribute values to be identical
939         Fixes #61976
941 2004-11-21  Sivaiah Nallagatla <snallagatla@novell.com>
943         * rever last commit , it is supposed to for offline 
944         branch not to HEAD 
946 2004-11-21  Sivaiah Nallagatla <snallagatla@novell.com>
948         * gui/widgets/eab-gui-util.c (eab_load_error_dialog) : 
949         added message which gets prompted when user tries 
950         to access a book which is not available in offline mode
952         * gui/component/addressbook-config.c (eabc_general_offline) 
953         (offline_status_changed_cb) : added a new check box
954         to properties page to mark a book for offline usage 
956         * gui/component/addressbook.c (load_source_cb) : do no try to
957         authenticate in case of offline mode. 
958         (auth_required_cb) : new call back which gets called
959         when backend sends notification for  password to client
960         
961 2004-11-07  Sivaiah Nallagatla <snallagatla@novell.com>
963        * util/eab-book-util.c (eab_name_and_email_query) :
964        When name is NULL query against complete email id instead of
965        user name part to take care of users@foo.org not matching
966        against users@bar.org . Also include query based on name always
968        Fix for  #67656
971 2004-11-16  Not Zed  <NotZed@Ximian.com>
973         * util/Makefile.am (libeabutil_la_LIBADD): remove camel, add
974         ADDRESSBOOK_LIBS.
976         * conduit/Makefile.am (libeaddress_conduit_la_LIBADD): remove
977         camel.
979         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
980         remove camel.
982 2004-11-15  Not Zed  <NotZed@Ximian.com>
984         * *.c: Moved various things from e-util to libedataserver, where
985         appropriate.
987 2004-11-08  Andre Klapper  <a901600@gmx.de>
989         Fixes bug #61966.
991         * addressbook-errors.xml: Add a missing word to a string.
993 2004-11-08  Steven Zhang <steven.zhang@sun.com>
995         * gui/widgets/e-minicard.c: (e_minicard_activate_editor): 
996         rename and make it a public function.
997         (e_minicard_event): change accordingly.
998         * gui/widgets/e-minicard.h: ditto.
1000 2004-11-04  Sivaiah Nallagatla <snallagatla@novell.com>
1001         
1002         * gui/contact-editor/e-contact-editor.c (save_contact) :
1003         populate contact only afte we are sure that data is valid 
1004         and we can create that.
1005         Fixes #69079
1007 2004-11-07  Rodney Dawes  <dobey@novell.com>
1009         * gui/contact-editor/e-contact-editor.c
1010         (init_email_record_location, init_im_record_location):
1011         Translate the category pretty names that we pass for creation of
1012         new menu item entries for the E-Mail and IM dropdown selections
1014         Partially fixes bug #66854
1015         
1016 2004-11-04  mengjie yu  <meng-jie.yu@sun.com>
1018         fix for bugzilla #44876
1020         * gui/component/select-names/e-select-names-manager.c:
1021        (e_select_names_manager_entry_new):add a atk name for the entry.
1023 2004-11-2   Hao Sheng  <hao.sheng@sun.com>
1025         * gui/widgets/e-minicard-view.c: popup right-click menu after
1026         pressing Shift+F10.
1028 2004-11-01  Sivaiah Nallagatla <snallagatla@novell.com>
1030         * gui/widgets/eab-gui-util.c 
1031         (added_cb) (_modified_cb) : Don't show
1032         error dialogs when status code is E_BOOK_ERROR_CANCELLED. We don't
1033         wabt to show "Error adding contact,  Cancelled" dialogs when user 
1034         cancels duplicated contact detected dialog.       
1035         
1036 2004-10-27  Andre Klapper  <a9016009@gmx.de>
1038        * tools/evolution-addressbook-export.c: 
1039        Fixing a typo (bug 61069).
1041 2004-10-26  Andre Klapper <a9016009@gmx.de>
1043         Fixes #61972.
1045         * addressbook/gui/contact-editor/e-contact-editor-address.c:
1046         Typo in country name: was "Grena-dines", now "Grenadines".
1048 2004-10-25  Nat Friedman  <nat@novell.com>
1050         * gui/widgets/eab-contact-display.c (accum_multival_attribute):
1051         Display mutlivalued contact attributes in the preview.
1052         (render_contact): Render all IM fields using the new multival
1053         function.
1055 2004-10-21  JP Rosevear  <jpr@novell.com>
1057         * gui/widgets/eab-config.c (ecph_class_init): correct hook name
1058         typo
1060         * gui/component/addressbook-view.c: add appropriate popup icons
1062 2004-10-21  Not Zed  <NotZed@Ximian.com>
1064         * gui/component/addressbook-config.c
1065         (addressbook_config_edit_source): fix a past-o for no-ldap case.
1067 2004-10-20  Not Zed  <NotZed@Ximian.com>
1069         * gui/component/addressbook-component.c
1070         (addressbook_component_init): register config hook.
1072         * gui/component/addressbook-config.c: mostly re-written to use econfig.
1073         (query_for_supported_bases): convert to gtktreeview.
1075         * gui/widgets/eab-config.c (ecp_set_target): hook onto source changed.
1076         (ecp_source_changed): propagate changed state info.
1077         (ecp_class_init): setup private data.
1079 2004-10-19  Not Zed  <NotZed@Ximian.com>
1081         * gui/widgets/eab-menu.c (eabm_target_free): don't unref null
1082         book.
1084 2004-10-19  JP Rosevear  <jpr@novell.com>
1086         * gui/component/addressbook-view.c,
1087         gui/component/select-names/e-select-names.c,
1088         gui/widgets/e-addressbook-view.c, gui/widgets/eab-menu.c,
1089         gui/widgets/eab-popup.c: convert to org.gnome hook names
1090         
1091 2004-10-15 Sivaiah Nallagatla <snallagatla@novell.com>
1093         * gui/widgets/e-addressbook-view.c : add EAB_POPUP_SELECT_ANY
1094         mask instead of EAB_POPUP_SELECT_MANY, so that 
1095         all the options like Save as, Forward etc are enabled even 
1096         single contact is selected. 
1098 2004-10-15 Sivaiah Nallagatla <snallagatla@novell.com>
1100         * gui/widgets/eab-contact-display.c : uncomment 
1101         HANDLE_MAILTO_INTERNALLY define so that we will
1102         launch composer through bonobo  instead of using 
1103         gnome_url_show  
1104         
1105 2004-10-15  Not Zed  <NotZed@Ximian.com>
1107         * gui/widgets/eab-popup.c: added an any select mask and updated
1108         the hook maps.
1110         * gui/component/addressbook-component.c
1111         (addressbook_component_init): register the addressbook hooks.
1113         * gui/component/addressbook-view.c (addressbook_view_init): setup
1114         the menu manager.
1115         (control_activate_cb): activate the menu manager.
1116         (update_command_state): and update the menu manager.
1118         * gui/widgets/eab-menu.[ch]: Added menu manager class.
1120 2004-10-13  JP Rosevear  <jpr@novell.com>
1122         * importers/evolution-vcard-importer.c: find source selector and
1123         option menu in libedataserverui
1125         * importers/evolution-ldif-importer.c: ditto
1127         * gui/widgets/eab-popup.c: ditto
1129         * gui/widgets/eab-gui-util.c: ditto
1131         * gui/contact-list-editor/e-contact-list-editor.c: ditto
1133         * gui/contact-editor/e-contact-editor.c: ditto
1135         * gui/component/select-names/e-select-names.h: ditto
1137         * gui/component/autocompletion-config.c: ditto
1139         * gui/component/addressbook-view.c: ditto
1141 2004-10-11  Hans Petter Jansson  <hpj@ximian.com>
1143         * gui/component/addressbook-view.c (source_list_changed_cb): Don't
1144         unref the view - removing it from the hash table will do this for us.
1145         Remove from hash table after removing the notebook page.
1146         (addressbook_view_init): Unref views when removed from the hash
1147         table.
1149 2004-10-06  Not Zed  <NotZed@Ximian.com>
1151         * gui/component/addressbook-view.c (popup_event_callback): 
1152         * gui/component/select-names/e-select-names.c (section_right_click_cb):
1153         * gui/widgets/e-addressbook-view.c (do_popup_menu): fix for
1154         e-popup api changes.  Moved all mask specifiers to visible rather
1155         than enable in the menu table.
1157 2004-10-06  Not Zed  <NotZed@Ximian.com>
1159         * gui/contact-editor/e-contact-editor.c: removed
1160         gnome-popup-menu.h (unused).
1162         * gui/widgets/e-addressbook-reflow-adapter.c: 
1163         * gui/widgets/eab-popup-control.c: remove e-popup-menu.h (unused).
1165         * gui/component/select-names/e-select-names.c
1166         (section_right_click_cb): use e-popup.  Somewhat overengineered
1167         for this use ...
1168         (remove_cb): api changes.
1170         * gui/widgets/eab-popup.c (eab_popup_target_new_select_names):
1171         added pretty useless wrapper for the select names popup.  Added to
1172         hook maps.
1174 2004-10-01  Not Zed  <NotZed@Ximian.com>
1176         * gui/widgets/e-addressbook-view.c (do_popup_menu): convert to
1177         using EABPopup.
1178         (sources): remove dead code.
1179         (has_email_address_1, get_has_email_address): removed now
1180         redundant code.
1181         (save_as, send_as, send_to, print, copy, paste, cut, delete) 
1182         (copy_to_folder, move_to_folder, new_card, new_list): new api.
1183         (free_popup_info): dead.
1184         (print_envelope): not pining.
1185         (get_contact_list): take a popup target instead, don't ref.
1186         (get_contact_list_1): not required no more.
1187         (contact_and_book_free): same.
1188         (delete): call eab_view_delete_selection.
1189         (eab_view_delete_selection): do the actual delete here.
1191         * gui/widgets/eab-popup.c (eab_popup_target_new_select): implement.
1193 2004-10-01  Not Zed  <NotZed@Ximian.com>
1195         * gui/widgets/eab-popup.[ch]: addressbook popup driver.
1197         * gui/component/addressbook-view.c (delete_addressbook_cb): use
1198         e-error for the message prompt.  don't bother keeping it around,
1199         it can never be re-sensitised anyway.
1200         (book_removed): no longer destroy the original dialogue.
1202         * addressbook-errors.xml: add ask-delete for deleting
1203         addressbooks.
1205         * gui/component/addressbook-view.c (addressbook_view_init):
1206         connect to popup_event rather than fill_popup_menu now.
1207         (fill_popup_menu_callback): renamed to popup_event_callback,
1208         changed to use epopup.
1209         (add_popup_menu_item): remove, no longer needed.
1211 2004-09-29  Not Zed  <NotZed@Ximian.com>
1213         Fixes bug #66520.
1215         * gui/widgets/e-addressbook-view.c (eab_view_dispose): don't unref
1216         the contact_display_window, it will be destroyed by being
1217         parented.
1219 2004-09-29  Hans Petter Jansson  <hpj@ximian.com>
1221         Fixes bug #66369.
1223         * util/eab-book-util.c (eab_contact_list_from_string): Make the
1224         vcard splitter work with any amount of blank lines between vcards.
1226 2004-09-29  Hans Petter Jansson  <hpj@ximian.com>
1228         Fixes bug #65537.
1230         * gui/merging/eab-contact-compare.c (query_cb): Protect against NULL
1231         UIDs, and make fewer calls to e_contact_get_const () as a bonus.
1233 2004-09-24  Hao Sheng  <hao.sheng@sun.com>
1234         
1235         Fix for #66523
1237         * gui/contact-list-editor/e-contact-list-model.c:
1238         (e_contact_list_model_add_email): estimate the same mail address
1239         and popup a warning dialog.
1240         * addressbook-errors.xml: add the question message for the warning
1241         dialog.
1243 2004-09-23  Pamplona Hackers <gnome-desarrollo@es.gnome.org>
1245         Fixes #61978
1247         * tools/evolution-addressbook-export.c (main): use more
1248         meaningful error message.
1250 2004-09-23  Fazlu & Hannah <hannah_lins@yahoo.co.in>
1252         * tools/evolution-addressbook-export.c (main):
1253         Changed the string into proper grammar 'In normal mode, there
1254         should not need size option.' to 'In normal mode, there is no need
1255         for the size option.'
1257 2004-09-23  JP Rosevear  <jpr@novell.com>
1259         * conduit/address-conduit.c (ecard_from_remote_record): only set
1260         the file as address to the company if no full name exists
1261         (delete_record): don't bail out if the record simply isn't found
1263         Fixes #59725
1264         
1265         * conduit/address-conduit.c (local_record_from_uid): remove
1266         extraneous semicolon
1268 2004-09-21  William Jon McCann  <mccann@jhu.edu>
1270         * gui/component/component-factory.c (factory): Quiet debug messages.
1272         * gui/widgets/e-addressbook-view.c (eab_view_new): Remove
1273         unnecessary label widget placeholder.  Make vertical scrollbar
1274         policy automatic.  Use gtk_paned_add2 instead of
1275         gtk_container_add.
1277         * gui/component/apps_evolution_addressbook.schemas.in.in: Add
1278         missing show_preview schema.  Add missing long descriptions.
1280 2004-09-13  Rodney Dawes  <dobey@novell.com>
1282         * gui/contact-editor/e-contact-editor.c (show_help_cb):
1283         Point at the correct XML file for documentation
1285 2004-09-13 Sivaiah Nallagatla <snallagatla@novell.com>
1287        * gui/contact-editor/e-contact-editor.c
1288        (sensitize_address) : check for _LABEL
1289        type address fields also in supported fileds
1290        while sensitizing the address fields
1292 2004-09-03  JP Rosevear  <jpr@novell.com>
1294         Fixes #63191
1295         
1296         * gui/contact-list-editor/contact-list-editor.glade: set the title
1297         properly
1298         
1299 2004-09-08  Not Zed  <NotZed@Ximian.com>
1301         ** See bug #64080.
1303         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
1304         link addressbook to camel.
1306 2004-09-04 Sivaiah Nallagatla <snallagatla@novell.com>
1308         * gui/widgets/e-addressbook-view.h : add
1309         new widget variable contact_dsiplay_window to _EABView strcut
1310         to store. Remove unused scrolled varible
1311         * gui/widgets/e-addressbook-view.c (eab_view_init)
1312         (eab_view_dispose) : initialize and unref the new widget
1313         added 
1314         (eab_view_new) : remove the loca variable scrlled_window 
1315         instead use eav->contact_display_window
1316         (eab_view_show_contact_preview) : show/hide contact_display_window 
1317         instead of contact_display
1318         Fixes #64024 
1321 2004-08-27  Not Zed  <NotZed@Ximian.com>
1323         ** See bug #62856 (workaround).
1325         * gui/component/addressbook.c (addressbook_authenticate): add
1326         online flag to password request.
1328         ** See bug #64011.
1330         * gui/component/addressbook-view.c (edit_addressbook_cb): Remove
1331         double ;; in declaration section (c99 extension).  From Vincent
1332         Noel <vnoel@cox.net>.
1334 2004-08-26  Hans Petter Jansson  <hpj@ximian.com>
1336         Really fixes #61833 and #63697.
1338         * gui/component/select-names/e-select-names.etspec: Fetch values from
1339         column 86 (NAME_OR_ORG), instead of 2 (FILE_AS).
1341 2004-08-26  Chris Toshok  <toshok@ximian.com>
1343         [ patch for the rest of 60889 ]
1344         * gui/merging/eab-contact-merging.c (add_lookup): new function,
1345         either start up the query or add it to the queue if we're over the
1346         number of simultaneous queries.
1347         (finished_lookup): start up enough pending queries to get us to
1348         our limit again.
1349         (free_lookup): free lookup->avoid.
1350         (final_id_cb): call finished_lookup.
1351         (eab_merging_book_add_contact): set lookup->avoid to NULL and
1352         replace call to eab_contact_locate_match_full with add_lookup.
1353         (eab_merging_book_commit_contact): set lookup->avoid to the
1354         contact, and make the same
1355         s/eab_contact_locate_match_full/add_lookup/ replacement.
1357 2004-08-26  Christian Neumair  <chris@gnome-de.org>
1359         * gui/component/GNOME_Evolution_Addressbook.server.in.in:
1360         Don't mark component menu accel for translation.
1362 2004-08-25  Sivaiah Nallagatla <snallagatla@novell.com>
1364        * gui/component/addressbook-config.c (source_to_dialog) :
1365        disbale the display name widget in case of groupwise as we can not handle renames as
1366        of now
1367        (dialog_to_source) also copy "use_ssl" property to new source so that
1368        new books also use ssl
1370 2004-08-25  Hans Petter Jansson  <hpj@ximian.com>
1372         May fix #61833.
1374         * gui/component/select-names/e-select-names-table-model.c
1375         (fill_in_info): Get E_CONTACT_NAME_OR_ORG (first found from File As,
1376         Full Name, Organization, Email 1) for the "name" field. Hopefully
1377         will prevent most cases of blank entries.
1379 2004-08-25  Frederic Crozat  <fcrozat@mandrakesoft.com>
1381         * gui/component/addressbook-view.c: (delete_addressbook_cb):
1382         Don't call gtk_dialog_set_has_separator on Gtk Message Dialog
1383         with GTK+ >= 2.4.0.
1385 2004-08-20  Chris Toshok  <toshok@ximian.com>
1387         * gui/component/component-factory.c (factory): remove the dead
1388         ldap config control stuff.
1390 2004-08-20  Hans Petter Jansson  <hpj@ximian.com>
1392         Fixes bug #62715.
1394         * gui/contact-editor/e-contact-editor.c
1395         (fill_in_address_label_textview): Implement.
1396         (fill_in_address_field): If structured address information is not
1397         available, try putting the "label" blob in the free-form field.
1399 2004-08-19  Hans Petter Jansson  <hpj@ximian.com>
1401         Makes the contact image selector use GtkFileChooser if available.
1403         * gui/contact-editor/e-contact-editor.c (image_selected_cb): Take just
1404         the editor as an argument, so we can call from other places without
1405         having to supply dummy args. Rename to image_selected, since it's no
1406         longer strictly a callback. Include optional code to use the new
1407         GtkFileChooser.
1408         (image_cleared_cb): Ditto. Rename to image_cleared.
1409         (file_chooser_response): Optional response handling for GtkFileChooser.
1410         (image_clicked): Include optional code to use the new GtkFileChooser.
1411         Move common strings to variables. For GtkFileSelection, swap callback
1412         parameters for the modified image_selected () and image_cleared ().
1414 2004-08-19  Chris Toshok  <toshok@ximian.com>
1416         [ likely fixes #61500 ]
1417         * addressbook-errors.xml (remove-addressbook): remove the
1418         secondary text, since we don't have the gerror text to supply it
1419         anymore.
1421         * gui/component/addressbook-view.c (book_removed): new function,
1422         move the error handling here.
1423         (delete_addressbook_cb): create a closure with necessary data, and
1424         call the e_book_async_remove instead of e_book_remove.
1426 2004-08-18  Sivaiah Nallagatla <snallagatla@novell.com>
1427         
1428         * gui/component/select-names/e-select-names.c (e_select_names_init) :
1429         select names dialog can not be modal as password dialogs can come up while 
1430         user is in this dialog for address books which require authentication
1431         like groupwise and LDAP
1432         FIxes #63257 
1434 2004-08-11  Hans Petter Jansson  <hpj@ximian.com>
1436         * gui/contact-editor/e-contact-editor.c (app_delete_event_cb):
1437         Remove the custom prompt-to-save dialogs from here - use
1438         eab_prompt_save_dialog (), and then only if the contact actually
1439         changed.
1441 2004-08-16  Chris Toshok  <toshok@ximian.com>
1443         * gui/widgets/eab-gui-util.c (eab_show_multiple_contacts):
1444         reinstate the ngettext patch that was part of the #53464 commit of
1445         2004-03-24 by dsegan@gmx.net.
1447 2004-08-12  Carlos Garnacho Parro  <carlosg@gnome.org>
1449         * gui/widgets/eab-gui-util.c: Optionally use GtkFileChooser if
1450         compiled against Gtk+ >= 2.4.0
1452 2004-08-10  Not Zed  <NotZed@Ximian.com>
1454         * gui/component/addressbook.c (addressbook_authenticate): e
1455         passwords api change/reprompt if we need to.
1457 2004-08-12  Sivaiah nallagatla <snallagatla@novell.com>
1459         * gui/compoent/addressbook.c : just revering a local change 
1460         gone in in the commit i just made 
1462 2004-08-12  Sivaiah Nallagatla <snallagatla@novell.com>
1463         
1464         * gui/component/addresbook.c (load_source_auth_cb) :
1465         when user cancels auth dialog send the anonoymous query
1466         only in case of ldap 
1467         *gui/component/addresbook-view.c (book_open_cb) : no need to
1468         display the error dialog when user cancels that
1470 2004-08-04  Rodney Dawes  <dobey@novell.com>
1472         * gui/widgets/eab-popup-control.c: #include <gtk/gtkvbox.h>
1474 2004-08-02  Hans Petter Jansson  <hpj@ximian.com>
1476         Fixes #60529.
1478         * gui/contact-list-editor/e-contact-list-editor.c
1479         (table_drag_drop_cb): Make sure to get the text/x-vcard target.
1481 2004-08-02  Hans Petter Jansson  <hpj@ximian.com>
1483         Fixes #62085.
1485         * gui/contact-list-editor/e-contact-list-editor.c
1486         (e_contact_list_editor_class_init): Set the save_contact method.
1487         (e_contact_list_editor_save_contact): Implement.
1489 2004-08-02  JP Rosevear  <jpr@novell.com>
1491         * conduit/address-conduit.c (addrconduit_load_configuration): get
1492         source uid
1493         (addrconduit_dupe_configuration): copy source_uid
1494         (addrconduit_destroy_configuration): free source_uid
1495         (e_addr_context_new): get the source list
1496         (e_addr_context_destroy): unref the source list
1497         (pre_sync): open the source that was set earlier
1498         (fill_widgets): set the source option menu value
1499         (create_settings_window): pass source list to pilot settings
1500         (save_settings): save source uid
1502         * conduit/Makefile.am: link to and include misc. widgets
1504 2004-08-02  Rodney Dawes  <dobey@novell.com>
1506         * gui/component/ldap-config.glade: Make the main dialog here be
1507         an actual GtkDialog instead of a GtkWindow
1508         Fix up a few small spacing issues with the UI
1509         Change "Contacts Group" to "Address Book"
1511         * gui/component/addressbook-config.c (query_for_supported_bases):
1512         Use gtk_widget_ensure_style instead of gtk_widget_realize
1513         (addressbook_add_server_dialog):
1514         Use gtk_widget_ensure_style on the dialog and fix the spacing and
1515         border width of the dialog containers
1517         Fixes #61365
1519 2004-07-30  Chris Toshok  <toshok@ximian.com>
1521         [ fixes #61365 and other misc issues with the addressbook source
1522         editors ]
1523         
1524         * gui/component/ldap-config.glade: change the
1525         supported-bases-dialog to be initially hidden.
1527         * gui/component/addressbook-view.c (editor_weak_notify): new
1528         function, remove the editor from our hash.
1529         (source_list_changed_cb): destroy the editors for given sources if
1530         they're up when the source disappears.
1531         (edit_addressbook_cb): add the editor (and some other misc info we
1532         need) to our uid_to_editor hash so we can look it up later.  only
1533         create the editor if one doesn't exist for the given source.
1534         (destroy_editor): GHFunc that destroys the widgets.
1535         (addressbook_view_dispose): destroy uid_to_editor.
1536         (addressbook_view_init): init uid_to_editor.
1538         * gui/component/addressbook-config.h: change return values for
1539         _edit_source and _new_source - they both return GtkWidget*s now.
1541         * gui/component/addressbook-config.c (addressbook_ldap_init):
1542         attempt set the protocol version to LDAPv3.  This makes the
1543         ldap_auth stuff work if the server requires v3.
1544         (addressbook_root_dse_query): we don't need the separate window
1545         arg, since all of this now happens *before* the supported bases
1546         dialog is shown.  we just use the source dialog's window for the
1547         various error dialogs.
1548         (do_ldap_root_dse_query): same.
1549         (query_for_supported_bases): same, and set the supported bases
1550         dialog as transient-for the source dialog, and make it modal.
1551         Lastly, don't make the editor modal.
1552         (addressbook_config_edit_source): return the editor's window.
1553         (addressbook_config_create_new_source): same.
1555 2004-07-26  JP Rosevear  <jpr@novell.com>
1557         * gui/component/ldap-config.glade: change contacts group to
1558         address book
1560         * gui/component/addressbook-component.c
1561         (impl__get_userCreatableItems): ditto
1562         
1563 2004-07-19  Radek Doulik  <rodo@ximian.com>
1565         * gui/widgets/eab-vcard-control.c (eab_vcard_control_new): but
1566         buttons to button box, use vbox instead of table
1568         * gui/widgets/eab-contact-display.c: base this widget directly on
1569         gtkhtml
1571         * gui/widgets/e-addressbook-view.c (eab_view_new): put contact
1572         display in scrolled window
1574 2004-07-20  Not Zed  <NotZed@Ximian.com>
1576         * gui/widgets/eab-contact-display.c: 
1577         * gui/contact-editor/eab-editor.c: 
1578         * gui/component/addressbook-migrate.c: include config.h #61395.
1580 2004-07-21  Chris Toshok  <toshok@ximian.com>
1582         [ fixes #60508 ]
1583         
1584         * gui/component/addressbook-config.h: reorder the Scopes so that
1585         they match the option menu.
1587         * gui/component/ldap-config.glade: change the scope option menu to
1588         only display One and Sub, and also set the Login field to Lo_gin
1589         in both dialogs.  Add accelerators for the details page as well.
1591 2004-07-21  Rodney Dawes  <dobey@novell.com>
1593         * gui/contact-editor/contact-editor.glade:
1594         Give a reasonable name to the widget for the _Where label
1596         * gui/contact-editor/e-contact-editor.c (e_contact_editor_init):
1597         Set the mnemonic widget for the _Where label
1599         Fixes #61544
1601 2004-07-20  JP Rosevear  <jpr@novell.com>
1603         * gui/component/autocompletion-config.c
1604         (autocompletion_config_control_new): don't set the toggle
1605         selection
1607 2004-07-16  Hans Petter Jansson  <hpj@ximian.com>
1609         * gui/contact-editor/e-contact-editor.c (contact_added_cb)
1610         (save_contact)
1611         (app_delete_event_cb): Check source book writeability directly instead
1612         of relying on stored state.
1613         (e_contact_editor_init): Don't init source_editable.
1614         (e_contact_editor_dispose): We don't listen for source writeability
1615         anymore.
1616         (writable_changed): Source writeability doesn't affect widget
1617         status; remove code to check for it.
1618         (e_contact_editor_set_property): Do nothing if book being set is
1619         the same as currently set book; previously we would end up
1620         unreffing then reffing it. Don't watch for source writeability, but
1621         do so for target; fixes a warning. Only call sensitize_all() if
1622         writeability on target changed.
1624         * gui/contact-editor/e-contact-editor.h (EContactEditor): We don't
1625         need the source_editable and source_editable_id vars anymore.
1627 2004-07-14  Chris Toshok  <toshok@ximian.com>
1629         [ fixes #60873, and possibly other crashes ]
1630         
1631         * gui/widgets/e-addressbook-model.c (get_view): don't call
1632         free_data before potentially making an async call.  Or rather,
1633         don't call free_data without ensure we'll be emitting
1634         MODEL_CHANGED shortly after.
1636 2004-07-14  Chris Toshok  <toshok@ximian.com>
1638         * gui/contact-list-editor/.cvsignore: ignore
1639         Evolution-Addressbook-SelectNames.h.
1641         * gui/contact-list-editor/e-contact-list-editor.c: include our
1642         local (in this directory) generated
1643         Evolution-Addressbook-SelectNames.h
1645         * gui/contact-list-editor/Makefile.am: add stuff to generate (and
1646         clean up) the select names header we need to include.
1648 2004-07-13  Rodney Dawes  <dobey@novell.com>
1650         [ fixes #56657 ]
1652         * gui/component/addressbook-migrate.c (get_source_by_uri):
1653         Replace this call with get_source_by_name ()
1654         (migrate_completion_folders): Fix the non-local folder migration
1655         to look up sources for the migrated folders based on name, instead
1656         of using the URI
1658 2004-07-12  Chris Toshok  <toshok@ximian.com>
1660         [ fixes #61299 ]
1662         * gui/component/addressbook.c (addressbook_load_default_book):
1663         don't pass @closure to load_source_cb, since that expects to get a
1664         LoadSourceData*. also, don't always call e_book_async_open.  only
1665         do that when the book is non-NULL.
1667 2004-07-12  Chris Toshok  <toshok@ximian.com>
1669         [ part of fix for bug #56520 ]
1670         
1671         * gui/contact-list-editor/e-contact-list-editor.c
1672         (e_contact_list_editor_init): init allows_contact_lists to TRUE.
1673         (list_deleted_cb): nuke, it's unused.
1674         (e_contact_list_editor_set_property): check if the book supports
1675         contact lists, and desensitize things if it doesn't.
1676         (select_names_ok_cb): this isn't valid C.  declarations must come
1677         before code.
1678         (set_editable): the editable state of the dialog depends on
1679         whether or not the backend supports contact lists.
1680         (command_state_changed): the ok button needs to depend on
1681         allows_contact_lists.
1682         (extract_info): quiet compiler warning.
1684         * gui/contact-list-editor/e-contact-list-editor.h (struct
1685         _EContactListEditor): add allow_contact_lists.
1687 2004-07-08  Frederic Crozat  <fcrozat@mandrakesoft.com>
1689         * gui/component/Makefile.am:
1690         tarball should ship .schemas.in.in files, not generated files.
1692         * gui/component/apps_evolution_addressbook.schemas.in.in:
1693         Don't set empty default value on an int, this causes gconf warning.
1694         (bug #60859)
1696 2004-09-04  Not Zed  <NotZed@Ximian.com>
1698         * util/e-destination.c: include gnome-i18n.h since camel-object no
1699         longer does(!).
1701 2004-07-02  Hans Petter Jansson  <hpj@ximian.com>
1703         * gui/contact-list-editor/e-contact-list-editor.c
1704         (command_state_changed): Set the source option menu sensitivity here.
1706 2004-06-30  Chris Toshok  <toshok@ximian.com>
1708         * gui/contact-editor/e-contact-editor.c
1709         (e_contact_editor_dispose): disconnect source/target_editable
1710         signal ids.
1711         (e_contact_editor_set_property): disconnect/connect editable
1712         signals.
1713         (writable_changed): new function - we need this since writable
1714         status is generally communicated asynchronously with the async
1715         interface.
1717         * gui/contact-editor/e-contact-editor.h (struct _EContactEditor):
1718         add source/target_editable_id slots.
1720 2004-06-29  Rodney Dawes  <dobey@novell.com>
1722         * tools/Makefile.am (bin_PROGRAMS): Change to privlibexec_PROGRAMS
1724         Fixes #60832
1726 2004-06-28  Not Zed  <NotZed@Ximian.com>
1728         * gui/component/addressbook-component.c
1729         (impl__get_userCreatableItems): fix shortcuts. #56746
1731 2004-06-25  Hans Petter Jansson  <hpj@ximian.com>
1733         * gui/meging/eab-contact-compare.[ch] (eab_contact_compare_file_as):
1734         Implement.
1735         (eab_contact_compare_name): Don't leak if only one of the strings is
1736         NULL.
1737         (use_common_book_cb): Include file_as in query.
1739 2004-06-25  Hans Petter Jansson  <hpj@ximian.com>
1741         * gui/contact-editor/e-contact-editor.c (fill_in_address_textview): Add
1742         a newline between street line and rest of extended address.
1743         (extract_address_textview): Omit the newline trailing the street line.
1745 2004-06-24  Hans Petter Jansson  <hpj@ximian.com>
1747         * gui/contact-editor/e-contact-editor.c (address_labels): Add table.
1748         (append_to_address_label): Implement.
1749         (set_address_label): Implement.
1750         (extract_address_record): Set the address label fields.
1752 2004-06-24  Hans Petter Jansson  <hpj@ximian.com>
1754         * util/eab-book-util.c (eab_contact_list_from_string): Don't accept
1755         input that doesn't have at least a "BEGIN:VCARD" in it.
1757 2004-06-24  Radek Doulik  <rodo@ximian.com>
1759         * gui/component/select-names/e-select-names-model.c
1760         (e_select_names_model_get_textification): do not limit the text
1761         len to 2047 characters
1763         See bug #60366
1765 2004-06-23  Hans Petter Jansson  <hpj@ximian.com>
1767         * gui/contact-editor/contact-editor.glade: Set window to be invisible
1768         initially.
1770         * gui/contact-editor/e-contact-editor.c (e_contact_editor_init): Set
1771         the type hint to "normal", and show the window after init.
1773 2004-06-23  Not Zed  <NotZed@Ximian.com>
1775         * gui/widgets/eab-gui-util.c
1776         (eab_send_contact_list_as_attachment): use memcpy not strcpy to
1777         copy to memory buffer.  Fixes a UMW.  See #60532.
1779 2004-06-23  Hans Petter Jansson  <hpj@ximian.com>
1781         * gui/component/addressbook-view.c: Add an x-source-vcard target entry
1782         that includes the source book URI.
1783         (destroy_merge_context): Implement.
1784         (removed_contact_cb): Implement.
1785         (merged_contact_cb): Implement.
1786         (selector_tree_drag_data_received): Get the source and target books,
1787         and see if we need to remove contacts from source after they're added
1788         to target. Copy contacts sequentially, not in parallel, with a
1789         callback.
1791         * gui/widgets/e-addressbook-view.c: Add an x-source-vcard target entry
1792         that includes the source book URI.
1793         (table_drag_data_delete): Remove. This is handled by the drag target.
1794         (table_drag_data_get): Handle more than one contact. Supply source.
1795         (create_table_view): Don't connect to the delete signal.
1797         * gui/widgets/e-minicard-view.c: Add an x-source-vcard target entry
1798         that includes the source book URI.
1799         (e_minicard_view_drag_data_delete): Remove. This is handled by the
1800         drag target.
1801         (e_minicard_view_drag_data_get): Handle x-source-vcard target.
1802         (e_minicard_view_drag_begin): Don't connect to the delete signal.
1803         (e_minicard_view_dispose): Don't disconnect from the delete signal.
1804         (e_minicard_view_init): Don't init delete_id.
1806         * gui/widgets/e-minicard-view.h: Remove delete_id from struct.
1808         * util/eab-book-util.[ch] (eab_contact_list_from_string): Skip the
1809         source URI if present.
1810         (eab_book_and_contact_list_from_string): Create the source book from
1811         the provided URI, if present.
1812         (eab_book_and_contact_list_to_string): Include the book URI in
1813         generated string.
1815 2004-06-23  Rodney Dawes  <dobey@novell.com>
1817         * gui/component/select-names/select-names.glade:
1818         Move the search bar to the top and add a label _Search so that the
1819         entry has a mnemonic for keyboard accessibility
1821         Fixes #52914 and #58448
1823 2004-06-22  Hans Petter Jansson  <hpj@ximian.com>
1825         * gui/contact-editor/contact-editor.glade: Name the labels.
1827         * gui/contact-editor/e-contact-editor.c (sensitize_email_record)
1828         (sensitize_phone_record)
1829         (sensitize_im_record)
1830         (sensitize_address_textview)
1831         (sensitize_address_field)
1832         (simple_field_map)
1833         (sensitize_simple_field): Make entries uneditable and labels
1834         insensitive, if field is disabled or read-only.
1836 2004-06-22  Hans Petter Jansson  <hpj@ximian.com>
1838         Fixes #59622.
1840         * gui/widgets/e-minicard-view.c (e_minicard_view_init): Clear drag_list
1841         and canvas_drag_data_delete_id.
1842         (e_minicard_view_dispose): Clear drag_list. Disconnect drag_data_delete
1843         signal if connected.
1844         (e_minicard_view_drag_begin): Set up drag_data_delete signal if
1845         necessary. Clear old data before drag starts.
1846         (clear_drag_data): Implement.
1847         (e_minicard_view_drag_data_delete): Implement.
1848         (e_minicard_view_drag_data_get): Don't clear drag_list here.
1850 2004-06-22  Chris Toshok  <toshok@ximian.com>
1852         [ should fix #60495, #58635 ]
1853         * gui/widgets/eab-popup-control.c (name_only_query_cb): don't free
1854         the list of contacts - libebook still owns it.
1855         (query_cb): same.
1857 2004-06-22  Larry Ewing  <lewing@ximian.com>
1859         * gui/contact-list-editor/e-contact-list-editor.c (add_email_cb):
1860         don't set the changed flag unless we actually add something.
1862 2004-06-21  Federico Mena Quintero  <federico@ximian.com>
1864         * gui/contact-editor/contact-editor.glade: Make the scrolled
1865         windows around text views use GTK_SHADOW_IN, for consistency with
1866         the GtkEntries.
1868 2004-06-21  Chris Toshok  <toshok@ximian.com>
1870         * gui/component/ldap-config.glade: remove the auth-entry-notebook
1871         in the edit dialog, and rename the auth entry to... auth-entry.
1873         * gui/component/addressbook-config.c (source_to_dialog_new): nuke
1874         - it's identical to source_to_dialog.
1875         (dialog_to_source): we only have one auth entry now.  fill it in
1876         properly.
1877         (source_to_dialog): fill in the auth entry properly based on the
1878         auth type, and remove auth_entry_notebook references.
1879         (auth_optionmenu_activated): remove auth_entry_notebook
1880         references.
1881         (setup_general_tab): same, and use auth-entry instead of
1882         email-entry/dn-entry.
1883         (general_tab_check): use auth_principle instead of email/binddn.
1884         (add_folder_modify): same.
1885         (addressbook_add_server_dialog): put setup_connecting_tab inside
1886         the ifdef HAVE_LDAP, and call source_to_dialog instead of
1887         source_to_dialog_new.
1888         (addressbook_config_edit_source): always call setup_general_tab.
1890         * gui/component/addressbook-config.h (AddressbookLDAPScopeType):
1891         reorder to match order in option menu (we should really remove
1892         BASE altogether.. it's useless for searching.)
1894         * gui/component/addressbook-view.c (update_command_state):
1895         macroize this, annoying seeing the same 4 lines repeated 15 times.
1897 2004-06-21  Jeffrey Stedfast  <fejj@novell.com>
1899         * conduit/address-conduit.c (local_record_from_uid): Make sure the
1900         UIDs match. Should fix bug #59725.
1902 2004-06-19 Sivaiah Nallagatla <snallagatla@novell.com>
1904        * gui/component/addressbook-config.c (dialog_to_source) : 
1905        set auth-domain property on groupwise sources, so that 
1906        newly created contact groups can share remembered passwords 
1908 2004-06-18  Jeffrey Stedfast  <fejj@novell.com>
1910         * conduit/address-conduit.c (ecard_from_remote_record): Always set
1911         the File_As attribute in case the pilot attrib changed. Fixes bug
1912         #59723.
1914 2004-06-18  Chris Toshok  <toshok@ximian.com>
1916         * gui/component/select-names/e-select-names-model.c
1917         (e_select_names_model_load_contacts): only go through the process
1918         of creating/loading the EBook if the model has some data in it.
1920 2004-06-18  Chris Toshok  <toshok@ximian.com>
1922         [ fixes bug #59376 ]
1924         * gui/component/addressbook-view.c (fill_popup_menu_callback):
1925         make this work with absolute uris in sources.  Thanks to Sushma
1926         Rai for the initial patch to fix this.
1928 2004-06-17  Chris Toshok  <toshok@ximian.com>
1930         [ fixes bug #58696 ]
1931         
1932         * gui/widgets/eab-gui-util.c (eab_transfer_contacts): use
1933         addressbook_load instead of e_book_async_open, so we do auth stuff
1934         for the destination book.
1936 2004-06-17  Chris Toshok  <toshok@ximian.com>
1938         * gui/contact-editor/e-contact-editor.c (e_contact_editor_new):
1939         EBookFieldsCallback -> EBookEListCallback.
1940         (e_contact_editor_set_property): same.
1942 2004-06-17  Chris Toshok  <toshok@ximian.com>
1944         * util/eab-book-util.c (eab_name_and_email_query):
1945         EBookContactsCallback -> EBookListCallback.
1946         (eab_nickname_query): same.
1948         * printing/e-contact-print.c: e-book-async.h -> e-book.h
1950         * gui/widgets/eab-vcard-control.c: e-book-async.h -> e-book.h.
1952         * gui/widgets/e-addressbook-model.h: e-book-async.h -> e-book.h.
1954         * gui/widgets/eab-popup-control.h: e-book-async.h -> e-book.h.
1956         * gui/widgets/eab-popup-control.c: remove e-book-async.h include.
1957         
1958         * gui/merging/eab-contact-merging.h: e-book-async.h -> e-book.h.
1960         * gui/contact-editor/e-contact-editor.h: e-book-async.h ->
1961         e-book.h.
1963         * gui/contact-editor/e-contact-editor.h: same.
1965         * gui/contact-list-editor/e-contact-list-editor.h: same.
1966         
1967         * gui/contact-list-editor/e-contact-list-model.h: remove include
1968         of e-book-async.h
1969         
1970         * gui/component/select-names/e-select-names-completion.h: include
1971         e-book.h, not e-book-async.h
1972         
1973         * gui/component/select-names/e-select-names-model.c: same.
1975         * gui/component/select-names/e-select-names.c: same.
1977         * gui/component/addressbook-migrate.c: include e-book.h, not
1978         e-book-async.h
1980         * gui/component/addressbook-view.c: same.
1982         * gui/component/addressbook.h: same.
1984         * gui/component/addressbook.c: remove include e-book-async.h.
1986 2004-06-17  Sivaiah Nallagatla <snallagatla@novell.com>
1988         * gui/widgets/e-addressbook-view.etspec : update
1989         the model column numbers as new fields like E_CONTACT_EMAIL_4
1990         are added to EContact
1991         Fixes #59621
1993 2004-06-16  Not Zed  <NotZed@Ximian.com>
1995         * gui/component/autocompletion-config.c
1996         (autocompletion_config_control_new): set the source selector to be
1997         able to toggle the current selection.  Fix for #55614.
1999 2004-06-16  Sivaiah Nallagatla <snallagatla@novell.com>
2000         
2001         * gui/contact-editor/e-contact-editor.c (full_name_clicked) :
2002         compare old and new full names and if it is different set the new 
2003         the name using gtk_entry_set_text instead of set_entry_text
2004         as this function blocks siganls hence preventing ok button being 
2005         enabled
2007 2004-06-14  Chris Toshok  <toshok@ximian.com>
2009         * gui/contact-editor/e-contact-editor.c (extract_im_record): set
2010         things to HOME, since we don't offer TYPE=OTHER IM attributes
2011         through the EContact api, and one choice is just as good as
2012         another if we aren't displaying it anyway.
2014         * gui/widgets/eab-contact-display.c (render_contact): move the IM
2015         stuff out of home/work, since we don't allow people to edit
2016         location for them anymore.  Also, change the IM accounts we look
2017         up to "HOME", since that's what we hardcode them to in the contact
2018         editor.
2020 2004-06-14  Not Zed  <NotZed@Ximian.com>
2022         * importers/evolution-ldif-importer.c (parseLine): handle LIST
2023         field types.
2024         (ldif_fields[]): Add a list type. E_CONTACT_EMAIL is a list field
2025         type.  See #58855.
2027 2004-06-08  Chris Toshok  <toshok@ximian.com>
2029         * gui/widgets/e-addressbook-model.c (get_view_idle): new
2030         function. do the get_view in an idle handler.
2031         (eab_model_set_property): don't call get_view directly from any
2032         setter block.  instead just add the idle handler (if it's not
2033         already added.)  This keeps us from duplicating queries when both
2034         "book" and "query" are set using the same g_object_set.
2036         * gui/widgets/e-addressbook-model.h: add book_view_idle_id.
2037         
2038 2004-06-07  Hans Petter Jansson  <hpj@ximian.com>
2040         Fixes #58921.
2042         * gui/contact-editor/e-contact-editor.c (extract_address_record):
2043         Also check if the po box field is non-empty.
2045 2004-06-07  Jon Oberheide  <jon@focalhost.com>
2047         * gui/contact-list-editor/e-contact-list-model.c: disable editing
2048         of cells in the contact table.
2050 2004-06-07  Hans Petter Jansson  <hpj@ximian.com>
2052         Fixes #57795.
2054         * gui/component/addressbook-migrate.c (migrate_contacts): Change
2055         the "POSTAL" address in 1.4 to "OTHER" in 1.5.
2057 2004-06-07  Hans Petter Jansson  <hpj@ximian.com>
2059         * gui/Makefile.am (SUBDIRS): Fix order of dependencies.
2061 2004-06-07  H P Nadig  <hpnadig@pacific.net.in>
2063         * gui/contact-list-editor/e-contact-list-editor.h: Added few
2064         headers needed for select names dialog.
2066         * gui/contact-list-editor/e-contact-list-editor.c
2067         (e_contact_list_editor_init): Added select button handler.
2068         (select_cb): The callback function for Select Button.
2069         (setup_corba): To setup corba for select names dialog.  
2070         (select_names_ok_cb): Handle Select names dialog entries.
2071         (add_to_model): Adds cards to the model. 
2073         * gui/contact-list-editor/contact-list-editor.glade: New 'Select'
2074         Button. Tooltips added for buttons in button Box.
2076 2004-06-07  Dan Winship  <danw@novell.com>
2078         * gui/component/addressbook-view.c: s/stock_save_as/stock_save-as/
2080 2004-06-04  Larry Ewing  <lewing@ximian.com>
2082         * gui/contact-list-editor/e-contact-list-editor.c: remove bonobo
2083         menus and cruft add ok/cancel buttons.
2085         * gui/contact-list-editor/e-contact-list-editor.h: add buttons for
2086         ok/cancel.
2088         * gui/contact-list-editor/contact-list-editor.glade: add fields for
2089         ok/cancel reparent to GtkDialog, other minor adjustments.
2091 2004-06-04  JP Rosevear  <jpr@novell.com>
2093         Fixes #55945
2094         
2095         * importers/*.server.in.in: ditto
2097         * importers/evolution-ldif-importer.c: fix OAFIIDs
2099         * importers/evolution-vcard-importer.c: ditto
2101 2004-06-04  Chris Toshok  <toshok@ximian.com>
2103         * gui/component/select-names/e-select-names-model.c
2104         (name_and_email_simple_query_cb): only resolve destinations
2105         against persons, not contact lists.
2107 2004-06-03  Hans Petter Jansson  <hpj@ximian.com>
2109         Fixes #53643 and #26903.
2111         * gui/search/addresstypes.xml: category -> category_list
2113         * gui/search/e-addressbook-search-dialog.c (get_widget): Get
2114         filter rule from parent view.
2115         (eab_search_dialog_set_property): Implement.
2116         (eab_search_dialog_get_property): Impleent.
2117         (eab_search_dialog_class_init): Set up property methods.
2118         (get_query): Get filter rule from parent view.
2119         (eab_search_dialog_init): Don't get the filter widget here,
2120         wait until parent view property is set.
2121         (eab_search_dialog_new): Don't poke the parent view in, set it
2122         as a property instead.
2123         (eab_search_dialog_dispose): No longer needs to unref rule.
2125         * gui/search/e-addressbook-search-dialog.c: EABSearchDialog no
2126         longer needs to keep rule internally.
2128         * gui/widgets/Makefile.am: Set SEARCH_RULE_DIR define.
2130         * gui/widgets/e-addressbook-view.c (eab_view_new): Set up filter
2131         rule and context.
2132         (eab_view_peek_search_context): Implement.
2133         (eab_view_peek_search_rule): Implement.
2135         * gui/widgets/e-addressbook-view.h: Keep track of filter rule
2136         and context. Add protos for added API.
2138 2004-06-03  Jeffrey Stedfast  <fejj@novell.com>
2140         * conduit/address-conduit.c (set_status_cleared): Protect against
2141         a NULL uid. Fixes bug #57619.
2142         (ecard_from_remote_record): Set the full_name of the contact so
2143         that we can use that as the FILE_AS rather than the company name,
2144         which sucked. Fixes a bug I may or may not have reported months
2145         ago. Ahah, fixes bug #57620.
2147 2004-06-02  Hans Petter Jansson  <hpj@ximian.com>
2149         * gui/component/addressbook-migrate.c
2150         (migrate_contact_folder_to_source): Add missing negation that caused
2151         a crash.
2153 2004-06-02  Chris Toshok  <toshok@ximian.com>
2155         * gui/component/addressbook-migrate.c (addressbook_migrate):
2156         remove hidden field migration, and add in a phase to clear the
2157         absolute_uri properties on ESources.
2159 2004-06-02  Rodney Dawes  <dobey@novell.com>
2161         * gui/component/addressbook-config.c (focus_help, add_focus_handler):
2162         Don't need these two functions any more
2163         (source_to_dialog, auth_optionmenu_func):
2164         Don't try to change the notebook page or set the widget sensitive,
2165         for a notebook that doesn't exist any more
2166         (reparent_to_vbox): Don't need this function any more, as the
2167         widgets are all contained in the same dialog in the glade now
2168         (setup_general_tab, setup_connecting_tab, setup_searching_tab):
2169         We don't need to do the focus-based "tooltip" stuff any more
2170         We just use tooltips on the widgets now
2171         (ssl_optionmenu_selected, add_ssl_activate_cb):
2172         We don't need the ssl_optionmenu_selected callback any more, as the
2173         tooltips are just set on the necessary widgets now
2174         (query_for_supported_bases): Set the border widths on the dialog's
2175         vbox and action_area to be compliant with the HIG
2176         (addressbook_add_server_dialog): Unref the GConfClient object
2177         (addressbook_config_edit_source): Create the source_list so that
2178         we can actually save the changes that we make here
2179         Create the GladeXML with only the widget subtree that we need to
2180         use here, to avoid popping up other visible dialogs
2181         Set the border widths on the dialog's vbox and action_area to be
2182         compliant with the HIG
2183         We don't need to reparent widgets to vboxes any more, as the widgets
2184         are now part of the dialog's widget tree
2185         If we are without LDAP or not in LDAP mode, then hide the notebook
2186         borders, and change the border size of its child to appear as though
2187         we are a normal non-LDAP dialog
2188         We don't need to set the type hint on the window as we are no a
2189         real GtkDialog
2191         * gui/component/ldap-config.glade: Update the properties dialogs to
2192         be compliant with the HIG layout
2193         Get rid of some of the extra windows and put their children in the
2194         appropriate places in the properties dialog
2195         Make the properties dialog be a real GtkDialog
2197         Fixes #41141
2199 2004-06-01  Larry Ewing  <lewing@ximian.com>
2201         * gui/contact-list-editor/e-contact-list-editor.c: Add in a source
2202         option menu to the dialog and make is sensitive only on new lists.
2204         * gui/contact-list-editor/e-contact-list-editor.h: add load_book
2205         fields for async book loading.
2206         
2207         * gui/contact-list-editor/contact-list-editor.glade: add the new
2208         source selector in a table reorder some of the other widgets.
2209         
2210 2004-05-28  Chris Toshok  <toshok@ximian.com>
2212         * gui/widgets/eab-contact-display.c (render_contact): render all
2213         email addresses, not just the first 3.
2214         (eab_contact_display_class_init): use a C comment, not C++.
2216 2004-05-28  Chris Toshok  <toshok@ximian.com>
2218         * gui/component/select-names/e-select-names-bonobo.c
2219         (entry_set_property_fn): call e_select_names_model_load_contacts
2220         after setting text/addresses/destinations.
2222         * gui/component/select-names/e-select-names-model.c
2223         (name_and_email_simple_query_cb): new function, ripped from the
2224         1.4 e-destination stuff.
2225         (book_opened): new function, fire off eab_name_and_email_query for
2226         each item in our model (that doesn't represent a contact already).
2227         (e_select_names_model_load_contacts): new function, open the
2228         default addressbook (yeah yeah, i know we should open something
2229         different/more.)
2230         (e_select_names_cancel_contacts_load): new (unimplemented, and how
2231         do we implement it?) function.
2233         * gui/component/select-names/e-select-names-model.h: add
2234         prototypes for e_select_names_model_load_contacts and
2235         e_select_names_cancel_contacts_load.
2237         * gui/component/select-names/e-select-names.c (set_book): call
2238         get_query_string and set the book and query in a single call to
2239         g_object_set, just because we can/should.
2240         (update_query): reimplement in terms of get_query_string.
2241         (get_query_string): new function, build up the query string.
2243         * gui/component/select-names/Makefile.am (INCLUDES): add
2244         $(top_srcdir)/addressbook/util to INCLUDES.
2246 2004-05-28  Hans Petter Jansson  <hpj@ximian.com>
2248         * gui/contact-editor/contact-editor.glade: Add back office, spouse,
2249         web log fields. Allow for 8 phone numbers, of which 4 can be hidden.
2251         * gui/contact-editor/e-contact-editor.c (phones_default): Add more
2252         defaults.
2253         (im_service_default): Add more defaults.
2254         (expand_phone): Implement.
2255         (fill_in_phone_record): Expand if we have any records past 4.
2256         (init_im_record_location)
2257         (fill_in_im_record)
2258         (extract_im_record)
2259         (sensitize_im_record): Remove location.
2260         (simple_field_map): Add spouse, office, web log.
2261         (expand_phone_toggle): Implement.
2262         (e_contact_editor_init): Hook up expander button.
2264 2004-05-28  Christophe Fergeau  <teuf@gnome.org>
2266         * gui/component/addressbook-config.c: added missing #ifdef HAVE_LDAP
2268 2004-05-26  Radek Doulik  <rodo@ximian.com>
2270         * gui/widgets/e-addressbook-view.c (e_contact_print_button): call
2271         gnome_print_beginpage
2272         (e_contact_print_button): call gnome_print_beginpage
2274         Fixes #58977
2276 2004-05-25  Chris Toshok  <toshok@ximian.com>
2278         * gui/component/select-names/e-select-names-text-model.c
2279         (e_select_names_text_model_activate_obj): reenable this function,
2280         in a slightly broken manner.  we don't have e_contact_get_book
2281         anymore (well, we never had it really... but we lost
2282         e_card_get_book).  load the system addressbook and supply that to
2283         the editors.  shouldn't be a problem, since it's a read-only
2284         editor anyway.
2286 2004-05-25  Chris Toshok  <toshok@ximian.com>
2288         [ fixes #58654 ]
2289         
2290         * gui/component/select-names/e-select-names.c (update_query):
2291         build up the query using e_book_query calls so we're insulated
2292         from field name changes.  also, conjoin if we have more than 1
2293         query element, not more than 2 (i *hope* this was an off by 1
2294         error...)
2296 2004-05-25 Sivaiah Nallagatla   <snallagatla@novell.com>
2298         * gui/component/addressbook.c (load_source_auth_cb )
2299         (load_source_auth_cb ) : read the "auth-domain" property
2300         from e-source and use it as the component name for e_password_*
2301         calls if it exists
2303 2004-05-25  Jeffrey Stedfast  <fejj@novell.com>
2305         * Makefile.am: Generate the addressbook-errors.xml.h file and
2306         install the xml file and all that jazz.
2308         * addressbook-errors.xml: New error xml file.
2310         * gui/widgets/e-addressbook-view.c (backend_died): Use
2311         e_error_run().
2313         * gui/widgets/eab-gui-util.c (eab_error_dialog): Use
2314         e_error_run().
2315         (eab_load_error_dialog): Same.
2316         (eab_search_result_dialog): Same.
2317         (eab_prompt_save_dialog): Same.
2318         (save_it): Same.
2320         * gui/contact-editor/e-contact-editor.c (categories_clicked): Use
2321         e_error_run().
2322         (e_contact_editor_is_valid): Same.
2323         (save_contact): Same.
2325         * gui/component/addressbook-view.c (delete_addressbook_cb): Use
2326         e_error_run().
2328         * gui/component/addressbook-config.c (addressbook_ldap_init): Use
2329         e_error_run().
2330         (addressbook_ldap_auth): Same.
2331         (addressbook_root_dse_query): Same.
2332         (do_ldap_root_dse_query): Same.
2333         (do_schema_query): Same.
2335 2004-05-24  Chris Toshok  <toshok@ximian.com>
2337         * Makefile.am (SUBDIRS): add tools back to the build.
2339 2004-05-24  Chris Toshok  <toshok@ximian.com>
2341         * tools/Makefile.am: fix this for current build foo.
2343         * tools/evolution-addressbook-export-list-folders.c,
2344         * tools/evolution-addressbook-export-list-cards.c, 
2345         * tools/evolution-addressbook-export.c:  revive this.
2347 2004-05-24  Chris Toshok  <toshok@ximian.com>
2349         [ fixes bug #32194 ]
2350         
2351         * importers/evolution-vcard-importer.c (process_item_fn): make
2352         sure all ADR attributes have HOME/WORK/OTHER.
2354 2004-05-24  Chris Toshok  <toshok@ximian.com>
2356         [ fixes bug #40013 ]
2357         
2358         * importers/evolution-vcard-importer.c (process_item_fn): for TEL
2359         attribute that don't specify a location (HOME/WORK/OTHER), default
2360         to "OTHER".  For TEL attributes that *only* specify a location,
2361         default to "VOICE".
2363 2004-05-21  H P Nadig  <hpnadig@pacific.net.in>
2365         Fixes #58516.
2367         * gui/contact-editor/contact-editor.glade: 'Job Title' is now called
2368         'Title'.
2370 2004-05-20  Hans Petter Jansson  <hpj@ximian.com>
2372         * importers/evolution-ldif-importer.c (add_to_notes): Add helper
2373         func.
2374         (process_item_fn): Add undisplayed fields to notes.
2376         * importers/evolution-vcard-importer.c (add_to_notes): Add helper
2377         func.
2378         (process_item_fn): Add undisplayed fields to notes.
2380 2004-05-20  Hans Petter Jansson  <hpj@ximian.com>
2382         * gui/component/addressbook-migrate.c (add_to_notes): Implement.
2383         (migrate_contacts_hidden_fields): Implement.
2384         (migrate_contacts): Copy fields that are now hidden in the UI,
2385         to the notes field.
2387 2004-05-20  Chris Toshok  <toshok@ximian.com>
2389         * gui/component/addressbook-component.c (impl_requestCreateItem):
2390         use the new ebook api here.  missed this one in my earlier commit.
2392 2004-05-20  Radek Doulik  <rodo@ximian.com>
2394         * printing/e-contact-print.c (complete_sequence): finish pages
2395         printing by gnome_print_job_close call before showing preview or
2396         calling gnome_print_job_print
2398         See #54482
2400         * gui/widgets/e-addressbook-view.c (eab_view_print_preview): added
2401         call to begin page, ref printable and sink it to avoid finalizing of
2402         floating object
2403         (eab_view_print): ref and sink printable to avoid finalizing of
2404         floating object
2406         Fixes #46658
2408 2004-05-19  Chris Toshok  <toshok@ximian.com>
2410         * importers/evolution-vcard-importer.c (load_file_fn): use the new
2411         e_book_new and e_book_open apis.
2413         * importers/evolution-ldif-importer.c (load_file_fn): use the new
2414         e_book_new and e_book_open apis.
2416         * gui/widgets/eab-gui-util.c (eab_transfer_contacts): use the new
2417         e_book_new and e_book_async_open apis.
2419         * gui/contact-editor/e-contact-editor.c (cancel_load):
2420         addressbook_load_source_cancel -> addressbook_load_cancel.
2421         (source_selected): use the new e_book_new and addressbook_load.
2423         * gui/component/select-names/e-select-names.c
2424         (addressbook_model_set_source): use the new e_book_new and
2425         addressbook_load.
2427         * gui/component/select-names/e-select-names-manager.c
2428         (update_completion_books): use the new e_book_new and
2429         addressbook_load.
2431         * gui/component/addressbook.h: rename
2432         addressbook_load_source{_cancel} to addressbook_load{_cancel}, and
2433         remove the source arg.
2435         * gui/component/addressbook.c (addressbook_load): rename since we
2436         aren't passing a source anymore.
2437         (addressbook_load_cancel): same.
2438         (addressbook_load_default_book): use the new e_book_new_* apis.
2440         * gui/component/addressbook-view.c (delete_addressbook_cb): just
2441         use e_book_new, not e_book_load_source.
2442         (selector_tree_drag_data_received): switch to new
2443         e_book_new_*/e_book_open apis.
2444         (activate_source): same, and addressbook_load_source ->
2445         addressbook_load.
2447         * gui/component/addressbook-migrate.c
2448         (migrate_contact_folder_to_source): switch to new
2449         e_book_new_*/e_book_open apis.
2450         (migrate_contact_lists_for_local_folders): same.
2451         (migrate_company_phone_for_local_folders): same.
2453         * conduit/address-conduit.c (pre_sync): switch to new
2454         e_book_new_*/e_book_open apis.
2456 2004-05-19  Hans Petter Jansson  <hpj@ximian.com>
2458         * gui/contact-editor/e-contact-editor.c (sensitize_email): Check
2459         if individual email fields are supported.
2461 2004-05-19  Hans Petter Jansson  <hpj@ximian.com>
2463         * gui/contact-editor/e-contact-editor.c (extract_simple_field):
2464         Remove debug output.
2465         (real_save_contact): Separate out actual save logic from
2466         save_contact ().
2467         (save_contact): If the user wants to move the contact from one
2468         address book to another, but the source is read-only, as to
2469         save a copy instead.
2470         (e_contact_editor_is_valid): The dialog should be an error dialog.
2471         (app_delete_event_cb): If the target book is read-only, prompt
2472         to discard. If the user wants to move but cannot, prompt to save
2473         a copy. Also validate.
2475         * gui/contact-editor/eab-editor.c (eab_editor_prompt_to_save_changes):
2476         Remove comment about invalid data dialog, it's not handled here
2477         anymore.
2479 2004-05-19  Hans Petter Jansson  <hpj@ximian.com>
2481         Fixes a number of bugs, adds some unimplemented functionality, and
2482         makes code more structured.
2484         * gui/contact-editor/e-contact-editor.h: Eliminate company,
2485         fullname_editable, address_editable fields from EContactEditor.
2487         * gui/contact-editor/e-contact-editor.c
2488         (enable_writable_fields): Removed.
2489         (set_editable): Removed.
2490         (fill_in_info): Removed.
2491         (extract_field): Removed.
2492         (extract_info): Removed.
2493         (set_fields): Removed.
2494         (command_state_changed): Removed.
2495         (widget_changed): Removed.
2496         (enable_widget): Removed.
2497         (nonempty): Invert and rename to STRING_IS_EMPTY().
2498         (STRING_MAKE_NON_NULL): Impl.
2499         (is_field_supported): Implement.
2500         (file_as_get_style): Eliminate editor->company.
2501         (file_as_set_style): Ditto. Also don't set empty fields in combo.
2502         (update_file_as_combo): Implement.
2503         (sensitize_ok): Implement.
2504         (object_changed): Implement.
2505         (image_chooser_changed): Don't call widget_changed() from here.
2506         (set_option_menu_history): Implement.
2507         (init_email_record_location): Hook up signals after init.
2508         (init_phone_record_type): Ditto.
2509         (init_im_record_location): Ditto.
2510         (init_im_record_service): Ditto.
2511         (init_address_textview): widget_changed -> object_changed
2512         (init_address_field): Ditto.
2513         (fill_in_email_record): Use set_option_menu_history(), blocking
2514         signals.
2515         (fill_in_im_record): Ditto.
2516         (fill_in_address_field): Use set_entry_text(), blocking signals.
2517         (alloc_ui_slot): nonempty -> STRING_IS_EMPTY
2518         (extract_email): Ditto.
2519         (fill_in_phone_record): Ditto.
2520         (extract_im): Ditto.
2521         (extract_address_record): Ditto.
2522         (sensitize_email_record): Implement.
2523         (sensitize_email): Implement.
2524         (sensitize_phone_types): Implement.
2525         (sensitize_phone_record): Impleent.
2526         (sensitize_phone): Implement.
2527         (sensitize_im_record): Implement.
2528         (sensitize_im): Implement.
2529         (sensitize_address_textview): Implement.
2530         (sensitize_address_field): Implement.
2531         (sensitize_address_record): Implement.
2532         (sensitize_address): Implement.
2533         (simple_field_map): Add all simple fields/widgets to a table with
2534         attributes saying how to handle sensitivity and data transfer.
2535         (init_simple_field): Implement.
2536         (fill_in_simple_field): Implement.
2537         (extract_simple_field): Implement.
2538         (sensitize_simple_field): Implement.
2539         (init_simple): Implement.
2540         (fill_in_simple): Implement.
2541         (extract_simple): Implement.
2542         (sensitize_simple): Implement.
2543         (fill_in_all): Implement.
2544         (extract_all): Implement.
2545         (sensitize_all): Implement.
2546         (set_entry_changed_signal_field): Removed.
2547         (set_urlentry_changed_signal_field): Removed.
2548         (set_entry_activate_signal_field): Removed.
2549         (new_target_cb): Don't signal changes.
2550         (set_entry_activate_signals): Removed.
2551         (set_entry_changed_signals): Removed.
2552         (full_name_clicked): Honor field_supported and target_editable.
2553         Use set_entry_text() and block changed signals.
2554         (image_selected_cb): widget_changed -> object_changed. Don't clear
2555         pointer to file_selector.
2556         (image_cleared_cb): Ditto.
2557         (contact_moved_cb): command_state_chaned() -> sensitize_all().
2558         (contact_added_cb): Ditto.
2559         (supported_fields_cb): Ditto.
2560         (contact_modified_cb): Ditto.
2561         (save_contact): extract_info() -> extract_all().
2562         (e_contact_editor_is_valid): Be more verbose. Make sure File As is
2563         non-empty.
2564         (e_contact_editor_init): Call init_all() in place of lots of setup
2565         calls. Remove reference to editor->company.
2566         (e_contact_editor_dispose): Remove reference to editor->company.
2567         (command_state_changed): Removed.
2568         (e_contact_editor_set_property): Axe unneeded complexity, now that
2569         we have sensitize_all() and sensitize_ok().
2570         (set_fields): Removed.
2571         (fill_in_field): Removed.
2572         (field_mapping): Removed.
2573         (disable_widget_foreach): Removed.
2574         (widget_field_mapping): Removed.
2575         (num_widget_field_mappings): Removed.
2576         (enable_widget): Removed.       
2578 2004-05-05  William Jon McCann  <mccann@jhu.edu>
2580         * gui/component/GNOME_Evolution_Addressbook.server.in.in:
2581         Add menu_label and menu_accelerator.
2583 2004-05-18  Chris Toshok  <toshok@ximian.com>
2585         * gui/contact-list-editor/e-contact-list-editor.c
2586         (file_send_as_cb): pass 0 to eab_send_contact.
2587         (file_send_to_cb): same.
2589 2004-05-18  Chris Toshok  <toshok@ximian.com>
2591         * gui/widgets/eab-gui-util.c
2592         (eab_send_to_contact_and_email_num_list): split out the
2593         DISPOSITION_AS_TO stuff here, and make it take a GList of
2594         ContactAndEmailNum, so we can set it for the single contact case.
2595         (eab_send_contact_list_as_attachment): split out the
2596         DISPOSITION_AS_ATTACHMENT stuff here.
2597         (eab_send_contact_list): call one or the other of the above,
2598         munging the list if disposition is set to TO.
2599         (eab_send_contact): call eab_send_to_contact_and_email_num_list
2600         directly with the supplied email_num, instead of calling
2601         eab_send_contact_list.
2603         * gui/widgets/eab-gui-util.h (eab_send_contact) add "email_num"
2604         arg, so we can specify the email address we want to be selected.
2606         * gui/widgets/eab-contact-display.c (on_link_clicked): add
2607         (ifdefed out at the moment) code to handle mailto: urls
2608         internally, instead of farming them out to gnome_url_show.
2609         (render_contact): same.
2611 2004-05-18  Jerome Lacoste  <jerome@coffeebreaks.org>
2613         Fixes #57940
2615         * gui/widgets/e-addressbook-view.c: "Save as VCard" ->
2616         "Save as VCard..."
2618 2004-05-17  Hans Petter Jansson  <hpj@ximian.com>
2620         * gui/contact-editor/e-contact-editor.c (e_contact_editor_init):
2621         Hook up image button.
2622         (e_contact_editor_dispose): Dispose of file selector if it's around.
2623         (image_clicked): Implement.
2624         (file_selector_deleted): Implement.
2625         (image_cleared_cb): Implement.
2626         (image_selected_cb): Implement.
2628         * gui/contact-editor/contact-editor.glade: Make the contact image
2629         be a button that lets you change or discard the image.
2631 2004-05-17  Jeffrey Stedfast  <fejj@novell.com>
2633         * gui/contact-list-editor/e-contact-list-editor.c: Change E_PIXMAP
2634         size args over to E_ICON_SIZE_* values.
2636         * gui/component/addressbook-view.c: Change E_PIXMAP size args over
2637         to E_ICON_SIZE_* values.
2639         * gui/widgets/e-minicard.c (e_minicard_init): Use an E_ICON_SIZE
2640         enum value for the icon_size argument to get_icon.
2642         * gui/widgets/eab-gui-util.c (eab_create_image_chooser_widget):
2643         Use E_ICON_SIZE_DIALOG as the icon_size argument to
2644         get_icon_filename.
2646         * gui/widgets/eab-contact-display.c (on_url_requested): Use an
2647         E_ICON_SIZE enum as the icon_size argument to get_icon_filename.
2649         * gui/contact-editor/e-contact-editor-im.c
2650         (setup_service_optmenu): Use E_ICON_SIZE_MENU here.
2652         * gui/component/select-names/e-select-names-popup.c
2653         (populate_popup_contact): Use E_ICON_SIZE_MENU here instead of 16.
2655         * gui/component/addressbook-view.c (set_status_message): Use the
2656         E_ICON_SIZE corresponding to 16x16 pixels.
2658 2004-05-12  Hans Petter Jansson  <hpj@ximian.com>
2660         * gui/contact-editor/contact-editor.glade: Add PO box entries.
2662         * gui/contact-editor/e-contact-editor.c (init_address_record): Hook
2663         up PO box entry.
2664         (fill_in_address_record): Ditto.
2665         (extract_address_record): Ditto.
2667 2004-04-18  S N Tejasvi  <tejasvi_sn@gawab.com>
2669         Fixes bug #55208.
2671         * gui/contact-editor/e-contact-editor.c (save_contact):
2672         Do e_contact_editor_is_valid check to check the birth date and
2673         anniversary date format when user wants to save and warn him.
2675 2004-05-11  Not Zed  <NotZed@Ximian.com>
2677         * gui/component/addressbook-component.c (impl_upgradeFromVersion):
2678         set exception properly on failure.
2680         * gui/component/addressbook-migrate.c (addressbook_migrate): take
2681         a GError error return.  Doesn't do anything with it ... but ...
2683 2004-05-11  Dan Winship  <danw@ximian.com>
2685         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Remove
2686         the addressbook control
2688         * gui/component/component-factory.c (factory): Remove support for
2689         the addressbook control
2691         * gui/component/addressbook-view.c: Remove all the property-bag
2692         stuff.
2694 2004-05-11  Sivaiah Nallagatla  <snallagatla@novell.com>
2695                                                                                                                              
2696        * gui/component/addressbook-config.c (dialog_to_source) : see if the selected
2697         group is groupwise one and setup the relative uri and other properties into
2698         e-source
2700 2004-05-10  Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
2702         Fixes bug #44196 addressbook table view uses ASCII sort
2704         * addressbook/gui/widgets/e-addressbook-view.c (compare_subitems):
2705         Uses g_utf8_collate for right UTF8 sort. Made faster using 
2706         g_utf8_collate_key.
2708         Also fixes a bug in 
2710         * gui/component/select-names/e-select-names.c (select_entry_changed):
2711         Changed g_utf8_collate for strcmp as we are already comparing keys
2712         made from g_utf8_collate_key.
2714 2004-05-08  Enver ALTIN  <enver.altin@frontsite.com.tr>
2716         * gui/component/GNOME_Evolution_Addressbook.server.in.in:
2717           Fix parts of #53466.
2719 2004-05-05  Hans Petter Jansson  <hpj@ximian.com>
2721         * gui/contact-editor/e-contact-editor.c (init_address_textview):
2722         Implement.
2723         (init_address_record): Init textview.
2724         (fill_in_address_textview): Implement.
2725         (fill_in_address_record): Fill in textview.
2726         (extract_address_textview): Implement.
2727         (extract_address_record): Extract from textview.
2729         * gui/contact-editor/contact-editor.glade: Combine address-[12] fields
2730         into one multiline text view, as per Anna's new design.
2732 2004-05-04  Larry Ewing  <lewing@ximian.com>
2734         * gui/component/addressbook-config.c (query_for_supported_bases):
2735         fixup the dialog initialization.
2737 2004-05-04  Hans Petter Jansson  <hpj@ximian.com>
2739         * gui/contact-editor/e-contact-editor.c (phones_default): Use defaults
2740         from Anna.
2741         (im_service_default): Ditto.
2742         (email_default): Ditto.
2743         (im_location): Renamed to common_location, as it's used by both IM
2744         and e-mail.
2745         (init_email_record_location): im_location -> common_location
2746         (init_im_record_location): Ditto.
2747         (email_index_to_location): Ditto.
2748         (im_index_to_location): Ditto.
2749         (get_email_location): Ditto.
2750         (get_im_location): Ditto.
2751         (fill_in_email_record): Consult defaults.
2752         (fill_in_im_record): Ditto.
2754 2004-05-04  Hans Petter Jansson  <hpj@ximian.com>
2756         * gui/contact-editor/e-contact-editor.c (set_entry_activate_signals):
2757         Remove blog, add home page.
2758         (set_entry_changed_signals): Ditto.
2759         (setup_tab_order): Ditto.
2760         (field_mapping): Ditto.
2761         (widget_field_mappings): Ditto.
2763         * gui/contact-editor/contact-editor.glade: Replace blog with home
2764         page.
2766 2004-05-03  Hans Petter Jansson  <hpj@ximian.com>
2768         * gui/widgets/e-minicard.c (e_minicard_set_property): Do ref, unref
2769         in right order, so the same contact can be set twice without ill
2770         effects.
2771         (e_minicard_finalize): NULL pointers after unreffing their objects.
2773 2004-05-03  Hans Petter Jansson  <hpj@ximian.com>
2775         * gui/contact-editor/e-contact-editor.c (phones_default): Establish
2776         defaults for the phone number option menus.
2777         (fill_in_phone_record): Fall back to defaults.
2779 2004-05-03  Hans Petter Jansson  <hpj@ximian.com>
2781         * gui/contact-editor/e-contact-editor.c (show_help_cb): Implement.
2782         (e_contact_editor_init): Hook up the help button.
2784         * gui/contact-editor/contact-editor.glade: Give the help button a
2785         sensible name.
2787 2004-05-03  Larry Ewing  <lewing@ximian.com>
2789         * gui/component/ldap-config.glade: bump the maximum download limit
2790         to 1000.
2792         * gui/component/addressbook-config.c (add_folder_modify): set the
2793         email entry sesitive only when anonymous isn't selected.  Make the
2794         details tab insensitive if the method is local.
2796         * gui/component/ldap-config.glade: remove unused colorpicker.
2798 2004-05-03  JP Rosevear  <jpr@ximian.com>
2800         * gui/component/GNOME_Evolution_Addressbook.server.in.in: set the
2801         config item type
2803 2004-05-02  Sivaiah Nallagatla  <snallagatla@novell.com>
2804                                                                                                                              
2805         * gui/component/addressbook-config.c (dialog_to_source) : see if the selected
2806          group is groupwise one and setup the relative uri and other properties into
2807          e-source
2809 2004-05-01  Larry Ewing  <lewing@ximian.com>
2811         * gui/component/addressbook-config.c: sensitize the details dialog
2812         where appropriate.  Don't try to read from widgets that don't
2813         exist.
2815 2004-04-30  Chris Toshok  <toshok@ximian.com>
2817         * util/e-destination.c (e_destination_set_contact): don't use
2818         "email" twice for a variable name.. even though they don't really
2819         conflict, it's ugly and confusing.
2821 2004-04-30  Enver ALTIN  <enver.altin@frontsite.com.tr>
2823         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Fixed a
2824         type-o.
2826 2004-04-29  Hans Petter Jansson  <hpj@ximian.com>
2828         * printing/e-contact-print.c: Don't dereference the file_as pointer
2829         if it turns out to be NULL.
2831 2004-04-28  Jeffrey Stedfast  <fejj@ximian.com>
2833         * gui/component/addressbook-migrate.c: We need a migration dialog
2834         if the revision <= 10. Fixes bug #57770.
2836 2004-04-27  Larry Ewing  <lewing@ximian.com>
2838         * gui/component/addressbook-config.c: remove debug spew.
2840 2004-04-27  Jeffrey Stedfast  <fejj@ximian.com>
2842         * gui/component/addressbook-migrate.c (addressbook_migrate):
2843         Migrate pilot data.
2844         (migrate_pilot_data): Oops. Apparently the addressbook didn't
2845         change the format of the changelog file from db3 to xml, so fix to
2846         simply copy the file over.
2848 2004-04-27  Rodney Dawes  <dobey@ximian.com>
2850         * gui/contact-editor/e-contact-editor-fullname.c:
2851         (e_contact_editor_fullname_init):
2852         * gui/contact-editor/fullname.glade:
2853         * gui/search/e-addressbook-search-dialog.c (eab_search_dialog_init):
2854         Update dialog vbox and action area border widths to be HIG compliant
2855         Update main child widget border widths to be HIG compliant
2857 2004-04-27  Larry Ewing  <lewing@ximian.com>
2859         * gui/component/addressbook-config.c (source_to_dialog_new): fix
2860         warnings, remove unused code.
2862         * gui/component/addressbook-config.c: start integrate the new
2863         dialog.
2865         * gui/component/ldap-config.glade: add the new dialog.
2867 2004-04-26  Rodney Dawes  <dobey@ximian.com>
2869         * gui/contact-editor/contact-editor.glade:
2870         * gui/contact-editor/e-contact-editor.c (e_contact_editor_init):
2871         Set spacing around notebook widget and the dialog's action area and
2872         vbox widgets to be compliant with the HIG dialog specs
2874 2004-04-25  Chris Toshok  <toshok@ximian.com>
2876         * importers/evolution-ldif-importer.c (ldif_fields): add "mobile"
2877         mapping to E_CONTACT_PHONE_MOBILE, which is what thunderbird uses
2878         (and really what we should have always been using.)
2880 2004-04-23  Jeffrey Stedfast  <fejj@ximian.com>
2882         * conduit/address-conduit.c (get_next_mail): The firt EMAIL item
2883         is EMAIL_1, not EMAIL (assuming we want simple strings).
2884         (local_record_from_ecard): Use e_contact_get() for getting the
2885         EContactAddress. Loop from FIRST_ADDRESS_ID up to and *including*
2886         LAST_ADDRESS_ID.
2887         (ecard_from_remote_record): When searching for an address field,
2888         loop from FIRST_ADDRESS_ID up to and *including* LAST_ADDRESS_ID.
2889         (pre_sync): Use e_book_query_any_field_contains() rather than
2890         e_book_query_from_string ("#t") which doesn't work anyway.
2892 2004-04-20  Jeffrey Stedfast  <fejj@ximian.com>
2894         * conduit/address-conduit.c (map_name): Updated to use
2895         ~/.evolution as the evolution directory rather than ~/evolution.
2897 2004-04-23  Dan Winship  <danw@ximian.com>
2899         * gui/component/component-factory.c (factory): Fix the addressbook
2900         control to not crash. (Temporary fix.)
2902 2004-04-23  Chris Toshok  <toshok@ximian.com>
2904         * gui/widgets/eab-gui-util.c (added_cb): this signal takes an
2905         EContact* too.
2906         (modified_cb): same.
2907         (deleted_cb): same.
2908         (eab_error_dialog): pad the table of status messages out with the
2909         new status codes, and don't specify gui text for messages that
2910         aren't generated by the backends.  This fixes the "U" error
2911         messages people were seeing.
2913 2004-04-22  Hans Petter Jansson  <hpj@ximian.com>
2915         * gui/contact-editor/contact-editor.glade: Correct the dialog's title.
2917         * gui/contact-editor/e-contact-editor.c (init_email_record_location):
2918         Connect to entry's activate signal.
2919         (init_phone_record_type): Ditto.
2920         (init_im_record_location): Ditto.
2921         (init_address_field): Ditto.
2922         (set_entry_changed_signal_field): Remove unnecessary checks.
2923         (set_urlentry_changed_signal_field): Ditto.
2924         (set_entry_changed_signals): Ditto.
2925         (set_entry_activate_signal_field): Implement.
2926         (set_urlentry_activate_signal_field): Implement.
2927         (set_entry_activate_signals): Implement.
2928         (e_contact_editor_init): Call set_entry_activate_signals ().
2930 2004-04-22  Hans Petter Jansson  <hpj@ximian.com>
2932         * gui/contact-editor/e-contact-editor.c (e_contact_editor_class_init):
2933         Override the save_contact function.
2934         (e_contact_editor_save_contact): Implement.
2935         (e_contact_editor_init): Remove some unnecessary checks - if
2936         something's the matter with the UI files, that needs to be warned
2937         about and fixed, not silently worked around.
2939 2004-04-22  Hans Petter Jansson  <hpj@ximian.com>
2941         * gui/contact-editor/contact-editor.glade: Make the window be a
2942         GtkDialog.
2944 2004-04-21  Hans Petter Jansson  <hpj@ximian.com>
2946         * gui/contact-editor/e-contact-editor.c (free_attr_list): Implement.
2947         (extract_email): Preserve offscreen addresses.
2948         (extract_phone): Preserve offscreen phone numbers.
2949         (extract_im): Preserve offscreen IM accounts.
2951 2004-04-21  Hans Petter Jansson  <hpj@ximian.com>
2953         * gui/contact-editor/e-contact-editor.c: Add defines for the slot
2954         counts for email, phone, im, address.
2955         (phones): Add E_CONTACT_PHONE_COMPANY back in, now that we can
2956         differentiate it.
2957         (init_email): Use EMAIL_SLOTS and a loop.
2958         (init_im): Ditto for IM_SLOTS.
2959         (init_phone): Ditto for PHONE_SLOTS.
2960         (fill_in_address)
2961         (extract_address)
2962         (init_address): Ditto for ADDRESS_SLOTS.
2963         (get_ui_slot_param): Implement.
2964         (get_ui_slot): Implement.
2965         (set_ui_slot): Implement.
2966         (alloc_ui_slot): Implement.
2967         (fill_in_email): Add code to preserve spatial organization.
2968         (extract_email): Ditto.
2969         (fill_in_phone): Ditto.
2970         (extract_phone): Ditto.
2971         (fill_in_im): Ditto.
2972         (exctract_im): Ditto.
2974 2004-04-21  Chris Toshok  <toshok@ximian.com>
2976         * gui/component/addressbook-migrate.c (setup_progress_dialog):
2977         store off the label as well as the folder name label, so we can
2978         reuse the dialog and update the label.  Also, no longer take the
2979         string to display here.
2980         (dialog_set_label): new function.
2981         (migrate_contact_lists_for_local_folders): call
2982         dialog_set_folder_name here so we can see the folder being
2983         migrated.
2984         (migrate_company_phone_for_local_folders): new function for
2985         updating the way we store company phone numbers.
2986         (addressbook_migrate): split out the logic for setting up/tearing
2987         down the dialog from the individual migration points so we can
2988         reuse the same dialog and not have get destroyed/recreated for
2989         each stage.  Also add a new migration point ( <= 1.5.8) for
2990         migrating the company phone numbers.
2992 2004-04-21  Sivaiah Nallagatla   <snallagatla@novell.com>
2994         * gui/component/addressbook.c (remove_parameters_from_uri) : added
2995         a new function to striff off any parameters present after ';' in
2996         the uri
2997         (load_source_auth_cb) (addressbook_authenticate) : call above
2998         function to remove anything after ';' before passing uri to
2999         e-password calls
3000         
3001 2004-04-21  Hans Petter Jansson  <hpj@ximian.com>
3003         * gui/contact-editor/e-contact-editor.h (EContactEditor): Remove
3004         unused fields.
3006         * gui/contact-editor/e-contact-editor.c (emails): Remove.
3007         (e_contact_editor_init): Don't init unused fields.
3008         (e_contact_editor_dispose): Don't free/clear unused fields.
3009         (enable_writable_fields): Don't use email_choice anymore. Enable
3010         checkbutton-htmlmail only once.
3012 2004-04-21  Hans Petter Jansson  <hpj@ximian.com>
3014         * gui/contact-editor/contact-editor.glade: Make the phone type
3015         selectors be option menus.
3017         * gui/contact-editor/e-contact-editor.c (phones): Store the phone
3018         param mappings locally.
3019         (set_entry_changed_signals): Don't special-case phone entries here.
3020         (enable_writable_fields): Don't mess with the phone widgets anymore.
3021         (set_fields): Use fill_in_phone ().
3022         (extract_info): Use extract_phone ().
3023         (phone_index_to_type): Implement.
3024         (get_phone_type): Implement.
3025         (get_attributes_named): Implement.
3026         (set_attributes_named): Implement.
3027         (fill_in_phone_record): Implement.
3028         (extract_phone_record): Implement.
3029         (fill_in_phone): Implement.
3030         (extract_phone): Implement.
3031         (init_phone_record_type): Implement.
3032         (init_phone): Implement.
3033         (connect_arrow_button_signal): Remove.
3034         (connect_arrow_button_signals): Remove.
3035         (phone_entry_changed): Remove.
3036         (set_entry_changed_signal_phone): Remove.
3037         (_arrow_pressed): Remove.
3038         (_phone_arrow_pressed): Remove.
3039         (e_contact_editor_build_ui_info): Remove.
3040         (e_contact_editor_build_phone_ui): Remove.
3041         (set_phone_field): Remove.
3043 2004-04-21  Not Zed  <NotZed@Ximian.com>
3045         * gui/component/addressbook-view.c (addressbook_view_init): fix
3046         for e_user_creatable_items handle api changes.
3048 2004-04-20  Chris Toshok  <toshok@ximian.com>
3050         * gui/widgets/e-addressbook-view.etspec: use cursor-mode="line" to
3051         get rid of the annoying cell cursor.
3053         * gui/widgets/eab-gui-util.c (eab_create_image_chooser_widget):
3054         create the image chooser even if we aren't given an initial
3055         filename.
3057         * gui/contact-editor/e-contact-editor.c (new_target_cb):
3058         addressbook_show_load_error_dialog -> eab_load_error_dialog.
3060 2004-04-19  Rodney Dawes  <dobey@ximian.com>
3062         * gui/contact-editor/contact-editor.glade: Set the default image for
3063         the contact photo to be the stock_person image in the icon theme
3065 2004-04-19  Michael Terry  <mike@mterry.name>
3067         * gui/component/GNOME_Evolution_Addressbook.server.in.in:
3068         * gui/component/addressbook-component.c:
3069         * gui/component/addressbook-view.c:
3070         * gui/component/select-names/e-select-names-popup.c:
3071         * gui/contact-editor/e-contact-editor-address.c:
3072         * gui/contact-editor/e-contact-editor-fullname.c:
3073         * gui/contact-editor/e-contact-editor-im.c:
3074         * gui/contact-list-editor/contact-list-editor.glade:
3075         * gui/contact-list-editor/e-contact-list-editor.c:
3076         * gui/merging/eab-contact-commit-duplicate-detected.glade:
3077         * gui/merging/eab-contact-duplicate-detected.glade:
3078         * gui/widgets/e-minicard.c:
3079         * gui/widgets/eab-contact-display.c:
3080         * gui/widgets/eab-gui-util.c: Update the addressbook to use the icon
3081         theme via the EIconFactory object in e-util
3083 2004-04-18  Chris Toshok  <toshok@ximian.com>
3085         * gui/contact-editor/e-contact-editor.c (nonempty): new macro.
3086         (extract_email): only create/add the attribute if the email
3087         address is nonempty.
3088         (extract_im): same, but for im accounts.
3089         (extract_address_record): same, but for addresses.
3091 2004-04-16  Hans Petter Jansson  <hpj@ximian.com>
3093         * gui/contact-editor/contact-editor.glade: Add "wants HTML" checkbox.
3095         * gui/contact-editor/contact-editor.c (email_location_to_index)
3096         (email_entry_changed)
3097         (set_entry_changed_signal_email)
3098         (file_save_cb)
3099         (file_close_cb)
3100         (file_save_as_cb)
3101         (file_send_as_cb)
3102         (file_send_to_cb)
3103         (contact_deleted_cb)
3104         (delete_cb)
3105         (print_cb)
3106         (print_envelope_cb)
3107         (tb_save_and_close_cb)
3108         (verbs)
3109         (pixmaps)
3110         (create_ui): Remove unused funcs.
3111         (command_state_changed): Remove bonobo calls.
3112         (e_contact_editor_init): Remove bonobo stuff.
3113         (fill_in_email)
3114         (fill_in_im): Remove unused vars.
3116 2004-04-16  Chris Toshok  <toshok@ximian.com>
3118         * gui/component/addressbook-component.c (book_loaded_cb): new
3119         function, use the async interface to load the book.
3120         (impl_requestCreateItem): use
3121         e_book_async_get_default_addressbook.
3123 2004-04-16  Hans Petter Jansson  <hpj@ximian.com>
3125         * gui/contact-editor/contact-editor.glade: Commit new contact editor
3126         UI by Anna.
3128         * gui/contact-editor/e-contact-editor.c: Comment out bonobo includes.
3129         (_email_arrow_pressed)
3130         (_address_arrow_pressed)
3131         (set_im_fields)
3132         (find_address_mailing)
3133         (set_address_field)
3134         (add_im_clicked)
3135         (edit_im_clicked)
3136         (remove_im_clicked)
3137         (im_button_press_cb)
3138         (im_selected_cb)
3139         (im_treeview_drag_data_get_cb)
3140         (im_treeview_drag_data_rcv_cb)
3141         (setup_im_treeview)
3142         (email_entry_changed)
3143         (address_to_text)
3144         (text_to_address)
3145         (address_text_changed)
3146         (address_mailing_changed)
3147         (full_addr_clicked)
3148         (e_contact_editor_build_email_ui)
3149         (e_contact_editor_build_address_ui)
3150         (_email_arrow_pressed)
3151         (_address_arrow_pressed)
3152         (find_address_mailing)
3153         (add_im_field)
3154         (set_im_fields)
3155         (set_address_field): Removed.
3156         (address_name)
3157         (im_service)
3158         (im_location): Add lookup structs.
3159         (init_email_record_location)
3160         (init_email)
3161         (fill_in_email_record)
3162         (extract_email_record)
3163         (email_location_to_index)
3164         (email_index_to_location)
3165         (im_index_to_location)
3166         (get_email_location)
3167         (get_im_location)
3168         (fill_in_email)
3169         (extract_email)
3170         (init_im_record_location)
3171         (init_im_record_service)
3172         (init_im)
3173         (fill_in_im_record)
3174         (fill_in_im)
3175         (extract_im_record)
3176         (extract_im)
3177         (init_address_field)
3178         (init_address_record)
3179         (init_address)
3180         (fill_in_address_field)
3181         (fill_in_address_record)
3182         (fill_in_address)
3183         (extract_address_field)
3184         (extract_address_record)
3185         (extract_address)
3186         (file_save_and_close_cb)
3187         (file_cancel_cb)
3188         (set_entry_text): Implemented.
3189         (connect_arrow_button_signals): Updated some widget names.
3190         (set_entry_changed_signals): Removed dead widgets, updated names for
3191         others.
3192         (print_cb)
3193         (tb_save_and_close_cb)
3194         (create_ui): Disabled Bonobo toolbar/menus.
3195         (e_contact_editor_init): Disabled Bonobo toolbar/menus. Init new
3196         UI elements. Remove init of old UI elements.
3197         (command_state_changed): Disabled Bonobo toolbar/menus. Act on new
3198         ok/cancel buttons.
3199         (_phone_arrow_pressed): Updated widget names.
3200         (set_phone_field): Use set_entry_text ().
3201         (set_fields): Update widget names, remove old address code, call new
3202         fill_in_* code.
3203         (field_mapping): Remove dead widgets.
3204         (widget_field_mapping): Ditto.
3205         (enable_writable_fields): Remove calls for old email/address UI.
3206         Update some names.
3207         (fill_in_info): Don't find_address_mailing() or set_im_fields().
3208         (extract_info): Call new extraction funcs.
3210 2004-04-14  Chris Toshok  <toshok@ximian.com>
3212         * gui/component/addressbook-view.c (book_open_cb): force the info
3213         label to update its contents here if the load was successful.
3215         * gui/component/addressbook-migrate.c (migration_context_new): use
3216         e_book_get_addressbooks instead of getting source_list from the
3217         component.
3218         (migration_context_free): unref the source_list.
3220         * gui/component/addressbook-config.c (dialog_to_source): sync the
3221         dialog->source_list, since we have it.
3223 2004-04-14  Chris Toshok  <toshok@ximian.com>
3225         * gui/component/addressbook.c: rip out tons of functions - they
3226         all live in addressbook-view.c now.  the only thing left in this
3227         file is the addressbook_load* calls that do authentication.
3229         * gui/component/addressbook.h: remove prototypes for
3230         addressbook_new_control and addressbook_load_uri (it was #if 0'ed
3231         anyway.)
3233         * gui/component/addressbook-component.h: remove prototypes for
3234         _peek_activity_handler and _peek_source_list.
3236         * gui/component/addressbook-component.c: rip out tons of functions
3237         - they all live in addressbook-view.c now.
3238         (impl_createControls): simplify this immensely.  we just create an
3239         AddressbookView and get the various widgets/controls from it.
3240         (impl_requestCreateItem): this function loses slightly - it needs
3241         per-window info (the selected source) but there's no way to get
3242         it.  So we load the default book.  Also, this uses a synchronous
3243         e_book call to load the book, which is not good.
3244         (addressbook_component_peek_source_list): nuke, not used by
3245         anything anyway.
3246         (addressbook_component_peek_activity_handler): nuked, not used by
3247         anything - and it's per-window anyway.
3249         * gui/component/Makefile.am (libevolution_addressbook_la_SOURCES):
3250         add addressbook-view.[ch].
3252         * gui/component/addressbook-view.[ch]: rip out all of the per
3253         window stuff from addressbook.[ch] and addressbook-component.[ch]
3254         and put it here.
3256 2004-04-13  Chris Toshok  <toshok@ximian.com>
3258         * gui/widgets/eab-contact-display.c (accum_address): disable the
3259         map link for 2.0.
3261 2004-04-13  Larry Ewing  <lewing@ximian.com>
3263         * gui/widgets/e-addressbook-view.c (create_table_view): add
3264         GDK_ACTION_COPY to the supported drag types.  Connect to the
3265         table_drag_data_delete callback.
3266         (table_drag_data_delete): remove the drag rows.
3268 2004-04-13  Sivaiah Nallagatla <snallagatla@novell.com>
3270         * gui/component/addressbook.c  (addressbook_authenicate):
3271          added a check for new auth type "plain/password"
3272          for groupwise in addressbook_authenicate function
3274 2004-04-12  Chris Toshok  <toshok@ximian.com>
3276         * gui/widgets/eab-popup-control.c (email_menu_add_option): treat
3277         "" the same as NULL (don't add it to the list).
3279 2004-04-12  Chris Toshok  <toshok@ximian.com>
3281         * gui/component/addressbook.c (addressbook_load_default_book):
3282         quiet valgrind uninitialized memory warning.
3284 2004-04-12  Chris Toshok  <toshok@ximian.com>
3286         [ should fix #56537 ]
3287         
3288         * gui/widgets/eab-popup-control.c (EMPTY_ENTRY): use _(), not N_()
3289         here.
3290         (email_menu_add_options_from_contact): and g_strdup it here, so
3291         that the g_list_foreach (... g_free ..) doesn't cause things to
3292         blow up.
3293         (email_menu_unset_options): nuke ifdefed function.
3294         
3295         * gui/widgets/eab-popup-control.h: don't include gtk.h, include
3296         just what we need.
3298 2004-04-10  Chris Toshok  <toshok@ximian.com>
3300         * gui/widgets/eab-gui-util.h: add prototypes for
3301         eab_load_error_dialog and eab_search_result_dialog.
3303         * gui/widgets/eab-gui-util.c (eab_load_error_dialog): the new
3304         addressbook_show_load_error_dialog.
3305         (eab_search_result_dialog): new function, the old contents of
3306         addressbook.c:search_result.
3308         * gui/component/addressbook.c
3309         (addressbook_show_load_error_dialog): move this function to
3310         eab-gui-utils.[ch]
3311         (search_result): split out the body of this into
3312         eab_search_result_dialog in eab-gui-utils.[ch].
3313         (book_open_cb): call eab_load_error_dialog.
3315         * gui/component/addressbook.h: remove prototype for
3316         addressbook_show_load_error_dialog.
3318 2004-04-10  Chris Toshok  <toshok@ximian.com>
3320         * util/e-destination.h: remove the e_destination_get_book api,
3321         since the function doesn't exist.
3323 2004-04-09  Chris Toshok  <toshok@ximian.com>
3325         * gui/component/addressbook-migrate.c (addressbook_migrate): bump
3326         version required to 8 for the contact list migration foo.
3328 2004-04-09  Chris Toshok  <toshok@ximian.com>
3330         * gui/component/addressbook-component.c
3331         (selector_tree_drag_motion): pass GDK_CURRENT_TIME instead of a
3332         function pointer to "time" to gdk_drag_status.  not sure if this
3333         is right, but it's definitely more right than it was :)
3334         (impl_createControls): create the info label and add it to the
3335         sidebar control.  it's not hooked up yet.
3337 2004-04-09  Chris Toshok  <toshok@ximian.com>
3339         * importers/evolution-ldif-importer.c (resolve_list_card): use the
3340         new e_destination_export_to_vcard_attribute call to build up the
3341         attributes.
3343         * importers/evolution-vcard-importer.c (process_item_fn): if we're
3344         importing a vcard that we wrote out previously containing xml in
3345         the EMAIL attributes, DTRT and strip it out and use
3346         e_destination_export_to_vcard_attribute to build up the proper
3347         attribute.
3349         * util/Makefile.am (libeabutil_la_SOURCES): remove
3350         eab-destination.[ch] and add e-destination.[ch].
3352         * printing/e-contact-print.c (e_contact_print_contact): we don't
3353         have to worry about the "<?xml..."  EMAIL fields anymore.
3355         * gui/widgets/eab-gui-util.c (eab_send_contact_list): just use the
3356         value as the address (since that's what it is) in the list case.
3358         * gui/widgets/eab-contact-display.c (render_contact_list): remove
3359         the EABDestination stuff from here.
3360         (eab_contact_display_render_compact): same.
3362         * gui/widgets/e-minicard.c (activiate_editor): fix warnings - use
3363         EAB_EDITOR instead of G_OBJECT.
3364         (add_field): we don't have to worry about the "<?xml..."  EMAIL
3365         fields anymore.
3366         (remodel): same.
3368         * gui/widgets/e-addressbook-treeview-adapter.c
3369         (adapter_get_value): we don't have to worry about the "<?xml..."
3370         EMAIL fields anymore.
3372         * gui/widgets/e-addressbook-table-adapter.c
3373         (addressbook_value_at): we don't have to worry about the
3374         "<?xml..." EMAIL fields anymore.
3376         * gui/contact-list-editor/e-contact-list-model.c
3377         (contact_list_value_at): eab->e.
3378         (contact_list_model_dispose): we're not a GtkObject, we're a
3379         GObject.  rename _destroy to _dispose, and chain up to the parent
3380         class's ::dispose.
3381         (e_contact_list_model_class_init): GtkObject -> GObject, and
3382         destroy -> dispose.
3383         (e_contact_list_model_init): GtkObject -> GObject, and EAB -> E.
3384         (e_contact_list_model_add_destination): EAB -> E.
3385         (e_contact_list_model_add_email): same.
3386         (e_contact_list_model_add_contact): same.
3387         (e_contact_list_model_get_destination): same.
3389         * gui/contact-list-editor/e-contact-list-editor.c
3390         (table_drag_data_received_cb): add email num arg to
3391         e_contact_list_model_add_contact.
3392         (extract_info): fill in the vcard attributes instead of just
3393         generating xml.
3394         (fill_in_info): extract the values from the vcard attributes.
3396         * gui/component/select-names/e-select-names-text-model.c
3397         (e_select_names_text_model_insert_length): eab->e, and don't
3398         sometimes copy, sometimes ::new.  always ::new.
3399         (e_select_names_text_model_delete): same.
3400         (e_select_names_text_model_obj_count): same.
3401         (nth_obj_index): same.
3403         * gui/component/select-names/e-select-names-table-model.c
3404         (fill_in_info): eab -> e.
3406         * gui/component/select-names/e-select-names-popup.c
3407         (make_contact_editor_cb): eab -> e.
3408         (change_email_num_cb): same.
3409         (toggle_html_mail_cb): same.
3410         (populate_popup_contact): same, and remove code that checks for
3411         <?xml, then imports the EDestination.
3412         (quick_add_cb): eab -> e.
3413         (populate_popup_nocontact): same.
3414         (e_select_names_populate_popup): same.
3416         * gui/component/select-names/e-select-names-model.h: eab -> e, and
3417         remove prototypes for nuked functions.
3419         * gui/component/select-names/e-select-names-model.c
3420         (destination_changed_proxy, send_changed, connect_destination,
3421         disconnect_destination): nuke.
3422         (e_select_names_model_duplicate): EAB -> E.
3423         (e_select_names_model_get_textification): same.
3424         (e_select_names_model_get_address_text): same.
3425         (e_select_names_model_get_destination): same.
3426         (e_select_names_model_export_destinationv): same.
3427         (send_changed): same.
3428         (e_select_names_model_import_destinationv): same.
3429         (e_select_names_model_get_contact): same.
3430         (e_select_names_model_contains): same.
3431         (e_select_names_model_insert): same, and remove call to
3432         connect_destination.
3433         (e_select_names_model_append): same.
3434         (e_select_names_model_replace): same, and remove call to
3435         disconnect/connect_destination.
3436         (e_select_names_model_delete): same.
3437         (delete_all_iter): nuke.
3438         (e_select_names_model_delete_all): use g_object_unref for the
3439         foreach call.
3440         (e_select_names_model_merge): EAB -> E.
3441         (e_select_names_model_name_pos): same.
3442         (e_select_names_model_name_pos): same.
3443         (e_select_names_model_load_all_contacts): nuke.
3444         (e_select_names_model_cancel_all_contact_load): nuke.
3445         
3446         * gui/component/select-names/e-select-names-manager.c
3447         (clean_cb, focus_in_cb, focus_out_cb, completion_popup_cb): nuke.
3448         (completion_handler): EAB -> E, and the signals are gone.
3450         * gui/component/select-names/e-select-names-completion.c: in
3451         general, s/eab_dest/e_dest and s/EABDest/EDest.
3452         (e_select_names_completion_got_book_view_cb): move the
3453         e_book_view_start to below the assignment of
3454         sequence_complete_received, just to put my mind at ease.
3455         (e_select_names_completion_stop_query): un-#if notyet the call to
3456         e_book_cancel.
3457         (e_select_names_completion_start_query): free the waiting_query
3458         before assigning to it.
3460         * gui/component/select-names/e-select-names-bonobo.c
3461         (entry_set_property_fn): remove calls to
3462         e_select_names_model_load_all_contacts, since that function is
3463         dead.
3465         * gui/component/addressbook-migrate.c (setup_progress_dialog):
3466         take the label to display to the user as an arg.
3467         (migrate_contact_lists_for_local_folders): loop over all contacts
3468         in all local addressbooks looking for ones that have <?xml in
3469         their EMAIL attributes.  for the ones we find, call
3470         e_destination_export_to_vcard_attribute to build up the proper
3471         attribute.
3472         (addressbook_migrate): add in a clause for all versions under
3473         1.5.7 to convert contact lists.  also, move the unrefs of the
3474         sources/groups to outside the if, as they're created outside it.
3476         * gui/component/Makefile.am (INCLUDES): remove the
3477         addressbook/backend/ dirs, since libebook isn't there anymore
3478         (nothing is, actually).  Add addressbook/util/.
3480 2004-04-09  Dan Winship  <danw@ximian.com>
3482         * gui/component/addressbook.c (addressbook_new_control): create an
3483         EUserCreatableItemsHandler
3484         (addressbook_view_clear): destroy it
3485         (control_activate): Activate it
3487         * gui/component/addressbook-component.c
3488         (impl__get_userCreatableItems): Add object/folder flags to the
3489         creatable items. Rename "Address Book" to "Contacts Group" per new
3490         specs
3492 2004-04-07  Chris Toshok  <toshok@ximian.com>
3494         * util/e-destination.c (e_destination_copy): we don't have an
3495         EBook* anymore.
3496         (e_destination_clear): same.
3497         (e_destination_set_contact): same.
3498         (e_destination_set_book): same, just cache the source_uid.
3499         (e_destination_set_book_uri): nuke.
3500         (e_destination_set_contact_uid): we don't have an EBook*.
3501         (e_destination_xml_decode): same.
3502         (e_destination_export_to_vcard_attribute): new function, fill in
3503         an EVCardAttribute with EDestination values.
3505         * util/e-destination.h: add prototype for
3506         e_destination_export_to_vcard_attribute.
3508 2004-04-07  Jeffrey Stedfast  <fejj@ximian.com>
3510         * gui/component/autocompletion-config.c
3511         (source_selection_changed): Sync the changes here rather than
3512         setting 'changed' on the config control (since that no longer
3513         exists).
3514         (autocompletion_config_control_new): Don't connect to an apply
3515         signal, no such signal.
3517 2004-04-06  Chris Toshok  <toshok@ximian.com>
3519         * util/e-destination.[ch]: old name, new trimmed down
3520         implementation.  This will be replacing eab-destination.[ch].
3522 2004-04-06  Hao Sheng  <hao.sheng@sun.com>
3524         * gui/widgets/e-minicard.c:
3525         (e_minicard_event) : implement keyboard navigation(TAB/shift+TAB)
3526         (activaite_editor) : add a new function to activiate contact editor
3527         for support "Enter" key
3529         Fixes #55056
3531 2004-04-05  Chris Toshok  <toshok@ximian.com>
3533         * util/eab-destination.h: wrap this with the correct #ifdef.
3535 2004-04-05  Chris Toshok  <toshok@ximian.com>
3537         * gui/merging/eab-contact-merging.c (match_query_callback): use
3538         the correct glade filename.
3540 2004-04-01  Hari Prasad Nadig  <hp@ndeepak.info>
3542         Fixes #53433.
3543         
3544         * gui/component/addressbook-config.c (searching_tab_check): added
3545         the tab check for search tab.
3546         (dialog_to_source): added timeout to be saved.
3547         (source_to_dialog): just a piece to retrieve timeout from source.
3548         (addressbook_root_dse_query): few necessary changes.
3549         (do_ldap_root_dse_query): again few changes that were required.
3551         * gui/component/ldap-config.glade : set right the Hscale to
3552         display the selected value.
3553         
3554 2004-03-30  Chris Toshok  <toshok@ximian.com>
3556         [ fixes bug #34777 ]
3557         
3558         * gui/contact-editor/e-contact-editor.c (file_as_entry_changed):
3559         set the window title to File As if the file as entry has something
3560         in it.  "Contact Editor" otherwise.
3561         (set_entry_changed_signals): hook up the file-as-entry's "changed"
3562         signal.
3564         * gui/contact-list-editor/e-contact-list-editor.c
3565         (list_name_changed_cb): analogous fix, but "List Name" and
3566         "Contact List Editor".
3568 2004-03-30  Chris Toshok  <toshok@ximian.com>
3570         [ fixes bug #53544 ]
3571         
3572         * gui/component/addressbook-component.c
3573         (impl__get_userCreatableItems): add "address_book" to the user
3574         creatable items list. complete with incorrect accelerator and
3575         shortcut!
3576         (impl_requestCreateItem): handle "address_book" here, and plug a
3577         memory leak.
3579 2004-03-30  Chris Toshok  <toshok@ximian.com>
3581         [ part of the fix for #51977, the other part is in e-d-s ]
3582         
3583         * gui/widgets/e-addressbook-view.c (search_activated): the name of
3584         the category list property has changed from "category" to
3585         "category" list in 1.5.  track the change here to get category
3586         searching working again.
3588 2004-03-30  Chris Toshok  <toshok@ximian.com>
3590         [ part of the fix for #54528, the other part is in e-d-s ]
3591         
3592         * importers/evolution-vcard-importer.c (process_item_fn): get and
3593         set the PHOTO attribute before storing the contact in the book.
3594         this has the affect of making EContact sniff the image format.
3595         the apple addressbook doesn't give PHOTO's a TYPE.
3598 2004-03-30  Chris Toshok  <toshok@ximian.com>
3600         [ fixes bug #53094 ]
3601         
3602         * gui/component/ldap-config.glade: nuke
3603         addressbook-sources-window.
3605         * gui/component/addressbook-config.c (main): nuke, we don't need
3606         this test case anymore, and it doesn't really work anyway anymore.
3608 2004-03-30  Chris Toshok  <toshok@ximian.com>
3610         [ fixes bug #53634 ]
3611         
3612         * gui/widgets/e-addressbook-view.c (eab_view_new): call
3613         e_search_bar_set_menu to add the Advanced... menu item to the
3614         search menu, and connect to "menu_activated".
3615         (search_menu_activated): new function, pop up the advanced dialog
3616         if id == ESB_ADVANCED.
3617         (query_changed): use e_search_bar_get_item_id instead of
3618         g_object_get.
3620         * gui/component/addressbook.c (verbs): remove ToolSearch.
3621         (pixmaps): remove the ToolSearch pixmap.
3623 2004-03-30  Chris Toshok  <toshok@ximian.com>
3625         [ gui part of the fix required for #48665 ]
3626         
3627         * gui/widgets/e-addressbook-model.c (get_view): pass the source's
3628         "limit" property (if it exists) to e_book_async_get_book_view.
3630 2004-03-29  Larry Ewing  <lewing@ximian.com>
3632         * gui/component/addressbook-component.c
3633         (selector_tree_drag_data_received): call drag_finish properly.
3634         (selector_tree_drag_motion): set the drag status properly.
3636 2004-03-25 Sivaiah Nallagatla <snallagatla@novell.com>
3638         * gui/component/eab-editor.c (eab_editor_prompt_to_save_changes) : 
3639         do  eab_editor_is_valid check only when user wants to save.
3641 2004-03-24  Chris Toshok  <toshok@ximian.com>
3643         * gui/component/addressbook-component.c
3644         (fill_popup_menu_callback): don't let the user delete their
3645         Personal addressbook.  This is just a nice UI thingy..  A similar
3646         fix needs to be made to e-d-s. so that attempts that circumvent a
3647         nice UI will also fail.
3649 2004-03-24  Chris Toshok  <toshok@ximian.com>
3651         * gui/widgets/eab-gui-util.c (eab_show_multiple_contacts): don't
3652         know what I was thinking approving this change.  the _() was only
3653         used in the plural case (in fact where n > 5), so a singular case
3654         was never necessary, and neither was the call to ngettext.
3656 2004-03-24  Chris Toshok  <toshok@ximian.com>
3658         * gui/contact-list-editor/e-contact-list-editor.c
3659         (e_contact_list_editor_get_type): parent_type == EAB_TYPE_EDITOR.
3660         (e_contact_list_editor_class_init): fill in editor_class virtual
3661         functions, and remove all the signals.
3662         (list_added_cb): call eab_editor_contact_* instead of emitting a
3663         signal here.  also call eab_editor_close
3664         (list_modified_cb): same.
3665         (e_contact_list_editor_is_valid): new function.
3666         (e_contact_list_editor_is_changed): same.
3667         (e_contact_list_editor_get_window): same.
3668         (file_close_cb): call eab_editor_ functions.
3669         (list_deleted_cb): call eab_editor_contact_* instead of emitting a
3670         signal here.  also call eab_editor_close
3671         (delete_cb): call eab_editor_* functions.
3672         (contact_list_editor_destroy_notify): call eab_editor_remove.
3673         (e_contact_list_editor_new): call eab_editor_add, and remove the
3674         g_object_ref/gtk_object_sink two-step.
3675         (e_contact_list_editor_show): make static, and make arg EABEditor.
3676         (e_contact_list_editor_raise): same.
3677         (e_contact_list_editor_close): same.
3678         (app_delete_event_cb): call eab_editor_ functions.
3679         (command_state_changed): use eab_editor_is_valid instead of
3680         is_named.
3681         (e_contact_list_editor_request_close_all): nuke.
3682         
3683         * gui/contact-list-editor/e-contact-list-editor.h: nuke a bunch of
3684         prototypes for functions that are now either virtual functions
3685         from EABEditor or eab_editor_* functions.
3686         (struct _EContactListEditor): we subclass from EABEditor.
3687         (struct _EContactListEditorClass): same, and nuke all the signals.
3689         * gui/contact-editor/e-contact-editor.c
3690         (e_contact_editor_get_type): parent_type == EAB_TYPE_EDITOR.
3691         (e_contact_editor_class_init): fill in editor_class virtual
3692         functions, and remove all the signals.
3693         (contact_moved_cb): call eab_editor_contact_* instead of emitting
3694         a signal here.  also call eab_editor_close
3695         (contact_added_cb): same.
3696         (contact_modified_cb): same.
3697         (e_contact_editor_close): rename from close_dialog.
3698         (e_contact_editor_is_valid): new function.
3699         (e_contact_editor_is_changed): new function.
3700         (e_contact_editor_get_window): new function.
3701         (file_close_cb): use eab_editor_ calls here.
3702         (e_contact_editor_confirm_delete): nuke.
3703         (contact_deleted_cb): call eab_editor_contact_* instead of
3704         emitting a signal here.  also call eab_editor_close
3705         (delete_cb): use eab_editor_ functions.
3706         (e_contact_editor_dispose): chain up to our parent's ::dispose.
3707         (contact_editor_destroy_notify): use eab_editor_remove.
3708         (e_contact_editor_new): use eab_editor_add, and remove the
3709         g_object_ref/gtk_object_sink two-step.
3710         (_popup_position): nuke dead function.
3711         (set_fields): i is an index, not a field_id.
3712         (e_contact_editor_raise): make this static, and it takes an
3713         EABEditor arg now, not a EContactEditor.
3714         (e_contact_editor_show): same.
3715         (e_contact_editor_request_close_all): nuke.
3716         
3717         * gui/contact-editor/e-contact-editor.h: nuke a bunch of
3718         prototypes for functions that are now either virtual functions
3719         from EABEditor or eab_editor_* functions.
3720         (struct _EContactEditor): we subclass from EABEditor.
3721         (struct _EContactEditorClass): same, and remove the signals.
3723         * gui/widgets/e-addressbook-view.c (delete): call
3724         eab_editor_confirm_delete.
3726         * gui/widgets/eab-popup-control.c (contact_editor_cb): don't
3727         bother calling e_contact_editor_raise since this is a new contact
3728         editor anyway.
3730         * gui/widgets/eab-gui-util.c (eab_show_contact_list_editor): use
3731         EABEditor signals, and eab_editor_show.
3733         * gui/widgets/e-minicard.h: "editor" is now of type EABEditor, not
3734         GObject.
3736         * gui/widgets/e-minicard.c (e_minicard_event): just use
3737         eab_editor_raise instead of
3738         e_contact_editor_raise/e_contact_list_editor_raise.
3740         * gui/component/addressbook-component.c (impl_requestQuit):
3741         implement this again, calling eab_editor_request_close_all.
3742         (addressbook_component_class_init): fill in epv->requestQuit.
3744 2004-03-24  Chris Toshok  <toshok@ximian.com>
3746         * gui/contact-editor/eab-editor.[ch]: superclass for both
3747         EContactEditor and EContactListEditor.  A start toward simplifying
3748         the interface to both of them, and a place to abstract code.
3750         * gui/contact-editor/Makefile.am (libecontacteditor_la_SOURCES):
3751         add eab-editor.[ch]
3753 2004-03-24  Danilo Segan  <dsegan@gmx.net>
3755         * gui/widgets/e-addressbook-model.c (update_folder_bar_message):
3756         Use ngettext for handling plural forms (fixes bug #53464).
3757         * gui/widgets/eab-gui-util.c (eab_show_multiple_contacts): Likewise.
3758         * gui/widgets/eab-vcard-control.c (pstream_load): Likewise.
3761 2004-03-22  Chris Toshok  <toshok@ximian.com>
3763         [ fixes bug #53653, and a couple other instances ]
3764         
3765         * gui/widgets/eab-gui-util.c (file_exists): REJECT -> CANCEL, so
3766         esc works (patch from Pratik V. Parikh <pratikvp@despammed.com>)
3767         (save_it): REJECT -> CANCEL.
3768         (eab_select_source): same.
3770 2004-03-17  Hans Petter Jansson  <hpj@ximian.com>
3772         Fixes #53625.
3774         * gui/widgets/eab-contact-display.c (render_contact): Show home and
3775         mobile phone numbers too.
3777 2004-03-15  Sivaiah Nallagatla <snallagatla@novell.com>
3778         
3779         * gui/contact-editor/e-contact-editor.c (enable_writable_fields) :
3780          loop only up to < G_N_ELEMENTS instead of <= G_N_ELEMENTS. Prevents
3781          out of bound indexing of addresses array
3783 2004-03-15  Hao Sheng  <hao.sheng@sun.com>
3785         * gui/component/Makefile.am : build a11y/addressbook dir
3786         * gui/widgets/e-addressbook-view.c :
3787         (eab_view_class_init) : add the accessibility support for 
3788         EAddressbookView
3789         * gui/widgets/e-minicard-view.c :
3790         (e_minicard_view_class_init) : add the accessibility support for 
3791         EMinicardView
3792         * gui/widgets/e-minicard.c :
3793         (e_minicard_class_init) : add the accessibility support for EMinicard
3794                                                                                 
3795 2004-03-10  Chris Toshok  <toshok@ximian.com>
3797         * gui/widgets/eab-contact-display.c (render_address): #if 0 this,
3798         since nothing uses it anymore.
3799         (accum_address): new function, build up a GString.
3800         (accum_name_value): same.
3801         (accum_attribute): same.
3802         (render_contact): don't just blindly render the work/personal
3803         blocks, since if they're empty it looks stupid.  instead,
3804         accumulate each block into a GString and only output the entire
3805         block if the string is non-empty.
3807 2004-03-10  Chris Toshok  <toshok@ximian.com>
3809         * gui/contact-editor/e-contact-editor.c (phone_entry_changed):
3810         phone_choice is an index into the phones array.
3811         (_phone_arrow_pressed): same.
3812         (address_text_changed): address_choice is an index into the
3813         addresses array.
3814         (_address_arrow_pressed): same.
3815         (set_address_field): same.
3816         (_email_arrow_pressed): email_choice is an index into the emails
3817         array.
3818         (full_addr_clicked): same, and same with
3819         s/addresses/address_editable.
3820         (e_contact_editor_init): initialize the *_choice fields as indices
3821         into their respective *es arrays.
3822         (e_contact_editor_build_address_ui): initialize the labels from
3823         the addresses array.
3824         (set_fields): *_choice fields are indices into *es arrays.
3825         (enable_writable_fields): same.
3827 2004-03-09  Rodney Dawes  <dobey@ximian.com>
3829         * gui/contact-editor/e-contact-editor.c (_arrow_pressed): Don't try
3830         to calculate the position of the popup menu for the dropdowns
3831         
3832 2004-03-09  Rodney Dawes  <dobey@ximian.com>
3834         * gui/contact-editor/e-contact-editor-im.c (e_contact_editor_im_edit):
3835         Remove the dialog separator, and set appropriate border widths for the
3836         button area box and the dialog's vbox
3837         * gui/contact-editor/im.glade: Apply patch from Christian Neumair to
3838         make the IM editor dialog HIG compliant
3840 2004-03-08  Sivaiah Nallagatla <snallagatla@novell.com>
3841         * gui/contact-editor/e-contact-editor.c (enable_writable_fields):
3842         fixed a typo, which is causing probelm in building up email ui
3843         
3844 2004-03-04  Sivaiah Nallagatla <snallagatla@novell.com>
3845                                                                                                                              
3846         * gui/component/addressbook-config.c :
3847         (addressbook_add_server_druid) : maintain a list of only those source groups which are added to menu
3848         instead of all
3849         (source_group_changed_cb) : use the new list to get the selected group
3850         (addressbook_source_dialog_destroy) : free the new list
3852 2004-03-04  Not Zed  <NotZed@Ximian.com>
3854         ** See #54991.
3855         
3856         * gui/component/select-names/e-select-names-completion.c
3857         (e_select_names_completion_start_query): dont try to unref a null
3858         query.
3859         (name_style_query): use a GString to build the query, so we can
3860         use e_sexp_encode_string to properly encode the sub terms.
3862 2004-03-03  Hans Petter Jansson  <hpj@ximian.com>
3864         * gui/component/addressbook-component.c (delete_addressbook_cb):
3865         Set error to NULL before using it.
3867 2004-03-03  Hans Petter Jansson  <hpj@ximian.com>
3869         * gui/component/addressbook-component.c (delete_addressbook_cb):
3870         Remove local data, with error reporting on failure.
3872 2004-03-02  Larry Ewing  <lewing@ximian.com>
3874         * gui/component/addressbook-component.c: add drop support for
3875         text/x-vcard to the source list.
3877 2004-02-27  Chris Toshok  <toshok@ximian.com>
3879         * gui/widgets/eab-contact-display.c
3880         (eab_contact_display_render_compact): ref the pixbuf before we
3881         close/unref the loader so the pixbuf sticks around, and make the
3882         scaling logic a bit more transparent.
3884 2004-02-27  Rodney Dawes  <dobey@ximian.com>
3886         * gui/contact-editor/contact-editor.glade: Change the button relief
3887         back to normal for the drop-down buttons and move the text labels
3888         inside the buttons as well
3890 2004-02-27  Chris Toshok  <toshok@ximian.com>
3892         * gui/widgets/e-addressbook-view.c (eab_view_set_property): add
3893         missing "break" to PROP_SOURCE's case.
3895 2004-02-27  Rodney Dawes  <dobey@ximian.com>
3897         * gui/contact-editor/contact-editor.glade: Get rid of some extraneous
3898         event boxes that were not needed/used for anything really
3899         Set the button relief for the pop-down buttons to NONE
3900         Set the shadow type for the arrows in the pop-down buttons to NONE,
3901         so that we look good with themes that actually handle shadow types on
3902         arrows, since most things just ignore the shadow type anyway
3904         Fixes #8516
3906 2004-02-26  Hans Petter Jansson  <hpj@ximian.com>
3908         * util/eab-destination.c (name_and_email_cb): Move unused variable
3909         declaration inside notyet conditional.
3911         * printing/e-contact-print.c: Include gal/util/e-util.h
3913         * gui/merging/eab-contact-compare.c (eab_contact_locate_match): Cast
3914         callback to an EBookCallback.
3915         (eab_contact_locate_match_full): Ditto.
3917         * gui/contact-editor/e-contact-quick-add.c (quick_add_set_name):
3918         Remove unused variable and cast 3rd arg to e_contact_set () (perhaps
3919         this should take a gconstpointer?).
3921         * gui/contact-editor/e-contact-editor-im.c (setup_service_optmenu):
3922         Remove unused variable.
3924         * gui/component/select-names/e-select-names.c (e_select_names_init):
3925         Cast the vbox to a GtkBox.
3927         * gui/component/addressbook-config.c (dialog_to_source): Correctly cast
3928         the spin button to a GtkSpinButton, not a GtkEntry.
3930         * gui/component/addressbook-component.c (load_primary_selection):
3931         Remove unused variable.
3933 2004-02-26  Chris Toshok  <toshok@ximian.com>
3935         * gui/widgets/eab-contact-display.c (render_contact): add the
3936         Groupwise IM attributes to the list of those we render.
3938 2004-02-26  Chris Toshok  <toshok@ximian.com>
3940         * gui/widgets/e-addressbook-view.c (set_view_preview): call
3941         eab_view_show_contact_preview here so we maintain the preview
3942         state when switching folders.  we don't (yet... won't ever?) have
3943         per-addressbook preview settings.
3945 2004-02-26  Chris Toshok  <toshok@ximian.com>
3947         * gui/widgets/e-addressbook-view.c
3948         (eab_view_show_contact_preview): view->scrolled ->
3949         view->contact_display.  fixes crash.
3951 2004-02-26  Chris Toshok  <toshok@ximian.com>
3953         * gui/contact-editor/e-contact-editor.c (edit_im_clicked): fix
3954         checks for locations.
3956 2004-02-26  Chris Toshok  <toshok@ximian.com>
3958         * gui/contact-editor/im.glade: set the location label/option menu
3959         to visible.
3961         * gui/contact-editor/e-contact-editor.c (add_im_clicked): build up
3962         the vcard attributes manually so we can set the TYPE= parameter to
3963         the location the user specifies.
3964         (edit_im_clicked): same.  Also, use COLUMN_IM_LOCATION_TYPE, which
3965         is not localized to pass the location to the editor.
3966         (remove_im_clicked): reindent.
3967         (im_treeview_drag_data_get_cb): same.
3968         (im_treeview_drag_data_rcv_cb): same.
3969         (setup_im_treeview): add another column for the (non-localized)
3970         location type, and reindent.
3971         (add_im_field): use the new attribute api for EContact so we can
3972         get the location of each account, and set things appropriately on
3973         the store.
3975         * gui/contact-editor/e-contact-editor-im.c
3976         (e_contact_editor_im_class_init): reindent.
3977         (e_contact_editor_im_new): same.
3978         (fill_in_info): same.
3980 2004-02-25 Sivaiah Nallagatla <snallagatla@novell.com>
3982         * gui/contact-editor/e-contact-editor-im.c : added 
3983         groupwise im related label and icon image file name
3984         
3985         * gui/contact-editor/e-contact-editor.c : 
3986         (im_treeview_drag_data_get_cb), (im_treeview_drag_data_rcv_cb) :
3987         (set_im_fields) : added code to add Gw Im id to contact-editor 
3988         
3990 2004-02-24  Hans petter Jansson  <hpj@ximian.com>
3992         * gui/contact-editor/e-contact-quick-add.c (quick_add_set_name):
3993         Port to new way of setting name in contact.
3995 2004-02-24  JP Rosevear <jpr@ximian.com>
3997         * gui/component/addressbook-migrate.c (migration_context_new):
3998         don't init the dialog here
3999         (addressbook_migrate): init it here
4001         Fixes #54214
4002         
4003 2004-02-20  Chris Toshok  <toshok@ximian.com>
4004         * gui/contact-editor/e-contact-editor.c (phone_entry_changed):
4005         remove some spew.
4007 2004-02-19  Chris Toshok  <toshok@ximian.com>
4009         * gui/component/component-factory.c: s/HAVE_NSS/ENABLE_SMIME.
4011         * gui/component/addressbook-component.c: s/HAVE_NSS/ENABLE_SMIME.
4013 2004-02-19  Chris Toshok  <toshok@ximian.com>
4015         * gui/component/addressbook.c (activate_source): split out the
4016         majority of the set_prop code for PROPERTY_SOURCE_UID_IDX here, so
4017         it can be used for both SOURCE_UID and FOLDER_URI.
4018         (set_prop): add a setter for "folder_uri".  we sorta fudge things
4019         and use the uri for the uid (the uid is only used as a hash key to
4020         look up the view associated with the uri/source, so we should be
4021         good still.)
4022         (get_prop): add getter for "folder_uri".
4023         (addressbook_new_control): add the "folder_uri" property to our
4024         property bag.
4026 2004-02-19  Hans Petter Jansson  <hpj@ximian.com>
4028         Fixes #45308 and duplicates.
4030         * gui/widgets/e-addressbook-model.c (eab_model_set_property): Store
4031         the IDs of book signals connected to, so we can disconnect from them
4032         later.
4034 2004-02-18  Hao Sheng  <hao.sheng@sun.com>
4036         [ fixes bug #52765 ]
4038         * gui/contact-editor/e-contact-editor.c
4039         (e_contact_editor_confirm_delete): make delete dialog support
4040         ESC press.
4042 2004-02-17  Chris Toshok  <toshok@ximian.com>
4044         * gui/contact-list-editor/e-contact-list-editor.h (struct
4045         _EContactListEditor): add image_set slot.
4047         * gui/contact-list-editor/e-contact-list-editor.c
4048         (list_image_changed_cb): set image_set = TRUE.
4049         (e_contact_list_editor_init): init image_set = FALSE
4050         (extract_info): only set the LOGO attribute if image_set = TRUE.
4052         * gui/contact-editor/e-contact-editor.h (struct _EContactEditor):
4053         add image_set slot.
4055         * gui/contact-editor/e-contact-editor.c (extract_info): only set
4056         the PHOTO attribute if image_set == TRUE.
4057         (image_chooser_changed): new function, set image_set = TRUE and
4058         call widget_changed.
4059         (e_contact_editor_init): init image_set to FALSE.
4060         (_address_arrow_pressed): quiet compiler.
4062 2004-02-17  Chris Toshok  <toshok@ximian.com>
4064         [ fixes bug #53620 ]
4065         
4066         * gui/merging/eab-contact-compare.c (eab_contact_compare_name): ""
4067         is a valid (and common) value for elements of EContactName now.
4068         it's semantically equivalent to NULL in the old ECard foo.
4070 2004-02-12  Chris Toshok  <toshok@ximian.com>
4072         * gui/component/addressbook-migrate.c (migrate_contacts): free up
4073         the list returned by e_book_get_contacts.
4075 2004-01-12  Rodney Dawes  <dobey@ximian.com>
4077         * gui/component/addressbook-component.c (delete_addressbook_cb):
4078         Fix capitalization of Address Book usage in sentence form
4079         * gui/component/ldap-config.glade: Use Address Book instead of
4080         Addressbook in here (Patch from Aaron Weber <aaron@ximian.com>)
4082 2004-02-11  Rodney Dawes  <dobey@ximian.com>
4084         * gui/component/addressbook-component.c (delete_addressbook_cb):
4085         (fill_popup_menu_callback):
4086         * gui/widgets/e-addressbook-view.c (init_collection):
4087         * gui/widgets/eab-gui-util.c (eab_error_dialog):
4088         * gui/widgets/eab-popup-control.c (eab_popup_control_contstruct):
4089         Address Book, not Addressbook
4091         Fixes #54166 and #54120
4093 2004-02-10  JP Rosevear <jpr@ximian.com>
4095         * Makefile.am: build importers dir
4097 2004-02-08  Rodney Dawes  <dobey@ximian.com>
4099         * gui/component/addressbook-migrate.c (create_groups): Initialize the
4100         personal_source to NULL
4102         Fixes #54015
4104 2004-02-08  Sivaiah Nallagatla <snallagatla@novell.com>
4105                                                                                 
4106         * gui/widgets/e-addressbook-view.c (delete) : pass contact
4107         as an argument instead of contact id to e_book_async_remove_contact
4109 2004-02-06  Chris Toshok  <toshok@ximian.com>
4111         * gui/component/addressbook-migrate.c (create_groups): don't
4112         bother using a function-wide variable to store the personal
4113         source.  also, use g_build_filename properly (because fejj is a
4114         whiner.)
4115         (migrate_local_folders): same (wrt fejj whining).
4117 2004-02-06  Rodney Dawes  <dobey@ximian.com>
4119         * gui/component/addressbook.c (addressbook_new_control): Hide the
4120         border on the notebook also
4121         * gui/widgets/e-addressbook-view.c (eab_view_new): Don't pack another
4122         scrolled window inside of a scrolled window, just pack the contact
4123         display inside the paned, since it already has a scrolled window
4125 2004-02-06  Rodney Dawes  <dobey@ximian.com>
4127         * gui/widgets/e-addressbook-view.c: Use "Address Book" instead of
4128         "folder" or "Addressbook" for the "Address Book Sources..." and
4129         copy/move contact menu items
4131         Fixes #53654
4133 2004-02-06  Chris Toshok  <toshok@ximian.com>
4135         * importers/evolution-ldif-importer.c (getNextLDIFEntry): only set
4136         the address if something in it's been filled in.
4137         (resolve_list_card): build up a separate list representing the xml
4138         formatted crud.
4139         (process_item_fn): remove FIXME.
4140         (factory_fn): use g_new0 since we test for NULL-ness later on.
4142         * importers/evolution-vcard-importer.c (factory_fn): use g_new0
4143         since we test for NULL-ness later on.
4145 2004-02-06  JP Rosevear <jpr@ximian.com>
4147         * importers/evolution-ldif-importer.c (importer_destroy_cb):
4148         implement
4150 2004-02-06  JP Rosevear <jpr@ximian.com>
4152         * importers/evolution-vcard-importer.c (importer_destroy_cb):
4153         implement
4154         (load_file_fn): use g_file_get_contents to get a string we can
4155         convert to a contact list with eab_contact_list_from_string 
4157 2004-02-06  JP Rosevear <jpr@ximian.com>
4159         * importers/GNOME_Evolution_Addressbook_LDIF_Importer.server.in.in:
4160         shlib importer info
4162         * importers/GNOME_Evolution_Addressbook_VCard_Importer.server.in.in: 
4163         ditto
4164         
4165         * importers/Makefile.am: build shlib addressbook importers
4167         * importers/evolution-ldif-importer.c: First crack at resurrecting
4169         * importers/evolution-vcard-importer.c: ditto
4170         
4171 2004-02-03  Chris Toshok  <toshok@ximian.com>
4173         * gui/widgets/eab-contact-display.c (on_url_requested): remove
4174         some spew, and add an evo-icon: handler, for things in evolution's
4175         imagedir.
4176         (render_address): hack up the html.
4177         (render_name_value): new function, just render a name/value/icon.
4178         (render_attribute): split out most of this function into
4179         render_name_value.  this just checks to see if the EContact
4180         attribute has something in it before passing it along.
4181         (render_contact_list): split this out from
4182         eab_contact_display_render_normal.
4183         (start_block): new function, insert a row of height 20 with a
4184         header.
4185         (end_block): new function, insert a row of height 20.
4186         (render_contact): split this out from
4187         eab_contact_display_render_normal, and prettify the contact
4188         display.
4189         (eab_contact_display_render_normal): call render_contact and
4190         render_contact_list.
4191         (eab_contact_display_new): create a scrolled window and add the
4192         GtkHTML to it so we actually have scrollbars.
4194 2004-02-03  Dan Winship  <danw@ximian.com>
4196         * gui/component/select-names/Makefile.am (INCLUDES): add
4197         widgets/misc for e-activity-handler.h
4199 2004-02-03 Sivaiah Nallagatla <snallagatla@novell.com>
4201         * gui/component/addressbook-config.c (dialog_to_source)
4202         (source_to_dialog) : use gtk_spin_button_* apis to get and set
4203         values for download limit spin button instead of gtk_entry
4204         Fixes #53432
4206 2004-02-02  Chris Toshok  <toshok@ximian.com>
4208         * gui/widgets/e-addressbook-view.c (eab_view_new): hook up
4209         contact_changed/contact_removed signals.
4210         (contact_changed): new function.  if the changed contact is the
4211         one we're displaying, re-render it.
4212         (contact_removed): new function.  if the removed contact is the
4213         one we're displaying, clear the display.
4214         (render_contact): set displayed_contact to the row.
4215         (eab_view_init): init displayed_contact to -1.
4216         (selection_changed): set displayed_contact to -1 when we clear the
4217         display.
4218         
4219         * gui/widgets/e-addressbook-view.h (struct _EABView): add
4220         "displayed_contact" so we can update the contact preview when it
4221         changes.
4223 2004-01-30  Chris Toshok  <toshok@ximian.com>
4225         * gui/contact-editor/e-contact-editor.c: enable d&d drop photos.
4227         * gui/contact-editor/contact-editor.glade: use
4228         eab_create_image_chooser_widget for the d&d'able image.
4230         * gui/contact-list-editor/e-contact-list-editor.c: abstract out
4231         all the d&d image support (it's now in
4232         widgets/misc/e-image-chooser.[ch]).
4234         * gui/contact-list-editor/contact-list-editor.glade: use
4235         eab_create_image_chooser_widget for the d&d'able image.
4237         * gui/widgets/eab-gui-util.c (eab_create_image_chooser_widget):
4238         new function.
4240         * gui/widgets/eab-gui-util.h: add prototype for
4241         eab_create_image_chooser_widget.
4243 2004-01-29  Hans Petter Jansson  <hpj@ximian.com>
4245         * gui/widgets/eab-gui-util.c (source_selection_changed_cb): Implement.
4246         (eab_select_source): Implement. Public function that prompts user to
4247         select a source from a list.
4248         (eab_transfer_contacts): Enable and use eab_select_source () and
4249         ESource, instead of old shell folder/URI stuff.
4251 2004-01-29  Hans Petter Jansson  <hpj@ximian.com>
4253         * gui/component/ldap-config.glade: Changed "Finish" to "Apply" in
4254         dialog finish page text.
4256 2004-01-29  Hans Petter Jansson  <hpj@ximian.com>
4258         * gui/component/addressbook-config.c (dialog_to_source): Sync the
4259         modified source list.
4261         * gui/component/addressbook-component.c (delete_addressbook_cb): Sync
4262         the modified source list.
4264 2004-01-29  Chris Toshok  <toshok@m198-139.dsl.rawbw.com>
4266         * gui/component/addressbook-migrate.c (setup_progress_dialog): use
4267         the MigrationContext struct.
4268         (dialog_close): same.
4269         (dialog_set_folder_name): same.
4270         (dialog_set_progress): same.
4271         (migrate_contacts): same, and pass it along to other functions.
4272         (migrate_contact_folder_to_source): same.
4273         (migrate_contact_folder): same.  also, add the old path/uid to the
4274         folder_uid_map.
4275         (migrate_local_folders): same.
4276         (create_groups): use the MigrationContext struct.
4277         (migrate_completion_folders): if it's a file uri, look up the old
4278         path in our hash table for a uid to use.  otherwise use the old
4279         behavior.
4280         (migration_context_new): new function, initialize the
4281         MigrationContext.
4282         (migration_context_free): free up everything.
4283         (addressbook_migrate): create the context, pass it to everything,
4284         destroy the context, shine toshok's shoes, etc.
4286 2004-01-29  Radek Doulik  <rodo@ximian.com>
4288         * gui/component/addressbook-config.c (dialog_to_temp_source): set
4289         group to temporary source
4291 2004-01-28  Hans Petter Jansson  <hpj@ximian.com>
4293         * gui/component/select-names/e-select-names-table-model.c
4294         (fill_in_info): Get file_as instead of full_name.
4296         * gui/compoent/select-names/e-select-names.etspec: Show the file_as
4297         column instead of full_name.
4299 2004-01-27  Hans Petter Jansson  <hpj@ximian.com>
4301         * gui/contact-editor/e-contact-editor-fullname.c
4302         (e_contact_editor_fullname_set_property): Handle NULL name. Fixes
4303         #53071.
4305 2004-01-27  Chris Toshok  <toshok@ximian.com>
4307         * gui/component/addressbook-config.c (dialog_to_source): set the
4308         relative_uri of a local source to be its uid.
4310         * gui/component/addressbook-migrate.c
4311         (migrate_contact_folder_to_source): remove the dest_group arg,
4312         since we don't use it.
4313         (migrate_contact_folder): set the relative uri of the source to be
4314         its uid.
4315         (PERSONAL_RELATIVE_URI): "Personal" -> "system".
4316         (create_groups): don't actually make the directory hierarchy for
4317         the personal folder here.  let e-d-s do that.  Also remove
4318         OnThisComputer from the base uri.
4319         (migrate_local_folders): track change to
4320         migrate_contact_folder_to_source.
4322 2004-01-26  Chris Toshok  <toshok@ximian.com>
4324         [ Should fix #53361 and other migration problems/crashes ]
4325         * gui/component/addressbook-migrate.c
4326         (migrate_contact_folder_to_source): new function, takes most of
4327         migrate_contact_folder's contents.  Fix some of the refcounting
4328         problems though, by not unreffing dest_group, and using
4329         e_group_add_source instead of e_source_set_group.
4330         (migrate_contact_folder): convert to calling
4331         migrate_contact_folder_to_source.
4332         (create_groups): add an out parameter for *personal_source.
4333         (migrate_local_folders): add personal_source as an arg, so we can
4334         get the source that create_groups created/found.  Call
4335         migrate_contact_folder_to_source for the personal_source.
4336         (addressbook_migrate): pass personal_source to
4337         migrate_local_folders.
4339 2004-01-26  Chris Toshok  <toshok@ximian.com>
4341         [ fixes #53238 ]
4342         * util/eab-destination.c (nonempty): make this accept NULL's (and
4343         return FALSE for them).
4344         (eab_destination_is_empty): shorten some of the tests since
4345         nonempty takes NULL now.
4346         (eab_destination_get_address): only call
4347         camel_internet_address_add if both name and email are non-empty.
4348         otherwise call camel_address_decode and let camel try to deal with
4349         it.
4350         (eab_destination_xml_encode): call xmlEncodeEntitiesReentrant on
4351         the strings before adding them to the xml, so people that enter
4352         [<>&] won't end up with broken EABDestinations.
4354 2004-01-26  Radek Doulik  <rodo@ximian.com>
4356         * gui/widgets/e-addressbook-view.c (selection_received): make sure
4357         we pass \0 terminated string to eab_contact_list_from_string
4358         [it may fix #51743]
4360 2004-01-25  Chris Toshok  <toshok@ximian.com>
4362         [ fixes bug #51171 ]
4363         * gui/widgets/eab-gui-util.c (eab_send_contact_list): get this
4364         working.
4366 2004-01-24  Rodney Dawes  <dobey@ximian.com>
4368         * gui/component/select-names/e-select-names.c (e_select_names_init):
4369         Select Contacts from Address Book, not Contents
4371         Fixes #53263
4373 2004-01-24  Chris Toshok  <toshok@ximian.com>
4375         * gui/component/addressbook-migrate.c (migrate_local_folders):
4376         oops.
4377         (migrate_contact_folder): fix the unreffing.
4379 2004-01-24  Chris Toshok  <toshok@ximian.com>
4381         * gui/component/addressbook-migrate.c (migrate_local_folders): use
4382         _("Personal"), not "Personal".
4384 2004-01-24  Chris Toshok  <toshok@ximian.com>
4386         * gui/component/addressbook-migrate.c (migrate_local_folders):
4387         don't create/add the source here.  it's done in
4388         migrate_contact_folder.
4390 2004-01-24  Chris Toshok  <toshok@ximian.com>
4392         * gui/component/addressbook-migrate.c (migrate_local_folders): use
4393         e_folder_map_local_folders.
4394         (find_addressbook_dirs): nuke.
4396 2004-01-24  JP Rosevear <jpr@ximian.com>
4398         * gui/widgets/e-addressbook-view.c (init_collection): use
4399         .evolution to store view info
4401 2004-01-23  Chris Toshok  <toshok@ximian.com>
4403         [ fixes bug #52571 ]
4404         * util/eab-book-util.c (escape): ugh.  name fields that have \"
4405         around the name break our queries, because it turns it into (for
4406         instance): (contains "full_name" ""Toshok"").  so we need to turn
4407         that into: (contains "full_name" "\"Toshok\"").
4408         (eab_name_and_email_query): escape both the name and email, and
4409         use an EBookQuery instead of passing the string to
4410         e_book_async_get_contacts.  Looks like ross missed a couple of
4411         spots.
4412         (eab_nickname_query): same.
4414         * gui/component/addressbook.c (free_load_source_data): new
4415         function, free up the data and unref the source if there is one.
4416         (load_source_auth_cb): call free_load_source_data instead of just
4417         g_free'ing the struct.
4418         (load_source_cb): same.
4419         (default_book_cb): new function, we need this so we can fill in
4420         the source for the default book.  get the source, then call
4421         load_source_cb to continue processing as normal.
4422         (addressbook_load_default_book): use default_book_cb instead of
4423         load_source_cb.
4425 2004-01-22  Chris Toshok  <toshok@ximian.com>
4427         [ fixes bug #53184 ]
4428         * gui/component/addressbook-migrate.c (migrate_contacts): handle
4429         the fact that the xml 1.4 spits out contains unescaped ';'s in the
4430         EMAIL attributes for mailing lists.
4432 2004-01-22  Chris Toshok  <toshok@ximian.com>
4434         [ fixes bug #52944 ]
4435         * gui/component/addressbook-migrate.c (migrate_contacts): do some
4436         massaging of contacts as we import them, to fix up the differences
4437         between 1.4 and 1.5 vcards.
4439 2004-01-21  Nat Friedman <nat@novell.com>
4441         * gui/contact-editor/contact-editor.glade: Added missing
4442         entry-blog widget.
4444 2004-01-21  Hans Petter Jansson  <hpj@ximian.com>
4446         * gui/component/addressbook-config.c (create_source_dir): Remove.
4447         (dialog_to_source): Don't create source dir, backend takes care of
4448         that now.
4450 2004-01-21  Chris Toshok  <toshok@ximian.com>
4452         * gui/component/addressbook-component.c
4453         (addressbook_component_peek_gconf_client): new function.
4455         * gui/component/addressbook-component.h: add prototype for
4456         addressbook_component_peek_gconf_client.
4458         * gui/component/addressbook-migrate.c
4459         (migrate_completion_folders): more gross hacking.  migrate the
4460         completion settings.
4461         (get_source_by_uri): function to search for an ESource given the
4462         entire uri.  used for migrate_completion_folders.
4463         (migrate_ldap_servers): get_string_value -> get_string_child.
4464         same with get_integer_child.
4465         (get_string_child): rename to make it apparent it's a child, not a
4466         property.
4467         (get_integer_child): same.
4468         (addressbook_migrate): call migrate_completion_folders.
4470 2004-01-21  Chris Toshok  <toshok@ximian.com>
4472         * gui/contact-editor/e-contact-editor.c (new_target_cb): call
4473         widget_changed here too, since we're changing the destination.
4475 2004-01-20  Chris Toshok  <toshok@ximian.com>
4477         [ fixes bug #52955 ]
4478         * gui/merging/eab-contact-compare.c (use_common_book_cb): handle
4479         the case properly where there are no query parts (p == 0).
4480         Instead of passing "" to e_book_query_from_string, just set the
4481         query to NULL.
4483         * util/eab-book-util.c (eab_contact_list_to_string): we need to
4484         put a blank line here, so \r\n\r\n, not just \r\n.
4486 2004-01-20  Chris Toshok  <toshok@ximian.com>
4488         * gui/component/addressbook-migrate.c (create_groups): deal with
4489         the groups/sources already being there.  Essentially make this
4490         function idempotent.
4491         (addressbook_migrate): unconditionally call create_groups now.
4492         move the version logic here from ipl_upgradeFromVersion, and
4493         include more versions in the set of those we upgrade from.
4495         * gui/component/addressbook-migrate.h: add major/minor/revision
4496         args to addressbook_migrate.
4498         * gui/component/addressbook-component.c (impl_upgradeFromVersion):
4499         remove the version logic from here.
4501 2004-01-20 Sivaiah Nallagatla   <snallagatla@novell.com>
4503         * printing/e-contact-print.c (e_contact_print_response): do not 
4504         try to unref when query is NULL
4506 2004 -01-20 Sivaiah Nallagatla  <snallagatla@novell.com>
4508         * gui/contact-editor/e-contact-editor.c (edit_im_clicked) : do not call
4509         gtk_tree_model_get when nothing in the list is selected 
4511 2004-01-19  Hans Petter Jansson  <hpj@ximian.com>
4513         * gui/component/select-names/e-select-names.etspec: Get name from
4514         correct model column.
4516 2004-01-19  Hans Petter Jansson  <hpj@ximian.com>
4518         * printing/e-contact-print.c (complete_sequence): Only unref if we
4519         have a query.
4521 2004-01-19  Hans Petter Jansson  <hpj@ximian.com>
4523         * gui/component/addressbook-component.c
4524         (get_primary_source): Implement.
4525         (load_primary_selection): Use get_primary_source ().
4526         (impl_requestCreateItem): Use get_primary_source (), fixing a crash
4527         when we're asked to create a new item and we don't have the controls.
4529 2004-01-16  Hans Petter Jansson  <hpj@ximian.com>
4531         * gui/component/addressbook.c (load_source_auth_cb): Don't run
4532         callback if the action was cancelled.
4533         (load_source_cb): Ditto.
4534         (addressbook_load_source): Return an ID for the load attempt.
4535         (addressbook_load_source_cancel): Implement, allows cancelling a
4536         load attempt.
4538         * gui/contact-editor/e-contact-editor.c (new_target_cb): Clear the
4539         values for in-progress load operation. Only unref new_book if it's
4540         non-NULL.
4541         (cancel_load): Implement. Cancels the load operation if one is in
4542         progress.
4543         (source_selected): Cancel any running load operation before starting
4544         a new one. Set up in-progress values.
4545         (e_contact_editor_init): Clear the in-progress values.
4546         (e_contact_editor_dispose): Cancel load operation.
4547         (e_contact_editor_set_property): If a new target book is set, cancel
4548         any conflicting load operation in progress.
4550         * gui/widgets/e-addressbook-view.c (set_paned_position): Remove
4551         debug output.
4552         (get_paned_position): Ditto.
4554 2004-01-16  JP Rosevear <jpr@ximian.com>
4556         * gui/component/addressbook.c (set_prop): only set the menus and
4557         command state if we actually are already displayed, otherwise wait
4558         for activation
4560 2004-01-15  Hans Petter Jansson  <hpj@ximian.com>
4562         * gui/widgets/e-addressbook-view.c (set_paned_position): Implement.
4563         (get_paned_position): Implement.
4564         (eab_view_new): Connect signal to get paned position changes.
4565         Remove old hack.
4566         (display_view): Set paned position properly.
4568 2004-01-12  JP Rosevear <jpr@ximian.com>
4570         * gui/component/addressbook-component.c (impl_upgradeFromVersion):
4571         revert dumb upgrade change
4573 2004-01-12  JP Rosevear <jpr@ximian.com>
4575         * gui/component/addressbook-component.c (impl_upgradeFromVersion):
4576         migrate from 1.5.0 and 1.5.1 properly
4578 2004-01-12  JP Rosevear  <jpr@ximian.com>
4580         * gui/contact-editor/contact-editor.glade: de-bold ui elements
4582 2004-01-09  Hans Petter Jansson  <hpj@ximian.com>
4584         * gui/component/addressbook-component.c (add_popup_menu_item): Take a
4585         sensitivity flag per menu item, and fall back to stock icons.
4586         (delete_addressbook_cb): Implement.
4587         (fill_popup_menu_callback): Reorder items, remove "remove" item, set
4588         sensitivity.
4590         * gui/component/ldap-config.glade: "Edit LDAP Server" ->
4591         "Addressbook Properties".
4593 2004-01-11  Christian Hammond  <chipx86@gnupdate.org>
4595         * addressbook/gui/contact-editor/e-contact-editor-im.[ch],
4596           addressbook/gui/contact-editor/im.glade: Added a dialog for
4597           adding a new IM account.
4598         * addressbook/gui/contact-editor/Makefile.am: Added the previously
4599           mentioned files, and depend on camel for necessary MIME parsing.
4601         * addressbook/gui/contact-editor/contact-editor.[ch],
4602           addressbook/gui/contact-editor/contact-editor.glade: Add and implement
4604 2004-01-09  Ross Burton  <ross@burtonini.com>
4606         * gui/component/select-names/e-select-names-completion.c:
4607         * gui/merging/eab-contact-compare.c:
4608         * gui/widgets/e-addressbook-model.c:
4609         * printing/e-contact-print.c:
4610         Update for API changes to e-book-async.
4612 2004-01-08  Ross Burton  <ross@burtonini.com>
4614         * gui/contact-editor/contact-editor.glade:
4615         * gui/contact-editor/e-contact-editor.c:
4616         Add the video conferencing field.
4618 2004-01-07  Rodney Dawes  <dobey@ximian.com>
4620         * gui/component/select-names/e-select-names.c:
4621         * gui/component/select-names/select-names.glade: Make the ESelectNames
4622         object be a HIG-compliant dialog, change "Folder" to be "Address Book",
4623         and fix a mnemonic conflict with "Category" and "Cancel"
4625         Fixes #51966
4627 2004-01-07  Rodney Dawes  <dobey@ximian.com>
4629         * gui/component/addressbook-component.c: Move the smime_component_init
4630         call to the instance init callback, rather than the class init, and
4631         wrap it in #if HAVE_NSS, so the addressbook works without smime support
4633 2004-01-07  JP Rosevear <jpr@ximian.com>
4635         * gui/component/Makefile.am: link in printer stuff
4637         Fixes #51172
4639 2004-01-06  Chris Toshok  <toshok@ximian.com>
4641         * gui/component/addressbook-migrate.c (check_for_conflict): remove
4642         spew.
4643         (migrate_contacts): same.
4644         (migrate_contact_folder): same.
4645         (migrate_local_folders): same, and plug a leak.
4647 2004-01-06  Chris Toshok  <toshok@ximian.com>
4649         * gui/component/Makefile.am (libevolution_addressbook_la_SOURCES):
4650         add addressbook-migrate.[ch].
4652         * gui/component/addressbook-component.c
4653         (addressbook_component_init): remove the source creation from
4654         here, it's in the migration code now.
4655         (impl_upgradeFromVersion): new function, call the
4656         addressbook-migration stuff.
4657         (addressbook_component_class_init): fill in
4658         epv->upgradeFromVersion, and call smime_component_init.
4659         (addressbook_component_peek_base_directory): new function.
4660         (addressbook_component_peek_source_list): same.
4662         * gui/component/addressbook-component.h: add prototypes for
4663         _peek_base_directory and _peek_source_list.
4665         * gui/component/addressbook-migrate.[ch]: add migration code to
4666         convert stuff from 1.x over to 1.5/2.0.
4668 2004-01-06  Rodney Dawes  <dobey@ximian.com>
4670         * gui/contact-editor/e-contact-editor-address.c: Apply
4671         patch from Roozbeh Pournader to update countries list
4673         Fixes #48151
4675 2004-01-06  JP Rosevear <jpr@ximian.com>
4677         * gui/component/select-names/e-select-names-popup.c
4678         (popup_info_cleanup): disconnect from selection-done signal
4680 2004-01-05  JP Rosevear <jpr@ximian.com>
4682         * gui/component/addressbook.c
4683         (addressbook_show_load_error_dialog): these line breaks in the
4684         error messages should actually be spaces
4686         Fixes #51732
4687         
4688 2003-12-19  Hans Petter Jansson  <hpj@ximian.com>
4690         * gui/component/addressbook-component.c (find_first_source): Impl.
4691         from calendar.
4692         (save_primary_selection): Implement, similar to calendar.
4693         (load_primary_selection): Implement, similar to calendar.
4694         (primary_source_selection_changed_callback): Save selection.
4695         (impl_createControls): Load selection.
4697 2003-12-18  Hans Petter Jansson  <hpj@ximian.com>
4699         * gui/contact-editor/e-contact-editor.c (widget_changed):
4700         editable -> target_editable
4701         (e_contact_editor_get_property): Same.
4702         (_email_arrow_pressed): Same.
4703         (enable_writable_fields): Same.
4704         (set_editable): Same.
4705         (contact_added_cb): Make sure source book is editable before trying
4706         to remove contact from there.
4707         (e_contact_editor_init): Set up source/target editability.
4708         (command_state_changed): Allow save only if target editable. Allow
4709         delete only if source editable.
4710         (e_contact_editor_set_property): Set editability flags for
4711         source/target.
4713         * gui/contact-editor/e-contact-editor.h: Add source_editable,
4714         target_editable flags in place of old editable flag.
4716 2003-12-17  Chris Toshok  <toshok@ximian.com>
4718         * gui/widgets/e-addressbook-view.c (eab_view_class_init): install
4719         the "source" property.
4720         (eab_view_init): init eav->source to NULL.
4721         (eab_view_dispose): disconnect the ecml_changed_id and unref
4722         source.
4723         (eab_view_new): create the search bar here.
4724         (view_preview): c&p the mailer's code mostly for this - this is
4725         the toggle listener for the Preview Pane menuitem.
4726         (setup_menus): add a listener for the ContactsViewPreview toggle.
4727         (eab_view_set_property): sensitize the search bar based on whether
4728         or not we have a book set.  This makes it so you can't search
4729         until the book is loaded.  Also add handling for the "source"
4730         attribute and print a warning when it's set multiple times
4731         (something that's not supported at the moment.)
4732         (eab_view_get_property): add "source" case.
4733         (search_activated, query_changed, compare_subitems, make_subitems,
4734         ecml_changed, get_master_list, connect_master_list_changed): move
4735         this here from addressbook.c
4736         (eab_view_show_contact_preview): implement - just show or hide the
4737         scrolled window.
4738         (eab_view_setup_menus): call e_search_bar_set_ui_component here,
4739         kind of a hack.
4741         * gui/widgets/e-addressbook-view.h: make this inherit from GtkVBox
4742         instead of GtkEventBox since we'll be packing children.  Add a
4743         prototype for eab_view_show_contact_preview.
4745         * gui/component/addressbook.c (get_current_view): return the
4746         EABView associated with the active notebook page.
4747         (save_contact_cb): use the current view.
4748         (view_contact_cb): same.
4749         (search_cb): same.
4750         (delete_contact_cb): same.
4751         (print_cb): same.
4752         (print_preview_cb): same.
4753         (stop_loading_cb): same.
4754         (cut_contacts_cb): same.
4755         (copy_contacts_cb): same.
4756         (paste_contacts_cb): same.
4757         (select_all_contacts_cb): same.
4758         (send_contact_cb): same.
4759         (send_contact_to_cb): same.
4760         (copy_contact_to_cb): same.
4761         (move_contact_to_cb): same.
4762         (update_command_state): same.
4763         (change_view_type): nuke, nothing uses this.
4764         (control_activate): use the current view.
4765         (control_activate_cb): same.
4766         (source_list_changed_cb): new function, remove the notebook pages
4767         (and destroy the EABView's) for sources that no longer exist.
4768         (addressbook_view_clear): dispose of the uid_to_view hash.
4769         (book_open_cb): store the ESource on the EABView too.  this
4770         function now takes a struct containing both EABView and ESource
4771         since we can't store either in the AddressbookView.
4772         (set_prop): if we have a view already for this uid, bring it up.
4773         otherwise create a new one and start the book loading.
4774         (addressbook_search_activated): nuked - this is being moved to
4775         e-addressbook-view.
4776         (addressbook_query_changed): same.
4777         (compare_subitems, make_subitems, ecml_changed,
4778         connect_master_list_changed): same.
4779         (addressbook_new_control): simplify things a bunch.  create a
4780         notebook to store the views in.  the search/vbox stuff is gone.
4781         use e_source_list_new_for_gconf_default, and handle the source
4782         list's "changed" signal.
4783         
4784 2003-12-17  Rodney Dawes  <dobey@ximian.com>
4786         * gui/component/autocompletion-config.c:
4787         (autocompletion_config_control_new): Embed Tree in GtkScrolledWindow
4789 2003-12-16  Hans Petter Jansson  <hpj@ximian.com>
4791         * gui/contact-editor/e-contact-editor.c (contact_added_cb): Update
4792         the contact's UID after normal add.
4794 2003-12-16  Hans Petter Jansson  <hpj@ximian.com>
4796         * gui/component/addressbook.c (addressbook_show_load_error_dialog):
4797         Make a public function that shows an error dialog, which can be used
4798         when a source fails to load.
4799         (book_open_cb): Call addressbook_show_load_error_dialog () on error.
4800         (set_prop): Don't reuse the book when loading a new source. This was
4801         confusing the contact-editor, which gets the book passed in.
4803         * gui/contact-editor/e-contact-editor.c (e_contact_editor_class_init):
4804         Make "source_book" and "target_book" distinct properties.
4805         (new_target_cb): Implement.
4806         (source_selected): Implement.
4807         (contact_moved_cb): Implement.
4808         (contact_added_cb): Handle the case where source_book != target_book as
4809         a move - if the add was successful, remove contact from source book.
4810         (save_contact): Handle case where source_book != target_book.
4811         (delete_cb): "book" renamed to "source_book".
4812         (e_contact_editor_init): Set up source_selected signal.
4813         (e_contact_editor_dispose): Dispose of both source and target books.
4814         (e_contact_editor_new): "book" renamed to "source_book".
4815         (e_contact_editor_set_property): If a source book is set, and we don't
4816         have a target book, make target_book == source_book. Allow setting
4817         target book, and base editability on that. If we're editing an existing
4818         contact, treat book change as a change, and update command state.
4819         (e_contact_editor_get_property): Allow getting target book.
4820         (set_source_field): Indicate the selected book.
4822 2003-12-16  Hans Petter Jansson  <hpj@ximian.com>
4824         * gui/contact-editor/e-contact-editor.c (set_source_field): Implement.
4825         Makes the source menu reflect the source for the current book.
4827 2003-12-16  Hans Petter Jansson  <hpj@ximian.com>
4829         * gui/contact-editor/e-contact-editor.c
4830         (e_contact_editor_create_source_option_menu): Implement. Creates
4831         source selection option menu.
4833         * gui/contact-editor/contact-editor.glade: Add source selection custom
4834         widget.
4836 2003-12-16  Hans Petter Jansson  <hpj@ximian.com>
4838         * gui/widgets/e-addressbook-table-adapter.c
4839         (addressbook_is_cell_editable): Disable cell editing.
4841 2003-12-15  Hans Petter Jansson  <hpj@ximian.com>
4843         * gui/contact-editor/e-contact-editor.c (address_to_text): Implement.
4844         (text_to_address): Implement, using EAddressWestern.
4845         (address_text_changed): Adapt to EContactAddress.
4846         (full_addr_clicked): Ditto. Fix field IDs.
4847         (e_contact_editor_init): Init address_choice.
4848         (_email_arrow_pressed): Fix field IDs.
4849         (_address_arrow_pressed): Adapt to EContactAddress and fix field IDs.
4850         (find_address_mailing): Leave out for now. Addresses don't have flags
4851         anymore...
4852         (set_fields): Adapt to EContactAddress and fix field IDs. Make sure
4853         changes to other widgets don't make us go back to the first listed
4854         address.
4855         (set_address_field): Adapt to EContactAddress and fix field IDs.
4856         (enable_writable_fields): Ditto.
4857         (fill_in_info): Disable find_address_mailing () for now.
4859 2003-12-10  Hans Petter Jansson  <hpj@ximian.com>
4861         * gui/contact-editor/e-contact-editor-address.c
4862         (e_contact_editor_address_class_init): Make "address" a boxed type.
4863         (e_contact_editor_address_init): Set address to NULL.
4864         (e_contact_editor_address_dispose): Free address.
4865         (e_contact_editor_address_new): Take an EContactAddress.
4866         (e_contact_editor_address_set_property): Re-implement setting the
4867         address property.
4868         (e_contact_editor_address_get_property): Ditto for getting.
4869         (fill_in_info): Enable, use EContactAddress fields.
4870         (extract_info): Ditto.
4872         * gui/contact-editor/e-contact-editor-address.h:
4873         Re-enable the address field, as EContactAddress.
4875 2003-12-09  JP Rosevear <jpr@ximian.com>
4877         * gui/contact-list-editor/e-contact-list-editor.c (fill_in_info):
4878         free email list properly
4880 2003-12-09  JP Rosevear <jpr@ximian.com>
4882         * gui/contact-list-editor/e-contact-list-editor.c (extract_info):
4883         free the list, not unref it, and free the elements
4885         Fixes #51976
4886         
4887 2003-12-06  Chris Toshok  <toshok@ximian.com>
4889         * gui/component/select-names/e-select-names-manager.c
4890         (open_book_cb): change prototype to fix warning, and change the
4891         comment to read load_source instead of load_uri (which isn't what
4892         we use anymore.)
4893         (update_completion_books): just use our source list for this.
4894         check the "completion" source property.
4895         (source_list_changed): recreate the completion books.
4896         (e_select_names_manager_init): connect to the source_list's
4897         changed signal.
4898         (e_select_names_manager_dispose): don't need to free the
4899         completion_uids list anymore.
4901         * gui/component/select-names/e-select-names-config.c
4902         (e_select_names_config_get_completion_books,
4903         e_select_names_config_set_completion_books,
4904         e_select_names_config_add_notification_completion_books): remove.
4906         * gui/component/select-names/e-select-names-config.h: remove the
4907         completion books calls, since we can just use the source list.
4909         * gui/component/component-factory.c (factory): create the
4910         autocompletion control.
4912         * gui/component/autocompletion-config.[ch]: new config control for
4913         selecting completion folders.  Uses e-source-selector.  Could
4914         probably be beautified a bit.
4915         
4916         * gui/component/Makefile.am (libevolution_addressbook_la_SOURCES):
4917         add autocompletion-config.[ch]
4919         * gui/component/GNOME_Evolution_Addressbook.server.in.in: remove
4920         the ldap config control server, and add the autocompletion one.
4922 2003-12-06  JP Rosevear <jpr@ximian.com>
4924         * */Makefile.am: Remove hard coded disable deprecated flags
4925         
4926 2003-12-05  JP Rosevear <jpr@ximian.com>
4928         * gui/component/select-names/select-names.glade: no more custom
4929         widget for the selection of the search source
4931         * gui/component/select-names/e-select-names.h: add member
4933         * gui/component/select-names/e-select-names.etspec: update model
4934         column
4936         * gui/component/select-names/e-select-names.c (find_first_source):
4937         find the first source in the list
4938         (addressbook_model_set_source): we have the source to set directly
4939         now
4940         (source_selected): listen for the source item to change
4941         (e_select_names_init): create a source option menu and hook it up
4942         (e_select_names_dispose): destroy the source list
4943         (e_select_names_new): do away with the config setup here
4945         * gui/component/select-names/e-select-names-manager.h: update
4946         members
4948         * gui/component/select-names/e-select-names-manager.c
4949         (update_completion_books): add books based on source uid
4950         (config_completion_books_changed_cb): handle the completion list
4951         changing
4952         (config_min_query_length_changed_cb): handle minimum query length
4953         changing
4954         (e_select_names_manager_new): we don't do the settings stuff here
4955         any more
4956         (e_select_names_manager_init): do the initial set up here for the
4957         book loaded and listen for changes
4958         (e_select_names_manager_dispose): destroy the new stuff
4960         * gui/component/select-names/e-select-names-config.[hc]: config
4961         information
4963         * gui/component/select-names/e-select-names-config-keys.h: the
4964         config keys
4966         * gui/component/select-names/e-select-names-bonobo.c
4967         (impl_SelectNames_activate_dialog): do away with the shell client
4968         stuff
4970         * gui/component/select-names/Makefile.am: build new files
4972 2003-12-05  Chris Toshok  <toshok@ximian.com>
4974         * gui/widgets/e-addressbook-model.c (book_view_loaded): call
4975         remove_book_view/free_data here as well, to guard against multiple
4976         book_view's being loaded.
4978 2003-12-05  Hans Petter Jansson  <hpj@ximian.com>
4980         * gui/widgets/e-addressbook-view.etspec: Clean up and sync with
4981         current model columns.
4983 2003-12-04  Christian Hammond  <chipx86@gnupdate.org>
4985         * addressbook/gui/contact-editor/e-contact-editor-im.[ch],
4986           addressbook/gui/contact-editor/im.glade: Added a dialog for
4987           adding a new IM account.
4988         * addressbook/gui/contact-editor/Makefile.am: Added the previously
4989           mentioned files, and depend on camel for necessary MIME parsing.
4991         * addressbook/gui/contact-editor/contact-editor.[ch],
4992           addressbook/gui/contact-editor/contact-editor.glade: Add and implement
4993           the Instant Messaging tab.
4995 2003-12-03  Ettore Perazzoli  <ettore@ximian.com>
4997         * gui/component/addressbook.c
4998         (retrieve_shell_view_interface_from_control): Remove.
4999         (set_folder_bar_label): Remove.
5000         (addressbook_new_control): Don't connect.
5002 2003-12-03  Ettore Perazzoli  <ettore@ximian.com>
5004         * gui/component/addressbook-config.c: Do not depend on
5005         e-folder-list.
5007         * gui/component/select-names/e-select-names.c: Remove dependency
5008         on evolution-folder-selector-button.
5009         (e_addressbook_create_folder_selector): Just return a FIXME label
5010         for now.
5011         (folder_selected): #if 0 out.
5012         (e_select_names_init): Do not connect.
5014         * gui/component/select-names/e-select-names-manager.c
5015         (e_select_names_manager_activate_dialog): Don't get a shell_client
5016         arg anymore.
5017         (load_completion_books): Stub out.
5019         * gui/component/select-names/e-select-names.c
5020         (e_select_names_new): Don't get an EvolutionShellClient anymore.
5021         Don't create the folder selector button for now.
5023         * gui/component/select-names/e-select-names.h: Remove dependency
5024         on evolution-shell-client.
5026         * gui/component/select-names/e-select-names-bonobo.c: Remove
5027         dependency on evolution-shell-client.
5028         (impl_SelectNames_activate_dialog): Stub out.
5030         * gui/widgets/eab-gui-util.c: Remove dependency on
5031         evolution-shell-client.
5032         (eab_transfer_contacts): Stub out.
5034 2003-12-02  Rodney Dawes  <dobey@ximian.com>
5036         * gui/component/Makefile.am: Version the schemas
5037         * gui/component/apps_evolution_addressbook.schemas: Removed
5038         * gui/component/apps_evolution_addressbook.schemas.in.in: Added
5040 2003-12-02  Ettore Perazzoli  <ettore@ximian.com>
5042         * gui/component/addressbook.c (set_status_message): Call
5043         e_activity_handler_operation_finished() on the current activity ID
5044         when done.
5046 2003-12-01  Ettore Perazzoli  <ettore@ximian.com>
5048         * gui/component/addressbook.c (struct AddressbookView): Replace
5049         activity_client with activity_id.
5050         (set_status_message): Use the EActivityHandler from the
5051         AddressbookComponent.
5053         * gui/component/addressbook-component.c (struct
5054         _AddressbookComponentPrivate): New member activity_handler.
5055         (addressbook_component_init): Init.
5056         (impl_dispose): Unref.
5057         (addressbook_component_peek_activity_handler): New.
5058         (impl_createControls): Return an ETaskBar as the statusbar control
5059         and attach it to the activity handler.
5061 2003-12-01  Ettore Perazzoli  <ettore@ximian.com>
5063         * gui/component/addressbook-component.c (impl_createControls):
5064         Pass a label for the status bar control for now.
5066 2003-12-01  Larry Ewing  <lewing@ximian.com>
5068         * gui/component/Makefile.am (INCLUDES): remove
5069         GTK_DISABLED_DEPRECATED so that we can build with gtk-2.3.
5071 2003-12-01  Rodney Dawes  <dobey@ximian.com>
5073         * gui/component/GNOME_Evolution_Addressbook.server.in.in:
5074         * gui/component/addressbook-config.c:
5075         * gui/component/addressbook.c:
5076         * gui/component/component-factory.c:
5077         * gui/component/select-names/GNOME_Evolution_Addressbook_SelectNames.server.in.in:
5078         * gui/component/select-names/e-select-names-bonobo.c:
5079         * gui/component/select-names/e-select-names-factory.c:
5080         * gui/widgets/eab-gui-util.c:
5081         * gui/widgets/eab-vcard-control.c: Use BASE_VERSION for repo_ids and
5082           OAFIIDs
5084 2003-12-01  Hans Petter Jansson  <hpj@ximian.com>
5086         * gui/component/ldap-config.glade: Fix start page text.
5088 2003-12-01  JP Rosevear <jpr@ximian.com>
5090         * conduit/Makefile.am: use privconduitdir
5092         * conduit/e-address.conduit.in: subst right thing
5094 2003-12-01  JP Rosevear <jpr@ximian.com>
5096         * conduit/e-address.conduit.in: specify privlibdir as the location
5098         * conduit/Makefile.am: install the conduit to privlibdir
5100 2003-12-01  JP Rosvear <jpr@ximian.com>
5102         * conduit/Makefile.am: version the .conduit file
5104 2003-12-01  Hans Petter Jansson  <hpj@ximian.com>
5106         * gui/component/new-addressbook.glade: Remove this too.
5108         * gui/component/Makefile.am (glade_DATA): Remove new-addressbook.glade.
5110 2003-12-01  Hans Petter Jansson  <hpj@ximian.com>
5112         * gui/component/Makefile.am (libevolution_addressbook_la_SOURCES):
5113         Remove addressbook-storage.[ch] and new-addressbook.[ch].
5115         * gui/component/addressbook-storage.[ch]: Removed from repository.
5117         * gui/component/new-addressbook.[ch]: Removed from repository.
5119         * gui/component/addressbook-component.c (load_uri_for_selection):
5120         Set source_uid property on view control, not folder_uri.
5121         (new_addressbook_cb): Call addressbook_config_create_new_source ().
5122         (edit_addressbook_cb): Implement.
5123         (fill_popup_menu_callback): Hook up edit_addressbook_cb ().
5124         (addressbook_component_init): Create the LDAP source group.
5126         * gui/component/addressbook-config.c (AddressbookSourceDialog):
5127         Take out the NEW_ADVANCED_UI stuff and add ESource related vars.
5128         (ldap_unparse_auth)
5129         (ldap_parse_auth)
5130         (ldap_unparse_scope)
5131         (ldap_unparse_ssl)
5132         (ldap_parse_ssl): Moved here from addressbook-storage.c.
5133         (addressbook_dialog_get_source)
5134         (addressbook_dialog_set_source)
5135         (objectclasses_create_server_table)
5136         (objectclasses_create_evolution_table)
5137         (objectclasses_add_foreach)
5138         (objectclasses_add)
5139         (objectclasses_sever_double_click)
5140         (objectclasses_remove_foreach)
5141         (objectclasses_remove)
5142         (objectclasses_evolution_double_click)
5143         (objectclasses_restore_default)
5144         (server_selection_model_changed)
5145         (evolution_selection_model_changed)
5146         (setup_objectclasses_tab): Nuke aging, unfinished NEW_ADVANCED_UI.
5147         (add_source_clicked)
5148         (edit_source_clicked)
5149         (delete_server)
5150         (delete_source_clicked)
5151         (ldap_config_control_destroy_callback)
5152         (ldap_config_control_apply_callback)
5153         (sources_selection_changed)
5154         (sources_table_row_activated)
5155         (ldap_dialog_new)
5156         (addressbook_dialog_create_sources_table)
5157         (ldap_config_control_new)
5158         (addressbook_config_control_new): Nuke config control.
5159         (create_source_dir)
5160         (dialog_to_source)
5161         (dialog_to_temp_source)
5162         (source_to_uri_parts)
5163         (source_to_dialog)
5164         (source_group_changed_cb)
5165         (source_group_menu_add_groups)
5166         (folder_page_forward)
5167         (finish_page_back): Implement.
5168         (addressbook_ldap_init): Take ESource instead of AddressbookSource.
5169         (addressbook_ldap_auth): Don't take a source, not needed.
5170         (addressbook_root_dse_query): Ditto.
5171         (addressbook_source_dialog_destroy): Clean up destroy function.
5172         (addressbook_add_server_druid_finish): Clean up, create ESource.
5173         (general_tab_check): If it's not LDAP, these options don't matter.
5174         (do_ldap_root_dse_query): Source no longer needed here.
5175         (query_for_supported_bases): Use a temp source generated from
5176         current dialog settings.
5177         (display_name_page_prepare): Renamed to folder_page_prepare ().
5178         (druid_display_name_page_modify_cb): Renamed to
5179         druid_folder_page_modify_cb ().
5180         (addressbook_add_server_druid): Set up source list, group selector.
5181         Make LDAP pages optional, dependent on selected group. Use ESource.
5182         (edit_dialog_store_change): Remove config control list stuff,
5183         export settings to ESource.
5184         (addressbook_edit_server_dialog): Renamed to
5185         addressbook_config_edit_source (), which takes an ESource. Remove
5186         config control list stuff, make LDAP pages show up only if we have
5187         an LDAP source. Remove NEW_ADVANCED_UI cruft.
5188         (addressbook_config_create_new_source): Just call
5189         addressbook_add_server_druid ().
5191         * gui/component/addressbook-config.h: Move LDAP enums here, from
5192         addressbook-storage.h.
5194         * gui/component/addressbook.c (control_activate_cb): uri -> source
5195         (addressbook_view_clear): Unref source list.
5196         (book_open_cb): Use ESource.
5197         (load_uri_auth_cb): Renamed to load_source_auth_cb (), manipulate
5198         ESource instead of URI.
5199         (get_remember_password): Implement.
5200         (set_remember_password): Implement.
5201         (addressbook_authenticate): Use ESource properties.
5202         (load_uri_cb): Renamed to load_source_cb (), ESource adaptation.
5203         (addressbook_load_uri): Renamed to addressbook_load_source (), takes
5204         ESource.
5205         (addressbook_load_default_book): ESource adaptation.
5206         (get_prop): folder_uri property -> source_uid property.
5207         (set_prop): folder_uri property -> source_uid property. Find ESource
5208         by UID.
5209         (addressbook_new_control): Set up source_uid property and ESourceList.
5211         * gui/component/component-factory.c (factory): Disable config control.
5213         * gui/component/ldap-config.glade: Druid and notebook dialogs
5214         generalized to deal with local sources as well as LDAP. This file
5215         should probably be renamed...
5217         * gui/component/select-names/e-select-names-manager.c
5218         (load_completion_books): Use addressbook_load_source (). However, this
5219         needs a bit more work to get source UIDs instead of URIs.
5221         * gui/component/select-names/e-select-names.c
5222         (addressbook_model_set_uri): Use addressbook_load_source (). However,
5223         this needs a bit more work to get source UIDs instead of URIs.
5225 2003-11-26  JP Rosevear  <jpr@ximian.com>
5227         * gui/widgets/Makefile.am: turn on deprecated gtk and libgnomeui
5228         stuff
5230         * gui/component/select-names/Makefile.am: turn on deprecated gtk
5231         stuff
5233         * gui/contact-editor/Makefile.am: ditto
5234         
5235 2003-11-17  Hans Petter Jansson  <hpj@ximian.com>
5237         * gui/component/addressbook-component.c (impl_createControls): Store
5238         a ref to the source selector.
5239         (impl_requestCreateItem): Implement.
5240         (impl_dispose): Unref the source selector.
5241         (addressbook_component_init): Set up default sources.
5243         * gui/widgets/e-addressbook-model.c (eab_model_set_property): If
5244         the 'book' property is set, and editability changes, emit a signal
5245         to that effect.
5247 2003-11-14  JP Rosevear <jpr@ximian.com>
5249         * gui/component/new-addressbook.c: include e-source from e-d-s
5251 2003-11-13  Hans Petter Jansson  <hpj@ximian.com>
5253         * gui/contact-list-editor/e-contact-list-model.c
5254         (contact_list_is_cell_editable): Return TRUE for all cells, for now.
5256         * gui/widgets/e-addressbook-table-adapter.c (card_modified_cb):
5257         Renamed to contact_modified_cb ().
5258         (addressbook_set_value_at): Port to use EContact instead of ECard.
5259         (addressbook_is_cell_editable): Ditto.
5260         (addressbook_append_row): Ditto.
5262         * gui/widgets/e-minicard-label.c (e_minicard_label_set_property):
5263         Make not editable, ever, and add a comment to this effect.
5264         (e_minicard_label_realize): Ditto.
5266         * gui/widgets/e-minicard.c (e_minicard_set_property): Ditto.
5267         (add_field): Ditto.
5269 2003-11-13  Ettore Perazzoli  <ettore@ximian.com>
5271         * gui/component/addressbook-component.c
5272         (impl__get_userCreatableItems): New, implementation for the
5273         userCreatableItems property.
5274         (impl_requestCreateItem): New, implementation for the
5275         requestCreateItem method.
5276         (addressbook_component_class_init): Install.
5278 2003-11-12  Ettore Perazzoli  <ettore@ximian.com>
5280         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Add
5281         component_alias of "contacts".
5283 2003-11-08  Hans Petter Jansson  <hpj@ximian.com>
5285         * gui/component/Makefile.am (libevolution_addressbook_la_SOURCES):
5286         Add new-addressbook.[ch].
5287         (glade_DATA): Add new-addressbook.glade.
5289         * gui/component/addressbook-component.c (add_popup_menu_item):
5290         Implement.
5291         (new_addressbook_cb): Implement.
5292         (delete_addressbook_cb): Implement (skeletal).
5293         (fill_popup_menu_callback): Implement.
5294         (impl_createControls): Hook up fill_popup_menu_callback().
5296         * gui/component/new-addressbook.[ch]: New files.
5298         * gui/component/new-addressbook.glade: New file.
5300 2003-11-07  Dan Winship  <danw@ximian.com>
5302         * util/Makefile.am (INCLUDES): Remove some includes of directories
5303         that don't exist any more
5305 2003-11-07  JP Rosevear <jpr@ximian.com>
5307         * gui/contact-editor/Makefile.am: don't include the c marshaller
5308         file twice
5310         * gui/widgets/Makefile.am: ditto
5311         
5312 2003-11-07  JP Rosevear <jpr@ximian.com>
5314         * gui/widgets/Makefile.am: make sure the marshal header is in the
5315         source list
5317         * gui/component/select-names/Makefile.am: ditto
5319         * gui/contact-editor/Makefile.am: ditto
5321         * gui/contact-list-editor/Makefile.am: ditto
5322         
5323 2003-11-07  JP Rosevear <jpr@ximian.com>
5325         * util/Makefile.am: dist the marshal list
5327 2003-11-07  JP Rosevear <jpr@ximian.com>
5329         * gui/widgets/e-addressbook-view.c (change_view_type): don't
5330         destroy the widget here - its dead when removed from the paned
5331         container
5333 2003-11-07  JP Rosevear <jpr@ximian.com>
5335         * In the gui this is a search and replace commit for moving the
5336         addressbook to evolution-data-server; it also deletes the old
5337         backend files
5339 2003-11-05  Larry Ewing  <lewing@ximian.com>
5341         * gui/widgets/e-addressbook-view.c (create_minicard_view): fix cast.
5343 2003-11-03  Ettore Perazzoli  <ettore@ximian.com>
5345         * gui/component/select-names/e-select-names-factory.c: Update
5346         factory ID.
5348         * gui/component/select-names/GNOME_Evolution_Addressbook_SelectNames.server.in.in:
5349         Version the SelectNames server IDs by appending a "_2".
5351 2003-11-03  Ettore Perazzoli  <ettore@ximian.com>
5353         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Change
5354         "evolution:config_item" into "evolution2:config_item".
5356 2003-10-29  Chris Toshok  <toshok@ximian.com>
5358         * gui/component/GNOME_Evolution_Addressbook.server.in.in: add the
5359         S/MIME config control here.
5361 2003-10-29  Chris Toshok  <toshok@ximian.com>
5363         * backend/ebook/e-book-listener.c (e_book_listener_new): change
5364         the poa hint to PER_REQUEST.  fixes a couple of deadlocks.
5366 2003-10-29  Chris Toshok  <toshok@ximian.com>
5368         * gui/component/component-factory.c (factory): ifdef the smime
5369         code with HAVE_NSS.
5371         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
5372         conditionally include libevolution-smime.la.
5374 2003-10-24  Dan Winship  <danw@ximian.com>
5376         * backend/pas/Makefile.am (libpas_la_LIBADD): libpas should depend
5377         on libebook, but NOT on libpasfile, etc, since it needs to be
5378         linked into all backends, not just the wombat.
5379         (libpasfile_la_LIBADD): depend on libpas.la and libedb3util.la
5380         (libpasvcf_la_LIBADD): depend on libpas.la
5381         (libpasldap_la_LIBADD): depend on libpas.la and  $(LDAP_LIBS)
5383 2003-10-23  Dan Winship  <danw@ximian.com>
5385         * backend/ebook/e-contact.c (e_contact_date_equal): new util func
5387         * backend/pas/pas-backend-ldap.c (anniversary_compare,
5388         birthday_compare): Use it
5390         * backend/pas/pas-backend-summary.c
5391         (pas_backend_summary_check_contact): Check if an ID exists in the
5392         summary.
5394 2003-10-23  Chris Toshok  <toshok@ximian.com>
5396         * tools/Makefile.am: convert 8 spaces to a tab.
5398         * tools/.cvsignore: ignore evolution-addressbook-abuse and
5399         evolution-addressbook-clean.
5401         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
5402         add libevolution-smime.la.
5404         * gui/component/component-factory.c (factory): add the certificate
5405         manager config control stuff here, at least for now.
5407         * gui/component/GNOME_Evolution_Addressbook.server.in.in: same.
5409 2003-10-23  Rodrigo Moya <rodrigo@ximian.com>
5411         * gui/component/addressbook-config.c
5412         (addressbook_dialog_create_source_table): fixed typo in variable name.
5414 2003-10-22  Ettore Perazzoli  <ettore@ximian.com>
5416         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Add an
5417         "evolution:button_icon" attribute.
5419 2003-10-22  Ettore Perazzoli  <ettore@ximian.com>
5421         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Add an
5422         "evolution:button_sort_order" property.
5424 2003-10-22  Ettore Perazzoli  <ettore@ximian.com>
5426         * gui/component/addressbook-component.c (impl_createControls):
5427         Make the the scrolled window have an "in" shadow.
5428         * gui/component/addressbook-config.c
5429         (addressbook_dialog_create_sources_table): Likewise.
5430         * gui/widgets/e-addressbook-view.c (create_minicard_view): Likewise.
5431         (create_treeview_view): Likewise.
5433 2003-10-22  Ettore Perazzoli  <ettore@ximian.com>
5435         * gui/component/addressbook-component.c (impl_createControls): Set
5436         the GtkScrolledWindow scrollbar policy to "automatic" for both the
5437         horizontal and the vertical scrollbar.
5439 2003-10-22  Ettore Perazzoli  <ettore@ximian.com>
5441         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Add an
5442         "evolution:button_label" property on the component for use in the
5443         shell.
5445 2003-10-21  JP Rosevear <jpr@ximian.com>
5447         * conduit/address-conduit.c: make it work with the new ebook api
5449         * backend/pas/pas-book.c (pas_book_respond_get_changes): put the
5450         vcard in for every change
5452         * backend/pas/pas-backend.c (pas_backend_change_add_new): just use
5453         the vcard field
5454         (pas_backend_change_modify_new): ditto
5455         (pas_backend_change_delete_new): ditto
5457         * backend/pas/pas-backend-file.c
5458         (pas_backend_file_changes_foreach_key): create a fake contact with
5459         the uid
5460         (pas_backend_file_get_changes): add the card to the changes
5462         * backend/ebook/tests/ebook/test-changes.c (main): just print the
5463         uid
5465         * backend/ebook/e-book.c (e_book_free_change_list): unref the
5466         contact
5468         * backend/ebook/e-book-types.h: the change struct contains an
5469         EContact now
5471         * backend/ebook/e-book-listener.c
5472         (impl_BookListener_respond_get_changes): create the contact from
5473         the vcard string
5475         * backend/idl/addressbook.idl: Book change item is no longer a
5476         union, it always gives back a card
5477         
5478 2003-10-21  Chris Toshok  <toshok@ximian.com>
5480         * tools/evolution-addressbook-abuse.c: use the synchronous api for
5481         this.  simplifies it a bunch.
5483 2003-10-21  Chris Toshok  <toshok@ximian.com>
5485         * backend/pas/pas-book.c
5486         (impl_GNOME_Evolution_Addressbook_Book_remove): we can ill afford
5487         bad debug spew.
5488         (view_listener_died_cb): implement.
5489         (impl_GNOME_Evolution_Addressbook_Book_getBookView): hook up an
5490         ORBit_small connection listener on the view's listener.
5491         (pas_book_respond_create): use e_contact_get_const instead of
5492         e_contact_get here.  fixes a leak.
5494         * backend/pas/pas-book-view.c
5495         (impl_GNOME_Evolution_Addressbook_BookView_stop): implement, call
5496         pas_backend_stop_book_view.
5497         (pas_book_view_get_listener): return the book view's listener.
5498         (pas_book_view_class_init): fill in epv->stop.
5499         (pas_book_view_init): use a #define for THRESHOLD_MAX instead of
5500         the constant.
5502         * backend/pas/pas-book-view.h: add prototype for
5503         pas_book_view_get_listener.
5505         * backend/pas/pas-backend.c (pas_backend_stop_book_view):
5506         implement.
5507         (pas_backend_remove_book_view): implement.
5509         * backend/pas/pas-backend.h: add prototype for stop_book_view and
5510         remove_book_view.
5512         * backend/pas/pas-backend-vcf.c (load_file): pass in the fd and
5513         use fdopen here.
5514         (foreach_build_list): don't creat EContacts here, because we'll
5515         just be converting them back to vcards anyway.
5516         (save_file): use char*'s instead of EContacts, and split entries
5517         with 2 blank lines.  Also, hold the lock over the entire function.
5518         (do_create): hold the lock around uid generation and touching the
5519         hash table.
5520         (pas_backend_vcf_process_remove_contacts): same.
5521         (pas_backend_vcf_process_modify_contact): same.
5522         (pas_backend_vcf_stop_book_view): new function, but leave
5523         unimplemented for now.
5524         (pas_backend_vcf_load_uri): the uri contains the directory name,
5525         not the filename.
5526         (pas_backend_vcf_dispose): grab the lock here just for sanity's
5527         sake.  Also reorder things a bit, and free the hashtable and
5528         mutex.
5529         (pas_backend_vcf_init): init the mutex.
5531         * backend/pas/pas-backend-summary.c
5532         (pas_backend_summary_add_contact): don't unref the contact here.
5534         * backend/pas/pas-backend-ldap.c
5535         (pas_backend_ldap_process_stop_book_view): new function, but leave
5536         unimplemented for now.
5538         * backend/pas/pas-backend-file.c (build_summary): use an EContact
5539         for this call.
5540         (do_summary_query): nuke, the contents of this has been moved to
5541         start_book_view.
5542         (pas_backend_file_search_timeout): same.
5543         (pas_backend_file_search): same.
5544         (pas_backend_file_start_book_view): glom everything into here
5545         involving searching.  This function could (and should) be renamed
5546         and reused from both this function and _get_contact_list.
5547         (pas_backend_file_stop_book_view): new function.
5548         (pas_backend_file_class_init): fill in backend->stop_book_view.
5550         * backend/pas/Makefile.am (LDAP_BACKEND): libpasldap.a ->
5551         libpasldap.la
5552         (noinst_LTLIBRARIES): *.a -> *.la.
5553         (libpas_la_SOURCES): same.
5554         (libpasfile_la_SOURCES): same.
5555         (libpasvcf_la_SOURCES): same.
5556         (libpasldap_la_SOURCES): same.
5558         * backend/idl/addressbook.idl: add BookView::stop.
5560         * backend/ebook/e-vcard.c (read_attribute_value): fix GString
5561         related leaks.
5562         (read_attribute_params): same.
5563         (parse): don't leak the EVCardAttributes corresponding to
5564         BEGIN/END:vCard.
5565         (free_gstring): new function
5566         (e_vcard_attribute_remove_values): free the decoded_values list,
5567         using free_gstring.
5569         * backend/ebook/e-book.c (e_book_response_get_book_view): ref the
5570         listener here.
5572         * backend/ebook/e-book-view.h: add prototype for e_book_view_stop.
5574         * backend/ebook/e-book-view.c (e_book_view_stop): new function.
5576         * backend/ebook/e-book-async.c (_get_book_view_response_dtor):
5577         unref the book view.
5579 2003-10-20  Dan Winship  <danw@ximian.com>
5581         * backend/pas/pas-book-view.c: Queue up removes and modifies as
5582         well as adds, and remove the calls that took a list of changes
5583         rather than a single change, since no one was really using the
5584         list versions. Keep a list of IDs currently in the view so we can
5585         more easily figure out what changes count as adds, modifies, and
5586         removes.
5587         (send_pending_adds): Don't reset next_threshold if it's being
5588         called from notify_add.
5589         (send_pending_changes, send_pending_removes): New
5590         (pas_book_view_notify_update): Simplified add/change interface.
5591         Takes an EContact and figures out if it's new, modified, or
5592         removed relative to this view.
5593         (pas_book_view_notify_change, pas_book_view_notify_change_1,
5594         pas_book_view_notify_add, pas_book_view_notify_add_1): Gone.
5595         (pas_book_view_notify_remove): Now does what remove_1 used to do.
5596         (pas_book_view_vcard_matches): Remove this; no longer used.
5598         * backend/pas/pas-backend.c (pas_backend_notify_update): New.
5599         Calls pas_book_view_notify_update() on each of the backend's views.
5600         (pas_backend_notify_remove): Likewise for notify_remove().
5601         (pas_backend_notify_complete): And notify_complete().
5603         * backend/pas/pas-book.c (pas_book_respond_create): Take an
5604         EContact instead of an id and a vcard. Use
5605         pas_backend_notify_update.
5606         (pas_book_respond_remove_contacts): Use pas_backend_notify_remove.
5607         (pas_book_respond_modify): Take a single EContact instead of two
5608         vcards. Use pas_backend_notify_update.
5610         * backend/pas/pas-backend-sync.c
5611         (pas_backend_sync_create_contact): Return an EContact rather than
5612         an id.
5613         (pas_backend_sync_modify_contact): Return an EContact rather than
5614         the old_vcard.
5615         (_pas_backend_create_contact, _pas_backend_modify_contact): Update
5617         * backend/pas/pas-backend-file.c (do_summary_query): Use
5618         pas_book_view_notify_update.
5619         (pas_backend_file_search_timeout): Likewise
5620         (pas_backend_file_create_contact): Update for API changes
5621         (pas_backend_file_modify_contact): Likewise.
5623         * backend/pas/pas-backend-ldap.c (create_contact_handler,
5624         pas_backend_ldap_process_create_contact): Update for API changes
5625         (modify_contact_modify_handler, modify_contact_search_handler,
5626         pas_backend_ldap_process_modify_contact): Likewise
5627         (ldap_search_handler): Use pas_book_view_notify_update
5629         * backend/pas/pas-backend-vcf.c (foreach_search_compare): Use
5630         pas_book_view_notify_update.
5631         (pas_backend_vcf_process_create_contact): Update for API changes
5632         (pas_backend_vcf_process_modify_contact): Likewise
5634         * backend/pas/pas-backend-summary.c
5635         (pas_backend_summary_add_contact): Take an EContact instead of a
5636         const char *vcard.
5638         * backend/ebook/e-contact.c (photo_getter): s/malloc/g_malloc/
5640 2003-10-20  JP Rosevear <jpr@ximian.com>
5642         * backend/pas/pas-backend-vcf.c (pas_backend_vcf_search): compiler
5643         with non-c99 compilers
5645 2003-10-17  Chris Toshok  <toshok@ximian.com>
5647         * backend/ebook/e-contact.c (fn_getter): new function, just return
5648         the full name value.
5649         (fn_setter): rather distasteful hack.  set the N attribute if it's
5650         not already present.
5651         (n_setter): set the X-EVOLUTION-FILE-AS attribute if it's not
5652         already set.
5654         * backend/pas/pas-backend-ldap.c (prop_info): add PROP_WRITE_ONLY
5655         flag for properties (right now just 'sn') that we don't want to
5656         use when building the EContact - we only use it when storing the
5657         contact out to the ldap server.
5658         (build_contact_from_entry): skip WRITE_ONLY properties.
5660 2003-10-17  Chris Toshok  <toshok@ximian.com>
5662         * gui/widgets/e-addressbook-view.c (init_collection): add the
5663         minicard factory back in.
5664         (display_view): add the minicard case back in.
5665         (get_selection_model): same.
5666         (minicard_right_click): resurrect.
5667         (create_minicard_view): same.
5668         (change_view_type): add the minicard case back in.
5669         (eab_view_print): same.
5670         (eab_view_print_preview): same.
5672         * gui/widgets/e-addressbook-view.h (EABViewType): add MINICARD
5673         back in.
5675         * gui/widgets/e-addressbook-model.c (eab_model_new):
5676         E_TYPE_AB_MODEL -> EAB_TYPE_MODEL.
5678         * gui/widgets/e-addressbook-model.h: rename E_TYPE_AB_MODEL to
5679         EAB_TYPE_MODEL.
5681         * gui/widgets/Makefile.am (libeabwidgets_la_SOURCES): add the
5682         minicard stuff back into the build.
5684         * gui/widgets/e-addressbook-reflow-adapter.[ch],
5685         gui/widgets/e-minicard-label.[ch],
5686         gui/widgets/e-minicard-view-widget.[ch],
5687         gui/widgets/e-minicard-view.[ch], gui/widgets/e-minicard.[ch],
5688         gui/widgets/gal-view-factory-minicard.[ch], gal-view-minicard.h:
5689         resurrect the minicard stuff, in a new uneditable,
5690         EContact-friendly state.  no in-place editing anymore.
5692         
5693 2003-10-10  Chris Toshok  <toshok@ximian.com>
5695         * gui/contact-editor/e-contact-editor.c (fill_in_info): un-ifdef
5696         the date handling code.
5697         (extract_info): same.
5699         * backend/pas/pas-backend-ldap.c (prop_info): add the address
5700         labels and dates to the build.
5701         (anniversary_populate): un-ifdef and get this working.
5702         (anniversary_ber): same.
5703         (anniversary_compare): same.
5704         (birthday_populate): same.
5705         (birthday_ber): same.
5706         (birthday_compare): same.
5708         * backend/ebook/tests/ebook/.cvsignore,
5709         backend/ebook/tests/ebook/Makefile.am
5710         backend/ebook/tests/ebook/test-date.c: add a test for EContactDate
5711         getting/setting.
5712         
5713         * backend/ebook/e-vcard.h: add EVC_BDAY.
5715         * backend/ebook/e-contact.h: add prototypes for the
5716         e_contact_date_* functions.
5718         * backend/ebook/e-contact.c (field_info): add
5719         BIRTH_DATE/ANNIVERSARY fields.
5720         (date_getter): new
5721         (date_setter): new
5722         (e_contact_date_new): new
5723         (e_contact_date_from_string): new
5724         (e_contact_date_to_string): new
5725         (e_contact_date_free): new
5727 2003-10-10  Not Zed  <NotZed@Ximian.com>
5729         *
5730         gui/component/select-names/GNOME_Evolution_Addressbook_SelectNames.server.in.in:
5731         Use the main factory on the .so file, so it can be found.
5733 2003-10-08  Chris Toshok  <toshok@ximian.com>
5735         * gui/component/select-names/e-select-names.c (contact_key): add a
5736         descriptive comment about this "#if notyet".
5738         * gui/component/select-names/e-select-names-model.h
5739         (e_select_names_model_thaw): add prorotype for
5740         e_select_names_model_cancel_all_contact_load.
5742         * gui/component/select-names/e-select-names-bonobo.c
5743         (_EntryPropertyID): remove the SIMPLE_CARD_LIST property.
5744         (entry_get_property_fn): same.
5745         (impl_SelectNames_get_entry_for_section): same.
5747         * backend/ebook/e-contact.h: add prototype for
5748         e_contact_name_to_string.
5750 2003-10-07  Chris Toshok  <toshok@ximian.com>
5752         * util/eab-book-util.c: remove a bunch of ifdef'ed code (that's
5753         going to be living in e-book.c)
5755         * backend/pas/pas-backend-summary.c
5756         (pas_backend_summary_add_contact): un-ifdef some code.
5757         (pas_backend_summary_get_summary_vcard): same.
5759         * backend/pas/pas-backend-ldap.c (prop_info): remove the
5760         query_prop field since we can get it from e_contact_field_name.
5761         also remove it from all the macros and their uses.
5762         (homephone_populate): un-ifdef.
5763         (homephone_ber): same.
5764         (homephone_compare): same.
5765         (business_populate): same.
5766         (business_ber): same.
5767         (business_compare): same.
5768         (query_prop_to_ldap): use e_contact_field_name to get the query
5769         prop for a given attribute.
5770         (add_oc_attributes_to_supported_fields): same.
5772         * backend/pas/pas-backend-card-sexp.c (compare_phone): use the new
5773         EContactField constants to iterate over the phone list.
5775         * backend/ebook/e-contact.h (EContactField): add some useful
5776         constants for those pieces of code that iterate over
5777         email/phones/addresses.
5779 2003-10-07  Chris Toshok  <toshok@ximian.com>
5781         * gui/widgets/eab-vcard-control.c (book_open_cb): un-ifdef this.
5782         (eab_vcard_control_new): put the buttons above the vcard so they
5783         don't move when it's expanded.
5785         * gui/widgets/eab-popup-control.h: remove prototypes for
5786         eab_popup_control_set_name and eab_popup_control_set_email.
5788         * gui/widgets/eab-popup-control.c (email_table_ok_cb): remove the
5789         stupid idle function and do the work here.
5790         (eab_popup_control_set_name): make this static - noone uses it.
5791         (eab_popup_control_set_email): same.
5793         * gui/widgets/eab-gui-util.c (eab_show_contact_editor):
5794         e_contact_editor_new is what we use for the time being.
5796         * gui/widgets/eab-contact-display.c (render_string): abstract this
5797         code out.
5798         (render_url): same.
5799         (eab_contact_display_render_normal): make use of render_string and
5800         render_url.
5802         * gui/widgets/e-addressbook-view.c (delete): un-ifdef this and get
5803         it working.
5804         (selection_received): same.
5806         * gui/widgets/e-addressbook-model.c (get_view): nuke some code
5807         that was moved to another function.
5808         (eab_model_set_property): get the writable state when we set the
5809         book - don't rely on the timing of signals.
5811         * gui/contact/editor/contact-editor.glade: add the blog field
5812         below the homepage url field.
5813         
5814         * gui/contact/editor/e-contact-editor-address.[ch]: get this
5815         building with the new stuff.
5816         
5817         * gui/contact/editor/e-contact-editor-fullname.[ch]: get this
5818         building with the new stuff.
5819         
5820         * gui/contact-editor/e-contact-editor.[ch]: get this most of the
5821         way there.
5822         
5823         * gui/contact-editor/e-contact-quick-add.[ch]: get this building
5824         with the new stuff.
5826         * gui/contact-editor/Makefile.am (libecontacteditor_la_SOURCES):
5827         remove e-contact-save-as.[ch].  They're in
5828         addressbook/widgets/eab-gui-util.[ch] now.
5830         * gui/merging/Makefile.am: track all the naming changes.
5831         
5832         * gui/merging/*.glade: gratuitous renaming.
5833         
5834         * gui/merging/eab-contact-compare.[ch]: gratuitous renaming, and
5835         move this from the old ebook/
5837         * gui/merging/eab-contact-merging.[ch]: gratuitous renaming.
5839         * backend/ebook/e-contact.[ch]: lots of overly complicated changes
5840         for an overly complicated piece of code.
5842         * backend/ebook/e-book-view.c (e_book_view_do_added_event): remove
5843         some ifdef'ed code.
5844         (e_book_view_do_modified_event): same.
5846         * backend/ebook/e-vcard.c (parse): plug a memory leak.
5847         (escape_string): deal with @s being NULL.
5848         (e_vcard_remove_attribute): new function.
5849         (e_vcard_attribute_remove_params): same.
5850         (e_vcard_attribute_param_free): same.
5851         (e_vcard_attribute_param_remove_values): same.
5853         * backend/ebook/e-vcard.h: add prototypes for
5854         e_vcard_remove_attribute, e_vcard_attribute_remove_params, and
5855         e_vcard_attribute_param_remove_values.
5857         * backend/ebook/e-book.c (e_book_handle_response): cache the
5858         writable state of the ebook before generating the signal.
5859         (e_book_unload_uri): initialize cap to NULL and writable to FALSE.
5861         * backend/ebook/e-book.h: add prototype for e_book_is_writable.
5863         * backend/ebook/e-book-async.c (_get_fields_response_handler):
5864         don't call the callback if it's NULL.
5865         (_get_methods_response_handler): same.
5866         (_auth_user_response_handler): same.
5867         (_get_contact_response_handler): same.
5868         (_remove_contacts_response_handler): same.
5869         (_add_contact_response_handler): same.
5870         (_commit_contact_response_handler): same.
5871         (_get_book_view_response_handler): same.
5872         (_get_contacts_response_handler): same.
5873         (_remove_contacts_dtor): free the list.
5874         (e_book_async_remove_contacts): duplicate the list.
5876         * backend/pas/pas-backend.c (pas_backend_open): if we successfully
5877         load the uri, report the writable status back.
5879         * backend/pas/pas-backend-sync.c (_pas_backend_remove_contacts):
5880         free the list of ids.
5882         * backend/pas/pas-backend-file.c (do_create): return the contact
5883         we create here.
5884         (pas_backend_file_create_contact): format the newly created
5885         contact as a string to add to the summary.
5886         (pas_backend_file_remove_contacts): don't free the list of removed
5887         cards here - it happens in pas-backend-sync.
5888         (pas_backend_file_load_uri): pass NULL for @contact to do_create.
5890 2003-10-01  Chris Toshok  <toshok@ximian.com>
5892         * gui/widgets/eab-contact-display.c (render_address): move the :'s
5893         inside the <b>'s.  Thanks for pointing this out, guenther. :)
5894         (eab_contact_display_render_normal): same.
5895         (eab_contact_display_render_compact): same.
5897         * gui/widgets/eab-vcard-control.c (save_in_addressbook): track
5898         change to address_load_default_book.
5900 2003-10-01  Chris Toshok  <toshok@ximian.com>
5902         * gui/component/Makefile.am: remove some commented out crap about
5903         e-address-popup.[ch].
5905         * gui/component/component-factory.c (factory): use
5906         eab_popup_control_new for the AddressPopup iid.
5908         * gui/widgets/Makefile.am (libeabwidgets_la_SOURCES): add
5909         eab-popup-control.[ch].
5911         * backend/ebook/e-book.c (e_book_get_default_addressbook): hack
5912         this so it at least sorta works - hardcode the
5913         ~/evolution/local/Contacts uri for now.
5915         * gui/component/addressbook.[ch] (addressbook_load_default_book):
5916         remove the EBook argument, and call
5917         e_book_async_get_default_addressbook.
5919         * gui/component/e-address-popup.[ch]: nuke.
5920         
5921         * gui/widgets/eab-popup-control.c: rename
5922         gui/component/e-address-popup.c to this.
5924         * gui/widgets/eab-popup-control.h: rename
5925         gui/component/e-address-popup.h to this.
5927         * backend/ebook/e-book-async.h: add prototype for
5928         e_book_async_get_default_addressbook.
5929         
5930         * backend/ebook/e-book-async.c
5931         (e_book_async_get_default_addressbook): new function.
5933 2003-10-01  Chris Toshok  <toshok@ximian.com>
5935         * gui/widgets/e-addressbook-view.c (eab_view_new): create the
5936         scrolled window to embed the EABContactDisplay widget inside of.
5938         * gui/widgets/e-addressbook-view.h (struct _EABView): add scrolled;
5940         * gui/widgets/eab-contact-display.h: add
5941         EABContactDisplayRenderMode enum, and add @render_mode arg to
5942         eab_contact_display_render.
5944         * gui/widgets/eab-contact-display.c
5945         (eab_contact_display_render_compact): new function, render a
5946         compact format suitable for inclusion in the mail display.
5947         (eab_contact_display_render_normal): move the previouw contents of
5948         eab_contact_display_render here.
5949         (eab_contact_display_render): render in either compact or normal
5950         mode depending on @mode.
5951         (eab_contact_display_new): remove the scrolled window stuff from
5952         here, as in the compact mode we don't want it present.  push it up
5953         into the e-addressbook-view.c code.
5954         
5955         * gui/widgets/eab-vcard-control.[ch]: bonobo control that wraps up
5956         the EABContactDisplay stuff and lets us display vcards in a pretty
5957         format in mail messages.
5958         
5959         * gui/component/component-factory.c (factory): replace the #if
5960         notyet'ed minicard control code with the new vcard control.
5962         * gui/component/Makefile.am (INCLUDES): remove gui/minicard.
5964         * gui/component/GNOME_Evolution_Addressbook.server.in.in: remove
5965         the MiniCard_Control iid, and replace it with VCard_Control.
5967 2003-10-01  Chris Toshok  <toshok@ximian.com>
5969         * gui/component/addressbook-component.c
5970         (destination_folder_handle_drop): use
5971         eab_contact_list_from_string, and un-"#if notyet" this.
5973         * gui/component/addressbook.c: remove #include
5974         "e-contact-save-as.h"
5976         * gui/contact-list-editor/e-contact-list-editor.c
5977         (file_save_as_cb): use eab_contact_save.
5978         (file_send_as_cb): use eab_send_contact, un-"#if notyet" this.
5979         (file_send_to_cb): same.
5980         (table_drag_data_received_cb): use eab_contact_list_from_string.
5982         * gui/widgets/e-addressbook-reflow-adapter.[ch]: nuke.  last
5983         vestiges of the minicard view.
5984         
5985         * gui/widgets/e-addressbook-view.c (eab_view_init):
5986         s/clipboard_cards/cliboard_contacts.
5987         (eab_view_dispose): same.
5988         (get_contact_list_1): s/card/contact
5989         (get_contact_list): same.
5990         (save_as): same, and use eab_contact_list_save.
5991         (send_as): reenable this code, s/card/contact, and use
5992         eab_send_contact_list.
5993         (send_to): same.
5994         (print): s/card/contact.
5995         (delete): same.
5996         (new_card): same, and un-"#if notyet" some code.
5997         (selection_get): use eab_contact_list_to_string.
5998         (selection_clear_event): s/card/contact
5999         (selection_received): same.
6000         (get_selected_contacts): same.
6001         (eab_view_save_as): same, and use eab_contact_list_save.
6002         (eab_view_view): same, and use eab_show_multiple_contacts.
6003         (eab_view_send): reenable this code, s/card/contact, and use
6004         eab_send_contact_list.
6005         (eab_view_send_to): same.
6006         (eab_view_copy): s/card/contact.
6007         (view_transfer_contacts): same.
6008         (eab_view_copy_to_folder): same.
6009         (eab_view_move_to_folder): same.
6011         * gui/widgets/e-addressbook-view.h (struct _EABView): rename
6012         clipboard_cards to clipboard_contacts.
6014         * gui/widgets/eab-gui-util.c (view_contacts): un-"#if notyet"
6015         (file_exists): moved from e-contact-save-as.c
6016         (save_it): same.
6017         (close_it): same.
6018         (destroy_it): same.
6019         (make_safe_filename): same.
6020         (eab_contact_save): same, and renamed from e_contact_save_as.
6021         (eab_contact_list_save): same, and renamed from
6022         e_contact_list_save_as.
6023         (contact_deleted_cb): s/card/contact.
6024         (do_delete): same, and use e_book_async.
6025         (delete_contacts): s/card/contact.
6026         (process_unref): same.
6027         (contact_added_cb): same.
6028         (do_copy): same, and use e_book_async.
6029         (got_book_cb): same.
6030         (eab_transfer_contacts): same, and use e_book_async.
6031         (eab_send_contact_list): s/card/contact
6032         (eab_send_contact): same.
6034         * gui/widgets/eab-gui-util.h: some random s/card/contact work, and
6035         move the contents of e-contact-save-as.h here.
6037         * util/eab-book-util.c (eab_contact_list_from_string): rename
6038         eab_load_contacts_from_string to this.
6039         (eab_contact_list_to_string): new function.
6041         * util/eab-book-util.h: add prototype for
6042         eab_contact_list_to_string, and rename
6043         eab_load_contacts_from_string to eab_contact_list_from_string.
6045         * gui/contact-editor/e-contact-save-as.[ch]: nuke.  the contents
6046         of these files has been wrapped up in
6047         gui/widgets/eab-gui-util.[ch].
6048         
6049 2003-09-30  Chris Toshok  <toshok@ximian.com>
6051         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
6052         add libecontactlisteditor.la back into the build.
6054         * gui/component/addressbook-component.c (new_item_cb): enable the
6055         contact list editor portion.
6057         * util/eab-book-util.c (eab_load_contacts_from_string): new
6058         function, return a GList of EContact*'s parsed from the string.
6060         * util/eab-book-util.h: add prototype for
6061         eab_load_contacts_from_string.
6063         * gui/contact-list-editor/contact-list-editor.glade: set the id of
6064         the list-image widget.
6066         * gui/contact-list-editor/e-contact-list-editor.c
6067         (e_contact_list_editor_class_init): PROP_CARD -> PROP_CONTACT.
6068         (e_contact_list_editor_init): initialize image_buf to null and
6069         card -> contact.  also, hook up the dnd signals on the list_image
6070         widget so we can drop images.
6071         (e_contact_list_editor_dispose): free the image_buf.
6072         (list_added_cb): card -> contact.
6073         (list_modified_cb): same.
6074         (save_contact): same, and use the ebook-async api.
6075         (prompt_to_save_changes): card -> contact.
6076         (file_save_cb): same.
6077         (file_save_as_cb): same.
6078         (file_send_as_cb): #if notyet for now.
6079         (file_send_to_cb): same.
6080         (tb_save_and_close_cb): card -> contact.
6081         (list_deleted_cb): same.
6082         (delete_cb): same.
6083         (delete_cb): same, and use ebook-async.
6084         (e_contact_list_editor_new): card -> contact.
6085         (e_contact_list_editor_set_property): same.
6086         (table_drag_motion_cb): use GDK_POINTER_TO_ATOM instead of
6087         casting.
6088         (table_drag_data_received_cb): use eab_load_contacts_from_string,
6089         and card -> contact.
6090         (set_image_from_data): new function. create a pixbuf from the
6091         image data and composite it in an image that's the same size as
6092         the initial list_image widget.
6093         (image_drag_motion_cb): new function.
6094         (image_drag_drop_cb): new function.
6095         (image_drag_data_received_cb): new function.
6096         (extract_info): port to EContact, and add support for the image.
6097         (fill_in_info): same.
6099         * gui/contact-list-editor/e-contact-list-editor.h (struct
6100         _EContactListEditor): add image stuff, and ECard -> EContact.
6102         * gui/contact-list-editor/e-contact-list-model.c
6103         (contact_list_value_at): e_destination -> eab_destination.
6104         (e_contact_list_model_init): same.
6105         (e_contact_list_model_add_destination): same.
6106         (e_contact_list_model_add_email): same.
6107         (e_contact_list_model_add_contact): same, and card -> contact.
6108         (e_contact_list_model_remove_row): e_destination ->
6109         eab_destination.
6110         (e_contact_list_model_get_destination): same.
6112         * gui/contact-list-editor/e-contact-list-model.h: card -> contact,
6113         and e-destination -> eab-destination.
6115         * gui/widgets/e-addressbook-view.etspec: fix a couple of
6116         fields.. this needs a completely once-over at some point soon.
6118         * gui/widgets/e-addressbook-view.c (table_double_click): reenable
6119         all of this.
6121         * gui/widgets/eab-contact-display.c (render_address): use
6122         e_text_to_html to convert the \n's to <br>'s.
6123         (on_url_requested): get PHOTO if there is one, otherwise LOGO.
6124         (eab_contact_display_render): escape all the text we're sending to
6125         gtkhtml with e_text_to_html.  also, if it's a contact list, output
6126         _("List Members") with the contents of _EMAIL.
6128         * gui/widgets/eab-gui-util.h: rename eab_send_card{_list} to
6129         eab_send_contact{_list}.
6131 2003-09-30  Chris Toshok  <toshok@ximian.com>
6133         * backend/ebook/tests/ebook/Makefile.am (noinst_PROGRAMS): add
6134         test-string.
6136         * backend/ebook/tests/ebook/test-string.c: test setting/getting a
6137         string attribute.
6139         * backend/ebook/e-contact.c (photo_setter): do gnome-vfs mime type
6140         sniffing before we set the attribute value.
6141         (e_contact_set_property): implement setting of MULTI list
6142         attributes (like MAIL).
6143         (e_contact_get_property): rework the ATTR_TYPE attribute handling
6144         so we aren't calling g_value_set_pointer on a value that holds a
6145         string (and vice versa).
6147         * backend/ebook/e-vcard.c (e_vcard_remove_attributes): implement.
6148         (e_vcard_attribute_add_param): use g_ascii_strcasecmp.
6150         * backend/ebook/e-vcard.h: rename e_vcard_remove_attribute to
6151         e_vcard_remove_attributes, since it removes all matching
6152         attributes.
6154         * backend/ebook/e-book.c (e_book_response_add_contact): we need to
6155         strdup the id here since the listener frees it.
6156         (e_book_handle_response): implement the WritableStatusEvent part
6157         of the switch.
6159         * backend/ebook/e-book-listener.c
6160         (impl_BookListener_report_writable): un-"#if notyet" this.
6162         * backend/ebook/e-book-async.c (_add_contact_handler): fill in
6163         response->id.
6165 2003-09-29  Chris Toshok  <toshok@ximian.com>
6167         * printing/e-contact-print-envelope.c: card -> contact.
6169         * printing/e-contact-print-envelope.h: card -> contact.
6171         * printing/e-contact-print.c: card -> contact.
6173         * printing/e-contact-print.h: card -> contact.
6175         * printing/Makefile.am (contact_print_test_LDADD): add
6176         libeabutil.la and reorder things so it links.
6177         (contact_print_style_editor_test_LDADD): same.
6179 2003-09-29  Chris Toshok  <toshok@ximian.com>
6181         * gui/component/select-names/e-select-names-text-model.c:
6182         e-addressbook-util.h -> eab-gui-util.h.
6184         * gui/component/select-names/e-select-names-popup.c:
6185         e-addressbook-util.h -> eab-gui-util.h.
6187         * gui/component/e-address-popup.c: e-addressbook-util.h ->
6188         eab-gui-util.h.
6190         * gui/component/component-factory.c: #if notyet the minicard
6191         control stuff, since it's been completely nuked from the tree.
6193         * gui/component/addressbook.c: e-addressbook-util.h ->
6194         eab-gui-util.h.
6196         * gui/component/addressbook-component.c: e-addressbook-util.h ->
6197         eab-gui-util.h.
6199         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
6200         rename libeminicard to libeabwidgets.
6202         * Makefile.am (SUBDIRS): add util/ to the build.
6204 2003-09-29  Chris Toshok  <toshok@ximian.com>
6206         * gui/widgets/e-addressbook-treeview-adapter.c:
6207         e-addressbook-util.h -> eab-gui-util.h, and convert some
6208         EDestination code to EABDestination.
6210         * gui/widgets/e-addressbook-table-adapter.c: e-addressbook-util.h
6211         -> eab-gui-util.h, and include util/eab-destination.h.
6212         (addressbook_value_at): un-#if 0 some code.
6214         * gui/widgets/e-addressbook-model.c: e-addressbook-util.h ->
6215         eab-gui-util.h
6217         * gui/widgets/e-addressbook-view.c: e-addressbook-util.h ->
6218         eab-gui-util.h
6220         * gui/widgets/e-minicard-control.c,
6221         gui/widgets/e-minicard-control.h, gui/widgets/e-minicard-label.c,
6222         gui/widgets/e-minicard-label.h,
6223         gui/widgets/e-minicard-view-widget.c,
6224         gui/widgets/e-minicard-view-widget.h,
6225         gui/widgets/e-minicard-view.c, gui/widgets/e-minicard-view.h,
6226         gui/widgets/e-minicard-widget-test.c,
6227         gui/widgets/e-minicard-widget.c, gui/widgets/e-minicard-widget.h,
6228         gui/widgets/e-minicard.c, gui/widgets/e-minicard.h,
6229         test-minicard-label.c, test-minicard-view.c, test-minicard.c: nuke
6230         all of the old minicard stuff.
6231         
6232         * gui/widgets/eab-gui-util.[ch]: rename e-addressbook-util.[ch] to
6233         this and nuke e-addressbook-util.[ch].
6234         
6235         * gui/widgets/Makefile.am (INCLUDES): change G_LOG_DOMAIN to
6236         eab-widgets, and add -I$(top_srcdir)/addressbook.
6237         (noinst_LTLIBRARIES): rename to libeabwidgets.la
6238         (libeabwidgets_la_SOURCES): rename e-addressbook-util.[ch] to
6239         eab-gui-util.[ch].
6241 2003-09-29  Chris Toshok  <toshok@ximian.com>
6243         * gui/widgets/eab-contact-display.c (eab_contact_display_new):
6244         track change from E_TYPE_AB_CONTACT_DISPLAY to
6245         EAB_TYPE_CONTACT_DISPLAY.
6247         * gui/widgets/eab-contact-display.h: change from E_* type foo to
6248         EAB_* type foo.
6250 2003-09-29  Chris Toshok  <toshok@ximian.com>
6252         * gui/search/e-addressbook-search-dialog.[ch]: convert everything
6253         from e_addressbook_search_dialog to eab_search_dialog, and
6254         EAddressbookSearchDialog to EABSearchDialog.
6256         * gui/component/addressbook.c (search_cb):
6257         e_addressbook_search_dialog -> eab_search_dialog.
6258         (addressbook_search_activated): same.
6259         (addressbook_query_changed): same.
6261 2003-09-29  Chris Toshok  <toshok@ximian.com>
6263         * backend/pas/pas-book.c (pas_book_respond_get_supported_fields):
6264         don't free the fields here - the backends hold onto them.
6265         (pas_book_respond_get_supported_auth_methods): don't free the
6266         auth_methods here - the backends hold onto them.
6268         * backend/pas/pas-backend-file.c
6269         (pas_backend_file_get_supported_fields): fields go from 1 to
6270         E_CONTACT_FIELD_LAST, not 0.
6272 2003-09-29  Chris Toshok  <toshok@ximian.com>
6274         * gui/component/addressbook.c: e-book-util.h -> eab-book-util.h
6276         * gui/component/addressbook-component.c: e-book-util.h ->
6277         eab-book-util.h.
6278         (new_item_cb): enable the contact editor portion of this.
6279         (user_create_new_item_cb): convert to async_load_uri api, and
6280         ifdef the _use_default_book crap.
6281         (ensure_completion_uris_exist): e_book_get_config_database ->
6282         eab_get_config_database.
6284         * gui/component/e-address-widget.h: e-book-util.h ->
6285         eab-book-util.h.
6287         * gui/component/Makefile.am (libevolution_addressbook_la_LIBADD):
6288         add selectnames back in, and add util/libeabutil.la.
6290 2003-09-29  Chris Toshok  <toshok@ximian.com>
6292         * backend/ebook/e-contact.c: my head explodes from so many
6293         changes.
6295         * backend/ebook/e-contact.h: reorder fields such that all the
6296         string fields are first in the enum (and add a
6297         E_CONTACT_LAST_SIMPLE_STRING value, ala the old e-card-simple
6298         stuff.)  Also, add E_CONTACT_LOGO, WANTS_HTML, IS_LIST, and
6299         LIST_SHOW_ADDRESSES.  remove E_CONTACT_PHOTO_URI.
6301         * backend/ebook/e-vcard.c (e_vcard_remove_attribute): rename from
6302         e_card_remove_attribute, and add a g_assert_not_reached.
6303         (_evc_base64_encode_simple): make this not static (we need it for
6304         a test.)
6305         (_evc_base64_decode_simple): same.
6307         * backend/ebook/e-vcard.h: add LOGO, X-MOZILLA-HTML,
6308         X-EVOLUTION-LIST, and X-EVOLUTION-LIST-SHOW_ADDRESSES #defines.
6309                                                                                                                                 
6310         * backend/ebook/e-book.c (EBookLoadState): change from
6311         UriNotLoaded to E_BOOK_URI_NOT_LOADED, etc.
6312         (e_book_add_contact): track _URI_ change.
6313         (e_book_get_supported_fields): same.
6314         (e_book_get_supported_auth_methods): same.
6315         (e_book_authenticate_user): same.
6316         (e_book_get_contact): same.
6317         (e_book_response_get_contact): remove the ifdefed call to
6318         e_contact_set_book.
6319         (e_book_remove_contacts): track _URI_ change.
6320         (e_book_get_book_view): same.
6321         (e_book_get_contacts): same.
6322         (e_book_get_changes): same.
6323         (e_book_remove): same.
6324         (e_book_unload_uri): same.
6325         (e_book_load_uri): same.
6326         (e_book_load_uri): same.
6327         (e_book_get_self): start the implementation of this.
6328         (e_book_get_default_addressbook): ifdef out a possible
6329         implementation of this (it's broken.)
6330         (e_book_init): track _URI_ change.
6331         (e_book_dispose): same.
6332                                                                                                                                 
6333         * backend/ebook/e-book.h: move get_default_addressbook out of the
6334         ifdef, and change get_default_addressbook/get_addressbooks to be
6335         more like the rest of the api.
6336                                                                                                                                 
6337         * backend/ebook/e-book-util.[ch]: nuke.
6338                                                                                                                                 
6339         * backend/ebook/e-card-compare.[ch]: nuke.
6340                                                                                                                                 
6341         * backend/ebook/e-destination.[ch]: nuke.
6342                                                                                                                                 
6343         * backend/ebook/e-book-query.c (func_and): fix valgrind error.
6344         (func_or): same.
6345                                                                                                                                 
6346         * backend/ebook/e-book-listener.h: drop #include of e-list.h
6347                                                                                                                                 
6348         * backend/ebook/e-book-async.c (_get_contacts_response_handler)
6349         (_get_contacts_response_dtor, _get_contacts_handler)
6350         (_get_contacts_dtor, e_book_async_get_contacts): new functions,
6351         implementing e_book_async_get_contacts.
6352                                                                                                                                 
6353         * backend/ebook/e-book-async.h: add e_book_async_get_contacts.
6355 2003-09-29  Chris Toshok  <toshok@ximian.com>
6357         * util/eab-marshal.list: new file.
6359         * util/eab-destination.[ch]: rename
6360         backend/ebook/e-destination.[ch] to this, and change all the entry
6361         point names too.
6363         * util/eab-book-util.[ch]: rename backend/ebook/e-book-util.[ch]
6364         to this, and change all the entry point names too.
6366         * util/Makefile.am: new file, build libeabutil.la
6368 2003-09-29  Chris Toshok  <toshok@ximian.com>
6370         * gui/component/select-names/e-select-names.c
6371         (addressbook_model_set_uri): e_addressbook_model -> eab_model.
6372         (contact_key): e-contactify this, and remove the call to
6373         e_contact_get_book since we don't have it.
6374         (sync_one_model): card -> contact.
6375         (real_add_address_cb): track various name changes.
6376         (esn_get_key_fn): same.
6377         (e_addressbook_create_ebook_table): same.
6378         (folder_selected): same.
6379         (select_entry_changed): same.
6380         (e_select_names_new): same.
6382         * gui/component/select-names/e-select-names-text-model.c
6383         (dump_model): s/card/contact.
6384         (e_select_names_text_model_insert_length): e-destination ->
6385         eab-destination.
6386         (e_select_names_text_model_delete): same.
6387         (e_select_names_text_model_obj_count): same.
6388         (nth_obj_index): same.
6389         (e_select_names_text_model_activate_obj): ifdef this out since we
6390         don't have e_contact_get_book in the new api.
6392         * gui/component/select-names/e-select-names-table-model.c
6393         (fill_in_info): convert to e_contact/eab_destination.
6395         * gui/component/select-names/e-select-names-popup.c
6396         (change_email_num_cb): e_destination -> eab_destination.
6397         (populate_popup_contact): same, and ECard -> EContact.  Also, the
6398         email attribute is a GList, not an EList.  lastly, rename from
6399         populate_popup_card.
6400         (populate_popup_nocontact): same, and rename from
6401         populate_popup_nocard.
6402         (e_select_names_populate_popup): same.
6404         * gui/component/select-names/e-select-names-model.h: track changes
6405         to e_destination, and rename the cardify methods to something mode
6406         descriptive.
6408         * gui/component/select-names/e-select-names-model.c
6409         (e_select_names_model_duplicate): e_destination ->
6410         eab_destination.
6411         (e_select_names_model_get_textification): same.
6412         (e_select_names_model_get_address_text): same.
6413         (e_select_names_model_get_destination): same.
6414         (e_select_names_model_export_destinationv): same.
6415         (send_changed): same.
6416         (e_select_names_model_import_destinationv): same.
6417         (e_select_names_model_get_contact): same, and rename from
6418         _get_card
6419         (e_select_names_model_get_string): same.
6420         (connect_destination): same.
6421         (disconnect_destination): same.
6422         (e_select_names_model_contains): same.
6423         (e_select_names_model_insert): same.
6424         (e_select_names_model_append): same.
6425         (e_select_names_model_replace): same.
6426         (e_select_names_model_delete): same.
6427         (e_select_names_model_clean): same.
6428         (delete_all_iter): same.
6429         (e_select_names_model_overwrite_copy): same.
6430         (e_select_names_model_merge): same.
6431         (e_select_names_model_name_pos): same.
6432         (e_select_names_model_text_pos): same.
6433         (e_select_names_model_cardify): nuke.
6434         (e_select_names_model_uncardify): nuke.
6435         (e_select_names_model_cancel_cardify): nuke.
6436         (e_select_names_model_load_all_contacts): rename _cardify_all to
6437         this.
6438         (e_select_names_model_cancel_all_contact_load): rename
6439         _cancel_cardify to this.
6441         * gui/component/select-names/e-select-names-manager.c
6442         (focus_in_cb): cancel_cardify_all -> cancel_all_contact_load
6443         (focus_out_cb): cardify_all -> load_all_contacts.
6444         (completion_popup_cb): same.
6445         (load_completion_books): no e_book_expand_uri anymore.
6446         (e_select_names_manager_new): e_book_get_config_database ->
6447         eab_get_config_database.
6448         (e_select_names_manager_dispose): same.
6450         * gui/component/select-names/e-select-names-completion.h: e-book.h
6451         -> e-book-async.h
6453         * gui/component/select-names/e-select-names-completion.c:
6454         EContactify this.
6456         * gui/component/select-names/e-select-names-bonobo.c
6457         (entry_get_property_fn): ifdef out the SIMPLE_CARD_LIST getter,
6458         and cardify_all -> load_all_contacts.
6460         * gui/component/select-names/Evolution-Addressbook-SelectNames.idl:
6461         nuke all the SimpleCard stuff.  It's a horribly inefficient way to
6462         deal with vcards, and since ebook is platform level now, we can
6463         (and should) promote just linking to ebook to do this.
6465 2003-09-19  Gilbert Fang  <gilbert.fang@sun.com>
6467        * addressbook/gui/component/addressbook-component.c (xfer_folder):
6468          remove the "addressbook.db.summary" correctly. #48538
6470 2003-09-11  Dan Winship  <danw@ximian.com>
6472         * backend/ebook/Makefile.am (privlib_LTLIBRARIES): Remove
6473         libebook-static.la
6475         * conduit/Makefile.am (libeaddress_conduit_la_LIBADD): Use
6476         non-static versions of libraries: the static ones were only needed
6477         for libtool 1.3.
6479 2003-09-07  Chris Toshok  <toshok@ximian.com>
6481         * backend/ebook/e-contact.c (e_contact_get_property): implement
6482         getters for the address labels.  they aren't really synthetic, but
6483         we can't handle them as normal strings because they switch off the
6484         TYPE parameter, not the attribute name (go go vcard.)  Also add
6485         getters for the structured address fields (ADR).  Also fix a spot
6486         where we were using strcmp instead of strcasecmp.
6487         (e_contact_address_free): new function.
6489         * backend/ebook/e-contact.h: Add EContactAddress structure, which
6490         will probably go away once i merge in my cool spiffy address
6491         editor.  Add LABEL fields for the address labels, and add
6492         prototype for e_contact_address_free.
6494         * backend/ebook/e-vcard.h: add EVC_LABEL and EVC_X_BLOG_URL.
6496         * backend/ebook/e-vcard.c (read_attribute_value): step to the next
6497         character after unescaping \-escaped characters.  keeps commas
6498         from multiplying.
6500         * gui/widgets/eab-contact-display.c (render_address): new function
6501         (eab_contact_display_render): display email, delivery addresses,
6502         and the blog url.
6504 2003-09-06  Chris Toshok  <toshok@ximian.com>
6506         * backend/ebook/e-contact.c (e_contact_set_property): implement
6507         E_CONTACT_EMAIL_*.
6509         * backend/pas/pas-backend-ldap.c (email_ber): EContact-ify and
6510         re-enable this code.
6511         (email_compare): same.
6512         (email_populate): same.
6514         * backend/pas/pas-backend-vcf.c (pas_backend_vcf_load_uri): use
6515         XIMIAN_VCARD.
6517         * backend/pas/pas-backend-file.c (pas_backend_file_load_uri): use
6518         XIMIAN_VCARD, and don't fail if the directory already exists.
6519         just try to create the db anyway.
6521         * backend/pas/Makefile.am (libpas_a_SOURCES): add ximian-vcard.h
6523         * backend/pas/ximian-vcard.h (XIMIAN_VCARD): put the initial vcard
6524         here, so we can share 1 #define between file/vcf backends.  Also,
6525         add a jpeg photo.
6527 2003-09-06  Chris Toshok  <toshok@ximian.com>
6529         * gui/widgets/Makefile.am (libeminicard_la_SOURCES): add
6530         eab-contact-display.[ch]
6532         * gui/widgets/e-addressbook-view.c (eab_view_init): just init
6533         everything to NULL.
6534         (eab_view_new): move a bunch of stuff that was in eab_view_init
6535         here.  create a vpaned to hold the contact display, and create the
6536         contact display.
6537         (render_contact): render the selected contact to the
6538         contact_display.
6539         (selection_changed): add logic to display the currently selected
6540         contact in the preview pane.
6541         (create_table_view): add the table to the paned.
6542         (create_treeview_view): add the scrolled to the paned.
6543         (change_view_type): remove view->widget from the paned.
6545         * gui/widgets/e-addressbook-view.h: switch from using a GtkTable
6546         to a GtkEventBox - we don't need the table logic anymore.
6548         * gui/widgets/e-addressbook-model.c (create_contact): indent
6549         (eab_model_get_contact): same.
6551         * gui/widgets/eab-contact-display.[ch]: new files - this
6552         implements the preview pane.
6553         
6554 2003-09-06  Chris Toshok  <toshok@ximian.com>
6556         * backend/pas/pas-backend-ldap.c (BINARY_PROP): new type of
6557         property, for specifying data coming back from the ldap server
6558         with both data/length (like photos).
6559         (photo_populate): set the contact's photo.
6560         (build_contact_from_entry): add PROP_TYPE_BINARY handling.
6562         * backend/ebook/e-vcard.c (EVCardEncoding): new enum for use with
6563         the ENCODING attribute parameter.  Right now, just "raw",
6564         "base64", and "quoted-printable".
6565         (struct _EVCardAttribute): add a "decoded_values" list of
6566         GString*'s, as well as fields to hold encoding/encoding_set.
6567         (e_vcard_class_init): call _evc_base64_init.
6568         (e_vcard_attribute_add_value_decoded): based on what encoding the
6569         attribute uses, add the value properly.
6570         (e_vcard_attribute_add_param): if the parameter is ENCODING, work
6571         our magic.
6572         (e_vcard_attribute_get_values_decoded): spit out properly decoded
6573         values depending on the decoding type.
6574         (_evc_base64*): copy the camel base64 routines here.
6576         * backend/ebook/e-vcard.h: add prototypes for
6577         e_vcard_attribute_add_value_decoded and
6578         e_vcard_attribute_get_values_decoded.
6580         * backend/ebook/e-contact.c (e_contact_get_first_attr): move this
6581         to above _set_property so we can make use of it there.
6582         (e_contact_set_property): fix up the generic STRING field handler,
6583         and implement E_CONTACT_PHOTO setting.
6584         (e_contact_get_property): add handling for
6585         E_CONTACT_PHOTO/E_CONTACT_PHOTO_URI.
6586         (e_contact_photo_free): new function.
6588         * backend/ebook/e-contact.h: add EContactPhoto struct, a prototype
6589         for e_contact_photo_free, and two new EContactField elements (PHOTO and
6590         PHOTO_URI).
6592         * backend/ebook/tests/ebook/.cvsignore: ignore test-photo
6594         * backend/ebook/tests/ebook/Makefile.am (noinst_PROGRAMS): add test-photo
6596         * backend/ebook/tests/ebook/test-photo.c: test for the photo
6597         set/get routines (which do base64 encoding/decoding).
6599 2003-09-02  Chris Toshok  <toshok@ximian.com>
6601         * gui/component/Makefile.am: comment out a buncha stuff just to
6602         get this building.
6604         * gui/component/select-names/e-select-names.c: #include
6605         e-book-async.h
6606         (search_result): EAddressbookModel -> EABModel.
6607         (addressbook_model_set_uri): same, and don't use
6608         e_book_expand_uri, as it's dead.
6609         (esn_get_key_fn): EAddressbookModel -> EABModel.
6610         (e_addressbook_create_ebook_table): same.
6611         (status_message): same.
6613         * gui/component/select-names/e-select-names.h (struct
6614         _ESelectNames): EAddressbookModel -> EABModel.
6616         * gui/component/addressbook-component.c (new_item_cb): ifdef out
6617         for now.
6618         (dnd_drop_book_open_cb): s/card/contact.
6619         (destination_folder_handle_drop): ifdef out.
6620         (request_quit): same.
6622         * gui/component/addressbook.c: track api changes - e_addressbook_
6623         -> eab_, and e_book_* becomes e_book_async_*.
6625         * gui/component/addressbook.h: #include e-book-async.h
6627         * gui/component/e-address-widget.c (query_results_cb):
6628         e/EBookSimpleQueryStatus/EBookStatus
6630         * gui/component/e-address-widget.h: s/ECard/EContact.
6632         * gui/component/e-cardlist-model.[ch]: nuke.
6633         
6634         * gui/component/e-address-popup.c: s/e-book.h/e-book-async.h
6636         * gui/component/e-address-popup.h: s/ECard/EContact
6638 2003-09-02  Chris Toshok  <toshok@ximian.com>
6640         * backend/ebook/Makefile.am (libebook_la_SOURCES): remove
6641         e-card.c,e-card.simple.c
6643         * backend/ebook/tests/ebook/test-ebook.c: remove #include of
6644         e-card-simple.h
6646         * backend/ebook/tests/ebook/test-changes.c: remove #include of
6647         e-card-simple.h
6649         * backend/ebook/e-card.[ch], backend/ebook/e-card-simple.[ch]:
6650         nuke.
6652         * backend/ebook/e-book-util.h: s/card/contact.
6654         * backend/ebook/e-book-util.c: ifdef out an #include.
6656         * backend/ebook/e-book-async.[ch]: stop doing the stupid #define
6657         renaming trick, and just rename all the prototypes from e_book_*
6658         to e_book_async_*. Also, get rid of the *_vcard variants.
6660 2003-09-02  Chris Toshok  <toshok@ximian.com>
6662         * backend/pas/pas-backend-card-sexp.[ch]
6663         (pas_backend_card_sexp_match_contact): rename
6664         pas_backend_card_sexp_match_card, and it takes an EContact now.
6665         Also, port this file to use EContact instead of ECard, and ifdef
6666         out lots of stuff.
6668         * backend/pas/pas-backend-ldap.c: convert this to use EContact
6669         instead of ECard, and ifdef great swaths of code to make it
6670         compile.
6672         * backend/pas/pas-book.c (pas_book_respond_modify): convert this
6673         from ECard to EContact.
6675 2003-09-02  Chris Toshok  <toshok@ximian.com>
6677         * gui/widgets/Makefile.am (libeminicard_la_SOURCES): remove all
6678         the reflow/minicard stuff from the build.
6679         (e-addressbook-marshal.[ch]): change the prefix on the marshallers to
6680         eab_marshal.
6682         * gui/widgets/e-addressbook-view.etspec: bring this more in line
6683         with the field ids for EContact, and comment out a ton of them
6684         that aren't there yet.
6686         * gui/widgets/e-addressbook-view.[ch]: big renaming - rename
6687         e_addressbook_view to eab_view, and EAddressbookView to EABView.
6689         * gui/widgets/e-addressbook-util.c (eab_error_dialog): rename, and
6690         change a few of the error strings s/Card/Contact.
6691         (added_cb): E_BOOK_STATUS_SUCCESS => E_BOOK_ERROR_OK.
6692         (modified_cb): same.
6693         (e_addressbook_show_contact_editor): this takes an EContact now,
6694         and track the change to the contact editor signal names.
6695         (e_addressbook_show_contact_list_editor): this takes an EContact
6696         now.
6697         (view_contacts): rename view_cards to this, and ifdef the body.
6698         (e_addressbook_show_multiple_contacts): rename
6699         e_addressbook_show_multiple_cards to this, and s/card/contact.
6701         * gui/widgets/e-addressbook-util.h: ifdef some things out, and
6702         rename e_addressbook_error_dialog to eab_error_dialog.
6704         * gui/widgets/e-addressbook-table-adapter.[ch]: big renaming -
6705         rename e_addressbook_table_adapter to eab_table_adapter, and
6706         EAddressbookTableAdapter to EABTableAdapter.  Also, remove the
6707         simple mapping - we can do ECardSimple-like operations directly on
6708         the EContacts from the EABModel.
6710         * gui/widgets/e-addressbook-model.[ch]: big renaming - rename
6711         e_addressbook_model to eab_model, and EAddressbookModel to
6712         EABModel.  Also, convert everything from ECard to EContact.
6714 2003-09-01  Chris Toshok  <toshok@ximian.com>
6716         * backend/ebook/e-vcard.c (e_vcard_new_from_string): omg i'm dumb.
6717         don't call e_vcard_new here since it just turns around and calls
6718         e_vcard_new_from_string again.
6720 2003-09-01  Chris Toshok  <toshok@ximian.com>
6722         * backend/pas/pas-book-view.c (pas_book_view_notify_change): guard
6723         pending adds foo.
6724         (pas_book_view_notify_remove): same.
6725         (pas_book_view_notify_add): same.
6726         (pas_book_view_notify_complete): same.
6727         (pas_book_view_construct): init mutex
6728         (pas_book_view_dispose): free mutex
6730         * backend/pas/pas-backend-ldap.c (func_exists): new function.
6731         (send_pending_adds): remove
6732         (ldap_search_handler): let the BookView stuff handle the pending
6733         adds for us.
6734         (ldap_search_dtor): remove pending adds stuff.
6735         (pas_backend_ldap_search): same
6737         * backend/pas/pas-backend-card-sexp.c (func_exists): new function.
6738         
6739         * backend/ebook/tests/ebook/test-ebook.c (print_all_emails): use
6740         an exists query.
6742 2003-08-31  Chris Toshok  <toshok@ximian.com>
6744         * backend/ebook/e-book-query.c (func_and, func_or, func_not)
6745         (func_contains, func_is, func_beginswith, func_endswith)
6746         (e_book_query_from_string): adapt the pas ldap backend sexp
6747         parsing code to this, build up an EBookQuery that represents the
6748         sexp.
6750         * backend/ebook/e-contact.h (e_contact_field_id): add prototype.
6752         * backend/ebook/e-contact.c (e_contact_field_id): new function.
6754         * backend/ebook/Makefile.am (libebook_la_SOURCES): add
6755         e-book-util.c back into the build, if only for the config_database
6756         thingy.
6758 2003-08-31  Chris Toshok  <toshok@ximian.com>
6760         * backend/ebook/e-contact.c (e_contact_duplicate): new function.
6762         * backend/ebook/e-contact.h: add prototype for
6763         e_contact_duplicate.
6765         * backend/ebook/e-book-util.[ch]: massive ifdeffing.  most of this
6766         is either gone or will be unnecessary soon.
6768         * backend/ebook/e-book-query.c (e_book_query_from_string): hack
6769         this so it'll at least generate a query.
6771         * backend/ebook/e-book-listener.c
6772         (impl_BookListener_respond_get_view): add some debug spew and
6773         remove a c&p'ed comment.
6775         * backend/ebook/e-book-async.h: add prototype for
6776         e_book_async_unload_uri.
6778         * backend/ebook/e-book-async.c (e_book_async_unload_uri): new
6779         function.
6781         * backend/pas/pas-book-view.c (pas_book_view_construct): switch to
6782         CORBA_Object_duplicate, ala pas_book.
6784         * backend/pas/pas-backend-sync.c (pas_backend_sync_class_init):
6785         fix typo and the build.
6787 2003-08-29  Chris Toshok  <toshok@ximian.com>
6789         * backend/pas/pas-backend-ldap.c (ldap_error_to_response):
6790         s/card/contact.
6791         (pas_backend_ldap_process_create_contact): same.
6792         (remove_contact_handler): same.
6793         (remove_contact_dtor): same.
6794         (pas_backend_ldap_process_remove_contacts): same.
6795         (modify_contact_modify_handler): same.
6796         (modify_contact_dtor): same.
6797         (pas_backend_ldap_process_modify_contact): same.
6798         (get_contact_handler): same.
6799         (get_contact_dtor): same.
6800         (pas_backend_ldap_process_get_contact): same.
6801         (pas_backend_ldap_class_init): same.
6803         * backend/pas/pas-backend-summary.c
6804         (pas_backend_summary_add_contact): s/card/contact, and mostly
6805         switch from ECard{Simple} to EContact.
6806         (pas_backend_summary_get_summary_vcard): same.
6807         (pas_backend_summary_remove_contact): s/card/contact
6809         * backend/pas/pas-backend-summary.h: s/card/contact.
6811         * backend/pas/pas-backend-file.c (build_summary): fix g_warning,
6812         and return immediately if the db->cursor call fails.
6813         (pas_backend_file_create_contact): s/card/contact
6814         (pas_backend_file_remove_contacts): same.
6815         (pas_backend_file_modify_contact): same.
6816         (pas_backend_file_get_contact): same.
6817         (pas_backend_file_get_contact_list): same.
6818         (pas_backend_file_class_init): same.
6820         * backend/pas/pas-backend-vcf.c
6821         (pas_backend_vcf_process_create_contact): s/card/contact.
6822         (pas_backend_vcf_process_remove_contacts): same.
6823         (pas_backend_vcf_process_modify_contact): same.
6824         (pas_backend_vcf_process_get_contact): same.
6825         (pas_backend_vcf_process_get_contact_list): same.
6826         (pas_backend_vcf_class_init): same.
6828         * backend/pas/pas-backend-sync.c (pas_backend_sync_create_contact): s/card/contact.
6829         (pas_backend_sync_remove_contacts): same.
6830         (pas_backend_sync_modify_contact): same.
6831         (pas_backend_sync_get_contact): same.
6832         (pas_backend_sync_get_contact_list): same.
6833         (_pas_backend_create_contact): same.
6834         (_pas_backend_remove_contacts): same.
6835         (_pas_backend_modify_contact): same.
6836         (_pas_backend_get_contact): same.
6837         (_pas_backend_get_contact_list): same.
6838         (pas_backend_sync_class_init): same.
6840         * backend/pas/pas-backend-sync.h: s/card/contact.
6842         * backend/pas/pas-backend.c (pas_backend_create_contact): s/card/contact.
6843         (pas_backend_remove_contacts): same.
6844         (pas_backend_modify_contact): same.
6845         (pas_backend_get_contact): same.
6846         (pas_backend_get_contact_list): same.
6847         (pas_backend_change_add_new): same.
6848         (pas_backend_change_modify_new): same.
6849         (pas_backend_change_delete_new): same.
6851         * backend/pas/pas-backend.h: s/card/contact.
6853         * backend/pas/pas-book-view.c (send_pending_adds): s/card/contact
6854         (pas_book_view_notify_change): same.
6855         (pas_book_view_notify_remove): same.
6857         * backend/pas/pas-book.c
6858         (impl_GNOME_Evolution_Addressbook_Book_getContact): s/card/contact
6859         (impl_GNOME_Evolution_Addressbook_Book_getContactList): same.
6860         (impl_GNOME_Evolution_Addressbook_Book_addContact): same.
6861         (impl_GNOME_Evolution_Addressbook_Book_removeContacts): same.
6862         (impl_GNOME_Evolution_Addressbook_Book_modifyContact): same.
6863         (pas_book_respond_create): same.
6864         (pas_book_respond_remove_contacts): same.
6865         (pas_book_respond_modify): same.
6866         (pas_book_respond_get_contact): same.
6867         (pas_book_respond_get_contact_list): same.
6868         (pas_book_respond_get_changes): same.
6869         (pas_book_class_init): same.
6871         * backend/pas/pas-book.h: s/card/contact
6873         * backend/ebook/tests/vcard/dump-vcard.c: #include
6874         "ebook/e-vcard.h"
6876         * backend/ebook/tests/vcard/Makefile.am (TEST_LIBS): use
6877         top_builddir.
6878         (CFLAGS): same.
6880         * backend/ebook/tests/ebook/Makefile.am (TEST_LIBS): use
6881         top_builddir.
6882         (CFLAGS): use srcdir
6884         * backend/ebook/test-card.c, backend/ebook/test-client-list.c,
6885         backend/ebook/test-client.c, backend/ebook/test-ebook.c: remove.
6886         
6887         * backend/ebook/e-card-cursor.[ch]: remove.
6889         * backend/ebook/e-card-pairs.h: remove.
6890         
6891         * backend/ebook/e-book.c (e_book_add_contact): s/Card/Contact.
6892         (e_book_commit_contact): same
6893         (e_book_get_contact): same.
6894         (e_book_remove_contacts): same.
6895         (e_book_get_contacts): same.
6896         (e_book_handle_response): same.
6898         * backend/ebook/e-book-view.c (e_book_view_do_added_event):
6899         s/card/contact
6900         (e_book_view_do_modified_event): same.
6901         (e_book_view_do_removed_event): same.
6902         (e_book_view_handle_response): same.
6903         (e_book_view_class_init): same.
6905         * backend/ebook/e-book-view.h: s/card/contact and pad the class
6906         struct.
6908         * backend/ebook/e-book-view-listener.c
6909         (e_book_view_listener_queue_response): s/Card/Contact.
6910         (e_book_view_listener_queue_status_event): no need to assign
6911         things to NULL, we g_new0.
6912         (e_book_view_listener_queue_idlist_event): s/Card/Contact, and no
6913         need to assign things to NULL, we g_new0.
6914         (e_book_view_listener_queue_sequence_event): same.
6915         (e_book_view_listener_queue_message_event): same.
6916         (impl_BookViewListener_notify_contacts_added): s/Card/Contact.
6917         (impl_BookViewListener_notify_contacts_removed): same.
6918         (impl_BookViewListener_notify_contacts_changed): same.
6919         (e_book_view_listener_class_init): same.
6921         * backend/ebook/e-book-view-listener.h: s/Card/Contact
6923         * backend/ebook/e-book-types.h: s/CARD/CONTACT
6925         * backend/ebook/e-book-listener.c
6926         (e_book_listener_convert_status): s/Card/Contact
6927         (impl_BookListener_respond_create_contact): same.
6928         (impl_BookListener_respond_remove_contacts): same.
6929         (impl_BookListener_respond_modify_contact): same.
6930         (impl_BookListener_respond_get_contact): same.
6931         (impl_BookListener_respond_get_contact_list): same.
6932         (impl_BookListener_respond_get_changes): same.
6933         (e_book_listener_class_init): same.
6935         * backend/ebook/e-book-listener.h: pad the class struct, and
6936         s/Card/Contact.
6938         * backend/ebook/e-book-async.c (_load_uri_handler): GError
6939         changes.
6940         (_get_fields_handler): same.
6941         (_get_methods_handler): same.
6942         (_auth_user_handler): same.
6943         (_get_card_handler): same.
6944         (_remove_cards_handler): same.
6945         (_add_vcard_handler): same.
6946         (_commit_vcard_handler): same.
6947         (_get_book_view_handler): same.
6948         (e_book_async_get_book_view): use an EBookQuery instead of a char*.
6950         * backend/ebook/Makefile.am: remove the test handling.
6951         (SUBDIRS): set to ". tests"
6952         (libebook_la_SOURCES): add e-book-async.c
6954         * backend/idl/addressbook.idl: possibly gratuitous renaming, but i
6955         was sick of seeing "Card" being used everywhere.  "Contact" is the
6956         new "Card".
6958 2003-08-28  Chris Toshok  <toshok@ximian.com>
6960         * backend/ebook/e-book.c (e_book_op_free): rename from
6961         e_book_free_op.
6962         (e_book_op_remove): rename from e_book_remove_op.
6963         (e_book_clear_op): new function, remove the op, unlock its mutex,
6964         and free it.
6965         (e_book_add_contact): use e_book_clear_op.
6966         (e_book_commit_contact): same.
6967         (e_book_get_supported_fields): same.
6968         (e_book_get_supported_auth_methods): same.
6969         (e_book_authenticate_user): same.
6970         (e_book_get_contact): same.
6971         (e_book_remove_contacts): same.
6972         (e_book_get_book_view): same.
6973         (e_book_get_contacts): same.
6974         (e_book_get_changes): same.
6975         (e_book_load_uri): same.
6976         (e_book_remove): new function.
6977         (e_book_response_remove): new function.
6978         (e_book_handle_response): add handling for RemoveBookResponse.
6979         (e_book_load_local_addressbook): pass TRUE for e_book_load_uri
6980         @only_if_exists.
6982         * backend/ebook/e-book.h: add @only_if_exists arg to
6983         e_book_load_uri so we can support folder creation at load_uri
6984         time, and add prototype for e_book_remove.
6986         * backend/ebook/e-book-types.h: add an "id" slot in EBookChange.
6988         * backend/ebook/e-book-listener.c
6989         (impl_BookListener_respond_get_changes): handle union in idl.
6990         (impl_BookListener_respond_open_book): remove unnecessary
6991         exception check.
6992         (impl_BookListener_respond_remove_book): new function.
6993         (impl_BookListener_respond_get_supported_fields): rename this from
6994         _response_.
6995         (impl_BookListener_respond_get_supported_auth_methods): same.
6996         (e_book_listener_class_init): add _remove_book and track change to
6997         get_supported_fields/get_supported_auth_methods names.
6999         * backend/ebook/e-book-listener.h: add RemoveBookResponse to
7000         EBookListenerOperation enum.
7002         * backend/idl/addressbook.idl: make BookChangeItem a union that
7003         switches over BookChangeType.
7005         * backend/pas/pas-backend.c (pas_backend_change_add_new): new
7006         function, create a BookChangeItem representing the addition of a
7007         contact.
7008         (pas_backend_change_modify_new): same, but for modifications.
7009         (pas_backend_change_delete_new): same, but for deletions.
7011         * backend/pas/pas-backend.h: add prototypes for
7012         pas_backend_change_{add,modify,delete}_new
7014         * backend/pas/pas-backend-file.c (pas_backend_file_changes): nuke.
7015         (do_create): fix memory corruption.
7016         (pas_backend_file_get_changes): copy the body of
7017         pas_backend_file_changes here, and rework so that it's synchronous
7018         and return a list instead of the book view hack.
7019         (pas_backend_file_load_uri): mkdir the directory (we need a mkdir
7020         -p here).
7021         (select_changes): new function, scandir helper.
7022         (pas_backend_file_remove): NULL out bf->priv->summary to quiet
7023         valgrind, and call scandir to accumulate the .changes.db files
7024         then unlink them.
7026         * backend/pas/pas-book.c (pas_book_respond_remove): new function.
7027         (pas_book_respond_get_supported_fields): unifdef this, and make it
7028         use a glist.
7029         (pas_book_respond_get_supported_auth_methods): same.
7030         (pas_book_respond_get_changes): this code is kinda gross... lots
7031         of copying going on, there's got to be a better way.  but it
7032         works.
7034 2003-08-26  Chris Toshok  <toshok@ximian.com>
7036         * backend/idl/addressbook.idl: add oneway void Book::remove() and
7037         oneway void notifyBookRemoved()
7039 2003-08-26  Chris Toshok  <toshok@ximian.com>
7041         * backend/pas/pas-backend.c (pas_backend_remove): new function.
7042         (pas_backend_add_book_view): new function.
7043         (pas_backend_add_client): move the "real_add_client" code here.
7044         (pas_backend_remove_client): move the "real_remove_client" code
7045         here.
7046         (pas_backend_class_init): remove assignments of add_client and
7047         remove_client vtable entries.
7048         (pas_backend_is_removed): new function.
7049         (pas_backend_set_is_removed): new function.
7050         (pas_backend_init): init clients_mutex and views_mutex.
7052         * backend/pas/pas-backend.h: remove the vtable entries for
7053         add/remove_client, since these are fully handled in PASBackend.
7054         Add prototypes for
7055         pas_backend_is_removed/pas_backend_add_book_view/pas_backend_set_is_removed.
7057         * backend/pas/pas-book.c
7058         (impl_GNOME_Evolution_Addressbook_Book_remove): new function.
7059         (impl_GNOME_Evolution_Addressbook_Book_getBookView): clean things
7060         up a bit, and don't use pas_backend_get_book_views as it can't
7061         lock the list of views.
7062         (pas_book_respond_get_supported_auth_methods): remove the extra
7063         unnecessary arg from the corba call.
7064         (pas_book_respond_get_changes): same.
7065         (pas_book_class_init): fill in epv "remove" slot.
7067         * backend/pas/pas-book.h: rename pas_book_respond_remove to
7068         pas_book_respond_remove_cards, and add a new
7069         pas_book_respond_remove for use with removing books.
7071         * backend/pas/pas-backend-sync.c (pas_backend_sync_remove): new
7072         function.
7073         (_pas_backend_remove): new function.
7074         (pas_backend_sync_class_init): fill in the "remove" vtable entry.
7075         (_pas_backend_remove_cards): track change to
7076         pas_book_respond_remove_cards (pas_book_respond_remove is used for
7077         removing the book, not the cards.)
7079         * backend/pas/pas-backend-sync.h: add pas_backend_sync_remove
7080         prototype and add remove_sync virtual function.
7082 2003-08-26  Chris Toshok  <toshok@ximian.com>
7084         * backend/pas/pas-backend-file.c (pas_backend_file_create_card,
7085         pas_backend_file_remove_cards, pas_backend_file_modify_card,
7086         pas_backend_file_get_vcard, pas_backend_file_get_card_list,
7087         pas_backend_file_start_book_view, pas_backend_file_get_changes,
7088         pas_backend_file_authenticate_user,
7089         pas_backend_file_get_supported_fields): rename from
7090         pas_backend_file_process_*
7091         (pas_backend_file_load_uri): save off the dirname/summary
7092         filename.
7093         (pas_backend_file_remove): new function, unlink all the files we
7094         know about.
7095         (pas_backend_file_class_init): track changes to functions, and add
7096         pas_backend_file_remove.
7098 2003-08-26  JP Rosevear  <jpr@ximian.com>
7100         * conduit/address-conduit.c (ecard_from_remote_record): duplicate
7101         the extra address lines
7102         
7103 2003-08-22  Chris Toshok  <toshok@ximian.com>
7105         * backend/pas/pas-book.[ch]: switch from using the PASRequest
7106         union and a central PASBackend dispatch function.  just call the
7107         pas_backend methods directly and expand the args out.
7109         * backend/pas/pas-backend.[ch]: same.
7110         
7111         * backend/pas/pas-backend-sync.[ch]: same.
7113         * backend/pas/pas-backend-vcf.c, backend/pas/pas-backend-file.c,
7114         backend/pas/pas-backend-ldap.c: same, and get these all compiling
7115         against the rest of the current pas/ebook code. 
7117 2003-08-21  Chris Toshok  <toshok@ximian.com>
7119         * backend/ebook/test-ebook.c: track GError case.
7121         * backend/ebook/e-book.[ch]: GError-ify the api, and clean up some
7122         cases where we weren't removing the current op.
7124         * backend/ebook/e-book-view-listener.c
7125         (e_book_view_listener_convert_status): track change from
7126         E_BOOK_VIEW_STATUS_* to E_BOOK_VIEW_ERROR_*.
7128         * backend/ebook/e-book-types.h: track change from E_BOOK_STATUS_*
7129         to E_BOOK_ERROR_*, and some E_BOOK_VIEW_STATUS_* to
7130         E_BOOK_VIEW_ERROR_*.
7132         * backend/ebook/e-book-listener.c
7133         (e_book_listener_convert_status): track change from
7134         E_BOOK_STATUS_* to E_BOOK_ERROR_*.
7136         * backend/ebook/e-book-query.c (e_book_query_any_field_contains):
7137         new function.
7138         (e_book_query_unref): handle the any_field_contains case.
7139         (e_book_query_to_string): same.
7141         * backend/ebook/e-book-query.h: add prototype for
7142         e_book_query_any_field_contains.
7144         * backend/ebook/e-card.c (e_card_load_uri): ifdef this out for
7145         now.
7147         * backend/ebook/e-contact.[ch] (e_contact_get_const): new
7148         function/prototype.
7150 2003-08-20  Gilbert Fang  <gilbert.fang@sun.com>
7152         * gui/widgets/e-addressbook-util.c
7153         (e_addressbook_send_card_list): use memcpy to assign
7154         CORBA_char_sequence instead of strcpy. (#46706)
7156 2003-08-18  Ettore Perazzoli  <ettore@ximian.com>
7158         * gui/component/component-factory.c: Update OAFIIDs.
7160         * gui/widgets/e-addressbook-util.c (e_addressbook_transfer_cards):
7161         Removed extern declaration for global_shell_client [yuck].
7162         (e_addressbook_transfer_cards): #if 0 the invocation for
7163         evolution_shell_client_user_select_folder(), we need to
7164         reimplement this component-side now.
7166         * gui/component/component-factory.c (factory): Call
7167         addressbook_component_peek() here instead of
7168         addressbook_component_init() [since the latter is no more].
7170         * gui/component/addressbook.c (set_status_message): Don't create
7171         the activity client for now.
7173         * gui/component/addressbook-config.c: Removed member shell from
7174         struct AddressbookDialog.
7175         (ldap_dialog_new): Do not take a shell arg anymore.
7176         (ldap_config_control_new): Likewise.
7177         (addressbook_config_control_new): No need to get the global shell
7178         pointer here anymore.
7180         * gui/component/addressbook-component.c: Rewritten to support the
7181         new ::Component interface.
7182         * gui/component/addressbook-component.h: Likewise.
7184         * gui/component/GNOME_Evolution_Addressbook.server.in.in: Version
7185         factory's OAFIID.  Remove ShellComponent server, add Component
7186         server.
7188 2003-08-12  Rodrigo Moya <rodrigo@ximian.com>
7190         * backend/ebook/e-book.c (e_book_dispose): unref the
7191         EComponentListener before unloading the CORBA object.
7193 2003-08-12  Hans Petter Jansson  <hpj@ximian.com>
7195         * backend/ebook/e-destination.c (e_destination_dispose): Chain.
7197         * gui/component/e-address-widget.c (e_address_widget_destroy): Chain.
7198         Prevent double frees. Prevent double GSource removal.
7200         * gui/component/e-cardlist-model.c (e_cardlist_model_class_init):
7201         Store parent class.
7202         (e_cardlist_model_dispose): Chain. Prevent double frees and unrefs.
7204         * gui/contact-editor/e-contact-editor-address.c
7205         (e_contact_editor_address_dispose): Chain.
7207         * gui/contact-editor/e-contact-editor-fullname.c
7208         (e_contact_editor_fullname_dispose): Chain.
7210         * gui/contact-list-editor/e-contact-list-editor.c
7211         (e_contact_list_editor_dispose): Chain.
7213         * gui/contact-list-editor/e-contact-list-model.c
7214         (contact_list_model_destroy): Chain. Prevent double frees and unrefs.
7216         * gui/widgets/e-addressbook-reflow-adapter.c (addressbook_dispose):
7217         Chain.
7218         (addressbook_finalize): Chain.
7220         * gui/widgets/e-addressbook-table-adapter.c (addressbook_dispose):
7221         Chain.
7223         * gui/widgets/e-addressbook-treeview-adapter.c (addressbook_destroy):
7224         Chain. Prevent double free.
7226         * gui/widgets/gal-view-minicard.c (gal_view_minicard_dispose):
7227         Chain. Prevent double free and detach.
7229         * gui/widgts/gal-view-treeview.c (gal_view_treeview_dispose):
7230         Chain. Prevent double free and detach.
7232         * printins/e-contact-print-style-editor.c
7233         (e_contact_print_stule_editor_destroy): Chain. Prevent double unref.
7235 2003-08-07  Chris Toshok  <toshok@ximian.com>
7237         * backend/ebook/e-vcard.c (e_vcard_to_string_vcard_21): new,
7238         unimplemented, function.
7239         (e_vcard_to_string_vcard_30): move the 3.0 vcard export code here.
7240         (e_vcard_to_string): call e_vcard_to_string_vcard_21 or
7241         e_vcard_to_string_vcard_30 based on @format.
7242         (e_vcard_attribute_remove_values): new function.
7244         * backend/ebook/e-vcard.h: add @format to e_vcard_to_string, and
7245         add prototype for e_vcard_attribute_remove_values.  also, add
7246         prototype for e_vcard_decode_b_encoding.
7248 2003-08-07  Chris Toshok  <toshok@ximian.com>
7250         * backend/ebook/e-book-listener.c
7251         (impl_BookListener_respond_open_book): remove the book arg.
7253         * backend/ebook/e-book-listener.h (struct _EBookListenerResponse):
7254         remove the corba book.
7256         * backend/ebook/e-book-async.c (_get_book_view_dtor): free the
7257         query string.
7258         (e_book_async_get_book_view): dup the query string.
7260         * backend/ebook/e-book.h: change e_book_get_book_view and
7261         e_book_get_contacts to take a const char * query string instead of
7262         an EBookQuery.
7264         * backend/ebook/e-book.c (e_book_add_contact): pass
7265         EVC_FORMAT_VCARD_30 to e_vcard_to_string.
7266         (e_book_commit_contact): same.
7267         (e_book_get_book_view): take a const char* query string instead of
7268         an EBookQuery.
7269         (e_book_get_contacts): same.
7270         (e_book_response_open): track change - the Book is no longer
7271         communicated back here.
7272         (listener_cb): nuke.
7273         (e_book_handle_response): track change to e_book_response_open.
7274         (e_book_load_uri): rework this from using BookFactory::openBook to
7275         BookFactory::getBook + Book::open.
7276         (e_book_get_uri): new function, reimplement from old api.
7277         (e_book_get_static_capabilities): same.
7278         (e_book_check_static_capability): same.
7279         (startup_mainloop): new function, run bonobo_main.
7280         (e_book_activate): start up a thread with startup_mainloop as the
7281         start func.
7282         (e_book_new): call e_book_activate.
7284         * backend/idl/addressbook.idl: Add Book::open, remove the Book
7285         from notifyBookOpened's args, and change BookFactory::openBook to
7286         BookFactory::getBook.
7288         * backend/pas/pas-backend-file.c (pas_backend_file_load_uri): add
7289         only_if_exists - stop using the "create-initial" special file.
7291         * backend/pas/pas-backend-vcf.c (pas_backend_vcf_load_uri): add
7292         only_if_exists - stop using the "create-initial" special file.
7294         * backend/pas/pas-backend.c (pas_backend_load_uri): add
7295         @only_if_exists, and pass it along to the virtual method.
7296         (pas_backend_open): new function, lock the mutex so only one
7297         PASBook can actually call load_uri.  call load_uri with
7298         pas_book_get_uri, and req->only_if_exists.
7299         (pas_backend_handle_request): rename process_client_request to
7300         this, and expose it publicly.  Also add a case statement for
7301         "Open".
7302         (real_add_client): gut this function, we don't need to create the
7303         book anymore, just add the client to the list and do the weak
7304         ref/ORBit small stuff.
7305         (pas_backend_add_client): track change to signature - BookListener
7306         -> PASBook.
7307         (pas_backend_init): init open_mutex.
7308         (pas_backend_dispose): free open_mutex.
7310         * backend/pas/pas-backend.h (PASBackendClass): add @only_if_exists
7311         to the load_uri virtual method, and change the add_client virtual
7312         method to take a PASBook instead of a BookListener.  add the same
7313         args to _load_uri and add_client.  Also, add prototypes for
7314         pas_backend_handle_request and pas_backend_open.
7316         * backend/pas/pas-book-factory.c
7317         (_pas_book_factory_send_open_book_response): nuke.
7318         (pas_book_factory_launch_backend): just return NULL, don't call
7319         _pas_book_factory_send_open_book_response, in the error case.
7320         (start_backend): nuke
7321         (impl_GNOME_Evolution_Addressbook_BookFactory_getBook): rename
7322         _openBook to this.  clean up the code a bit.  Create the PASBook
7323         here, and always track change to pas_backend_add_client's type (we
7324         pass the book now, not the listener).
7325         (pas_book_factory_class_init): openBook -> getBook.
7327         * backend/pas/pas-book.c
7328         (impl_GNOME_Evolution_Addressbook_Book_open): new function, call
7329         pas_backend_open.
7330         (impl_GNOME_Evolution_Addressbook_Book_getVCard): get rid of the
7331         signal crap, just call pas_backend_handle_request.
7332         (impl_GNOME_Evolution_Addressbook_Book_getCardList): same.
7333         (impl_GNOME_Evolution_Addressbook_Book_authenticateUser): same.
7334         (impl_GNOME_Evolution_Addressbook_Book_addCard): same.
7335         (impl_GNOME_Evolution_Addressbook_Book_removeCards): same.
7336         (impl_GNOME_Evolution_Addressbook_Book_modifyCard): same.
7337         (impl_GNOME_Evolution_Addressbook_Book_getChanges): same.
7338         (impl_GNOME_Evolution_Addressbook_Book_getSupportedFields): same.
7339         (impl_GNOME_Evolution_Addressbook_Book_getSupportedAuthMethods):
7340         same.
7341         (impl_GNOME_Evolution_Addressbook_Book_cancelOperation): same.
7342         (pas_book_get_backend): aggregate some g_return_if_fail's.
7343         (pas_book_get_listener): new function.
7344         (pas_book_get_uri): new function.
7345         (pas_book_respond_open): just call BookListener::notifyBookOpened.
7346         (pas_book_construct): add @uri, and g_strdup it.
7347         (pas_book_new): add @uri, and pass it to pas_book_construct.
7348         (pas_book_class_init): remove the "request" signal stuff, and fill
7349         in epv->open.
7351         * backend/pas/pas-book.h: add PASOpenRequest struct/enum entry.
7352         Also, add @uri to the pas_book_new args, and add a prototype for
7353         pas_book_get_uri.  Also, remove the "request" signal.
7355 2003-08-07  Chris Toshok  <toshok@ximian.com>
7357         * backend/pas/pas-book-factory.c
7358         (pas_book_factory_get_n_backends): lock map_mutex around hash
7359         table work.
7360         (pas_book_factory_dump_active_backends): same.
7361         (backend_last_client_gone_cb): same.
7362         (_pas_book_factory_send_open_book_response): track CallStatus idl
7363         change.
7364         (start_backend): simplify this greatly, since the factory is
7365         tagged with HINT_PER_THREAD.
7366         (impl_GNOME_Evolution_Addressbook_BookFactory_openBook): lock
7367         around hash table.
7368         (pas_book_factory_init): initialize map_mutex.
7369         (pas_book_factory_dispose): free map_mutex.
7371 2003-08-06  Chris Toshok  <toshok@ximian.com>
7373         * backend/pas/pas-backend-file.c
7374         (pas_backend_file_book_view_copy): nuke.
7375         (pas_backend_file_book_view_free): same.
7376         (view_destroy): same.
7377         (pas_backend_file_changes): #if notyet
7378         (do_create): e-card -> e-contact.
7379         (pas_backend_file_process_create_card): remove view handling from
7380         here.
7381         (pas_backend_file_process_remove_cards): same.
7382         (pas_backend_file_process_modify_card): convert to e-contact, and
7383         remove view handling.
7384         (pas_backend_file_get_book_view): nuke.
7385         (pas_backend_file_process_get_supported_fields): e-card-simple ->
7386         e-contact.
7387         (pas_backend_file_upgrade_db): e-card -> e-contact.
7388         (pas_backend_file_cancel_operation): implement, just return
7389         CouldNotCancel.
7390         (pas_backend_file_class_init): assign cancel_operation, and remove
7391         get_book_view assignment.
7392         (pas_backend_file_init): remove book_views assignment.
7394 2003-08-06  Chris Toshok  <toshok@ximian.com>
7396         * backend/pas/pas-backend-vcf.c (pas_backend_vcf_book_view_copy):
7397         nuke.
7398         (pas_backend_vcf_book_view_free): same.
7399         (view_destroy): same.
7400         (insert_contact): new function, insert the contact into our hash
7401         table.
7402         (load_file): reimplement without the e_card stuff.
7403         (foreach_build_list): e_card -> e_contact.
7404         (save_file): mostly reimplement in terms of e-contact.  more error
7405         case work needs doing.
7406         (do_create): e-card -> e-contact.
7407         (pas_backend_vcf_process_create_card): remove the view handling
7408         from here.
7409         (pas_backend_vcf_process_remove_cards): implement this, just
7410         remove it from the hash table and set ourselves to dirty.
7411         (pas_backend_vcf_process_modify_card): remove the view handling
7412         from here.
7413         (pas_backend_vcf_process_get_book_view): nuke.
7414         (pas_backend_vcf_process_get_supported_fields): reimplement in
7415         terms of e-contact.
7416         (INITIAL_VCARD): add in a FN attribute, and remove the quoted
7417         printable encoding.
7418         (pas_backend_vcf_cancel_operation): implement, just always return
7419         CouldNotCancel.
7420         (pas_backend_vcf_class_init): fill in cancel_operation, and remove
7421         get_book_view_sync.
7422         (pas_backend_vcf_init): remove book_views handling.
7424         * backend/pas/pas-backend-vcf.h: update copyright.
7426 2003-08-06  Chris Toshok  <toshok@ximian.com>
7428         * backend/pas/pas-backend-sync.c (pas_backend_sync_remove_cards):
7429         add out param @ids, so we can call pas_book_respond_remove
7430         properly.
7431         (_pas_backend_remove_cards): the other half of the change - pass
7432         the ids on to pas_book_response_remove.
7433         (pas_backend_sync_modify_card): add out param @old_vcard so we can
7434         call pas_book_respond_modify properly.
7435         (_pas_backend_modify_card): the other half of the change, pass the
7436         old_vcard on to pas_book_respond_modify.
7437         (pas_backend_sync_get_book_view): nuke.
7438         (pas_backend_sync_get_changes): track change (book view -> GList)
7439         (_pas_backend_is_threaded): nuke.
7440         (_pas_backend_create_card): indent.
7441         (_pas_backend_remove_cards): same.
7442         (_pas_backend_modify_card): same.
7443         (_pas_backend_get_card_list): same.
7444         (_pas_backend_get_changes): same.
7445         (_pas_backend_authenticate_user): same.
7446         (_pas_backend_get_supported_fields): same.
7447         (_pas_backend_get_supported_auth_methods): same.
7448         (_pas_backend_get_book_view): nuke.
7449         (pas_backend_sync_class_init): remove assignment to is_threaded
7450         and get_book_view.
7452         * backend/pas/pas-backend-sync.h: add out-params @ids to
7453         remove_cards_sync, @old_vcard to modify_card_sync.
7454         get_changes_sync's out-param is a GList instead of a book view,
7455         and remove get_book_view_sync.
7457         * backend/pas/pas-backend.c (pas_backend_get_book_view): nuke.
7458         (pas_backend_is_threaded): nuke.
7459         (pas_backend_start_threaded): nuke.
7460         (pas_backend_init): initialize priv->views.
7461         (pas_backend_dispose): free priv->views.
7462         (pas_backend_get_book_views): new function, return priv->views.
7464         * backend/pas/pas-backend.h: remove the get_book_view virtual
7465         method, and the pas_backend_get_book_view prototype.  Also, track
7466         the CallStatus change, and add a cancel_operation virtual method
7467         and prototype, and add pas_backend_get_book_views function, so the
7468         PASBook's can get ahold of the list.
7470         * backend/pas/pas-book-view.h: track collapsing of
7471         Addressbook::BookListenerCallStatus and
7472         Addressbook::BookView::CallStatus enums into
7473         Addressbook::CallStatus.
7475         * backend/pas/pas-book-view.c: same.
7476         
7477         * backend/pas/pas-card-cursor.[ch]: nuke
7478         
7479         * backend/pas/pas-book.c: track collapsing of
7480         Addressbook::BookListenerCallStatus and
7481         Addressbook::BookView::CallStatus enums into
7482         Addressbook::CallStatus.
7483         (impl_GNOME_Evolution_Addressbook_Book_getBookView): implement
7484         this all here, instead of farming it out to the backends.
7485         (impl_GNOME_Evolution_Addressbook_Book_getChanges): track change
7486         to signature.  this is no longer a book view, it'll return an
7487         actual list.
7488         (impl_GNOME_Evolution_Addressbook_Book_cancelOperation): new
7489         function, implement.
7490         (pas_book_respond_create): iterate over the views, notifying them
7491         if the new card matches their query.
7492         (pas_book_respond_remove): iterate over the views, telling them to
7493         delete the card matching the id.
7494         (pas_book_respond_modify): iterate over the views, notifying them
7495         if they need to change/add/remove that card.
7496         (view_destroy): move this here from the backends.
7497         (pas_book_respond_get_book_view): weak-ref the book view.
7498         (pas_book_new): remove the is_threaded switch on POA hints, and
7499         always use PER_REQUEST.
7500         (pas_book_class_init): fill in cancelOperation.
7502         * backend/pas/pas-book.h: track collapsing of
7503         Addressbook::BookListenerCallStatus and
7504         Addressbook::BookView::CallStatus enums into
7505         Addressbook::CallStatus.
7507 2003-08-01  Chris Toshok  <toshok@ximian.com>
7509         * backend/ebook/e-book-async.c: mostly finished.
7511 2003-08-01  Chris Toshok  <toshok@ximian.com>
7513         * backend/ebook/e-book-async.[ch]: new files, create async methods
7514         similar to the old ebook api that use GThread/GAsyncQueue to
7515         simulate the old async behavior.
7517 2003-07-29  Chris Toshok  <toshok@ximian.com>
7519         * backend/idl/addressbook.idl: collapse
7520         Addressbook::BookListenerCallStatus and
7521         Addressbook::BookView::CallStatus enums into
7522         Addressbook::CallStatus.
7524 2003-07-29  Chris Toshok  <toshok@ximian.com>
7526         * backend/ebook/e-book-types.h: add EBookChangeType/EBookChange.
7528 2003-07-29  Chris Toshok  <toshok@ximian.com>
7530         * backend/ebook/e-book-view-listener.c: track collapsing of
7531         Addressbook::BookListenerCallStatus and
7532         Addressbook::BookView::CallStatus enums into
7533         Addressbook::CallStatus.
7535         * backend/ebook/e-book-listener.c track collapsing of
7536         Addressbook::BookListenerCallStatus and
7537         Addressbook::BookView::CallStatus enums into
7538         Addressbook::CallStatus.
7539         (response_free): nuked
7540         (e_book_listener_check_queue): nuked
7541         (e_book_listener_queue_response): nuked
7542         (e_book_listener_queue_progress): nuked
7543         (e_book_listener_queue_get_view_response): nuked
7544         (e_book_listener_queue_get_changes_response): nuked
7545         (e_book_listener_queue_writable_status): nuked
7546         (e_book_listener_queue_authentication_response): nuked
7547         (e_book_listener_queue_get_supported_fields_response): nuked
7548         (e_book_listener_queue_get_supported_auth_methods_response): nuked
7549         (e_book_listener_dispose): nuked
7550         
7551         * backend/ebook/e-book-listener.h: remove prototypes for
7552         check_pending and pop_response.
7554         * backend/ebook/e-book.c (e_book_get_changes): new function.
7555         implement this as more of a getCardList type function, instead of
7556         getBookView.
7557         (e_book_response_get_changes): new function.
7558         (e_book_free_change_list): new function.
7560         * backend/ebook/e-book.h: add prototype for
7561         e_book_free_change_list.
7563 2003-07-23  Chris Toshok  <toshok@ximian.com>
7565         * backend/ebook/e-book.c (e_book_get_book_view): new function,
7566         implement this.
7567         (e_book_response_get_book_view): same.
7568         (e_book_get_contacts): remove the op so we don't see BUSY after
7569         this request.
7570         (e_book_handle_response): unifdef a few things.
7571         (e_book_unload_uri): fix the assertion about URI_NOT_LOADED, and
7572         unifdef some code.
7573         (e_book_dispose): fix a typo.
7575         * backend/ebook/e-book-view.c (e_book_view_handle_response):
7576         rename _check_listener_queue to this.  we don't need to pop the
7577         response either, it's passed as an arg.
7578         (e_book_view_construct): "response_queued" -> "response"
7579         (e_book_view_start): new function, call BookView.start.
7580         (e_book_view_dispose): track the signal id change.
7582         * backend/ebook/e-book-view.h: add prototype for
7583         e_book_view_start.
7585         * backend/ebook/e-book-view-listener.c
7586         (e_book_view_listener_check_queue): remove.
7587         (e_book_view_listener_queue_response): just emit the signal.
7588         (impl_BookViewListener_notify_card_added): spew.
7589         (impl_BookViewListener_notify_card_changed): spew.
7590         (impl_BookViewListener_notify_sequence_complete): spew.
7591         (impl_BookViewListener_notify_progress): spew.
7592         (e_book_view_listener_check_pending): remove
7593         (e_book_view_listener_check_pop_response): remove
7594         (e_book_view_listener_new): use the ALL_AT_IDLE poa policy.
7595         (e_book_view_listener_init): remove the queue/timeout stuff.
7596         (e_book_view_listener_dispose): remove the queue/timeout stuff.
7598         * backend/ebook/e-book-view-listener.h: remove _check_pending and
7599         _pop_response.
7601 2003-07-23  Chris Toshok  <toshok@ximian.com>
7603         * backend/pas/pas-backend-file.c (do_summary_query): remove the
7604         completion_search argument, and remove the aggregating stuff.
7605         just call pas_book_view_notify_add_1.
7606         (pas_backend_file_book_view_copy): remove card_sexp crap.
7607         (pas_backend_file_book_view_free): same.
7608         (get_length): remove
7609         (get_nth): remove
7610         (cursor_destroy): remove
7611         (vcard_matches_search): remove
7612         (ecard_matches_search): remove
7613         (pas_backend_file_search_timeout): remove the aggregating stuff.
7614         just call pas_book_view_notify_add_1.
7615         (pas_backend_file_search): simplify this a bunch.
7616         (do_create): use pas_book_view_vcard_matches.
7617         (pas_backend_file_process_get_card_list): add some more error
7618         checks.
7619         (pas_backend_file_process_get_book_view): unifdef this, and
7620         implement it.
7621         (pas_backend_file_start_book_view): kick off the search.
7622         (pas_backend_file_get_uri): remove.
7623         (pas_backend_file_class_init): remove get_uri, add
7624         start_book_view.
7626         * backend/pas/pas-backend-ldap.c (view_destroy): don't need to
7627         unref the card_sexp, as the PASBookView owns it now.
7628         (create_card_handler): use pas_book_view_vcard_matches.
7629         (modify_card_modify_handler): same.
7630         (ldap_get_view): initialize the view properly.
7631         (pas_backend_ldap_get_uri): remove.
7632         (pas_backend_ldap_class_init): remove the get_uri assignment.
7634         * backend/pas/pas-backend-sync.c (_pas_backend_get_card_list):
7635         don't free this, it's freed in the pas_book code.
7637         * backend/pas/pas-backend-sync.h: make use of pas-types.h and
7638         remove some typedefs.
7640         * backend/pas/pas-backend-summary.h: same.
7642         * backend/pas/pas-backend-card-sexp.h: same.
7644 2003-07-23  Chris Toshok  <toshok@ximian.com>
7646         * backend/pas/pas-book.c
7647         (impl_GNOME_Evolution_Addressbook_Book_getBookView): spew.
7648         (pas_book_respond_create): unifdef this.
7649         (pas_book_respond_remove): same.
7650         (pas_book_respond_modify): same.
7651         (pas_book_respond_authenticate_user): same.
7652         (pas_book_respond_get_supported_fields): unref the iterator.
7653         (pas_book_respond_get_book_view): unifdef, and add spew.
7655         * backend/pas/pas-book.h: make use of pas-types.h and remove some
7656         typedefs.
7658 2003-07-23  Chris Toshok  <toshok@ximian.com>
7660         * backend/pas/pas-types.h: new file, all the typedefs shared
7661         between files here.
7663 2003-07-23  Chris Toshok  <toshok@ximian.com>
7665         * backend/pas/pas-book-view.c (send_pending_adds): abstract all
7666         the aggregating code to the book view.  backends just call
7667         notify_card_added and the superclass does all the aggregating.
7668         (pas_book_view_notify_change): if there are pending adds, send
7669         them before we send the change.
7670         (pas_book_view_notify_remove): same.
7671         (pas_book_view_notify_add): the other part of the aggregating
7672         code.
7673         (pas_book_view_notify_complete): send pending adds if there are
7674         any.
7675         (impl_GNOME_Evolution_Addressbook_BookView_start): new function,
7676         call pas_backend_start_book_view.
7677         (pas_book_view_get_card_query): new function.
7678         (pas_book_view_get_card_sexp): new function.
7679         (pas_book_view_get_backend): new function.
7681         * backend/pas/pas-book-view.h: add a PASBackend arg to the
7682         constructor, as well as the char* query and PASBackendCardSExp
7683         form.  also add accessors for card_query, card_sexp, and backend.
7685         * backend/idl/addressbook.idl
7686         (GNOME::Evolution::Addressbook::BookView): add start() method.
7687         (GNOME::Evolution::Addressbook::BookListener): remove the oneway
7688         tag from notifyBookOpened, notifyViewRequested, and
7689         notifyChangesRequested so the call doesn't return until the remote
7690         object has gotten the method call.
7692         * backend/pas/pas-backend.c (pas_backend_load_uri): fill in the
7693         uri slot if the load was successful.
7694         (pas_backend_get_uri): return the uri, remove the virtual method
7695         call.
7696         (pas_backend_start_book_view): new function.
7697         (process_client_request): ifdef out the threaded foo, since i'm
7698         not certain it's at all necessary.
7699         (real_add_client): remove the bonobo_object_unref of the book,
7700         since it's immortal.
7701         (pas_backend_dispose): free the uri.
7703         * backend/pas/pas-backend.h: remove the get_uri virtual method,
7704         and add the start_book_view virtual method and
7705         pas_backend_start_book_view prototype.
7707 2003-07-23  Chris Toshok  <toshok@ximian.com>
7709         * backend/pas/Makefile.am (libpasvcf_a_SOURCES): new.
7710         (noinst_LIBRARIES): add libpasvcf.a
7712         * backend/pas/pas-backend-vcf.[ch]: new files, implement a vcard
7713         file backend.  the backend api still needs a little work, but it's
7714         getting easier to write backends.
7716 2003-07-23  Chris Toshok  <toshok@ximian.com>
7718         * printing/e-contact-print.c (e_contact_print_response): deal with
7719         "uses_list".  Fixes #30839.
7720         (e_contact_print_dialog_new): use GINT_TO_POINTER instead of
7721         casting to void*, and set "uses_list" to FALSE.
7722         (e_contact_print_card_dialog_new): same.
7723         (e_contact_print_card_list_dialog_new): same, but set "uses_list"
7724         to TRUE.
7726 2003-07-23  Chris Toshok  <toshok@ximian.com>
7728         * backend/ebook/e-book.c (e_book_dispose): fix a typo.
7730 2003-07-22  Akira TAGOH  <tagoh@redhat.com>
7732         * printing/e-contact-print-envelope.c (ecpe_print): Use 'Sans'
7733         instead of 'Helvetica' for the font name.
7734         * printing/e-contact-print.c (e_contact_build_style): Likewise.
7736 2003-07-23  Dan Winship  <danw@ximian.com>
7738         * backend/ebook/Makefile.am: use EVO_MARSHAL_RULE
7739         * backend/pas/Makefile.am: Likewise
7740         * gui/component/select-names/Makefile.am: Likewise
7741         * gui/contact-editor/Makefile.am: Likewise
7742         * gui/contact-list-editor/Makefile.am: Likewise
7743         * gui/widgets/Makefile.am: Likewise
7745         * gui/contact-editor/e-contact-editor.c
7746         (e_contact_editor_class_init):
7747         s/ece_marshal/e_contact_editor_marshal/
7749         * gui/contact-list-editor/e-contact-list-editor.c
7750         (e_contact_list_editor_class_init): Likewise for ecle_marshal
7752         * gui/search/e-addressbook-search-dialog.c
7753         (e_addressbook_search_dialog_init): Remove gtk_window_set_policy
7754         call since that function is deprecated and it was just setting
7755         everything to the default values anyway.
7757         * gui/widgets/e-addressbook-util.c: #include gal/util/e-util.h for
7758         e_free_object_list.
7760 2003-07-22  Dan Winship  <danw@ximian.com>
7762         * backend/ebook/e-card.c: (e_card_new,
7763         e_card_new_with_default_charset): Make the "vcard" arg const.
7764         ...: add lots and lots of other consts as a side effect
7766 2003-06-30  Dan Winship  <danw@ximian.com>
7768         * gui/widgets/e-addressbook-view.c (e_addressbook_view_dispose):
7769         disconnect from model signals to prevent a race condition at
7770         shutdown where the view gets destroyed and then the model notices
7771         the backend dying before being destroyed itself.
7773         * gui/widgets/e-addressbook-reflow-adapter.c
7774         (addressbook_finalize): add, to free priv.
7775         (e_addressbook_reflow_adapter_class_init): set it up
7777         * gui/component/e-address-popup.c (e_address_popup_set_free_form):
7778         Don't leak strings
7780         * gui/component/addressbook-storage.c (load_source_data): don't
7781         leak xml data.
7783         * gui/component/addressbook-component.c (new_item_cb): don't leak
7784         the new card.
7786 2003-06-25  Gilbert Fang <gilbert.fang@sun.com>
7788         * gui/widgets/e-minicard-view-widget.c 
7789         (e_minicard_view_widget_real_focus_in_event): new function, 
7790         override the event handler for focus_in_event, set the first item
7791         be focused if no focused item at all.  Fixes bug 41826.
7793 2003-06-18  Chris Toshok  <toshok@ximian.com>
7795         * gui/contact-editor/e-contact-editor.c (fill_in_field): in the
7796         EUrlEntry case just reassign widget.  it'll be handled by the
7797         GtkEditable code below.  Fixes #43841.
7799 2003-06-14  Larry Ewing  <lewing@ximian.com>
7801         * gui/backend/ebook/e-card-simple.c:
7802         * gui/backend/ebook/e-card.c:
7803         * gui/backend/ebook/evolution-ldif-importer.c:
7804         * gui/backend/ebook/load-pine-addressbook.c:
7805         * gui/backend/ebook/test-card.c:
7806         * gui/backend/pas/pas-backend-card-sexp.c:
7807         * gui/backend/pas/pas-backend-ldap.c: Fix lots of leaks, update
7808         for correct use of g_object_get. Some cleanups.
7810 2003-06-13  Larry Ewing  <lewing@ximian.com>
7811         
7812         * gui/component/addressbook.c:
7813         * gui/component/e-cardlist-model.c:
7814         * gui/component/select-names/e-select-names-text-model.c:
7815         * gui/contact-editor/e-contact-editor.c:
7816         * gui/contact-editor/e-contact-save-as.c:
7817         * gui/contact-list-editor/e-contact-list-editor.c:
7818         * gui/widgets/e-addressbook-table-adapter.c:
7819         * gui/widgets/e-addressbook-util.c:
7820         * gui/widgets/e-addressbook-view.c:
7821         * gui/widgets/e-minicard-view.c:
7822         * gui/widgets/e-minicard.c:  Fix lots of leaks, update for correct
7823         use of g_object_get.  Some misc cleanups.
7825         * printing/e-contact-print.c: update for correct use of
7826         g_object_get.
7828 2003-06-05  Not Zed  <NotZed@Ximian.com>
7830         ** For #42691.
7832         * gui/component/select-names/Makefile.am (%.server.in): implicit
7833         rule for .in file.
7834         (BUILT_SOURCES): added server_DATA.
7836         * gui/component/Makefile.am (%.server.in): use implicit rule for
7837         .in file.
7838         (BUILT_SOURCES): added, just server_DATA.
7839         (CLEANFILES): added
7841         * backend/ebook/Makefile.am (BUILT_SOURCES): add server_DATA.
7843 2003-06-04  Rodrigo Moya <rodrigo@ximian.com>
7845         * backend/ebook/ebook.c (e_book_do_response_open): adapted to
7846         changes in EComponentListener API.
7848 ** See ChangeLog.pre-1-4 for older changes