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.