2003-02-22 Hans Petter Jansson * e-categories-config.c (e_categories_config_open_dialog_for_entry): A result of 0 no longer indicates success; GTK_RESPONSE_OK does. 2003-02-17 Chris Toshok * e-account-list.c (gconf_accounts_changed): fix memleak - free uid. 2003-02-11 Not Zed * e-trie.c (trie_utf8_getc): Instead of simply ignoring bad chars, return the sentinal invalid char 0xfffe, so that we properly track the start of sequences. 2003-02-10 Ettore Perazzoli * Makefile.am (libeutil_static_la_DEPENDENCIES): Make libeutil-static.la depend on libeutil.la so that parallel compilations work; building them at the same time confuses libtool. (e-util-marshal.h, e-util-marshal.c): Use different tmp files so these rules can happen in parallel. 2003-02-05 Dan Winship * Makefile.am (eutilincludedir, etc): define in terms of privincludedir. * ename/Makefile.am (libenameincludedir): Likewise * e-account.c: Fix warnings * e-account-list.c: Likewise * e-config-listener.c: Likewise * e-gui-utils.c: Likewise. * e-lang-utils.c: Likewise * e-msgport.c: Likewise * e-passwords.c: Likewise * e-categories-config.c (e_categories_config_open_dialog_for_entry): Use g_object_get/_set rather than gtk_ * e-url.c (e_uri_new): Use g_ascii_strdown instead of deprecated g_strdown. 2003-01-27 Ettore Perazzoli * e-request.c (e_request_string): Port to GtkDialog. Strdup the text returned by GtkEntry after destroying the dialog, not before. Use gtk_editable_select_region() instead of gtk_entry_select_region(). Add a little bit of padding to make it look less crampy and set a default width. * e-dialog-utils.h (e_gnome_dialog_set_parent): Declare only if GNOME_DISABLE_DEPRECATED is not #defined. (e_gnome_warning_dialog_parented): Likewise. (e_gnome_ok_cancel_dialog_parented): Likewise. 2003-01-26 Chris Toshok * e-pilot-settings.c (e_pilot_settings_new): ref/sink the pilot settings to clear up that gtk warning. 2003-01-25 Chris Toshok * e-pilot-map.c (e_pilot_map_read): g_file_exists -> g_file_test. (e_pilot_map_write): don't use doc->root. 2003-01-25 Chris Toshok * e-pilot-settings.[ch]: GObjectify this. 2003-01-24 Hans Petter Jansson * e-categories-config.c (initialize_categories_config): Enable getting the categories master list from wombat. (e_categories_config_open_dialog_for_entry): It's now a GtkDialog. 2003-01-22 Ettore Perazzoli * Makefile.am (eutilincludedir): Version using $(BASE_VERSION). (econdincludedir): Likewise. (edb3includedir): Likewise. (imagesdir): Likewise. * ename/Makefile.am: Install libename in $(privlibdir) and $(includedir)/evolution-$(BASE_VERSION)/ename. 2003-01-17 Jeffrey Stedfast * e-account-list.c: Changed signal names to use - instead of _ like the rest of Gtk2. * e-account.c (e_account_import): New function that is basically the old account_copy(). 2003-01-17 Dan Winship * e-xml-hash-utils.c: New, sort of from evolution-recurid-branch. 2003-01-16 Dan Winship * e-account.c: New class, based on MailConfigAccount, for describing an evolution (mail) account. * e-account-list.c: New class for tracking the list of configured accounts. (Also uses some code from mail-config.) * e-list.c (e_list_construct, e_list_remove): New 2003-01-14 Ettore Perazzoli * e-dialog-utils.c: Do not #include . (e_set_dialog_parent): Remove the BonoboWidget handling stuff (it doesn't really work anyways). 2003-01-14 Ettore Perazzoli * Makefile.am (eutilinclude_HEADERS): Add e-dialog-utils.h. 2003-01-09 Chris Toshok * e-gui-utils.c (e_create_image_widget): change this to use GtkImage instead of GnomeCanvas. 2003-01-08 Ettore Perazzoli * Makefile.am: Images are now in $(datadir)/evolution/images instead of $(datadir)/images/evolution. 2003-01-07 Dan Winship * e-config-listener.c (e_config_listener_remove_value): New. * e-passwords.c (e_passwords_get_password): Don't look at the passwords hash until calling e_passwords_init(). 2003-01-06 Dan Winship * e-html-utils.c: Add this back: Connector needs it, and there's no reason for addressbook and calendar to be using camel to get this functionality. * Makefile.am (libeutil_la_SOURCES): re-add e-html-utils 2003-01-02 Jeffrey Stedfast A bunch of fixes to make e-util build with -DG_DISABLE_DEPRECATED and -DGTK_DISABLE_DEPRECATED. 2003-01-02 Ettore Perazzoli * e-gtk-utils.c (e_signal_connect_full_while_alive): Get to compile. (e_signal_connect_while_alive): Like. 2002-12-19 Ettore Perazzoli * e-gtk-utils.c (e_signal_connect_while_alive): New. (e_signal_connect_full_while_alive): Renamed from e_gtk_signal_connect_full_while_alive(). 2002-12-16 Jeffrey Stedfast * e-html-utils.[c,h]: Removed. Back to the fiery depths of hell from whence ye came! 2002-12-10 Rodrigo Moya * e-config-listener.[ch] (e_config_listener_remove_dir): new function. 2002-12-09 Jeffrey Stedfast * e-trie.c: New implementation of an Aho-Corasick trie. 2002-12-09 Chris Toshok * e-passwords.h: track changes to api (e_passwords_init is gone, and several functions take the component name as an arg.) * e-passwords.c (e_passwords_init): make this static, and allow multiple calls. Also, it no longer takes the component name. (e_passwords_shutdown): make this deal with the case where e_passwords_init wasn't called (no hashtable), and it no longer needs to free component_name. (e_passwords_forget_passwords): call e_passwords_init. (e_passwords_clear_component_passwords): take component_name as an arg, and call e_passwords_init. (password_path): take component_name as an arg. (e_passwords_remember_password): same, and call e_passwords_init. (e_passwords_forget_password): same. (e_passwords_get_password): same. (e_passwords_add_password): call e_passwords_init. (e_passwords_ask_password): take component_name as an arg. 2002-12-07 Not Zed * e-msgport.c (e_mutex_cond_wait): Allow an e-mutex to be used with standard condition variables. 2002-12-06 Chris Toshok * e-categories-master-list-wombat.c (ecmlw_load): change to a more gconf-like path (with underscores, etc.) (ecmlw_save): same. 2002-11-26 Dan Winship * e-lang-utils.c (e_get_language_list): If the language is something like "fr_FR", return both "fr_FR" and "fr" in the list. Oaf doesn't consider "fr_FR" to match a "-fr" translation. 2002-11-22 Not Zed * e-msgport.c (EMsgPort): Added an optional nspr pipe field. (e_msgport_new): Init nspr pipe to null. (e_msgport_destroy): close prfiledesc's if they're open. (e_msgport_prfd): get the prfiledesc to wait asynchronously on. (e_msgport_put): Write notify to nspr pipe if it exists. (e_msgport_wait): poll nspr pipe fd if it is set, and the pipe fd isn't. (e_msgport_get): skim off a notify byte on the pr pipe if set. (): Include config.h, and nspr stuff if HAVE_NSS is set. 2002-11-13 Ettore Perazzoli * e-config-listener.c (e_config_listener_get_string_with_default): Make sure we don't use a string value from a GConfValue that got freed. 2002-11-12 Chris Toshok * Makefile.am (eutilinclude_HEADERS): add e-password.h (libeutil_la_SOURCES): add e-password.c * e-passwords.[ch]: port this to gnome2's gnome-config-private. 2002-11-11 Ettore Perazzoli * e-config-listener.c (add_key): g_strdup() the value in the case of a string value. 2002-11-11 Jeffrey Stedfast * Makefile.am: Re-add e-proxy.c to the build. 2002-11-08 Chris Toshok * Makefile.am (eutilinclude_HEADERS): add e-categories-config.h and e-categories-master-list-wombat.h (libeutil_la_SOURCES): add e-categories-master-list-wombat.c * e-categories-master-list-wombat.[ch]: port work. 2002-11-07 JP Rosevear * e-categories-config.c (e_categories_config_get_icon_for): pass extra pixbuf param * e-categories-config.h: use G_*_DECLS * e-dialog-utils.c (save_ok): update g_file_test params * Makefile.am: Compile some additional files 2002-11-06 Chris Toshok * e-config-listener.c (e_config_listener_set_boolean): init err to NULL so if there isn't an error we aren't left with an unitialized GError. Fixes crash. (e_config_listener_set_float): same. (e_config_listener_set_long): same. (e_config_listener_set_string): same. 2002-11-05 Rodrigo Moya * e-component-listener.[ch]: ported to GObject. * Makefile.am: re-enabled e-component-listener.[ch] 2002-11-03 Rodrigo Moya * e-config-listener.[ch] (e_config_listener_get_boolean, e_config_listener_get_float, e_config_listener_get_long, e_config_listener_get_string): new simpler functions, without a default value. 2002-11-03 Ettore Perazzoli * e-config-listener.c (e_config_listener_get_float_with_default): Removed unused variable. (e_config_listener_get_long_with_default): Likewise. (e_config_listener_get_string_with_default): Likewise. * Makefile.am: Compile e-config-listener.[ch]. 2002-11-02 Chris Toshok * Makefile.am: add marshal building stuff, add e-util-marshal.c to SOURCES, and add e-util-marshal.list to EXTRA_DIST. * e-util-marshal.list: add marshallers for e-util. * e-list.c: convert to GObject. * e-list.h: convert to GObject. * e-iterator.c: convert to GObject. * e-iterator.h: convert to GObject. * e-list-iterator.c: convert to GObject. * e-list-iterator.h: convert to GObject. * .cvsignore: ignore e-util-marshal.[ch] 2002-11-02 Ettore Perazzoli * ename/Makefile.am (INCLUDES): Removed -I$(includedir). * ename/test-ename-western-gtk.c: #include instead of . (create_window): Added GTK_SIGNAL_FUNC() cast. (main): Use gnome_program_init(). * e-db3-utils.c: Do not #include . * e-request.c: Do not #include . * e-memory.c (e_memchunk_clean): Replace GSearchFunc with GCompareFunc. * e-iterator.c (e_iterator_class_init): GTK2-ified. (ECI_CLASS): Likewise. * e-html-utils.c: Do not #include . * e-gui-utils.c: Don't #include . (e_create_image_widget): Pass NULL to gdk_pixbuf_new_from_file() for the error arg. * e-corba-utils.h: #include instead of . * Makefile.am: Removed bonobo-factory-util.c, bonobo-factory-util.h, e-categories-master-list-wombat.h, e-categories-master-list-wombat.c, e-dialog-utils.c, e-dialog-utils.h, e-proxy.c e-proxy.h for now. 2002-11-02 Rodrigo Moya * e-config-listener.[ch]: ported to GConf and GObject. 2002-11-01 Rodrigo Moya * e-config-listener.[ch]: * e-component-listener.[ch]: compilation fixes for GNOME 2 porting. 2002-10-24 Rodrigo Moya Fixes #32764 * e-config-listener.c (add_key): store the value returned by bonobo_event_source_client_add_listener, so that we can remove it later, when freeing the key structure. (free_key_hash): remove listener. (e_config_listener_set_boolean): (e_config_listener_set_float): (e_config_listener_set_long): (e_config_listener_set_string): only set the cache values if there's no exception. (e_config_listener_destroy): remove all keys before unrefing the db component. 2002-10-23 Dan Winship * ename/e-name-western.c: Cast chars to unsigned char before passing to ctype macros since they are not defined on negative numbers. Fixes parsing problems with names with accented characters on Solaris. (At least part of #32146) 2002-09-25 Rodrigo Moya * e-component-listener.c (ping_component_callback): added a comment about the fix for #30918. 2002-09-23 Rodrigo Moya * e-component-listener.c (ping_component_callback): gtk_object_ref the component listener before emitting the "component_died" signal, since in most cases, the component listener will be destroyed in the callbacks for that signal. 2002-09-22 Dan Winship * e-config-listener.c: Fix some non-ANSI switch statements * e-path.c: #include for OS X 2002-09-11 Chris Toshok [ Fixes #27546 ] * ename/e-name-western-tables.h (e_name_western_complex_last_table): add "di" to e_name_western_complex_last_table. 2002-09-05 Rodrigo Moya * e-config-listener.c (e_config_listener_set_boolean, e_config_listener_set_float, e_config_listener_set_long, e_config_listener_set_string): update the local copy (if we've got one) so that we don't return values if asked before getting the change notification. 2002-09-04 Dan Winship * e-time-utils.c (e_mktime_utc): New. Like mktime(3), but assumes the input time is UTC. (e_localtime_with_offset): New. Like localtime_r(3), but also returns an offset from UTC. 2002-08-29 Dan Winship * e-list.c (e_list_destroy): Don't call g_list_foreach with the free func if the free func is NULL. 2002-08-28 Jeffrey Stedfast * e-html-utils.c (e_text_to_html_full): Convert file: urls too. Fixes bug #29557. * e-proxy.[c,h] (e_proxy_init): New convenience function to initialise the proxy settings for soup to use. 2002-08-27 Rodrigo Moya * e-config-listener.c[ch] (e_config_listener_get_float_with_default, e_config_listener_set_boolean, e_config_listener_set_float): new functions. (property_change_cb, add_key): added support for FLOAT values. (e_config_listener_set_string): free strings before returning. 2002-08-26 Peter Williams * e-dialog-utils.c (set_transient_for_gdk): If gdk_window_foreign_new returned NULL, we're probably screwed, but try to avoid a segfault. (Preemptive fix suggested by kmaraas). 2002-08-26 Rodrigo Moya * e-config-listener.c (e_config_listener_get_string_with_default): call g_strdup in the correct place, or we'll return the internal copy. 2002-08-26 Rodrigo Moya * e-config-listener.c (e_config_listener_set_long): only set the key if the value is different from what we've already read from the database, to avoid extra change notifications. (e_config_listener_set_string): likewise. 2002-08-22 Rodrigo Moya * e-config-listener.[ch]: added "key_changed" signal to class. (property_change_cb): emit "key_changed" signal. (e_config_listener_set_long): new function. (e_config_listener_get_long_with_default): new function. 2002-08-22 Dan Winship * e-path.c (e_path_rmdir): Remove an e_path directory, and its parent "subfolders" dir if it's now empty. 2002-08-22 JP Rosevear * e-time-utils.c (e_time_parse_date): if the year was two digits, add the current century Fixes # 17252 2002-08-16 Rodrigo Moya * e-config-listener.[ch]: new class for config database access and monitoring. * Makefile.am: added new files. 2002-08-14 Rodrigo Moya * e-component-listener.[ch]: new class for controlling a component, to detect when it dies. 2002-08-01 Dan Winship * e-html-utils.c (is_citation): Remove the logic that assumes "Rupert> " is a citation, since it misfires more often than it hits. 2002-07-31 Dan Winship * e-html-utils.c (is_addr_char, is_trailing_garbage): Don't use "isprint(c)" to mean "c >= 32 && c < 128" since it doesn't in most locales. (is_domain_name_char): new macro for dns-valid characters (email_address_extract): Use is_domain_name_char rather than is_addr_char for the part after the @. 2002-07-30 Jeffrey Stedfast * e-host-utils.c (e_gethostbyname_r): If the user has enabled IPv6 support, use getaddrinfo to resolve hostnames and then manually fit the result into a struct hostent. (e_gethostbyaddr_r): Same. 2002-07-25 Not Zed * e-msgport.c (e_dlist_length): Return the actual count, rather than always 0! 2002-07-03 Peter Williams * Makefile.am: Install libeutil, libeconduit, and libedb3util and their headers. 2002-07-15 Not Zed * e-sexp.c (term_eval_caststring): Cast to a string type. (term_eval_castint): Cast to an int type. (symbols[]): Add to symbol table. 2002-07-09 Dan Winship * e-categories-config.c: #include 2002-07-02 Rodrigo Moya * e-categories-config.c (e_categories_config_get_icon_for): changed to return a gboolean (TRUE if the icon is found, FALSE if not). 2002-06-07 Not Zed * e-dialog-utils.c (e_gnome_warning_dialog_parented): (e_gnome_ok_cancel_dialog_parented): Use connect_while_alive, so we're not called after we've quit. See bug #15397. 2002-06-03 Not Zed * e-msgport.c (e_msgport_wait): Protect against EINTR (irix?), see bug #24086. 2002-05-07 Ettore Perazzoli * e-corba-utils.c (e_safe_corba_string_dup): New. 2002-05-06 Not Zed * e-msgport.c (e_thread_destroy): Destroy our mutex too. (e_thread_new): Add thread to a new list of all threads. (e_thread_destroy): Remove thread from list of all threads. (e_thread_busy): New function, returh true if we're busy somewhere processing work. 2002-04-19 Jeffrey Stedfast * e-passwords.c (e_passwords_get_password): Don't leak the base64 encoded password buffer. 2002-04-16 Jeffrey Stedfast * e-host-utils.c (e_gethostbyaddr_r): New wrapper around gethostbyaddr_r if the system has it, else a whole new implementation. 2002-04-11 Jeffrey Stedfast * e-sexp.c (parse_value): Handle parsing negative integers. 2002-03-29 JP Rosevear * e-dialog-utils.c (e_file_dialog_save): open a file selection dialog with the given title and return the selected file name (save_ok): if the ok button is clicked, make sure the file doesn't already exist and if it does, see if the user wants to over write it * e-dialog-utils.h: new proto 2002-03-22 Ettore Perazzoli * e-lang-utils.c: New. * e-lang-utils.h: New. 2002-03-22 Dan Winship * e-request.c (e_request_string): Document the fact that this takes two locale charset strings and one UTF8 string and returns a UTF8 string. (Huh.) 2002-03-04 Jeffrey Stedfast * e-mktemp.c: #include for strcmp. 2002-02-22 Dan Winship * e-html-utils.c (e_text_to_html_full): Fix for if the buffer ends with an email address (and no newline). 2002-02-09 JP Rosevear * e-pilot-settings.h: add row and column defines 2002-01-27 Ettore Perazzoli * ename/Makefile.am: Use E_NAME_CFLAGS and E_NAME_LIBS. * Makefile.am: Use E_UTIL_CFLAGS and E_UTIL_LIBS. 2002-01-14 JP Rosevear * Makefile.am: compile new files * e-pilot-settings.[hc]: beginnings of a general conduit configuration gui 2002-01-10 Christopher James Lahey * ename/e-name-western.c (e_name_western_word_is_suffix): Allow for a period after suffixes. Fixes Ximian bug #17012. 2002-01-04 Jeffrey Stedfast * e-memory.c (e_memchunk_clean): Prune free'd nodes from our free list otherwise we'll end up re-using free'd memory blocks and that's not a Good Thing (tm). 2002-01-02 Jeffrey Stedfast * md5-utils.h: Reverted. 2002-01-02 Jeffrey Stedfast * md5-utils.h: Move the struct into md5-utils.c - this is a kludgey hack around the fact that NSS also defines MD5Context. Besides, this should be a private struct anyway. 2002-01-02 JP Rosevear * e-dialog-utils.c (e_gnome_dialog_set_parent): util function moved from mail-callbacks, also destroys the dialog if the parent is destroyed (e_gnome_warning_dialog_parented): similarly (e_gnome_ok_cancel_dialog_parented): ditto * e-dialog-utils.h: new protos 2001-12-17 JP Rosevear * e-pilot-map.c (e_pilot_map_clear): clear all info from the map * e-pilot-map.h: add proto 2001-12-10 JP Rosevear * e-pilot-util.c (e_pilot_utf8_to_pchar): use UTF-8 instead of UTF8 as the source char set (e_pilot_utf8_from_pchar): use UTF-8 instead of UTF8 as the destination char set 2001-11-20 Dan Winship * e-passwords.c (e_passwords_forget_password): Clear the password in bonobo-conf as well. Fixes ximian 14893. 2001-11-13 Ettore Perazzoli * Makefile.am (libeutil_la_LIBADD): Remove `-lc'. It makes the mailer do strange things when it calls `fork()', thus breaking e.g. mail sending through sendmail. 2001-11-13 JP Rosevear * e-pilot-map.c (real_e_pilot_map_insert): only insert non-0 pids into the pid map (e_pilot_map_insert): remove and free old keys/values here - including possibly orphaned keys (e_pilot_map_remove_by_uid): only free things if they should have been found 2001-11-13 JP Rosevear * Makefile.am (libeutil_la_LIBADD): Explicitly add -lc 2001-10-30 Damon Chaplin * e-time-utils.c (e_time_parse_date): added a 2nd format, with the weekday and the date. We need this so we can try to parse DATE values in the ECalendarTable. 2001-10-29 Ettore Perazzoli * e-dialog-utils.c (e_set_dialog_parent): Remove a g_warning. 2001-10-29 Christopher James Lahey * ename/e-name-western.c (e_name_western_fixup): Added French conjunction. * e-host-utils.c: Don't define gethost_mutex unless we need it. 2001-10-29 Christopher James Lahey * ename/e-name-western.c: Cleaned this up a bit. 2001-10-29 Christopher James Lahey * ename/e-name-western.c (e_name_western_fixup): Check for compound first names here (X & Y). Fixes Ximian bug #13859. 2001-10-28 JP Rosevear * e-pilot-map.c (e_pilot_map_remove_by_pid): make sure to free the keys as well (e_pilot_map_remove_by_uid): ditto 2001-10-27 JP Rosevear * e-pilot-map.h: update proto * e-pilot-map.c (e_pilot_map_lookup_pid): touch the nodes if indicated and found (e_pilot_map_lookup_uid): ditto 2001-10-26 JP Rosevear * e-pilot-map.c (real_e_pilot_map_insert): take an extra param on whether to mark touched (map_sax_start_element): use above (e_pilot_map_insert): ditto (e_pilot_map_write): pass in extra info to foreach call (map_write_foreach): if we are in touched only mode, write out the map only if its been touched * e-pilot-map.h: add new member 2001-10-26 JP Rosevear * e-pilot-map.c (map_sax_start_element): add archived records with pilot id of 0 (map_write_foreach): use the uid map for writing (e_pilot_map_write): write using the uid map 2001-10-26 JP Rosevear * e-pilot-map.c (e_pilot_map_insert): free up old memory first (e_pilot_map_destroy): free allocated memory when destroying 2001-10-22 JP Rosevear * e-pilot-map.c (map_set_node_timet): plug leak 2001-10-23 Dan Winship * e-html-utils.c (e_text_to_html_full): Change " " to " " at start of line. 2001-10-22 Dan Winship * e-passwords.c (e_passwords_get_password): Pass a CORBA_Environment to bonobo_config_get_string so it doesn't g_warn on error. (Since the "error" is most likely just that the password isn't cached.) (e_passwords_remember_password, e_passwords_get_password, e_passwords_add_password): Change "if (foo) { entire function; }" to "if (!foo) return;" * e-html-utils.c (special_chars): Don't allow single quote or backtick in email addresses, or pipes following URLs. 2001-10-22 JP Rosevear * e-dbhash.c (e_dbhash_foreach_key): null out DBT memory prior to usage (from Edd Dumbill ) 2001-10-17 Ettore Perazzoli * e-dialog-utils.c (e_set_dialog_parent_from_xid): New. 2001-10-12 Chris Toshok * e-passwords.h: new parameter to e_passwords_init, and add prototype for e_passwords_clear_component_passwords. * e-passwords.c (e_passwords_init): copy off the component name. (e_passwords_shutdown): free/NULL the component name. (e_passwords_clear_component_passwords): new function. remove the subtree rooted at /Passwords/. (e_passwords_remember_password): use component_name when building up the path. (e_passwords_get_password): same. (e_passwords_add_password): remove/free the currently stored session password for this key if there is one, before adding the new one. 2001-10-11 Chris Toshok * e-passwords.h: change prototype for e_passwords_get_password. * e-passwords.c (e_passwords_get_password): remove 'const' from return type - the return type is now allocated and must be freed by the caller. 2001-10-11 Chris Toshok * e-passwords.c (e_passwords_init): open the bonobo config db for our passwords. (e_passwords_shutdown): sync and unref the bonobo db, and clear out the per session hash. (e_passwords_forget_passwords): remove the bonobo config db /Passwords path, and free up the session hash (but don't destroy it). (e_passwords_remember_password): remove the key/value from the session hash, after inserting it into the bonobo db. (e_passwords_get_password): look up a session password for the uri, and if it's not there, consult the bonobo db. (e_passwords_ask_password): quiet gcc's warnings, and only consult the toggle button state if we actaully created it. 2001-10-09 Rodrigo Moya * e-url.c (e_uri_to_string): don't add the host if it's null 2001-10-06 Christopher James Lahey * ename/e-address-western.c (e_address_western_parse): Made this refuse to parse more than 2047 characters of address. 2001-10-04 Dan Winship * e-passwords.c (e_passwords_add_password): Make this dup the strings it's passed. (*) Add lots of docs. 2001-10-03 Rodrigo Moya * e-url.c (e_uri_new): default protocol to file: if not specified 2001-10-02 Rodrigo Moya * e-url.c (e_uri_copy): duplicate also the params member 2001-10-02 Rodrigo Moya * e-url.[ch] (e_uri_copy, e_uri_to_string): new functions 2001-10-01 Rodrigo Moya * e-url.[ch]: added basic URI management functions * Makefile.am: added BONOBO flags to make it compile with latest Bonobo, which installs headers in a version-based directory 2001-10-01 Dan Winship * e-passwords.c (e_passwords_ask_password): New, copied/renamed from mailer and gnome-libs. 2001-09-30 Chris Toshok * Makefile.am (libeutil_la_SOURCES): add e-passwords.[ch] 2001-09-30 Chris Toshok * e-passwords.c: copy/rename the mail specific password stuff here. * e-passwords.h: same. 2001-09-28 * e-msgport.c (e_msgport_put): Write the pipe notification outside the lock. This way if the pipe fills up because of too many outstanding request, the queue isn't deadlocked. This only happens wiht 4096 outstanding messages, so something is getting VERY busy! Fixes #11121. 2001-09-24 Christopher James Lahey * e-categories-master-list-wombat.c (ecmlw_load, ecmlw_save): Make the printouts here conditionally compiled out. 2001-09-21 * e-msgport.c (e_thread_destroy): Instead of using pthread_cancel() which seems to have numerous implementation issues, send a special quit message to the subordinate thread. (thread_dispatch): When it gets a quit message, well, quit! 2001-09-18 Ettore Perazzoli * e-gtk-utils.c (widget_realize_callback_for_backing_store): Use ->bin_window [instead of ->window] if the widget is a GtkLayout. 2001-09-17 Damon Chaplin * e-time-utils.c (e_time_parse_date): only use 1 format, so we are consistent everywhere. If we support multiple formats we have to support that in e_time_parse_date_and_time() which means an explosion of different formats. I don't think the alternatives are that useful, anyway. (e_time_parse_date_and_time): parse everything in one go, to avoid i18n problems. Also only use '%p' if the locale has am/pm strings. (e_time_parse_time): Only use '%p' if locale has am/pm strings. 2001-09-17 Ettore Perazzoli * e-gtk-utils.c (gtk_radio_button_get_nth_selected): Removed. (gtk_radio_button_select_nth): Removed. (e_make_widget_backing_stored): New. 2001-09-13 Jeffrey Stedfast * e-mktemp.c (e_mktemp_cleanup): Make sure the dir pointer is non-NULL before using it. 2001-09-08 Dan Winship * e-html-utils.c (e_text_to_html_full): Fix some broken calls to check_size that could result in memory corruption displaying short replies. 2001-09-06 Dan Winship * e-html-utils.c (e_text_to_html_full): Add E_TEXT_TO_HTML_CITE, to prepend "> " to each line. 2001-09-05 Dan Winship * e-mktemp.c (get_path): Fix the check for the case when mkdir() returns EEXIST to check S_ISDIR on the right structure component. Fixes bug #8775. 2001-08-31 Federico Mena Quintero * e-time-utils.c (e_time_parse_date_and_time): Added format for "7 PM" and equivalents. Fixes bug #7456. (e_time_parse_time): Likewise. 2001-08-28 Not Zed * e-categories-master-list-wombat.c (ecmlw_load): Dont call g_print with a NULL string. See bug #7396. 2001-08-24 Jeffrey Stedfast * e-mktemp.c (get_path): Make more robust. 2001-08-24 Jeffrey Stedfast * Makefile.am: Added e-mktemp.[c,h] to the build. * e-mktemp.c (e_mktemp): A new wrapper around mktemp so that we can keep track of temp files for later cleanup. (e_mkstemp): Same but obviously for the mkstemp call. (e_mkdtemp): And finally a mkdtemp wrapper. 2001-08-24 Zbigniew Chyla * Makefile.am (libeutil_la_SOURCES): Added e-unicode-i18n.c and e-unicode-i18n.h. * e-unicode-i18n.[ch]: New files with two extra functions (e_utf8_gettext, e_utf8_dgettext) and U_() macro. Should be used instead of _() if we need UTF-8 string. 2001-08-23 Zbigniew Chyla * e-request.c (e_request_string): Modified to accept and return UTF-8 string. It's currently used only in shell/e-shortcuts-view.c and we need UTF-8 there. 2001-08-20 Damon Chaplin * e-time-utils.c (e_time_parse_date): added comments to help translators a bit. 2001-08-09 Rodrigo Moya * e-categories-config.c (e_categories_config_get_icon_for): return when there's no icon associated with the category * e-categories-config.c: reworked to use the ECategoriesMasterListWombat class. Also, load correctly images (fixes #6794) 2001-08-09 Federico Mena Quintero * e-categories-master-list-wombat.c (ecmlw_destroy): Chain to the destroy handler in the parent class! * e-list-iterator.c (e_list_iterator_destroy): Likewise. Sigh. * e-list.c (e_list_destroy): Likewise. Double sigh. 2001-08-08 Ettore Perazzoli * e-dialog-utils.h: New. * e-dialog-utils.c: New. 2001-08-04 Ettore Perazzoli * e-bonobo-factory-util.c (e_bonobo_generic_factory_multi_display_new): New function to create a factory that creates separate component instances for different displays. 2001-08-03 Christopher James Lahey * e-list-iterator.c (e_list_iterator_next): Made it so that e_list_iterator_next goes to the first element if it's set to NULL. This makes deleting the first element and then doing e_list_iterator_next go to the new first element. Did the analogy for e_list_iterator_prev for completeness and consistency's sakes. Fixes Ximian bug #6057. 2001-08-01 Christopher James Lahey * e-categories-master-list-wombat.c (ecmlw_load): Fixed the load statement here by just using array_from_string. (ecmlw_save): Removed the part where we save the icons and colors since that's handled in the array_to_string function. Fixes Ximian bug #4451. 2001-07-27 JP Rosevear * e-dbhash.c (string_to_dbt): memset everything to 0 (md5_to_dbt): ditto 2001-07-20 Rodrigo Moya * e-categories-config.c (initialize_categories_config): use the 2 new category icons (16_category_suppliers.png and 16_category_time-and-expenses.png) 2001-07-19 Rodrigo Moya * e-categories-config.c (initialize_categories_config): use the 2 new category icons * Makefile.am: s/imagedir/imagesdir 2001-07-17 Rodrigo Moya * e-categories-config.c (initialize_categories_config): generate default configuration for icons-per-category the first time. And use a global (for this file) Bonobo_ConfigDatabase 2001-07-16 Rodrigo Moya * e-categories-config.c (e_categories_config_get_icon_for): (e_categories_config_get_icon_file_for): (e_categories_config_set_icon_file_for): use GdkPixbuf to load images 2001-07-16 Federico Mena Quintero * e-time-utils.c (parse_with_strptime): Generalized function for trying a number of strptime() formats on a string. (e_time_parse_time): Use parse_with_strptime(). (e_time_parse_date): New function, analogous to the previous one, but uses a number of date formats. 2001-07-12 Federico Mena Quintero * e-time-utils.c (e_time_parse_date_and_time): If the string is empty, clear the struct tm before returning. 2001-07-12 Jon Trowbridge * e-html-utils.c: Added is_addr_char_no_pipes macro, which specifically does not consider '|' ("pipe") to be a legal address character. (email_address_extract): Use is_addr_char_no_pipes when looking for e-mail addresses to turn into HTML links. (Bug #3940) 2001-07-05 Not Zed * e-memory.c: Added some malloc check stuff. 2001-07-04 Rodrigo Moya * e-categories-master-list-wombat.c (ecmlw_load): load all icons and colors for each category (ecmlw_save): save all icons and categories associated with each category * e-categories-config.c: use BonoboConf to store/retrieve settings, and use ECategoriesMasterListWombat when creating a ECategories dialog widget 2001-07-02 Christopher James Lahey * Makefile.am (libeutil_la_SOURCES): Added e-categories-master-list-wombat.c and e-categories-master-list-wombat.h. (INCLUDES): Added $(BONOBO_CONF_CFLAGS). * e-categories-master-list-wombat.c, e-categories-master-list-wombat.h: New class implementing a master list that stores its state using bonobo-conf. 2001-07-02 Rodrigo Moya * e-categories-config.[ch]: new file for a set of functions for managing category-related (icons, colors) configuration 2001-07-01 Ettore Perazzoli * e-request.c: New. * e-request.h: New. 2001-06-25 Jeffrey Stedfast * e-sexp.c (term_eval_and): When ANDing two bools, don't use a bitwise AND. 2001-06-18 Dan Winship * Makefile.am: Split e-db3-utils and e-dbhash off into libedb3util so eutil won't depend on db3. 2001-06-15 Not Zed * e-sexp.c (parse_values): REmove a silly hardcoded term limit, oops forgot about that. 2001-06-11 Damon Chaplin * e-time-utils.c (e_time_parse_date_and_time): skip any non-digits while looking for dates and times. This should fix some translation problems. Though there is still a problem with Japanese, where the am/pm flag comes before the time so we will skip it incorrectly. 2001-06-10 Damon Chaplin * e-time-utils.c (e_time_parse_date_and_time): (e_time_parse_time): got rid of '%n' at end of each format string for strptime. I don't know how I managed to put them in there. 2001-05-31 Christopher James Lahey * Makefile.am (INCLUDES): Added db3 cflags. * e-dbhash.c: Made this use db3. * e-db3-utils.c, e-db3-utils.h: New files with some helper functions. 2001-05-27 Dan Winship * e-gui-utils.c: Remove e_pixmaps_update (moved to libeshell) so libeutil won't depend on bonobo. 2001-05-19 Ettore Perazzoli * e-host-utils.c (e_gethostbyname_r) [HAVE_GETHOSTBYNAME_R && GETHOSTBYNAME_R_FIVE_ARGS]: Set `*herr' to zero if the function returns a non-NULL pointer to the hostent. According to the docs, a returned non-NULL hostent always means "no error" no matter what the returned value of `herr' is. [And in fact, at least on libc 2.2.3, trying to resolve `localhost' sets herr to `HOST_NOT_FOUND' even if the name is resolved correctly and the returned hostent is non-NULL.] 2001-05-16 Dan Winship * e-html-utils.c (e_text_to_html_full): add E_TEXT_TO_HTML_ESCAPE_8BIT to turn non-US-ASCII characters into "?"s. 2001-05-14 Jon Trowbridge * e-html-utils.c (is_citation): Check for bad utf8. 2001-05-08 Dan Winship * e-path.c (e_path_find_folders): Walk a hierarchy using the "/subfolders/" convention and call a callback for each folder found. 2001-05-01 Dan Winship * e-msgport.c (e_mutex_assert_locked): Debugging routine. (Only works for recursive mutexes right now.) * e-html-utils.c (e_text_to_html_full): Don't use g_utf8_next_char on text that isn't valid UTF8, since it won't work (and might even get into an infinite loop). 2001-04-29 Dan Winship * e-html-utils.c (email_address_extract): Make this smarter. Now e_text_to_html_full calls it when it sees a '@', and email_address_extract deals with scanning both forward and backward to find the bounds of the email address. It's still fooled by Message-IDs, but there's not a whole lot we can do there... 2001-04-26 Dan Winship * e-host-utils.c (e_gethostbyname_r): Make the Solaris and no-gethostbyname_r implementations behave more like the Linux one. Document. * Makefile.am (INCLUDES): Remove UNICODE_CFLAGS (libeutil_la_LIBADD): Change UNICODE_LIBS to GAL_LIBS 2001-04-26 Not Zed * e-memory.c (e_poolv_get): Modified to match e_strv_get behaviour. Assert on bad cases, and return "" rather than NULL for empty/unset strings. (e_poolv_new): Simplify the mutex cases, only have a single mutex for mempool and hashtable references. (e_poolv_set): Simplify mutex code. Fixed a #ifdef orde prob in profile stuff. Always copy string to our own memory when we add it to the hash, even if we free it; I think this would have led to dangling references otherwise. (e_poolv_destroy): Renamed from poolv_free, for consistency with the rest of the allocators here. (e_poolv_set): Add optional refcounting code here, not currently enabled/used, but should make proper string collection work easily. (e_poolv_destroy): Unrefcount the strings here. (e_poolv_cpy): Add refcounting code here. * e-memory.[ch]: Applied Jacob's patches for 'e-poolv' type, added his name to the authors list. 2001-04-24 Dan Winship * e-html-utils.c (check_size): If the buffer is too small, making it twice as big does not guarantee it will be big enough. "Duh". Also, a bunch of the check_size calls don't seem to be taking trailing NULs into account, so add in a +1 here. 2001-04-24 Kjartan Maraas * e-gui-utils.c, e-memory, e-msgport.c, e-pilot-map, e-sexp.c: Added #include and move corresponding local headers to the top to catch missing includes in them. Tip from clahey. 2001-04-24 Chris Toshok * e-host-utils.h: remove prototype for e_gethostbyname_init. * e-host-utils.c (e_gethostbyname_r): don't dynamically allocate anything - store everything in the buffer that's passed in. Also, stop using EMutex. Switch to a static GMutex (so we can initialize it without having e_gethostbyname_init). (e_gethostbyname_init): removed. 2001-04-23 Jon Trowbridge * e-html-utils.c (e_text_to_html_full): Removed attempts to use Radek's evil hacks, which were just causing me (and GtkHTML) grief. 2001-04-23 Jon Trowbridge * e-host-utils.c: Include glib.h, so that the g_warning in e_gethostbyname_r will be treated as a macro and not as an unresolved symbol. 2001-04-22 Chris Toshok * Makefile.am (libeutil_la_SOURCES): add e-host-utils.[ch] * e-host-utils.c: new file, with e_gethostbyname_r. * e-host-utils.h: new file. 2001-04-19 Dan Winship * e-html-utils.c (is_citation): ">From" is not a citation unless the previous or following line is a citation. (e_text_to_html_full): Update for is_citation change. Also, when marking citations, unmangle mbox From-mangling. 2001-04-15 Federico Mena Quintero * e-sexp.c (e_sexp_parse): Start parsing the sexp with parse_value(), not parse_list(), because we may have immediate values (e.g. "#f") as the whole sexp. 2001-04-08 JP Rosevear * Makefile.am: Setup up the conduit library building better so the files get disted 2001-04-06 Federico Mena Quintero * e-sexp.c (scanner_config): Added a question mark to the set of valid characters for symbol names. (parse_value): Fixed parsing of boolean values. (parse_term_free): Added missing clause for ESEXP_TERM_BOOL. 2001-04-04 Kjartan Maraas * ename/test-ename-western-gtk.c: Fix headers. 2001-04-03 Federico Mena Quintero * e-sexp.h (ESExpResultType): Added ESEXP_RES_TIME for time values. (ESExpResult): Added a "time_t value.time" field. (ESExpTermType): Added ESEXP_TERM_TIME. (ESExpTerm): Added a "time_t value.time" field. * e-sexp.c (e_sexp_result_free): Deal with time values. Also, be more paranoid; added a default clause with g_assert_not_reached(). (term_eval_lt): Deal with time values. (term_eval_gt): Likewise. (term_eval_eq): Likewise. (term_eval_plus): Likewise. (term_eval_sub): Likewise. (e_sexp_term_eval): Likewise. (eval_dump_result): Likewise. (parse_dump_term): Likewise. (parse_term_free): Likewise. 2001-04-01 Gediminas Paulauskas * e-gui-utils.h: new type EPixmap, which is used to cache pixmaps for bonobo components. use e_pixmaps_update to load icons into ui component. * e-gui-utils.c: implementation of EPixmap cache, moved here from mail/folder-browser-factory.c. 2001-03-31 Jon Trowbridge * e-url.c (e_url_shroud): Check that first_colon < last_at, to prevent horrible things from happening. Removed spew. (e_url_equal): Removed spew. 2001-03-30 Jon Trowbridge * e-html-utils.c (e_text_to_html_full): Add support for converting e-mail addresses to links. (is_email_address): Added. Identifies e-mail addresses. (email_address_extract): Added. Extracts a copy of the e-mail address from the text. * e-html-utils.h (E_TEXT_TO_HTML_CONVERT_ADDRESSES): Added. * e-url.c (e_url_shroud): Added. Copy a url, replacing any plaintext passwords with a single *. (e_url_equal): Compare two urls, taking into account that they may or may not be shrouded. 2001-03-29 Kjartan Maraas * e-corba-utils.h: Remove #include * e-dialog-widgets.c: Shuffle some headers. * e-dialog-widgets.h: Remove #include * e-gtk-utils.c: #include * e-gtk-utils.h: Replace #include * e-gui-utils.c: Replace #include * e-html-utils.c: Shuffle headers. * e-iterator.c: Replace #include * e-iterator.h: Replace #include * e-list-iterator.c: Remove #include * e-list-iterator.h: Replace #include * e-list.c: Remove #include * e-list.h: Replace #include * e-memory.c: #include and * e-msgport.c: Move around some includes. s/%d/%ld/g in a printf() call to fix a warning. * e-pilot-map.c: #include . Replace #include * e-pilot-util.c: Remove #include * e-sexp.c: Remove #include * e-sexp.h: Replace #include * e-time-utils.c: #include * md5-utils.c: Shuffle headers. * test-ename-western-gtk.c: Replace #include * test-ename-western.c: Same here. 2001-03-20 Radek Doulik * e-html-utils.c (e_text_to_html_full): new function, extracted from e_text_to_html, added color parameter 2001-03-19 Radek Doulik * e-html-utils.c (e_text_to_html): support mark citation * e-html-utils.h (E_TEXT_TO_HTML_MARK_CITATION): added E_TEXT_TO_HTML_MARK_CITATION 2001-03-18 Damon Chaplin * e-time-utils.c (e_time_format_time): added function to format just the time. 2001-03-16 Dan Winship * e-path.c (e_path_to_physical): Fix a bug noticed by kmaraas 2001-03-15 Dan Winship * e-html-utils.c (url_extract): Fix a bit: [mailto:foo] shouldn't grab the ']' 2001-03-12 JP Rosevear * Makefile.am: update cflag macros 2001-03-07 Dan Winship * e-html-utils.c (url_extract): Fix an off-by-one in the "is this for real?" check so that "http:// " won't get URLified 2001-03-04 Damon Chaplin * e-time-utils.[hc]: new files to contain functions to parse and format dates and times for various calendar widgets. 2001-03-01 Dan Winship * e-path.c (e_path_to_physical): New function to turn foo/bar into foo/subfolders/bar. The inverse function doesn't exist yet because I didn't need it. Also, if the shell were going to use this, we'd need a few more tools... * Makefile.am (libeutil_la_SOURCES): Add e-path.[ch] 2001-03-01 Not Zed * e-sexp.c (e_sexp_encode_string): Make it handle a NULL string as an empty string. 2001-02-23 Not Zed * e-msgport.c (e_thread_destroy): Wait a lot lot longer for threads to finish. : Turned off some of the debug. 2001-02-08 Not Zed * e-memory.c (EMemChunk): Changed to allocate raw blocks for the data, and keep track of them with an array, this is so the native malloc alignment is not lost at the allocation stage. 2001-01-30 Not Zed * e-msgport.c (e_thread_destroy): Turn on joining of cancelled threads. (e_msgport_wait): Put a cleanup handler to clear the mp lock if it happens in cond_wait, since it will be locked again. 2001-01-29 Not Zed * e-msgport.c (e_thread_put): If we have waiting threads, then dont start a new one for the NEW case. (thread_dispatch): For the NEW case, dont exit, just keep running, waiting for a new message to come along. (e_thread_destroy): When cleaning up NEW threads, cancel any non-busy threads. 2001-01-24 Not Zed * e-sexp.h (ESExp): Add chunk allocators. * e-sexp.c: Removed some redundant debug printfs. (e_sexp_term_eval): Dont allocate result till we have it. so we can have a fatal error, and not leak it. (term_eval_plus): If we have to abort, free our arguments. (term_eval_sub): Same. (parse_new_term): Renamed to parse_term_new for consistency. Fixed callers. (e_sexp_result_new): Add the esexp as an argument. Ouch, lots of code to change for this. Allocate blocks from an ememchunk. Fixed all callers. (e_sexp_result_free): Same as above, free blocks from the ememchunk. Fixed all callers. (parse_term_new): (parse_term_free): Similarly, add the esexp to the argument, and alloc/free from memchunks. Fixed all local callers. (e_sexp_init): Setup the memory chunk allocators. (e_sexp_finalise): Destroy memchunk allocators. 2001-01-23 Not Zed * e-sexp.c (e_sexp_parse): Setup error return and return error on parse error. (parse_list): Fail if we have a problem. (parse_value): Here too. (fatal_error): Fatal error handling function, jumps back to the top caller. (term_eval_and): (e_sexp_term_eval): (term_eval_sub): (term_eval_plus): (term_eval_gt): (term_eval_lt): (term_eval_or): Fail on error. (e_sexp_term_eval): Added a comment about where this can be called, which is only from inside e_sexp_eval(). (e_sexp_eval): Setup setjmp error handler. (e_sexp_error): Error accessor function. * e-sexp.h: Added a longjmp environment to the structure, and an error return to parse. 2001-01-22 JP Rosevear * e-dbhash.c (md5_to_dbt): New function, can't use strlen on the md5 hash because it might have null chars in it. (e_dbhash_add): use md5_to_dbt 2001-01-19 JP Rosevear * e-pilot-map.c (e_pilot_map_remove_by_pid): Remove an item by pid (e_pilot_map_remove_by_uid): ditto for uid * e-pilot-map.h: new protos 2001-01-17 Jason Leach * e-gtk-utils.c (gtk_radio_button_get_nth_selected): New function, name describes it well. (gtk_radio_button_select_nth): New function. 2001-01-17 Federico Mena Quintero * e-dialog-widgets.[ch]: Ximianified. 2001-01-15 JP Roseveaer * e-pilot-util.c (e_pilot_utf8_from_pchar): Dup the string passed in, not the temporary string. d'oh. 2001-01-04 Dan Winship * e-msgport.c: #define E_THREAD_NONE as ((pthread_t)~0) and use that instead of ~0 throughout. (pthread_t is a pointer type on my system, so there are lots of warnings without the cast.) 2000-12-24 Not Zed * Merge from camel-mt-branch. 2000-12-20 JP Rosevear * e-pilot-util.c (e_pilot_utf8_to_pchar): Check for null strings (e_pilot_utf8_from_pchar): ditto 2000-12-19 JP Rosevear * e-pilot-util.c (e_pilot_utf8_to_pchar): Convert utf8 strings to pilot character set (e_pilot_utf8_from_pchar): vice versa * Makefile.am: Conditionally build e-pilot-util.[hc] because they depend on pilot-link stuff 2000-12-23 Not Zed * e-msgport.c (e_dlist_length): Util function. (e_thread_new): Another new thread primitive. This one is a re-usable 'server thread' thingy. 2000-12-21 Not Zed * Makefile.am (libeutil_la_SOURCES): Added msgport stuff. * e-msgport.[ch]: Some thread primitives. e_dlist, a double-linked list (ok, not a thread primitive, but used in ...), e_msgport - an asynchronous, non-copying message passing rendesvous port, and e_mutex, a portably configurable mutex. 2000-12-19 Not Zed * e-sexp.c: Make the code compile without being a gtk object (the old code can still be built as a gtk object if required). Also removed some dead code. (e_sexp_ref): New function to ref if we're not a gkt object. (e_sexp_unref): Same for unref. 2000-12-13 Larry Ewing * e-html-utils.c (e_text_to_html): make sure we actually make enough space for " ". 2000-12-08 Federico Mena Quintero * e-dialog-widgets.c (e_dialog_editable_get): Updated documentation comment. 2000-12-04 Ettore Perazzoli * e-corba-utils.h: New. * e-corba-utils.c: New. (e_safe_corba_string): New. 2000-11-30 Not Zed * e-memory.c (e_strv_new): Fix typename of args (for all funcs). (e_strv_set_ref): Assert the index is in range. (e_strv_set_ref_free): " (e_strv_set): " (e_strv_get): " 2000-11-29 Not Zed * e-sexp.c (term_eval_lt): Plug a memleak, need to free results from term_eval(). (term_eval_gt): (term_eval_eq): 2000-11-27 Not Zed * e-memory.c (e_mempool_new): Added some locking to global data. This should make the interfaces mt-safe, although each object is only per-thread safe. 2000-11-22 Not Zed * e-memory.c (e_mempool_alloc): If we dont get a big enough chunk in the first node, give up. Otherwise we spend too much time searching. (e_mempool_strdup): Doh, and allocate enough for the terminating NUL at that. (e_strv_set_ref_free): New function, set a reference to a string that is then owned/free'd by the strv. (e_strv_destroy): If there are any strings to destroy, free them here. 2000-11-21 Not Zed * e-memory.c (e_memchunk_alloc0): New function to allocate a zero'd out chunk. (e_mempool_strdup): New function to strdup into a mempool. 2000-11-20 Not Zed * e-memory.[ch]: New routines for fast memory management and compact string array storage. * Makefile.am (libeutil_la_SOURCES): Added e-memory.[ch]. 2000-11-09 JP Rosevear * e-dbhash.h: oops thats func not *func * e-dbhash.c (e_dbhash_foreach_key): Memset the data DBT to 0 2000-11-07 JP Rosevear * Makefile.am: Build e-dbhash.[hc] * e-dbhash.[hc]: New routines to manage a db database on disk that contains md5 hashed data and indexed by uids. Provides comparison functions and such so the caller does not have to do the md5 bits. 200-10-30 Kjartan Maraas * e-dialog-widgets.c: #include to quench warning. * e-sexp.c: #include for same reason. 2000-10-27 * Makefile.am: build md5-utils * md5-utils.c: Make part of util, get rid of camel stream util function include string.h * md5-utils.h: ditto 2000-10-27 * e-pilot-map.c (e_pilot_map_lookup_uid): Return null if no pnode was found. 2000-10-27 JP Rosevear * e-pilot-map.c (map_sax_start_element): Get archive field while parsing (map_write_foreach): Write out archive field (e_pilot_map_pid_is_archived): implement (e_pilot_map_uid_is_archived): ditto (e_pilot_map_insert): Insert new node structures (e_pilot_map_lookup_pid): Take into account the list is now a list of structures (e_pilot_map_lookup_uid): ditto 2000-10-26 Michael Meeks * ename/e-address-western.c (e_address_western_is_postal): unsigned chars. * ename/e-name-western.c (e_name_western_get_one_prefix_at_str): cast to unsigned char. 2000-10-25 Dan Winship * e-html-utils.c (e_text_to_html): Deal properly with URLs at the end of the buffer. (The old code would append a "�" to the text.) 2000-10-23 JP Rosevear * e-pilot-map.c (e_pilot_map_lookup_pid): Lookup a pid by uid. (e_pilot_map_lookup_uid): Lookup a uid by pid. Now this is wrapped, we can store archive info internally * e-pilot-map.h: New accessor prototypes 2000-10-23 Dan Winship * ename/Makefile.am (INCLUDES): Remove unused GNOMELOCALEDIR setting. 2000-10-23 JP Rosevear * e-pilot-map.c: Operate with EPilotMap structure so things are abstract to the caller (e_pilot_map_pid_is_archived): Infrastructure for marking records as archived (e_pilot_map_uid_is_archived): ditto * e-pilot-map.h: Add more to public interface, including EPilotMap structure 2000-10-23 JP Rosevear * e-pilot-map.c: Pilot map functions grabbed from existing conduits * e-pilot-map.h (e_pilot_map_write): Header 2000-10-18 Dan Winship * e-html-utils.c (e_text_to_html): If unicode_get_utf8 returns -1, assume it was actually undeclared iso-8859-1 text. 2000-10-17 Jesse Pavel * ename/e-address-western.c: made the routines use the stardard e_strstrcase instead of the included function that existed earlier. 2000-10-11 Iain Holmes * ename/e-address-western.c (e_address_western_parse): g_strconcat needs to be NULL terminated or it goes funny. Tue Sep 26 16:48:49 2000 Christopher James Lahey * Makefile.am: Added $(EXTRA_GNOME_CFLAGS). 2000-09-25 Jeffrey Stedfast * Makefile.am: add ename as a SUBDIR 2000-09-18 Christopher James Lahey * e-list-iterator.c, e-list.c, e-list.h: Made e_list a bit more reentrant. If a iterator gets its data pulled out from under it while in a loop, it goes back one so that loops will be able to continue. 2000-09-18 Christopher James Lahey * Makefile.am: Removed all the files moved to gal. * e-dialog-widgets.c: Fixed the #include lines to deal properly with gal. * e-gui-utils.c, e-gui-utils.h: Removed all of the functionality that was moved to gal. * e-canvas-utils.c, e-canvas-utils.h, e-canvas-vbox.c, e-canvas-vbox.h, e-canvas.c, e-canvas.h, e-cursors.c, e-cursors.h, e-font.c, e-font.h, e-popup-menu.c, e-popup-menu.h, e-printable.c, e-printable.h, e-unicode.c, e-unicode.h, e-util.c, e-util.h, e-xml-utils.c, e-xml-utils.h: Moved to gal. 2000-09-13 Christopher James Lahey * e-font.c: Fixed an uninitialized variable. 2000-09-12 Lauris Kaplinski * e-unicode.c (e_utf8_to_gtk_string_sized): Use underscores for untranslatable characters (e_utf8_from_gtk_string_sized): Ditto 2000-09-12 Dan Winship * e-font.c (e_font_from_gdk_font): Change this a bit so that if you pass it a bold font, it puts that in font->bold and finds a lighter font for font->font (if it can). This is for themes like Metal where the default font is bold. (find_variants): renamed from find_best_bold 2000-09-11 Dan Winship * e-font.c (find_best_bold): Thou shalt leave space for the trailing \0. * e-util.c (e_strstrcase): The return value should not be const. (Well, unless the input was, but you can't know that.) 2000-09-11 Christopher James Lahey * e-unicode.c, e-unicode.h: Added e_utf8_gtk_editable_get_text and e_utf8_gtk_editable_set_text. 2000-09-11 Lauris Kaplinski * e-font.c: Try to find real bold variant of X font, fall to double stroke only if not found 2000-09-10 Ettore Perazzoli * e-gtk-utils.c: New. (e_gtk_signal_connect_full_while_alive): New. * e-gtk-utils.h: New. 2000-09-08 Lauris Kaplinski * e-font.c: Use experimental 16-bit font stuff for EFonts 2000-09-08 Dan Winship * e-popup-menu.h: remove consts from the EPopupMenu structure: the caller may want to modify its own EPopupMenu before calling e_popup_menu_run. 2000-09-07 Lauris Kaplinski * e-dialog-widgets.c (e_dialog_editable_get): Use UTF-8 (e_dialog_editable_set): Use UTF-8 * e-font.c (translate_encoding): More encodings (e_gdk_font_encoding): Use experimental stuff * e-unicode.* (e_utf8_gtk_editable_insert_text): New wrapper 2000-09-07 Federico Mena Quintero * e-canvas.c (emit_event): Remove incorrect optimization. Events are read-only! 2000-09-04 Lauris Kaplinski * e-unicode.c: Added new font code, but comment it out now * e-font.h, e-font.c: Test code for font analyzing 2000-09-02 Lauris Kaplinski * e-unicode.h, e-unicode.c: New functions e_utf8_gtk_clist_append, e_utf8_gtk_clist_set_text e_unicode_init 2000-08-31 Lauris Kaplinski * e-html-utils.c (e_text_to_html): Use UTF-8 * e-unicode.h: * e-unicode.c (g_unichar_to_utf8): glib 1.3 function (gdk_keyval_to_unicode): gdk 1.3 function (e_utf8_from_gdk_event_key): Use keyval, not string 2000-08-30 Lauris Kaplinski * e-unicode.h: #define gnome_font_get_size and gnome_font_get_width, and gnome_font_lookup_default, if compiling with gnome-print 0.20 2000-08-30 Dan Winship * Makefile.am (libeutil_la_LIBADD): make e-util depend on libunicode * e-popup-menu.c (make_item): Use GtkMenuItem rather than GtkPixmapMenuItem for items with no pixmaps, so that if the whole menu is pixmapless, you don't get a column of blank pixmaps. 2000-08-24 Lauris Kaplinski * e-unicode.h: * e-unicode.c (e_utf8_gtk_menu_item_new_with_label): New wrapper 2000-08-23 Lauris Kaplinski * e-unicode.h: * e-unicode.c (e_utf8_strstrcase): New function 2000-08-23 Federico Mena Quintero * e-dialog-widgets.c (e_dialog_editable_set): Constify. 2000-08-22 Lauris Kaplinski * e-unicode.h: * e-unicode.c: e_utf8_gtk_editable_get_chars e_utf8_gtk_entry_get_text e_utf8_gtk_entry_set_text e_utf8_to_gtk_string: New convenience functions 2000-08-22 Lauris Kaplinski * e-unicode.h: * e-unicode.c: Some convenience functions to deal with Gtk+ and UTF-8 * Makefile.am: Added e-unicode.h, e-unicode.c 2000-08-21 Lauris Kaplinski * e-font.h: * e-font.c: Changed UTF-8 syntax from char-based to byte-based 2000-08-21 Peter Williams * e-html-utils.c (e_text_to_html): Fix a booboo in the tab expansion code (didn't use the new value of 'out'). 2000-08-19 Lauris Kaplinski lauris@helixcode.com * e-font.h: #define e_font_height(f) to save some space 2000-08-19 Lauris Kaplinski lauris@helixcode.com * e-font.h: * e-font.c: Thin wrapper around GdkFont to deal with UTF-8 directly Also handles bold/italic styling 2000-08-14 Peter Williams * e-sexp.c (scanner_config): Add "-" to be an acceptable first character for an operation -- yaaay subtraction! 2000-08-11 Peter Williams * e-html-utils.c (e_text_to_html): Fix the tab expansion for when the length would exceed the ten characters that we allocated. 2000-08-10 Dan Winship * e-setup.[ch]: Remove. The shell tells the components where the evolution homedir is now. * Makefile.am (libeutil_la_SOURCES): Remove e-setup.c * e-html-utils.c (e_text_to_html): If converting both spaces and newlines, then convert tabs too. The joys of pseudo-
.

