2000-05-07 Chris Toshok * gui/component/addressbook.c (set_prop): don't create a new ebook. instead, unload the current uri (if there is one) and load the new one. (addressbook_factory): create the ebook once. 2000-05-07 Christopher James Lahey * gui/component/e-addressbook-model.c: Replaced some model_changed calls with row_inserted calls. 2000-05-07 Christopher James Lahey * backend/pas/pas-backend-file.c, backend/pas/pas-backend-ldap.c: Removed some code that was notifying too many clients at the wrong times. * gui/component/addressbook.c: Set view->book. Unreffed view->book. Unreffed the model instead of destroying it. Removed the /tmp/test.db stuff. 2000-05-07 Christopher James Lahey * gui/component/addressbook.c: Make the addressbook create the correct file uri. Added a default query. Initialize view->model and view->view to NULL. * gui/component/e-addressbook-model.c, gui/minicard/e-minicard-view.c: Only call get_book_view if both book and query and non-null. 2000-05-06 Chris Toshok * gui/component/addressbook.c (control_deactivate): remove the separator and toggle view items as well. (toggle_view_as_cb): callback for the "/View/Toggle View" menu item. (get_query): getter for the query string that takes into account the two view types. (set_query): setter for the query string that takes into account the two view types. (set_book): setter for the EBook type - not really a setter, since the book is kept in the AddressbookView, but this method actually sets the "book" property on the current view. (find_contact_cb): make use of get/set_query (search_entry_activated): make use of set_query. (control_activate): add a menu separator and an item to toggle between view types. (book_open_cb): make use of set_book. (ebook_create): no longer needs to return the EBook, since we set the book field in our view. (teardown_minicard_view): destructor function for the minicard specific ui. (create_minicard_view): constructor function for the minicard specific ui. (teardown_table_view): destructor function for the e-table specific ui. (create_table_view): constructor function for the e-table specific ui. (change_view_type): destroy the old and create the new view ui, change the label of the Toggle View menu item, and reset the book and query on the new view type. (addressbook_factory): create an all-encompassing vbox that the view uses to create the bonobo control, which contains 1 widget per ui specific view (the e-table in the table case, and another vbox in the minicard case.) use change_view_type to create the initial view. 2000-05-07 Christopher James Lahey * backend/ebook/e-book.c: Made a NULL callback just mean to not call back. * backend/ebook/e-card-simple.c, backend/ebook/e-card-simple.h: Reordered fields. Added a get_const function to get a constant string that persists until the simple is destroyed. * gui/component/Makefile.am: Added e-addressbook-model.c and e-addressbook-model.h and all of the libraries and includes that they are dependent on. * gui/component/addressbook-factory.c: Initialize e cursors. * gui/component/addressbook.c: Added inactive code to display an ETable view of the addressbook. * gui/component/e-addressbook-model.c, gui/component/e-addressbook-model.h: New files to implement an ETable model with a EBook back end. 2000-05-06 Christopher James Lahey * backend/ebook/e-card-simple.c, backend/ebook/e-card-simple.h: Mostly finished ECardSimple. * contact-editor/e-contact-editor.c: Changed this to match with some of the changes to ECardSimple. * gui/component/addressbook.c: Changed this to look for "addressbook.db" in the given directory if it doesn't find the file "uri". * gui/minicard/e-minicard.c, gui/minicard/e-minicard.h: Changed this to use ECardSimple. 2000-05-06 Chris Toshok * gui/component/.cvsignore: ignore evolution-addressbook.pure * gui/component/Makefile.am: add support for generating evolution-addressbook.pure. 2000-05-06 Chris Toshok * backend/pas/pas-backend-ldap.c (pas_backend_ldap_load_uri): if a port isn't specified in the uri default to 389. 2000-05-06 Christopher James Lahey * gui/component/addressbook.c: Made this take a uri through its property bag. 2000-05-05 Christopher James Lahey * backend/ebook/Makefile.am: Added e-card-simple.c and e-card-simple.h. * backend/ebook/e-card-simple.c, backend/ebook/e-card-simple.h: New card wrapper class to simplify things. * contact-editor/e-contact-editor.c, contact-editor/e-contact-editor.h: Changed e-contact-editor to use ECardSimple a bit. 2000-05-03 Chris Toshok * gui/component/addressbook.c (control_deactivate): #ifdef HAVE_LDAP the ldap specific stuff. (null_cb): same. (control_activate): same. 2000-05-02 Ettore Perazzoli * backend/ebook/Makefile.am (INCLUDES): Add `-I$(top_srcdir)/addressbook/ename'. 2000-05-02 Matt Loper * demo/Makefile.am: set G_LOG_DOMAIN. * printing/Makefile.am: same. 2000-05-01 Christopher James Lahey * backend/pas/pas-book-factory.c: Add back in the CORBA_Object_release. * backend/pas/pas-book.c: Properly duplicate and release the listener passed to us. 2000-05-01 Christopher James Lahey * backend/pas/pas-backend-file.c, backend/pas/pas-backend-ldap.c: Made uri slightly better managed. * backend/pas/pas-book-factory.c (pas_book_factory_process_request): Remove this CORBA_Object_release that causes things not to work. This is just a temporary fix until we figure out what's actually wrong. * backend/pas/pas-book.c: Fixed a copy and paste error in a warning. 2000-05-01 Christopher James Lahey * Makefile.am: Switched the subdirs order since backend depends on ename. 2000-05-01 Larry Ewing * backend/pas/pas-backend-ldap.c (pas_backend_ldap_remove_client): fix a typo in the for loop. 2000-05-01 Michael Meeks * backend/pas/pas-book-factory.c: include gtk. 2000-04-30 Federico Mena Quintero * backend/ebook/e-book-types.h (EBookStatus): Added new status values for the IDL stuff. * backend/pas/pas-book-factory.h (PASBookFactoryClass): New "last_book_gone" signal. * backend/pas/pas-book-factory.c (pas_book_factory_launch_backend): Better error handling. (pas_book_factory_process_queue): Let pas_book_factory_process_request() free the request. (pas_book_factory_process_request): Free the request here. Perform better error handling. (free_active_server_map_entry): Free an active server map entry; free the URI key and unref the backend value. This function was renamed; the old one was trying to CORBA_Object_unref() a GTK+ object! (remove_backends_entry): Free a backend table entry; free the URI key. (backend_last_client_gone_cb): Remove the backend from the active server map and emit the "last_book_gone" signal if appropriate. (pas_book_factory_get_n_backends): New function to query the number of running backends in an addressbook factory. * backend/idl/addressbook.idl (BookListener::CallStatus): Added a ProtocolNotSupported code. This is for when the addressbook factory cannot find a provider for the requested URI. * backend/pas/pas-backend.h (PASBackendClass): New "last_client_gone" signal. (PASBackendClass): New get_uri virtual method. * backend/pas/pas-backend.c (pas_backend_load_uri): Return a gboolean success code. (pas_backend_add_client): Return a gboolean success code. (pas_backend_last_client_gone): New function used by backend implementations to notify upwards when the backend's last client is destroyed. (pas_backend_get_uri): New function to get the URI of a backend. * backend/pas/pas-backend-file.c (pas_backend_file_add_client): Pass the backend as the closure data to the "destroy" handler of the book. We cannot call pas_book_get_backend() in the callback since the book's private data has already been destroyed when the callback is invoked. Alternatively, we could move the private data destruction step to the book's ::finalize() method. (pas_backend_file_book_destroy_cb): Get the backend from the callback's data, not from the book. (pas_backend_file_remove_client): Remove the book from the list of clients. When all clients go away, call pas_backend_last_client_gone(). (PASBackendFilePrivate): Added an uri field. (pas_backend_file_get_uri): Implement the get_uri method. (pas_backend_file_load_uri): Return a gboolean success code. Also, store the URI in the private structure. (pas_backend_file_add_client): Return a gboolean success code. Also, call pas_backend_last_client_gone() if appropriate. (pas_backend_file_destroy): Free the bf->priv->uri. * backend/pas/pas-backend-ldap.c (pas_backend_ldap_add_client): Pass the backend as the closure data to the "destroy" handler of the book. See above for rationale. (pas_backend_ldap_book_destroy_cb): Get the backend from the callback's data. (pas_backend_ldap_remove_client): Remove the book from the list of clients. When all clients go away, call pas_backend_last_client_gone(). (pas_backend_ldap_load_uri): Return a gboolean success code. (pas_backend_ldap_add_client): Return a gboolean success code. Also, call pas_backend_last_client_gone() if appropriate. (PASBackendLDAPPrivate): New uri field. (pas_backend_ldap_get_uri): Implement the get_uri method. (pas_backend_ldap_load_uri): Store the uri in the private structure. (pas_backend_ldap_destroy): Free the bl->priv->uri. 2000-04-30 Chris Toshok * gui/component/Makefile.am (evolution_addressbook_SOURCES): added e-ldap-server-dialog.c (glade_DATA): added ldap-server-dialog.glade * gui/component/ldap-server-dialog.glade: new file. * gui/component/e-ldap-server-dialog.h: new file. * gui/component/e-ldap-server-dialog.c: new file, contains logic associated with ldap server dialog. * gui/component/addressbook.c (control_deactivate): remove the directory server menu item. (null_cb): do nothing callback for e_book_load_uri call. should change to (at the very least) pop up a dialog if there was an error. (new_server_cb): new function - really just switches to a particular ldap server, since the information isn't saved anywhere. (control_activate): add directory server menu item. 2000-04-30 Chris Toshok * backend/ebook/e-book.c (e_book_load_uri): create the book listener here, since it's destroyed in unload_uri. (e_book_construct): remove the book listener construction here. 2000-04-30 Christopher James Lahey * backend/ebook/.cvsignore: Added load-pine-addressbook. 2000-04-30 Christopher James Lahey * contact-editor/contact-editor.glade, contact-editor/e-contact-editor.c, gui/minicard/e-minicard.c: Made some fields invisible that were visible before. 2000-04-30 Christopher James Lahey * backend/ebook/e-card.c: Make file as not have the : after it if it's empty. If there's no name, or file_as, fill in these fields with defaults based on full_name or name respectively. * backend/ebook/load-pine-addressbook.c: New file to do import of pine .addressbook files. * backend/pas/pas-backend-file.c: Made empty fields act as the empty string for searches. * contact-editor/e-contact-editor.c, contact-editor/e-contact-editor.h: Made the File As field update properly as you edit the name and company fields. Added the pull down list of File As choices. Made sure that all fields will be set to NULL if they are deleted to the empty string. * gui/minicard/e-minicard.c: Use the File As field instead of the Full Name field for the header. Make identical compares on the File As field do a compare on the uid. 2000-04-30 Christopher James Lahey * contact-editor/e-contact-editor-fullname.c, contact-editor/fullname.glade: Fixed a string mismatch. 2000-04-30 Christopher James Lahey * backend/ebook/Makefile.am: Added ename includes and libs. * backend/ebook/e-card.c, backend/ebook/e-card.h: Added e_card_name_from_string. Added header for e_card_delivery_address_from_string, even though it's not implemented yet. * contact-editor/Makefile.am: Removed the ename includes since we no longer use ename directly here. * contact-editor/e-contact-editor.c: Fixed this to properly save the address labels displayed. Updated this to use the function e_card_name_from_string instead of doing it by hand. * contact-editor/fullname-strings.h, contact-editor/fullname.glade: Deleted an unused field. Changed the set of prefixes and suffixes. 2000-04-30 Chris Toshok * backend/pas/pas-backend-ldap.c (pas_backend_ldap_ensure_connected): add support for a rootdn in the uri. (pas_backend_ldap_build_all_cards_list): make use of the rootdn in the call to ldap_search_s. (pas_backend_ldap_search): same. (pas_backend_ldap_load_uri): get the rootdn out of the passed in uri. 2000-04-29 Christopher James Lahey * backend/ebook/e-card.c, backend/ebook/e-card.h: Added e_card_phone_new e_card_delivery_address_new, e_card_delivery_address_to_string, e_card_name_copy, e_card_name_new, e_card_name_to_string, and made e_card_name_free public. Removed some unused code. * backend/pas/pas-backend-file.c: Fixed a warning. * contact-editor/Makefile.am: Added e-contact-editor-fullname.[ch] and fullname.glade. Added e-name libs and includes. * contact-editor/e-contact-editor-fullname.c, contact-editor/e-contact-editor-fullname.h, contact-editor/fullname-strings.h, contact-editor/fullname.glade: New dialog for editing the fields of a name separately. * contact-editor/e-contact-editor.c, contact-editor/e-contact-editor.h: Create an EContactEditorFullname when you click on the Full Name button. Maintain a parsed name at all times. * gui/component/Makefile.am, gui/minicard/Makefile.am: Added e-name libs. 2000-04-28 Larry Ewing * backend/pas/pas-book-factory.c (register_factory): fix the `USING_OAF' changes so that they work for when we are not using oaf. 2000-04-27 Ettore Perazzoli * ename/Makefile.am (gnome_libs): Use `BONOBO_GNOME_LIBS'. (INCLUDES): Add `-I$(srcdir)/..'. * backend/pas/pas-book-factory.c (register_factory): New function to register the factory. Implementation different according to `USING_OAF'. (pas_book_factory_activate): Use `register_factory()'. * gui/component/addressbook.c: New #define `CONTROL_FACTORY_ID', varying depending on whether we are `USING_OAF'. (addressbook_factory_init): Use `CONTROL_FACTORY_ID'. * backend/ebook/test-client.c (init_corba): New function, implemented differently according to the `USING_OAF' #define. * backend/ebook/e-book.c: New #define `CARDSERVER_OAF_ID'. (e_book_construct): Work with OAF #if `USING_OAF'. * backend/ebook/Makefile.am (gnome_libs): Removed. (corbadir): Removed. (ebook_libs): Removed. (test_client_LDADD): Just add `libebook.la'. (test_card_LDADD): Likewise. (test_client_list_LDADD): Likewise. * gui/component/addressbook-factory.c (init_corba): New helper function, implemented differently according to `USING_OAF'. (main): Call `init_corba()'. 2000-04-27 Christopher James Lahey * backend/ebook/e-card.c, backend/ebook/e-card.h: Added file as, office, manager, assistant, spouse, and anniversary fields. These all use "X-EVOLUTION-" fields in the VCards. * backend/pas/pas-backend-file.c: Added all the new fields (except anniversary) to the list of fields. * contact-editor/contact-editor.glade, contact-editor/e-contact-editor-strings.h: Fixed some misnamed fields and fixed the placement of the comments field. * contact-editor/e-contact-editor.c: Made the newly added fields display properly. * Makefile.am: Added ename. * ename/e-name-western.h, ename/test-ename-western-gtk.c, ename/test-ename-western.c: Fixed up some #includes. * ename/.cvsignore: Added .cvsignore. 2000-04-26 Christopher James Lahey * backend/ebook/e-card-types.h, backend/ebook/e-card.c, backend/ebook/e-card.h: Added an address label field. * contact-editor/contact-editor.glade, contact-editor/e-contact-editor-strings.h: Got rid of some unused fields. * contact-editor/e-contact-editor.c, contact-editor/e-contact-editor.h: Added the address label field. Load only. Editing these fields seems to mess things up. 2000-04-26 Christopher James Lahey * contact-editor/e-contact-editor.c: Added proper handling of the email field. 2000-04-26 Christopher James Lahey * backend/ebook/e-card-types.h, backend/ebook/e-card.c, gui/minicard/e-minicard.c: Prefixed the ADDR_ flags. * contact-editor/contact-editor.glade, contact-editor/e-contact-editor-strings.h: Edited the glade file. Removed all the fields that we don't use. * contact-editor/e-contact-editor.c, contact-editor/e-contact-editor.h: Made the phone fields work properly. The address and email fields are temporarily turned off until they can be made to work as the phone fields do. 2000-04-25 Ettore Perazzoli * gui/minicard/Makefile.am (INCLUDES): Use `$(BONOBO_GNOME_CFLAGS)'. * backend/pas/Makefile.am (idl_flags): Add `-I $(datadir)/idl' to pick up IDL files in the installation prefix as well. (INCLUDES): Use `$(BONOBO_GNOME_CFLAGS)'. * backend/ebook/Makefile.am (ORBIT_IDL): Use `-I $(datadir)/idl' to get the IDLs from the installation prefix as well. (INCLUDES): Add `$(BONOBO_GNOME_CFLAGS)'. (test_client_LDADD): Use `$(BONOBO_GNOME_LIBS)' instead of hardcoding `-lbonobo'! Also get rid of some other useless flags, as `$(BONOBO_GNOME_LIBS)' really has all what we need. (test_client_list_LDADD): Likewise. (test_card_LDADD): Likewise. 2000-04-18 Federico Mena Quintero * gui/minicard/Makefile.am (INCLUDES): Use "e-minicard" as the log domain. * gui/component/Makefile.am (INCLUDES): Use "evolution-addressbook" as the log domain. * backend/pas/Makefile.am: Build libpas.a, not a shared library. Do not install any header files. (INCLUDES): Remove spurious include paths. * backend/pas/*.[ch]: Fix includes. * backend/ebook/Makefile.am: Do not install the test programs. Fixed some include weirdness. * backend/ebook/*.[ch]: Fix includes. * contact-editor/Makefile.am (INCLUDES): Set the log domain to "contact-editor". (INCLUDES): Fix. * contact-editor/*.[ch]: Fix includes. * gui/minicard/*.[ch]: Fix includes. * ChangeLog: Started a ChangeLog here.