2000-08-09  Christopher James Lahey  

	* e-popup-menu.c: Fix the bug where it truncates the last item

2000-08-09  Christopher James Lahey  

	* e-popup-menu.c: Ooops.

2000-08-09  Christopher James Lahey  

	* e-util.c, e-util.h: Added uncompiled e_read_uri function.

2000-08-09  Christopher James Lahey  

	* e-popup-menu.c, e-popup-menu.h: Added a hide_mask argument to
	the two popup menu functions.

2000-08-07  Christopher James Lahey  

	* e-gui-utils.c, e-gui-utils.c: Added
	e_container_change_tab_order.

2000-07-27  Peter Williams  

	* e-canvas.c (e_canvas_destroy): Chain the
	destroy handler.
	
2000-07-25  Peter Williams  	
	
	* e-canvas.c (emit_event): Don't bother with 
	dereferencing the event pointer.
	(e_canvas_item_set_cursor): Reference our selection
	item; print a debug message. Deref when destroying
	(e_canvas_item_add_selection): Same.
	(e_canvas_item_remove_selection): Same.
	
2000-07-25  Peter Williams  

	* Makefile.am (libeutil_static_la_LDFLAGS): Build both libraries
	(a typo didn't build libeutil.la, only -static.)

2000-07-25  Seth Alves  

	* Makefile.am (libeutil_static_la_LDFLAGS): build static version
	of library for conduit to use

2000-07-25  Christopher James Lahey  

	* e-util.c, e-util.h: Added a bunch of e_marshal functions.

2000-07-12  Christopher James Lahey  

	* e-util.c, e-util.h: Added e_strstrcase function.

2000-07-11  Christopher James Lahey  

	* e-canvas-vbox.c: Removed some debugging printfs.
	
	* e-canvas.c (e_canvas_unrealize): Call parent unrealize method.

2000-07-10  Ettore Perazzoli  

	* e-sexp.c (eval_dump_result): `#if 0'ed out.

	* e-popup-menu.h (e_popup_menu_create): New prototype.

2000-07-10  Dan Winship  

	* e-html-utils.c: Fix warnings.

2000-07-08  Christopher James Lahey  

	* e-list.c, e-list.h: Added e_list_duplicate.

2000-07-07  Christopher James Lahey  

	* e-util.c, e-util.h: Added e_strsplit to work around a bug in
	g_strsplit.

2000-07-07  Christopher James Lahey  

	* e-iterator.c, e-iterator.h, e-list-iterator.c,
	e-list-iterator.h: Added last and insert functions.

2000-07-06  Federico Mena Quintero  

	* e-dialog-widgets.c: Added docstrings.  This file did not have
	them at all.  EEEEEEK!

2000-07-05  Dan Winship  

	* e-sexp.c (e_sexp_parse): Kill debugging message

2000-07-03  Christopher James Lahey  

	* e-iterator.c, e-iterator.h, e-list-iterator.c,
	e-list-iterator.h, e-list.c, e-list.h: New list class with
	iterators.

	* e-canvas.c: Made it so that you don't get the same selection in
	the selection list more than once.

2000-07-01  Ettore Perazzoli  

	* e-gui-utils.h: #include .  It's
	needed to be able to pass an appropriate @type arg to
	`e_notice()'.

2000-06-29  Jody Goldberg 

	* e-canvas.c (e_canvas_init) : Init the InputContext members
	(e_canvas_class_init) : Add a handler for unrealize.
	(e_canvas_focus_in) : enable the input context.
	(e_canvas_focus_out) : enable the input context.
	(e_canvas_realize) : Create an input context.
	(e_canvas_unrealize) : New function to release the input context.

2000-06-28  Dan Winship  

	* e-html-utils.c (url_extract): add ")" to the set of characters
	to back up over at the end of a potential URL.

2000-06-27  Ettore Perazzoli  

	* e-dialog-widgets.c (get_toggle_value): Use `value_var', not
	`value'.

2000-06-27  Ettore Perazzoli  

	* Makefile.am (INCLUDES): `-I$(top_srcdir)' to fix compilation
	with builddir != srcdir.

2000-06-26  Christopher James Lahey  

	* Makefile.am: Added e-canvas-vbox.c and e-canvas-vbox.h.

	* e-canvas-vbox.c, e-canvas-vbox.h: New canvas object to act like
	a vbox using the reflow system.

2000-06-20  Christopher James Lahey  

	* e-canvas.c, e-canvas.h: Added a variable to keep track of the
	cursor.  Set the cursor when selection_add is called.  Properly
	unset the cursor at the right times.

2000-06-20  Christopher James Lahey  

	* e-canvas.c: Grab the focus when setting the cursor.

2000-06-20  Christopher James Lahey  

	* e-canvas.c, e-canvas.h: Built a system for doing selections
	and/or a cursor in canvas.

2000-06-13  Christopher James Lahey  

	* e-util.c, e-util.h: Changed the needed e_marshal functions.

	* e-printable.c, e-printable.h: Added a quantize parameter to
	e_printable_height.  Also, added a e_printable_will_fit function.
	
2000-06-10  Christopher James Lahey  

	* Makefile.am: Added e-printable.c and e-printable.h.

	* e-printable.c, e-printable.h: This new class is a printing
	context.  Other classes return an EPrintable which represents a
	context for printing that object.

	* e-util.c, e-util.h: Added
	e_marshal_NONE__OBJECT_DOUBLE_DOUBLE_BOOL and
	e_marshal_DOUBLE__OBJECT_DOUBLE_DOUBLE.

2000-06-01  Christopher James Lahey  

	* e-util.c: Fixed e_marshal_INT__INT_INT_POINTER.

2000-06-01  Christopher James Lahey  

	* e-util.c, e-util.h: Added e_marshal_INT__INT_INT_POINTER.

2000-06-01  Dan Winship  

	* e-util.c (g_int_compare): Duh! -1 != 1. :)

2000-06-01  Christopher James Lahey  

	* e-sexp.c (e_sexp_term_eval): g_return_val_if_fail to prevent a crash.

2000-05-30  Not Zed  

	* e-sexp.c (e_sexp_encode_bool): Utility function to build a bool
	as part of an expression string.
	(e_sexp_encode_string): Likewise for strings.

2000-05-30  Christopher James Lahey  

	* e-canvas-utils.c, e-canvas-utils.h: Added
	e_canvas_item_show_area which makes sure that a particular area of
	a given item is in the scroll area.

2000-05-30  Federico Mena Quintero  

	* e-dialog-widgets.c (hook_radio): Use the exported function to
	set the value.
	(get_radio_value): Likewise.
	(hook_option_menu): Likewise.
	(get_option_menu_value): Likewise.
	(hook_toggle): Likewise.
	(get_toggle_value): Likewise.
	(hook_spin_button): Likewise.
	(get_spin_button_value): Likewise.
	(hook_editable): Likewise.
	(get_editable_value): Likewise.
	(e_dialog_radio_set): Radio buttons are prepended to their parent
	group's list, so we need to flip the index around when
	getting/setting the value.
	(e_dialog_radio_get): Likewise.

2000-05-27  Federico Mena Quintero  

	* e-dialog-widgets.c (e_dialog_editable_set): Moved over from
	event-editor-utils.c.
	(e_dialog_editable_get): Likewise.
	(e_dialog_toggle_set): Likewise.
	(e_dialog_toggle_get): Likewise.
	(e_dialog_spin_set): Likewise.
	(e_dialog_spin_get_double): Likewise.
	(e_dialog_spin_get_int): Likewise.
	(e_dialog_option_menu_set): Likewise, and added a value map.
	(e_dialog_option_menu_get): Likewise.
	(e_dialog_dateedit_set): Likewise.
	(e_dialog_dateedit_get): Likewise.
	(e_dialog_radio_set): New function.
	(e_dialog_radio_get): New function.

2000-05-24  Christopher James Lahey  

	* e-paned.c, e-paned.h: Removed.

2000-05-23  Federico Mena Quintero  

	* e-dialog-widgets.c (get_radio_value): Implemented.  Amazing that
	one has to go through so much pain to get a stupid value from
	GTK+.
	(hook_option_menu): Implemented.  Same complaint.
	(get_toggle_value): Implemented.
	(get_spin_button_value): Implemented.
	(get_entry_value): Implemented.
	(e_dialog_widget_hook_value): Function to hook a widget to the
	variable it will modify.
	(e_dialog_get_values): Function to feed the variables from a
	dialog's widgets.
	(e_dialog_xml_widget_hook_value): Function to hook a widget from
	a Glade file.

2000-05-23  Christopher James Lahey  

	* e-util.c, e-util.h: Added e_write_file.

2000-05-19  Federico Mena Quintero  

	* e-dialog-widgets.[ch]: New files with utilities for hooking up
	widgets in Glade-generated dialogs.

	* Makefile.am (libeutil_la_SOURCES): Added e-dialog-widgets.[ch].

2000-05-19  Christopher James Lahey  

	* e-gui-utils.c, e-gui-utils.h: Added e_container_foreach_leaf.

2000-05-18  Christopher James Lahey  

	* Makefile.am: Add imagesdir support.

	* e-gui-utils.c, e-gui-utils.h: Added e_create_image_widget for
	glade use.

2000-05-16  Christopher James Lahey  

	* e-xml-utils.c: xmlGetProp appears to return malloced memory.
	Thus we must free it.

2000-05-15  Ettore Perazzoli  

	* e-util.c (e_free_string_list): New function.

2000-05-14  Christopher James Lahey  

	* e-util.c, e-util.h: Added e_strdup_strip which returns a copy of
	the string with the leading and trailing spaces removed.

2000-05-11  NotZed  

	* e-sexp.c (e_sexp_finalise): Destroy the g_scanner when cleaning up.
	(e_sexp_finalise): Free symbol table on finalise.

2000-05-09  Christopher James Lahey  

	* e-canvas.c: Remove reflow idle when being destroyed.

2000-05-06  Christopher James Lahey  

	* e-html-utils.c: Got rid of some warnings.

	* e-util.c, e-util.h: Added e_read_file which takes a filename and
	returns a newly allocated string containing the contents of that
	file.

2000-05-03  Ettore Perazzoli  

	* e-util.h: #include  and .

	* e-util.c (e_free_object_list): New utility function.

2000-05-02  Damon Chaplin  

	* e-canvas.c (e_canvas_focus_in): 
	(e_canvas_focus_out): set and reset the GTK_HAS_FOCUS flag. We now get
	focus_out events correctly.

2000-05-02  NotZed  

	* e-sexp.c (e_sexp_finalise): Free the parse tree if we have one.
	(e_sexp_parse): If we already have a parse tree, free it.

2000-05-02  Matt Loper  

	* Makefile.am: set G_LOG_DOMAIN.

2000-05-01  Ettore Perazzoli  

	* e-xml-utils.c, e-xml-utils.h: Constified all the functions.

2000-04-27  Dan Winship  

	* e-html-utils.c (e_text_to_html): Moved here from the mailer,
	since it's of general use, and the composer needs it too.

2000-04-24  Miguel de Icaza  

	* e-popup-menu.c: New file.  Implements easy to use popup menus. 

2000-04-24  Matt Loper  

	* e-paned.c: New file. Makes a GtkPaned with more than two
	children.
	* e-paned.h: same.

	* Makefile.am: added e-paned.[ch].

2000-04-19  Christopher James Lahey  

	* e-xml-utils.c, e-xml-utils.h: Added
	e_xml_get_child_by_name_by_lang.

2000-04-16  Anders Carlsson  

      * e-canvas.c (e_canvas_class_init): Add realize.
      (e_canvas_realize): Set the back pixmap to NULL to reduce flicker.

2000-04-14  Christopher James Lahey  

	* e-xml-utils.c: Fixing a warning.

2000-04-14  Christopher James Lahey  

	* e-xml-utils.c: Add g_return_if_fails.

2000-04-12  Miguel de Icaza  

	* e-cursors.c (e_cursor_get): Prevent next hacker to get bitten by this.

2000-04-10  Christopher James Lahey  

	* e-canvas.c: Added proper keyboard focus handling.

2000-04-06  Matt Loper  

	* e-setup.c (e_setup_base_dir): Get/set Evolution's base directory
	via gnome-config.
	(mkdir_if_necessary): New function.
	(e_setup_base_dir): Use mkdir_if_necessary().

2000-03-22  NotZed  

	* e-util/e-sexp.h: Formatting cleanup.

2000-03-07  NotZed  

	* e-util/Makefile.am (libeutil_la_SOURCES): s-sexp.h -> e-sexp.h.

2000-03-12  Christopher James Lahey  
	
	* e-util/e-canvas.c, e-util/e-canvas.h: Fixed some bugs here to
	speed up reflow and to make it fail less often.

2000-03-10  Christopher James Lahey  

	* e-util/e-canvas.c, e-util/e-canvas.h: Designed a new system for
	doing hierarchical displays in the canvas.  Adds an extra idle
	loop to the canvas system.

2000-03-05  Christopher James Lahey  

	* e-util/e-xml-utils.c: Fixed e_xml_set_integer_prop_by_name.

2000-03-04  Christopher James Lahey  

	* e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added
	e_xml_set_integer_prop_by_name.

2000-02-28  NotZed  
	
	* e-util/e-sexp.[ch]: Added.  moved from filter-sexp.[ch]

	* e-util/Makefile.am (libeutil_a_SOURCES): Add e-sexp.
	(noinst_LTLIBRARIES): Changed to a libtool library.

2000-02-24  Christopher James Lahey  

	* e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added
	e_xml_get_integer_prop_by_name.

	* e-util/Makefile.am: Added e-util.c.

	* e-util/e-util.h: Added e-util.c functions.

	* e-util/e-util.c: New file for compare functions

2000-02-24  Christopher James Lahey  
	
	* e-util/e-canvas-utils.h: Fixed the comment at the top and added
	#ifndef __E_CANVAS_UTILS__.

	* e-util/Makefile.am: Added e-xml-utils.c and
	e-xml-utils.h.

	* e-util/e-xml-utils.h, e-util/e-xml-utils.c: Added files for some
	xml utilities.

	* e-util/e-util.h: Added type EFocus which describes which
	direction the focus will be coming from.

2000-02-23  Dan Winship  

	* e-util/e-setup.c (e_setup_base_dir): Make ~/evolution mode 700
	rather than mode 600 (and use the symbolic name rather than the
	number).
	
2000-02-09  Christopher James Lahey  
	
	* e-util/Makefile.am: Add canvas utilities to libeutil.