1999-07-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Sort in alphabetical order.

	* src/print-info.c (print_hf_free): Killed the style_format feature.

	* src/print.c (print_job_info_get): Create render info context
	here for header/footer printing.
	(print_sheet_range): Setup number of pages here;  Increment pages
	after each one is outputed.
	(print_headers): Implemented the header/footer printing.

	* src/print-info.c (hf_render_info_new, hf_render_info_destroy):
	New routines.

	* src/fn-date.c (gnumeric_return_current_time): New function.

1999-07-09  Miguel de Icaza  <miguel@gnu.org>

	* configure.in (GNOMEGNORBA_LIBS): Simplified the Bonobo detection code.

1999-07-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/analysis-tools.c: Changed prototype of int_compare to
	eliminate a warning.

	Removed unused variables.

	* src/cell.c: #inlcude gnumeric-util to eliminate warning.

	* src/fn-financial.c: Fixed all the help strings to get the
	SEELASO correctly done

	* src/style.c: Zoom factor 1.0 is a reminder to me, not a warning.

1999-07-09  Miguel de Icaza  <miguel@gnu.org>

	* src/sheet-view.c (sheet_view_construct): Reverted last plan.  We
	do need a sheet_view_construct, as we require sheet_view->sheet to
	be set. 

1999-07-08  Miguel de Icaza  <miguel@gnu.org>

	* src/cell.c (calc_text_dimensions): Use gdk_fonts for measuring
	the strings on the screen.  Basically, back out using GnomeFont here.

	* src/print-info.c (render_date, render_time): Finished
	implementing.  
	(render_opcode): Enable argument mechanism to extend the number of
	possible formats.  Excel accepts stuff like &[DATE], we extend
	this to accept &[DATE:mmmm-yyyy].  The argument for &[DATE] and
	&[TIME] is a regular Gnumeric formatting code (ie, compattible
	with the cell formating in Excel).

	* src/sheet-view.h: Change style to suit forward declaration
	structure. 

	* src/sheet.h: Use forward declaration for SheetView.

	* src/sheet.c (sheet_new_sheet_view, sheet_destroy_sheet_view):
	New routines for managing the sheet views.

	* src/sheet-view.c: Killed sheet_view_construct, there was nothing
	really required there.  Moved all the code to sheet_view_init.
	(sheet_view_scrollbar_display, sheet_view_set_header_visibility):
	New routines that control the visibility of the various gadgets of
	a SheetView.

	* embeddable-grid.c, embeddable-grid.h: New files.  They implement
	the Bonobo GnomeEmbeddable interfaces for embedding Gnumeric in
	applications. 

	* src/workbook.c (workbook_new, workbook_core_new): Split this
	routine in two:  GUI independant and GUI dependant.  The next step
	is to provide multiple views of a workbook (although, I am not
	sure I want this).
	(workbook_new_with_sheets): Kill dead code.

	* src/corba-sheet.c (Sheet_row_height, Sheet_col_width,
	Sheet_max_cols_used, Sheet_max_rows_used): New methods.

	* src/Gnumeric.idl (Sheet): new methods max_cols_used,
	max_rows_used, col_width, row_height.

	(Grid): New interface for embeddable grids.

	* src/print-info.c (hf_format_render): Rendering routine for the
	header and footers formats. 

1999-07-09  Michael Meeks  <michael@edenproject.org>

	* src/Gnumeric.idl: Add GNOME::Unknown back in.

1999-07-09  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-analysis-tools.c, src/analysis-tools.c: Added an
 	option to all tools to print the results to a new workbook.
	
	* src/dialog-analysis-tools.c, src/analysis-tools.c: Added Moving
 	Average and Rank and Percentile tools.

1999-07-09  Michael Meeks  <michael@edenproject.org>

	* src/eval.c (add_value_deps): Add warning on default:
	(add_cell_range_deps): Fixup for correct inter-sheet
	dependencies; massive bug.

	* TODO: Updated.

	* doc/C/formulas.sgml: Wrote the 'name' documentation.

1999-07-08  Michael Meeks  <michael@edenproject.org>

	* src/func.c (function_iterate_do_value): Fix for NULL CellRef
	Sheet *, fallback to EvalPosition's Sheet *

	* src/fn-math.c (gnumeric_countif): ditto.

	* src/fn-math.c (gnumeric_seriessum): Add check for NULL nodes
	pointer.

1999-07-08  Jody Goldberg  <jgoldberg@home.com>

	* src/cell-draw.c (cell_split_text) : Honour embedded newlines.
	  Why do we call str_trim_spaces ?

	* src/print-cell.c (cell_split_text) : Ditto.  Adjust gnome-print to
	  make the code even more similar to cell-draw version.  Should we be
	  using double rather than int for width calculations ?
	  NOTE : This requires some recent (1999/7/7) changes to gnome-print.

	* src/cell.c (cell_comment_realize) : reference the comment object
	  to avoid verbose warnings when we exit.

1999-07-08  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* doc/C/analysis-tools.sgml: New file. Added documentation for the
 	following analysis tools: Correlation, Covariance, Descriptive
 	Statistics, Random Number Generation, Sampling, and F-Test.

	* src/dialog-analysis-tools.c: Added some default parameters for
 	the random number generation tool.

	* src/dialog-analysis-tools.c, src/analysis-tools.c: Started the
 	implementation of regression tool.  Feel free to fill in the rest
 	of the calculations if you are familiar with the regression
 	statistics.
	
1999-07-08  Michael Meeks  <michael@edenproject.org>

	* src/eval.c (add_tree_deps): Change exprt to expr_tree.

	* src/Gnumeric.idl: Removed : GNOME::Unknown from Workbook so
	people can compile for now.

1999-07-07  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (do_expr_decode_tree): Add vital translation stuff.

	* src/parser.y (return_name): Created.
	(try_symbol): Add name lookup.

	* src/eval.c (add_tree_deps): Calculate name dependencies if at all
	possible.

	* src/main.c (gnumeric_main): Add expr_name_init.

	* src/expr.c (expr_tree_new_name, do_expr_tree_unref),
	(eval_expr, do_expr_decode_tree, do_expr_tree_invalidate_references),
	(do_expr_tree_fixup_references, expr_dump_tree): Add OPER_NAME support
	in every case just after OPER_FUNCALL.

	* src/expr.h: Add ExprName struct, include and OPER_NAME.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Added expr_name.[ch]

1999-07-07  Miguel de Icaza  <miguel@gnu.org>

	* configure.in (EXTRA_GNOME_CFLAGS): Assemble all the flags we
	will be linking with here.X

	* src/Gnumeric.idl: Small typo fixes.

	* Killed liblgade from here, it is now a requirement.

1999-07-07  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-analysis-tools.c: Cleaned up `groupped by' radio
 	button code.  Added `Labels in First Row' check buttons for all
 	tools.  Made the tool list inside of a scrolled window.

	* src/dialog-analysis-tools.c, src/analysis-tools.c: Implemented
 	`Random Number Generation' tool with the following distributions:
 	Discrete, Normal, and Uniform.

1999-07-07  Michael Meeks  <michael@edenproject.org>

	* src/about.c (dialog_about): Add Jody, updated Sean.

	* src/dialog-cell-sort.c (dialog_cell_sort): Stop degenerate
	cases from producing confusing 'Add / Remove clause' boxes.

1999-07-05  Miguel de Icaza  <miguel@gnu.org>

	* src/Gnumeric.idl: Use new interface name.

1999-07-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-analysis-tools.c, src/analysis-tools.c: Added some
 	error checks, not complete yet.
	
1999-07-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-analysis-tools.c, src/analysis-tools.c: Added output
 	frames and an option to output into an existing sheet.

1999-07-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-analysis-tools.c: Cleaned up a lot.  Added input
 	frames to input entries.

1999-07-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/analysis-tools.c, src/dialog-analysis-tools.c,
 	src/dialogs.h: Implemented F-Test tool.
	
1999-07-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/analysis-tools.c, src/dialog-analysis-tools.c,
 	src/dialogs.h: Implemented t-Test and z-Test tools.
	
1999-07-05  Miguel de Icaza  <miguel@gnu.org>

	* src/about.c (dialog_about): Added link to IGS web site.

1999-07-05  Jody Goldberg  <jgoldberg@home.com>

	* src/cell.c (cell_set_formula) : Rework array-formula logic to deal
	  with cell_set_array_formula releasing the wrapper generated by the
	  parser.
	(cell_set_text) : Crude but effective prohibition for editing 1 cell
	  in an array.
	
	* src/eval.c : Add more debug info.
	(search_cell_deps) : Rename search_range_deps.
	(search_cell_deps) : New function.  Special case of a single cell
	  only needs 1 call to intersect.

	* src/expr.c (do_expr_tree_invalidate_references,
		      do_expr_tree_fixup_references) : Implement for OPER_ARRAY.
	  (expr_tree_get_const_str) : New function.

	* src/format.c (format_number) : Made debug warning more verbose but
	  only print it the 1st time.

	* src/gnumeric-util.[c,h] (gnumeric_no_modify_array_notice) : New.

	* src/sheet.c (sheet_clear_region): Use gnumeric_no_modify_array_notice.
	(avoid_dividing_array_horizontal, avoid_dividing_array_vertical) : New.
	(sheet_insert_row, sheet_insert_row) : Use them.
	(sheet_fill_selection_with) : Add flag to differentiate fills and
	  array-formulas.  Check to ensure that the array/fill operation does
	  not overwrite a subset of an array.

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : Pass is_array.
	  (gnumeric_sheet_patterns) : Adjust to more exactly match Excel.
	  NOTE : They are listed in DISPLAY order not excel's internal index
	  scheme, that requires a map.

	* src/gnumeric-sheet.h : Increase number of patterns.

	* src/pattern-selector.c : Adjust layout to match Excel.  Still need to
	  figure out how to get the stipples on a white background.

	* src/main.c : Add debug_excel_{read,formulas,color,chart} to
	  allow run time vs compile time verbosity.

1999-07-05  Morten Welinder  <terra@diku.dk>

	* src/expr.c (value_array_resize): Shined up, fixed, not tested.

	* src/print-info.c (print_hf_new): Constify.
	(print_hf_free): Fix leaks.

	* src/workbook.c (workbook_do_destroy): Fix leak.

	* src/style.c (style_shutdown): Unref out fonts.

	* src/sheet.c (sheet_start_editing_at_cursor): Doc fix.

1999-07-05  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/analysis-tools.c, src/dialog-analysis-tools.c,
 	src/dialogs.h: Implemented Sampling Tool.  Still more to come.

1999-07-05  Morten Welinder  <terra@diku.dk>

	* src/style.c (style_font_new_simple): Reinstate negative caching.

	* src/xml-io.c (xml_set_gnome_canvas_points): Handle zero point
 	case.  Don't rely on return value from sprintf.

	* src/dialog-function-select.c (function_definition_update): Kill
 	warnings.

	* src/dialog-analysis-tools.c (dummy_fun): Make static.
	(summary_stat_signal_fun): Ditto.
	(confidence_signal_fun): Ditto.
	(kth_largest_signal_fun): Ditto.
	(kth_smallest_signal_fun): Ditto.
	(tool_dialog_range): Ditto.
	(selection_made): Ditto.
	(dialog_data_analysis): Kill warning.

	* src/analysis-tools.c (descriptive_stat_tool): Kill warnings.

1999-07-05  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/analysis-tools.c, src/dialog-analysis-tools.c,
 	src/dialogs.h: Implemented Descriptive Statistics Tool.  Please do
 	not edit these files (unless a serious bug fix) for a couple of
 	days; there is more to come.

1999-07-05  Miguel de Icaza  <miguel@gnu.org>

	* src/print.c: Only print the headers and sides 
	
	* plugins/text/text-io.c (text_cleanup_plugin): Kill probing here.
	(text_init): kill probing here as well.
	(text_parse_file): kill probing support here as well.
	(text_parse_file): Do not use first line as sheet name.

	* src/file.c (workbook_import): Added import dialog box.
	(workbook_read): Now does only probe for existing probe routines.
	(file_format_register_open): probe function being NULL now means
	that this is not an auto-probe filter, but an import filter (ie,
	the user has to manually select the file).

1999-07-04  Miguel de Icaza  <miguel@gnu.org>

	* src/file.c (file_format_register_open): Allow the probe_fn to be NULL.

	* src/workbook.c (import_file_cmd): Added import menu item.

1999-07-05  Michael Meeks  <michael@edenproject.org>

	* src/sheet.c (sheet_update_auto_expr): Removed parsing.

	* src/workbook.c (workbook_set_auto_expr): Moved unsafe parser
	call in here.

	* src/sheet.h: Changed auto_expr_text to ExprTree auto_expr.

	* src/parser.y (gnumeric_expr_parser): Added.
	(gnumeric_unsafe_expr_parser): Renamed and changed arguments.

	* plugins/guile/plugin.c (init_plugin): New function stuff.
	(func_scm_apply): ditto.
	(func_scm_eval): ditto.
	(func_marshal_func): ditto.
	(scm_register_function): ditto.

	* plugins/python/python.c (__register_function): Updated to
	new function stuff.
	(marshal_func): ditto.

	* plugins/perl/ext/Makefile.PL.in: Added GNOME_PRINT bits.

1999-07-04  Michael Meeks  <michael@edenproject.org>

	* src/workbook.c (workbook_sheet_get_free_name): Made more
	similar to Excel: base sheet no. = 1 + no space.
	(workbook_new_with_sheets): Update to more Excel friendly
	names.

1999-07-02  Miguel de Icaza  <miguel@gnu.org>

	* doc/Design, doc/translating.sgml: small touchups.

	* src/dialog-printer-setup.c (do_setup_main_dialog): Set the
	window parent here.
	(do_setup_main_dialog): Force destruction of parent widget.

	* src/print.glade: Removed visibility flag from toplevel dialog
	box. 

	* doc/C/files.sgml: Updated indentation.

	* src/dialog-printer-setup.c (do_setup_page): Use relative path
	for printing here.

1999-06-30  Miguel de Icaza  <miguel@gnu.org>

	* src/item-grid.c (item_grid_draw_cell): Eliminate warning.

	* src/dialog-printer-setup.c: Adapted to the new setup for keeping
	track of col/rows ranges.
	(do_fetch_page_info): ditto.

	* src/print.c (PrintJobInfo): Use doubles for all the printing
	units. 
	(print_sheet_range): Take into account the repeat ranges for
	repeated headers, repeated columns.
	(print_sheet): compute space used by repeated headers and repeated
	columns. 
	(print_page): Print repeating top rows and repeating left
	columns on each page.  Loop over printing routines.
	(print_page_cells): new routine: prints a cell range only.
	(print_page_repeated_rows, print_page_repeated_cols): Prints the
	repeating columns and repeating rows.

	* src/dialog-cell-format.c (apply_font_format): Implement
	GnomePrint based version.


	* src/print-info.c (save_range): Updated to reflect the new change
	to PrintRepeatRange.
	(print_info_save): ditto.
	(load_range): ditto.
	(print_info_new): ditto.

	* src/print-info.h: Store ranges as a structure that contains an
	explicit tag for validness instead of overloading the definition
	of Value/CellRange.
	
1999-07-02  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/anaysis-tools.c: New file for data analysis tools.
  	Currently only correlation and covariance tools implemented.

	* src/dialog-analysis-tools.c: New file.

	* src/dialogs.h: Added some definitions for data analysis tools.

	* src/workbook.c: Added data analysis menu entry.

1999-06-26  Morten Welinder  <terra@diku.dk>

	* src/fn-string.c (gnumeric_dollar): Avoid warning overflows.

	* src/print-info.c (print_unit_new):  Warning killer.

	* src/fn-financial.c (calculate_fvif): Warning killer.

	* src/expr.c (build_error_string): Re-remove.

	* src/dialog-printer-setup.c (unit_into_to_points): Warning killer.

	* src/mathfunc.c (MATHLIB_WARNING2, MATHLIB_WARNING4): Warning killer.

1999-07-01  Michael Meeks  <michael@edenproject.org>

	* src/main.c (gnumeric_main): Added excel_shutdown.

1999-07-01  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/datefuns.xls: Added a few missing function tests.

1999-06-30 Heath Martin <martinh@pegasus.cc.ucf.edu>
	
	* src/cell.c, src/cell.h: (cell_get_comment) New function.
 
 	* src/xml-io.c: (xml_write_cell) Save comments.
 	(xml_read_cell) Load comments.
 
1999-06-30  Michael Meeks  <michael@edenproject.org>

	* TODO: Moved some bits to plugins/excel.
	add a bit about Styles.

1999-06-29  Jody Goldberg  <jgoldberg@home.com>
	
	* src/cell.c (cell_set_formula) : Handle special case of array by
	  setting the entire matrix from the top left corner.
	(cell_set_array_formula) : New function.

	* src/cell.h : Add cell_set_array_formula.

	* src/eval.c (add_cell_range_deps) : Split setup into new function.
	(add_cell_range_dep) : Here.
	(add_tree_deps) : Support Array operators.

	* src/parser.y : Parse new array formula syntax.
	(dump_tree) : rename to expr_dump_tree and move to.

	* src/expr.c (expr_dump_tree) : From parser.y.
	  (expr_tree_get_const_int) : New function.
	  (expr_tree_array_formula) : New function. 
	  (expr_tree_array_formula_corner) : New function.
	  (do_expr_tree_unref) : Support Array operators.
	  (value_area_get_at_x_y) : Renamed to value_area_fetch_x_y, fixed
	    thinko, completed support for relative ranges.
	  (value_area_get_x_y) : New function, like value_area_fetch_x_y but
	    does not create missing values.
	  (eval_expr) : Support Array operators.
	  (do_expr_decode_tree) : Ditto.
          (do_expr_tree_invalidate_references) : Ditto.
	  (do_expr_tree_fixup_references) : Ditto.

	* src/expr.h : Add expr_tree_get_const_int, expr_tree_array_formula,
	  value_area_get_x_y, and Array operators. Rename value_area_get_at_x_y.

	* src/fn-lookup.c : Handle renamed value_area_fetch_x_y.
	* src/fn-math.c : Ditto. Add MMULT.

	* src/format.c : (format_value) Handle arrays.

	(assemble_clear_cell_list) : check that a subset of an array is not
	  being cleared.
	* src/item-cursor.c : Ditto.
	* src/item-grid.c : Ditto.
	* src/xml-io.c : Deal with Array formula I/O.

1999-06-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/print-info.c (save_range): Save the repeat ranges routine.
	(print_info_save): Save the repeat ranges.

	* src/expr.c (value_cellrange_get_as_string): Implemented.
	(value_get_as_string): Expanded to render cellranges.

	* src/print-info.c (load_range): New routine, loads a range from
	the config file.

	* src/print.c (print_sheet_range): off-by-one error fix.

1999-06-29  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/textfuns.xls: Added a new test file.

	* samples/engfuns.xls, samples/mathfuns.xls: Updated.

1999-06-29  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added FORECAST() and INTERCEPT().

	* src/fn-math.c: SUMIF() can now take an optional argument
 	(actual_range).

	* src/fn-information.c: Made N() return 0 if the given string is
	non-number, not an error.

1999-06-28  Michael Meeks  <michael@edenproject.org>

	* src/main.c (gnumeric_main): removed xbase_init.

	* src/Makefile.am: Removed xbase static link.

1999-06-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-printer-setup.c (load_image): Use a constant relative
	to the Gnumeric installation directory, do not use the gnome
	pixmap path routine.

	* src/workbook.c: Add print icon to the toolbar.

	* src/dialog-printer-setup.c (do_print_cb): Fetch settings when
	the user presses print from here.
	(do_setup_main_dialog): Hide non working widgets.

1999-06-28  Michael Meeks  <michael@edenproject.org>

	* CHANGES: Updated for new release.

1999-06-27  Raja R Harinath  <harinath@cs.umn.edu>

	* src/Makefile.am (Gnumeric-impl.o): This depends on Gnumeric.h,
	Gnumeric-impl.c doesn't.

	Reinstate Perl plugin.
	* plugins/perl/Makefile.am: Clean up build.
	* plugins/perl/ext/Gnumeric.xs (register_function): 
	Use FunctionCategory and `function_add_args' API instead of
	`install_symbol'. 
	(marshal_func): Update to new callback prototype.
	* plugins/perl/ext/Makefile.PL.in ('INC'): Use @top_srcdir@ rather
	than @srcdir@/../../...

	* doc/C/Makefile.am: Misc. srcdir != builddir fixes.
	* configure.in (GNOME_PRINT_CFLAGS): Fix typo.

1999-06-25  Michael Meeks  <michael@edenproject.org>

	* src/dialog-function-wizard.c: Re-vamped table layout.

	* src/fn-string.c (string_functions_init): Change category
	name to 'String'; silly me.

	* src/dialog-function-select.c (function_definition_update): Fixed
	old & broken function pointer code.

	* src/expr.c (eval_funcall): Updated to use union.
	(function_def_call_with_values): ditto.

	* src/func.c (function_add_nodes): ditto.
	(function_add_args): ditto.

	* src/expr.h: Changed void *fn pointer to a slicker union.

	* src/plugin.h: Added a prototype for the one external function
	every plugin must have ( kills some plugins warnings ).

	* src/workbook.c (workbook_new): Updated call to set_auto_expr
	(change_auto_expr): ditto.
	(workbook_do_destroy): Update.
	(workbook_set_auto_expr): Updated, just to set text leaving heavy
	lifting for sheet.c. This removes possible error checking of our
	quick-functions, but an error will be displayed in the status bar
	having set the function, and the functionality wasn't used.

	* src/sheet.h: Removed previously extern'd workbook_set_auto_expr,
	this should be internal.
	Remove auto_expr_tree from Workbook *.

	* src/sheet.c (sheet_update_auto_expr): Moved auto_expr parsing
	into sheet_update_auto_expr. Rational; neater, and not performace
	critical.

1999-06-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/pixmaps.h: Removed unused pixmaps.

	* src/corba-sheet.c (Sheet_corba_class_init): Fill in some missing
	values fomr the GNOME::Gnumeric::Sheet epv interface.

	* src/expr.c (eval_funcall): Removed unused variable.

	* src/workbook.c (workbook_sheets): prepend and reverse instead of
	appending all the time.  It is more efficient.

	* src/style.c (x11_font_compute_hints): Renamed as well.  Might be
	useful in the future.

	* src/gnumeric-util.c (x11_font_get_italic_name,
	x11_font_get_bold_name, x11_font_change_component): Renamed these
	functions to reflect their actual usage.

	* src/expr.c (expr_tree_new_constant): Change style to use early
	return to keep indentation of the rest of the code at tab-1.  This
	is a trick to keep indentation nice with 8-tab spaces.  Liberal
	use of early returns, early continues, early breaks.

	* src/cell.h (CELL_TEXT_GET): Kill unused macro.

1999-06-25  Miguel de Icaza  <miguel@gnu.org>

	* src/xml-io.c (xml_read_cell): Merge the style we just read with
	the existing information from the cell (which are the defaults).
	This is only for compatibility with the old format

1999-06-24  Miguel de Icaza  <miguel@gnu.org>

	* src/xml-io.c (style_font_new_from_x11): Implemented 

	* src/style.c (style_font_new): Improved matching of the font.

	* src/xml-io.c 	(xml_write_style): Save Bold and Italic
	properties.  Save Units as double.
	(xml_read_style): Add conversion hook from old format.
	(xml_read_style): Load properly italic and bold properties.

	(xml_read_cell): Add new style reading code.  It is
	compatible with the old Style reading code.
	(xml_read_rows_info, xml_read_cols_info, xml_read_styles): Moved
	Cols, Rows and Styles loading code here, for code clarity.
	
	* src/style.c (style_font_new_simple): Include the scale in the
	key lookup variable.

	* src/xml-io.c: The FontDefs and the HREFs to the fonts were never
	being used.  The new code for styles simplifies this.  Kill all
	the references to the FontDefs urls and the font indeces.

	* src/xml-io.c 

1999-06-23  Miguel de Icaza  <miguel@gnu.org>

	* src/xml-io.c: Major updates.  
	(xml_read_colrow_info): Use floating point for loading the
	units, margin_a and margin_b.
	(xml_write_colrow_info): Save units, margin_a and margin_b using
	floating point.
	(xml_set_value_double): Activate this function.
	(xml_write_cell): Do not save the style here.  Lookup the style
	id, and write a record with the style id link.
	(xml_sheet_write): Add call to xml_cell_styles_init and
	xml_cell_styles_shutdown to init and shutdown the cell styles in a
	per-sheet basis.

	Renamed functions to suit the gnumeric coding
	sytle.  Fixed indentation.

	File format now saves a different version.  We store all cell
	styles first, and then we reference them.
	
	(parse_xml_context_t): renamed from
	parseXmlContext.  Add style_table hash table for storing all the
	styles used by the cells on a workbook.  Used to dump Styles first
	and then have the cells reference it.

	* src/style.c (style_hash, style_compare): New routines to
	put Styles on hash tables.

	* src/workbook.c (workbook_sheets): Use g_list_prepend instead of
	g_list_append and reverse the result.

1999-06-14  Miguel de Icaza  <miguel@gnu.org>

	* src/cell.h: Killed ColType and RowType definitions.  They do not
	save any noticeable amount of memory; we are not using them but
	on the most useless places and finally they are the current limit
	to our spreadsheet size.

	* src/gnumeric-sheet.h: Use int instead of ColType, RowType
	* src/item-cursor.h: Use int instead of ColType, RowType
	* src/item-grid.h: Use int instead of ColType, RowType

	* src/print-cell.c (CELL_DIM): Use _pt variants of the margins here.
	(print_cell_text): and here.
	(print_cell): and here.
	(print_cell_range): and here.
	(print_cell_grid): and here.

1999-06-13  Miguel de Icaza  <miguel@gnu.org>

	* src/sheet.c (sheet_compute_col_row_new_size): Update margin_a
	and margin_b from the points.
	(col_row_info_init): New function to initialize a sample
	ColRowInfo.  Inits the _pt fields.
	(col_row_unit_distance): Use the new fields in computation.
	(sheet_col_get_unit_distance): Use new fields in computation.

	* src/dialog-printer-setup.c (do_setup_margin): Set scroll region.
	(preview_page_create): Implement routine that draws the page for
	the margin setup. 

	* src/sheet.h (ColRowInfo): Units are now doubles; margin_a_pt and
	margin_b_pt are doubles that represent the a and b margins in
	points.
	
	* src/sheet.c (sheet_compute_col_row_new_size): Use the 

1999-06-11  Miguel de Icaza  <miguel@gnu.org>

	* src/cell-draw.c (cell_draw): Move the foreground setting routine
	here and handle single-line and multiline coloring properly.

	* src/print-info.c (unit_name_to_unit): New routine, returns the
	UniName from the string name.

	* src/dialog-printer-setup.c (dialog_printer_setup): Use
	print_info_save and kill the do_save_settings routine for the
	cleaner print_info routine.

	* src/print-info.c (print_info_new): Now loads the default
	settings from the saved configuration.
	(print_info_save): Saves the print information to the gnome_config.

1999-06-08  Miguel de Icaza  <miguel@gnu.org>

	* src/utils.c (str_trim_spaces): Moved str_trim_spaces ere. 

	* src/dialog-printer-setup.c (do_setup_main_dialog): Connect print
	buttons. 

	* src/print-cell.c (print_cell_grid): Simplify routine.

	* src/sheet.c (sheet_row_get_unit_distance,
	sheet_col_get_unit_distance): Include  margins in computation.
	This is broken, as the margins are now pixels, and they should be
	made points. 

	* src/dialog-printer-setup.c (do_fetch_page_info): Fetch other values.
	(do_save_settings): Saves the configuration.

	* src/print-cell.c (print_border): Implement border drawing.
	(print_cell_grid): Make this work as it should.

	* src/print.c (compute_groups): Handle the case where the contents
	fit entirely in one page. 

1999-06-07  Miguel de Icaza  <miguel@gnu.org>

	* src/print.c: New file.  Implements high-level printing.

	* src/dialog-printer-setup.c: New file.  Implements the "Print
	Setup" dialog box.

1999-04-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell-draw.c: New file.  All of the cell screen drawing code
	has been moved here now. 

	* src/print-cell.c: Enhanced code.

	* src/workbook.c: hardcoded page size for testing purposes.

1999-03-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	I do not like the current approach.  I do think that StyleFonts
	should be static with regard to Zoom.  

	And we would keep a cache of X fonts that are used for a
	particular size. 
	
	* src/style.c (style_font_new_from): New routine that creates a
	new font.

	* src/sheet.c (sheet_set_zoom_factor): Scale fonts used in the
	Sheet.

1999-02-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-printer-setup.c: New file.  Implements the workbook
	page configuration dialog box.

	* src/print-info.c, src/print-info.h: Manages the per-worbook
	print options. 

1999-02-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/style.c (font_equal): Adapt function to the new StyleFont. 
	(style_font_new, style_font_new_simple): Adapt for the upcoming
	gnome-print support. 
	(font_init): Adapt.

	* src/xml-io.c: Use Gnome Print font scheme.
	* src/workbook.c: ditto.
	* src/cell.c: ditto.
	* src/item-bar.c, src/item-edit.c: ditto
	
	* src/dialog-cell-format.c: Disable font selector for now.
	
1999-06-26  Morten Welinder  <terra@diku.dk>

	* src/fn-financial.c (gnumeric_rate): New function.

	* src/sheet.c (sheet_destroy): Sssshhhh!

	* src/fn-eng.c (val_to_base): Neat and tidy.

1999-06-25  Morten Welinder  <terra@diku.dk>

	* src/fn-eng.c (eng_functions_init): Extend impower to handle two
 	complex numbers.
	(eng_functions_init): Prepare for besseli and besselk.  Docs
 	please.

	* src/mathfunc.c (dweibull, pweibull, ppois, dpois, dexp, pexp,
 	dbinom, pbinom, qbinom, besseli, besselk): New functions.

	* src/fn-stat.c: Use new mathfuncs.
	(gnumeric_kurt): Use range function.
	(gnumeric_kurtp): New function.
	(gnumeric_skewp): New function.

	* src/mathfunc.c (range_skew_est): Rename from range_skew.
	(range_skew_pop): New function.
	(range_kurtosis_m3_est): New function.
	(range_kurtosis_m3_pop): New function.

	* src/fn-math.c (gnumeric_gcd): Cleanup and fix.

1999-06-24  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (value_area_get_at_x_y): Return value_zero instead
	of the leaky value_new_int.
	(value_area_get_at_x_y, value_area_get_width, value_area_get_height):
	Updated to fall back to EvalPosition's Sheet *.

	* src/expr.h: Added 'EvalPosition' parameter to area functions.

1999-06-23  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_poisson): Fix formula and error
 	handling.
	(gnumeric_binomdist): Ditto.
	(gnumeric_correl): Ditto.

	* src/expr.c (eval_expr): Remove useless casts.
	(eval_funcall): Treat 'b' as 'f' for now.  Don't use fd until it
 	gets a value.

	* src/func.c (function_iterate_argument_values): Don't leak error
 	message.

	* src/eval.c (cell_eval): Don't leak error message.

	* src/*.c: Remove strange casts to (Value *).

1999-06-24  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (error_message_new): Fix stupid bug,
	such that every error was set.

	* src/fn-math.c: Add sumproduct back in.

1999-06-24  Michael Meeks  <michael@edenproject.org>

	* src/fn-stat.c: Added ftest, ttest again.

1999-06-23  Michael Meeks  <michael@edenproject.org>

	* src/sheet.c (sheet_update_auto_expr): Add check for cached
	text.

	* src/sheet.h: Added workbook_set_auto_expr.

	* src/workbook.c (workbook_new): Initialise auto_expr stuff
	before reading it in set_auto_expr.
	(workbook_do_destroy): Add freeing of auto_expr_text.
	(workbook_set_auto_expr): Hacked to cache expression until we
	have a sheet context.

	* src/expr.h: Add extra Parser error type for invalid args.

	* src/fn-financial.c (finance_functions_init): Fix financial
	functions, using 'i' as a token ( invalid ).

1999-06-23  Michael Meeks <michael@edenproject.org>

	* docs/writing-functions.sgml: Updated to reflect my changes,
	expanded and removed anachronisms.
	
	* src/expr.h: Added FunctionArgs, FunctionNodes typedefs
	Created struct EvalPosition, struct FunctionEvalInfo and
	implemented through functions where necessary.

	* src/expr.c (function_error, function_error_alloc): created
	helper error return functions.
	(eval_pos_init, eval_pos_cell): Helper EvalPosition fn's
	(func_eval_info_init, func_eval_info_cell, func_eval_info_pos):
	created helper FunctionEvalInfo fn's
	(error_message_new, error_message_set_alloc),
	(error_message_set_small, error_message_txt, error_message_free):
	created error class.

	* src/expr.c (expr_parse_string, gnumeric_expr_parser),
	(expr_decode_tree, expr_tree_invalidate_referenced),
	(expr_tree_fixup_references, eval_expr): Updated to pass / use
	new EvalPosition / FunctionEvalInfo structures.

	* src/parser.y (gnumeric_expr_parser): Updated arguments to use
	EvalPosition, added more stringent checks.

	* src/func.h: Updated lots of things to new structures.
	Changed the iterators arguments to new structures, altered
	FunctionIterateCallback to suit.
	Re-implemented function storage / mapping.

	* src/func.c (function_get_category, function_add_args),
	(function_add_nodes): Created.
	(function_iterate_do_value, function_argument_values),
	(function_call_with_values, function_def_call_with_values):
	Updated to new scheme.
	
	* src/fn-*: Major major changes:
	- All function definitions changed to use:
	typedef Value *(FunctionArgs)  (FunctionEvalInfo *fe, Value **args); or
	typedef Value *(FunctionNodes) (FunctionEvalInfo *fe, GList *nodes);
	- All error returns altered to use:
	        return function_error (ei, _("foo"));
	instead of
	        {
		        *error_string = _("baa");
			return NULL;
		}
	this will allow for changing the error handling.
	- A few functions that used Sheet *, eval_col, eval_row updated.
	
1999-06-23  Morten Welinder  <terra@diku.dk>

	* src/collect.c, src/collect.h: New files.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add collect.c and
 	collect.h.

	* src/fn-stat.c: Rewrite range-taking using collect and new range
 	handling functions.  Most look really nice now.  (This fixes and
 	number of leaks and makes error cases handled better.  We might
 	return the wrong error from time to time, though.)

	* src/fn-math.c: Ditto.

	* src/expr.c (eval_funcall): Fix insanity check.

1999-06-22  Morten Welinder  <terra@diku.dk>

	* src/expr.c (eval_funcall): Add sanity check.

	* src/fn-stat.c (callback_function_ttest): Make static.

	* src/expr.h: Delete unwanted member "sym".

1999-06-22  Jukka-Pekka Iivonen  <iivonen@iki.fi>

        * samples/statfuns.xls: Added MMULT and MINVERSE tests.

        * samples/lookfuns.xls: Added a new file for testing lookup and
 	reference functions.

        * samples/logfuns.xls: Added a new file for testing logical
        functions.

1999-06-22  Nat Friedman  <nat@gnome-support.com>

	* src/sheet-object-container.c (sheet_object_container_land): Use
 	gnome_bonobo_object_clieint_new_view instead of
 	gnome_bonobo_object_new_view.
	(sheet_object_container_realize): Likewise.

1999-06-22  Morten Welinder  <terra@diku.dk>

	* src/number-match.c (format_create_regexp): You don't want to
 	know.

	* src/fn-date.c (get_serial_date): Cleanup.
	(get_serial_time): Ditto.

	* src/sheet.c (sheet_set_text): Abandon old reverse test that lead
 	to trouble with floating point formats.

	* src/number-match.c (format_match): Change from double to
 	float_t.  All callers changed.
	(compute_value): Ditto.

1999-06-22  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added TTEST().

	* src/fn-stat.c: Added FTEST().

	* src/fn-math.c: Added SUMPRODUCT().

1999-06-21  Morten Welinder  <terra@diku.dk>

	* src/dialog-function-wizard.c (arg_data_list_new): Fix case of
 	missing SYNTAX section.
	(create_description): Handle constness of tokenized_help_find.
  	Delete weird #define.

	* src/func.c (tokenized_help_find): Constify.

	* src/expr.c (expr_tree_new_error): Smarten.

	* src/fn-misc.c (gnumeric_error_type): Fix case of incorrect
 	number of arguments.

	* src/fn-information.c (get_value_class): Fix leak.

1999-06-21  Miguel de Icaza  <miguel@gnu.org>

	* src/func.c: Do not pre-initialize them.  If they need to be
	pre-initialized something is wrong in some other place.  Fix that
	instead.

	* src/clipboard.c (do_clipboard_paste_cell_region): Implement
	transpose-on-paste command.  Change the increment steps for
	transpose and compute a different target column as well.

	(sheet_paste_selection): Swap the paste dimesions here if we are
	pasting/transpose.

1999-06-18  Miguel de Icaza  <miguel@gnu.org>

	* src/func.c: Remove static initialization of the error messages.

1999-06-14  Miguel de Icaza  <miguel@gnu.org>

	* src/clipboard.h: Define PASTE_TRANSPOSE.

	* src/dialog-paste-special.c (dialog_paste_special): Add new
	checkbutton for transpose-on-paste operation.

1999-06-21  Michael Meeks  <michael@edenproject.org>

	* src/func.c (iterate_cellrange_callback): Add case
	of no cell text ( yet ).

1999-06-21  Morten Welinder  <terra@diku.dk>

	* src/fn-information.c (get_value_class): New function.
	(gnumeric_isnontext): Make non-strict.
	(gnumeric_istext): Make non-strict.
	(gnumeric_type): Make non-strict.
	(gnumeric_islogical): Make non-strict.
	(gnumeric_isnumber): Make non-strict.
	(gnumeric_n): Implement.
	(gnumeric_iseven): Implement.
	(gnumeric_isodd): Ditto.
	(gnumeric_cell): Fix error message.
	(gnumeric_info): Ditto.
	(gnumeric_type): Partly implement.

	* src/fn-math.c (gpow10): Rename from pow10 which colided with
 	something in Linux with libc5.  (Thanks to Alexander Jolk.)

	* src/utils.c (parse_cell_name): Don't use isdigit since we intend
 	to subtract '0' from the character.

	* src/workbook.c (workbook_parse_and_jump): Cleanup.

1999-06-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

        * samples/infofuns.xls: Added a new file for testing information
        functions.

1999-06-20  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (wb_edit_key_pressed): New function to handle
 	Escape.
	(workbook_setup_edit_area): Activate wb_edit_key_pressed.

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Call
 	sheet_start_editing_at_cursor for F2.

	* src/sheet.c (sheet_cancel_pending_input): Fix last change.  Also
 	update entry box.
	(sheet_start_editing_at_cursor): New args blankp and cursorp.  All
 	callers changed.

	* src/fn-math.c (gnumeric_mod): Another try.
	(gnumeric_int): Fix for negative numbers.

	* src/sheet.c (sheet_set_text): Set value directly, not via text.  Also
	improve entry when a format is already set.
	(sheet_cancel_pending_input): Fixed behavior of canceling a cell
 	entry.  [From Bake Timmon.]

1999-06-18  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/dbfuns.xls: Added new file for database functions.

	* samples/mathfuns.xls: Added MDETERM test.

	* samples/statfuns.xls: Added AVERAGEA, MINA, MAXA, ... tests.

1999-06-17  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_count): Make non-strict and ignore cells
 	with errors.

	* src/fn-logical.c (gnumeric_or, gnumeric_and): Make strict!.

	* src/func.c (IterateCallbackClosure): Add strict member.
	(iterate_cellrange_callback): Handle strict and non-strict case.
	(function_iterate_argument_values): New argument, strict.  All
 	callers changed.  Initialise error_string always.  Handle strict
 	and non-strict case.
	(function_iterate_do_value): New argument, strict.  Handle strict
 	and non-strict case.  All callers changed.

1999-06-18  Michael Meeks  <michael@edenproject.org>

	* src/main.c (gnumeric_main): Add xbase_init

	* src/Makefile.am (gnumeric_LDADD): Add xbase.

	* configure.in (XML_CFLAGS): Added xbase.

	* plugins/Makefile.am (SUBDIRS): Added xbase.

1999-06-17  Morten Welinder  <terra@diku.dk>

	* src/expr.c (eval_expr): Fix error handling of comparisons.

	* src/expr.c (expr_tree_new_constant): New function.
	(expr_tree_new_unary): New function.
	(expr_tree_new_binary): New function.
	(expr_tree_new_funcall): New function.
	(expr_tree_new_var): New function.
	(expr_tree_new_error): Renamed from build_error_string, made
 	public, and simplified.  All callers changed.
	(do_expr_tree_invalidate_references): Simplify.
	(do_expr_tree_fixup_references): Ditto.
	(eval_expr): Simplify.
	(expr_tree_new): Obsolete.

	* src/func.c (constants_init): Simplify.

	* src/main.c (gnumeric_main): Call style_shutdown.

	* src/style.c (style_shutdown): New function.

	* src/expr.h: Avoid using bitfields here.  They are slow and
 	confuse tools like Purify.  And used like this they don't save any
 	space anyway.

	* src/complex.c: Fix includes.

	* src/fn-eng.c (gnumeric_impower): Use new complex_pow.
	(callback_function_imoper): Benefit from new and more intuitive
 	behavoiur of complex_mul and complex_add.

	* src/complex.h (complex_mod): Use hypot for better precision.
	(complex_*): Use complex_init when possible.  (This means that the
 	output can be the same as one of the inputs without any trouble.)
	(complex_pow): New function.

1999-06-17  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c (gnumeric_percentrank): Interpolation and rounding
	fixes.

1999-06-17  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c (gnumeric_erf): ERF() changed back to the previous
 	form.  Negative arguments are wrong.

1999-06-16  Morten Welinder  <terra@diku.dk>

	* src/complex.h, src/complex.c: New files.

	* src/fn-eng.c: Use complex.c; improve precision, fix a few bugs,
 	plug a few leaks, add a few functions, and generally be merry.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add complex.c and
 	complex.h.

1999-06-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/finfuns.xls: A new file for financial functions.

	* samples/engfuns.xls: A new file for engineering functions.

	* samples/mathfuns.xls: COMBIN and FACT fixed.

	* samples/statfuns.xls: Accuracy dropped again.

1999-06-16  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_feedback_set): Block the "clicked"
 	handlers when we are just setting the feedback.

1999-06-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c (gnumeric_gcd): Made GCD() to take variable number
 	of arguments.

	* src/fn-stat.c (gnumeric_rank): RANK() fixed.

	* src/fn-eng.c (gnumeric_erf): ERF() fixed to return negative
	results if the argument is negative too like in Excel.

	* srg/fn-eng.c (get_real_and_imaginary): Added a branch for empty
 	imaginary part.

	* src/fn-eng.c (gnumeric_improduct, gnumeric_imsum): Made IMSUM()
	and IMPRODUCT() to take variable number of arguments.

1999-06-15  Morten Welinder  <terra@diku.dk>

	* src/style.c (style_font_new_simple): Plug leak.

	* src/cell.c (cell_set_formula_tree_simple): Ref before unref,
 	just in case.

	* src/fn-math.c (callback_function_criteria): Just collect the
 	values, not (incorrectly) allocated pointers to them.
	(gnumeric_countif): Release the values.  (Leak fix.)
	(gnumeric_sumif): Ditto.
	(gnumeric_countif): Plug leak.
	(gnumeric_sumif): Ditto.
	(gnumeric_seriessum): Plug three leaks.
	(gnumeric_subtotal): Plug leaks and fix error handling.

	* src/style.c (style_font_new_simple): Fix memory access problem.

	* src/style.c (font_init): Rework.  (Work in progress.  Things
 	should work ok, but will become even better.)
	(style_font_new_simple): Revert to loading a font, not a fontset.

	* src/gnumeric-util.c (font_get_italic_name): Plug leak and unref
 	the StyleFont.
	(font_get_bold_name, font_get_italic_name): New parameter units.
  	All callers changed.

1999-06-15  Tomas Ogren  <stric@ing.umu.se>

	* configure.in: Added sv

1999-06-14  Morten Welinder  <terra@diku.dk>

	* src/style.c (style_font_new_simple): Add negative caching.
	(DEFAULT_FONT): Don't have a complete wildcard here -- that might
 	be a very weird font.

	* src/cell.c (cell_set_font_from_style): Mark font valid.  Ref
 	before unref.
	(cell_set_format_from_style): Mark format valid.  Ref before
 	unref.

	* src/gnumeric-util.c (font_get_italic_name): Plug leak.
	(font_change_component): Constify.  Handle fontsets.

1999-06-14  Morten Welinder  <terra@diku.dk>

	* src/fn-math.c (gnumeric_floor): Add significance argument.

	* src/fn-math.c (callback_function_seriessum): Simplify.
	(gnumeric_seriessum): Don't round x, n, and m to integers.  Fix
 	error handling.

	* src/fn-math.c (pow10): New function.
	(gnumeric_rounddown): Simplify and correct.
	(gnumeric_round): Ditto.
	(gnumeric_roundup): Ditto.
	(gnumeric_trunc): Ditto.
	(gnumeric_fact): Improve precision.  Extend domain to all positive
 	numbers.
	(gnumeric_factdouble): Use float_t instead of int.
	(gnumeric_atan2): Swap args to atan2.

1999-06-13  Morten Welinder  <terra@diku.dk>

	* src/style.c (DEFAULT_FONT): Add extra font in the hope of curing
 	1207.
	(font_init): Shine up error message and avoid core dump.

	* src/gnumeric-sheet.c (gnumeric_sheet_stop_cell_selection):
 	Temporary patch for refcounts until Miguel can fixup things.
	(destroy_item_editor): Ditto.

	* src/fn-financial.c: s/double/float_t/;
	(calculate_pvif, calculate_pvifa, calculate_fvif, calculate_fvifa,
 	calculate_principal, calculate_pmt): Make static.
	(callback_function_npv): Simplify and truly ignore strings.
	(gnumeric_duration): More error checks.
	(gnumeric_nper): Ditto.
	(gnumeric_syd): Ditto.
	(gnumeric_sln): Ditto.
	(gnumeric_pv): Ditto.
	(gnumeric_fv): Ditto.

	* src/fn-information.c: Prune includes.
	* src/fn-string.c: Ditto.
	* src/fn-sheet.c: Ditto.
	* src/fn-misc.c: Ditto.
	* src/fn-financial.c: Ditto.
	* src/fn-date.c: Ditto.
	* src/fn-database.c: Ditto.
	* src/fn-lookup.c: Ditto.
	* src/fn-stat.c: Ditto.
	* src/fn-math.c: Ditto.
	* src/fn-logical.c: Ditto.

	* src/cell.h: Fix includes.

	* src/fn-information.c (gnumeric_isblank): Return boolean.
	(gnumeric_iseven): Ditto.
	(gnumeric_islogical): Ditto.
	(gnumeric_isnontext): Ditto.
	(gnumeric_isnumber): Ditto.
	(gnumeric_isodd): Ditto.
	(gnumeric_isref): Ditto.
	(gnumeric_istext): Ditto.
	(gnumeric_n): Ditto.

	* src/expr.c (value_new_bool): New function.
	(eval_expr): Return boolean Values.

	* src/fn-misc.c (gnumeric_iserr, gnumeric_iserror, gnumeric_isna):
 	Return boolean;

	* src/fn-logical.c (callback_function_and): Simplify.
	(callback_function_or): Ditto.
	(gnumeric_and): Simplify and return boolean Values.
	(gnumeric_not): Ditto.
	(gnumeric_if): Fix error case.  Simplify.

	* src/cell.c (cell_comment_destroy): Free realized_list.

	* fn-*.c: Use new standard error variables.

1999-06-12  Jody Goldberg  <jgoldberg@home.com>

	* src/expr.h : Declare new standard error constants to avoid
	spelling problems and typos.
	* src/expr.c, src/func.c, src/fn-math.c : Use and define them.
	* src/fn-misc.c	: First pass at finishing off error functions.
	* src/fn-information.c : Provide stubs for the rest of the
	information functions.

1999-06-12  Miguel de Icaza  <miguel@gnu.org>

	* src/dialog-cell-comment.c (dialog_cell_comment): Process the
	return value from gnome_dialog_run correctly as well.  (ie we
	should catch the return value -1 as the "user closed dialog box"
 	message and avoid destroying the dialog box ourselves).

	* src/item-grid.c (context_paste_special_cmd): Handle a cancel
	operation from the dialog_paste_special dialog box.

	* src/dialog-paste-special.c (dialog_paste_special): Hanlde the
	case in which the window manager closed the dialog box.

1999-06-10  Miguel de Icaza  <miguel@gnu.org>

	* src/pattern-selector.c (pattern_selector_init): Use the GNOME
	canvas fill_stipple feature instead of using the hack of creating
	the bitmap and setting the stipple on the realize handler.

1999-06-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* po/hr.po: Added croat translation from Vladimir Vuksan
	<vuksan@cs.unm.edu>.

1999-06-13  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/mathfuns.xls: New test file for math functions.

	* samples/statfuns.xls: Accuracy dropped to 1e-5 (since Excel is
 	not as accurate as Gnumeric).  Also the total number of functions
 	in the test output fixed.

1999-06-12  Morten Welinder  <terra@diku.dk>

	* src/fn-string.c: Use value_new_string where appropriate.
	(gnumeric_clean): Use unsigned chars.
	(gnumeric_t): Speed improvement.

	* src/file.c (workbook_read): After a workbook has been read, it
 	is to be considered "clean", i.e., unchanged.

	* src/number-match.c (print_regex_error): Add a few missing breaks.

	* src/utils.c (gnumeric_strcase_hash): Use unsigned chars.
	(col_from_name): Ditto.

	* src/format.c (append_year): Ditto.
	(append_month): Ditto.
	(append_hour): Ditto.
	(append_day): Ditto.
	(append_minute): Ditto.
	(append_second): Ditto.
	(pre_parse_format): Ditto.

	* src/number-match.c (format_create_regexp): Ditto.

	* src/fn-string.c (gnumeric_lower): Use g_strdup to match g_free.
	(gnumeric_upper): Ditto.
	(gnumeric_lower): Use unsigned chars.  (This fixes problems with
 	non-English letters.)
	(gnumeric_upper): Ditto.
	(gnumeric_proper): Ditto.  Operate on a _copy_ of the string, not
 	the source string itself!

1999-06-10  Morten Welinder  <terra@diku.dk>

	* src/parser.y (return_cellref): Surprise: isdigit and friends
 	take unsigned chars (effectively).  The results are *undefined*
 	(and weird) for signed chars.
	(yylex): Ditto.

	* src/fn-string.c (gnumeric_proper): Ditto.

	* src/utils.c (parse_cell_name): Ditto.

	* src/sheet-autofill.c (string_has_number): Ditto.
	(autofill_cell): Ditto.

	* src/cell.c (cell_set_text_simple): Ditto.  Also fix long/int
 	confusion.

1999-06-10  James Henstridge  <james@daa.com.au>

	* src/main.c (gnumeric_main): changed call to glade_init() to a call
	to glade_gnome_init(), so that gnome widget building routines get
	initialised correctly.

1999-06-09  Morten Welinder  <terra@diku.dk>

	* src/xml-io.c: Fix major thinko in writing fonts.  (The name hash
 	table was used to look up a font, which always failed since keys
 	are names in that hash.)

1999-06-09  Nat Friedman  <nat@gnome-support.com>

	* src/sheet-view.c (sheet_view_insert_object): Commented out call
 	to gnome_bonobo_object_new_view since the API changed and this
 	function doesn't do anything anyways.

	* src/sheet-object-container.c: Include gnome-component-client.h
 	and view-frame.h.
	(sheet_object_container_land): Pass soc->client_site to
 	gnome_bonobo_object_new_view.  Get the view wrapper widget from
 	the view frame.
	(sheet_object_container_realize): Likewise.

1999-06-09  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (insert_at_cursor): Use cell_set_value instead of
 	cell_set_text.  Constify.  Accept a Value *, not a double.  All
 	callers changed.

1999-06-08  Morten Welinder  <terra@diku.dk>

	* src/fn-date.c (gnumeric_days360): Get it right, I hope.

	* src/xml-io.c (xmlGetDoubleValue): Improve precision.
	(xmlGetCoordinate): Ditto.
	(xmlGetGnomeCanvasPoints): Ditto.

	* src/fn-math.c (gnumeric_fact): s/float/float_t/

	* src/fn-date.c: Fix types of most functions.  (We really need a
 	way of saying "scalar".)
	(get_serial_date): New helper function.
	(get_serial_time): Ditto.
	(gnumeric_hour): Use get_serial_time.
	(gnumeric_minute): Ditto.
	(gnumeric_second): Ditto.
	(gnumeric_year): Use get_serial_date.
	(gnumeric_month): Ditto.
	(gnumeric_day): Ditto.
	(gnumeric_weekday): Ditto.
	(gnumeric_datevalue): Ditto.
	(gnumeric_timevalue): Implement using get_serial_time.
	(gnumeric_days360): Pretty good first cut.

	* src/parser.y (yylex): Allow dots inside a function name.

	* src/fn-misc.c (gnumeric_error_type): New function.

1999-06-08  David Chan <dpc29@hermes.cam.ac.uk>

	* src/fn-math.c (gcd): Correct.

1999-06-08  Morten Welinder  <terra@diku.dk>

	* src/file.c (workbook_read): Temporarily switch to "C" locale
 	when loading and saving.  [Take 2.]
	(workbook_save_as): Ditto.
	(workbook_save): Ditto.

1999-06-21  Morten Welinder  <terra@diku.dk>

	* src/fn-information.c (get_value_class): New function.
	(gnumeric_isnontext): Make non-strict.
	(gnumeric_istext): Make non-strict.
	(gnumeric_type): Make non-strict.
	(gnumeric_islogical): Make non-strict.
	(gnumeric_isnumber): Make non-strict.
	(gnumeric_n): Implement.
	(gnumeric_iseven): Implement.
	(gnumeric_isodd): Ditto.
	(gnumeric_cell): Fix error message.
	(gnumeric_info): Ditto.
	(gnumeric_type): Partly implement.

	* src/fn-math.c (gpow10): Rename from pow10 which colided with
 	something in Linux with libc5.  (Thanks to Alexander Jolk.)

	* src/utils.c (parse_cell_name): Don't use isdigit since we intend
 	to subtract '0' from the character.

	* src/workbook.c (workbook_parse_and_jump): Cleanup.

1999-06-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

        * samples/infofuns.xls: Added a new file for testing information
        functions.

1999-06-20  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (wb_edit_key_pressed): New function to handle
 	Escape.
	(workbook_setup_edit_area): Activate wb_edit_key_pressed.

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Call
 	sheet_start_editing_at_cursor for F2.

	* src/sheet.c (sheet_cancel_pending_input): Fix last change.  Also
 	update entry box.
	(sheet_start_editing_at_cursor): New args blankp and cursorp.  All
 	callers changed.

	* src/fn-math.c (gnumeric_mod): Another try.
	(gnumeric_int): Fix for negative numbers.

	* src/sheet.c (sheet_set_text): Set value directly, not via text.  Also
	improve entry when a format is already set.
	(sheet_cancel_pending_input): Fixed behavior of canceling a cell
 	entry.  [From Bake Timmon.]

1999-06-18  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/dbfuns.xls: Added new file for database functions.

	* samples/mathfuns.xls: Added MDETERM test.

	* samples/statfuns.xls: Added AVERAGEA, MINA, MAXA, ... tests.

1999-06-17  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_count): Make non-strict and ignore cells
 	with errors.

	* src/fn-logical.c (gnumeric_or, gnumeric_and): Make strict!.

	* src/func.c (IterateCallbackClosure): Add strict member.
	(iterate_cellrange_callback): Handle strict and non-strict case.
	(function_iterate_argument_values): New argument, strict.  All
 	callers changed.  Initialise error_string always.  Handle strict
 	and non-strict case.
	(function_iterate_do_value): New argument, strict.  Handle strict
 	and non-strict case.  All callers changed.

1999-06-18  Michael Meeks  <michael@edenproject.org>

	* src/main.c (gnumeric_main): Add xbase_init

	* src/Makefile.am (gnumeric_LDADD): Add xbase.

	* configure.in (XML_CFLAGS): Added xbase.

	* plugins/Makefile.am (SUBDIRS): Added xbase.

1999-06-17  Morten Welinder  <terra@diku.dk>

	* src/expr.c (eval_expr): Fix error handling of comparisons.

	* src/expr.c (expr_tree_new_constant): New function.
	(expr_tree_new_unary): New function.
	(expr_tree_new_binary): New function.
	(expr_tree_new_funcall): New function.
	(expr_tree_new_var): New function.
	(expr_tree_new_error): Renamed from build_error_string, made
 	public, and simplified.  All callers changed.
	(do_expr_tree_invalidate_references): Simplify.
	(do_expr_tree_fixup_references): Ditto.
	(eval_expr): Simplify.
	(expr_tree_new): Obsolete.

	* src/func.c (constants_init): Simplify.

	* src/main.c (gnumeric_main): Call style_shutdown.

	* src/style.c (style_shutdown): New function.

	* src/expr.h: Avoid using bitfields here.  They are slow and
 	confuse tools like Purify.  And used like this they don't save any
 	space anyway.

	* src/complex.c: Fix includes.

	* src/fn-eng.c (gnumeric_impower): Use new complex_pow.
	(callback_function_imoper): Benefit from new and more intuitive
 	behavoiur of complex_mul and complex_add.

	* src/complex.h (complex_mod): Use hypot for better precision.
	(complex_*): Use complex_init when possible.  (This means that the
 	output can be the same as one of the inputs without any trouble.)
	(complex_pow): New function.

1999-06-17  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c (gnumeric_percentrank): Interpolation and rounding
	fixes.

1999-06-17  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c (gnumeric_erf): ERF() changed back to the previous
 	form.  Negative arguments are wrong.

1999-06-16  Morten Welinder  <terra@diku.dk>

	* src/complex.h, src/complex.c: New files.

	* src/fn-eng.c: Use complex.c; improve precision, fix a few bugs,
 	plug a few leaks, add a few functions, and generally be merry.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add complex.c and
 	complex.h.

1999-06-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/finfuns.xls: A new file for financial functions.

	* samples/engfuns.xls: A new file for engineering functions.

	* samples/mathfuns.xls: COMBIN and FACT fixed.

	* samples/statfuns.xls: Accuracy dropped again.

1999-06-16  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_feedback_set): Block the "clicked"
 	handlers when we are just setting the feedback.

1999-06-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c (gnumeric_gcd): Made GCD() to take variable number
 	of arguments.

	* src/fn-stat.c (gnumeric_rank): RANK() fixed.

	* src/fn-eng.c (gnumeric_erf): ERF() fixed to return negative
	results if the argument is negative too like in Excel.

	* srg/fn-eng.c (get_real_and_imaginary): Added a branch for empty
 	imaginary part.

	* src/fn-eng.c (gnumeric_improduct, gnumeric_imsum): Made IMSUM()
	and IMPRODUCT() to take variable number of arguments.

1999-06-15  Morten Welinder  <terra@diku.dk>

	* src/style.c (style_font_new_simple): Plug leak.

	* src/cell.c (cell_set_formula_tree_simple): Ref before unref,
 	just in case.

	* src/fn-math.c (callback_function_criteria): Just collect the
 	values, not (incorrectly) allocated pointers to them.
	(gnumeric_countif): Release the values.  (Leak fix.)
	(gnumeric_sumif): Ditto.
	(gnumeric_countif): Plug leak.
	(gnumeric_sumif): Ditto.
	(gnumeric_seriessum): Plug three leaks.
	(gnumeric_subtotal): Plug leaks and fix error handling.

	* src/style.c (style_font_new_simple): Fix memory access problem.

	* src/style.c (font_init): Rework.  (Work in progress.  Things
 	should work ok, but will become even better.)
	(style_font_new_simple): Revert to loading a font, not a fontset.

	* src/gnumeric-util.c (font_get_italic_name): Plug leak and unref
 	the StyleFont.
	(font_get_bold_name, font_get_italic_name): New parameter units.
  	All callers changed.

1999-06-15  Tomas Ogren  <stric@ing.umu.se>

	* configure.in: Added sv

1999-06-14  Morten Welinder  <terra@diku.dk>

	* src/style.c (style_font_new_simple): Add negative caching.
	(DEFAULT_FONT): Don't have a complete wildcard here -- that might
 	be a very weird font.

	* src/cell.c (cell_set_font_from_style): Mark font valid.  Ref
 	before unref.
	(cell_set_format_from_style): Mark format valid.  Ref before
 	unref.

	* src/gnumeric-util.c (font_get_italic_name): Plug leak.
	(font_change_component): Constify.  Handle fontsets.

1999-06-14  Morten Welinder  <terra@diku.dk>

	* src/fn-math.c (gnumeric_floor): Add significance argument.

	* src/fn-math.c (callback_function_seriessum): Simplify.
	(gnumeric_seriessum): Don't round x, n, and m to integers.  Fix
 	error handling.

	* src/fn-math.c (pow10): New function.
	(gnumeric_rounddown): Simplify and correct.
	(gnumeric_round): Ditto.
	(gnumeric_roundup): Ditto.
	(gnumeric_trunc): Ditto.
	(gnumeric_fact): Improve precision.  Extend domain to all positive
 	numbers.
	(gnumeric_factdouble): Use float_t instead of int.
	(gnumeric_atan2): Swap args to atan2.

1999-06-13  Morten Welinder  <terra@diku.dk>

	* src/style.c (DEFAULT_FONT): Add extra font in the hope of curing
 	1207.
	(font_init): Shine up error message and avoid core dump.

	* src/gnumeric-sheet.c (gnumeric_sheet_stop_cell_selection):
 	Temporary patch for refcounts until Miguel can fixup things.
	(destroy_item_editor): Ditto.

	* src/fn-financial.c: s/double/float_t/;
	(calculate_pvif, calculate_pvifa, calculate_fvif, calculate_fvifa,
 	calculate_principal, calculate_pmt): Make static.
	(callback_function_npv): Simplify and truly ignore strings.
	(gnumeric_duration): More error checks.
	(gnumeric_nper): Ditto.
	(gnumeric_syd): Ditto.
	(gnumeric_sln): Ditto.
	(gnumeric_pv): Ditto.
	(gnumeric_fv): Ditto.

	* src/fn-information.c: Prune includes.
	* src/fn-string.c: Ditto.
	* src/fn-sheet.c: Ditto.
	* src/fn-misc.c: Ditto.
	* src/fn-financial.c: Ditto.
	* src/fn-date.c: Ditto.
	* src/fn-database.c: Ditto.
	* src/fn-lookup.c: Ditto.
	* src/fn-stat.c: Ditto.
	* src/fn-math.c: Ditto.
	* src/fn-logical.c: Ditto.

	* src/cell.h: Fix includes.

	* src/fn-information.c (gnumeric_isblank): Return boolean.
	(gnumeric_iseven): Ditto.
	(gnumeric_islogical): Ditto.
	(gnumeric_isnontext): Ditto.
	(gnumeric_isnumber): Ditto.
	(gnumeric_isodd): Ditto.
	(gnumeric_isref): Ditto.
	(gnumeric_istext): Ditto.
	(gnumeric_n): Ditto.

	* src/expr.c (value_new_bool): New function.
	(eval_expr): Return boolean Values.

	* src/fn-misc.c (gnumeric_iserr, gnumeric_iserror, gnumeric_isna):
 	Return boolean;

	* src/fn-logical.c (callback_function_and): Simplify.
	(callback_function_or): Ditto.
	(gnumeric_and): Simplify and return boolean Values.
	(gnumeric_not): Ditto.
	(gnumeric_if): Fix error case.  Simplify.

	* src/cell.c (cell_comment_destroy): Free realized_list.

	* fn-*.c: Use new standard error variables.

1999-06-12  Jody Goldberg  <jgoldberg@home.com>

	* src/expr.h : Declare new standard error constants to avoid
	spelling problems and typos.
	* src/expr.c, src/func.c, src/fn-math.c : Use and define them.
	* src/fn-misc.c	: First pass at finishing off error functions.
	* src/fn-information.c : Provide stubs for the rest of the
	information functions.

1999-06-12  Miguel de Icaza  <miguel@gnu.org>

	* src/dialog-cell-comment.c (dialog_cell_comment): Process the
	return value from gnome_dialog_run correctly as well.  (ie we
	should catch the return value -1 as the "user closed dialog box"
 	message and avoid destroying the dialog box ourselves).

	* src/item-grid.c (context_paste_special_cmd): Handle a cancel
	operation from the dialog_paste_special dialog box.

	* src/dialog-paste-special.c (dialog_paste_special): Hanlde the
	case in which the window manager closed the dialog box.

	* src/cell.c (cell_comment_destroy): Changed invocation from
	gtk_object_destroy to gtk_object_unref.
	(cell_comment_unrealize): ditto.
	(cell_comment_clicked): ditto.
	* src/dialog-cell-sort.c (dialog_cell_sort): ditto.
	* src/dialog-function-select.c (dialog_function_select): ditto
	* src/dialog-function-wizard.c (dialog_function_wizard): ditto
	* src/dialog-paste-special.c (dialog_paste_special): ditto
	* src/dialog-solver.c (constr_add_click): ditto.
	(constr_add_click): ditto
	(dialog_solver_options): ditto
	* src/gnumeric-sheet.c (gnumeric_sheet_stop_cell_selection): ditto
	(destroy_item_editor): ditto.
	(gnumeric_sheet_key_mode_object): ditto, and clear the pointer to
	the current_object.
	* src/sheet-object-container.c (sheet_object_container_destroy): ditto.
	* src/item-cursor.c (item_cursor_drag_event): ditto.
	(item_cursor_autofill_event): ditto
	* src/item-bar.c (item_bar_event): ditto
	* src/workbook.c (workbook_setup_auto_calc): ditto.
	* src/widget-editable-label.c (el_stop_editing): ditto
	* src/sheet-object.c (sheet_object_destroy): ditto
	(sheet_view_object_unrealize): ditto
	(sheet_object_destroy_control_points): ditto
	* src/sheet-view.c (sheet_view_destroy): ditto

1999-06-10  Miguel de Icaza  <miguel@gnu.org>

	* src/pattern-selector.c (pattern_selector_init): Use the GNOME
	canvas fill_stipple feature instead of using the hack of creating
	the bitmap and setting the stipple on the realize handler.

1999-06-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* po/hr.po: Added croat translation from Vladimir Vuksan
	<vuksan@cs.unm.edu>.

1999-06-13  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/mathfuns.xls: New test file for math functions.

	* samples/statfuns.xls: Accuracy dropped to 1e-5 (since Excel is
 	not as accurate as Gnumeric).  Also the total number of functions
 	in the test output fixed.
	
1999-06-12  Morten Welinder  <terra@diku.dk>

	* src/fn-string.c: Use value_new_string where appropriate.
	(gnumeric_clean): Use unsigned chars.
	(gnumeric_t): Speed improvement.

	* src/file.c (workbook_read): After a workbook has been read, it
 	is to be considered "clean", i.e., unchanged.

	* src/number-match.c (print_regex_error): Add a few missing breaks.

	* src/utils.c (gnumeric_strcase_hash): Use unsigned chars.
	(col_from_name): Ditto.

	* src/format.c (append_year): Ditto.
	(append_month): Ditto.
	(append_hour): Ditto.
	(append_day): Ditto.
	(append_minute): Ditto.
	(append_second): Ditto.
	(pre_parse_format): Ditto.

	* src/number-match.c (format_create_regexp): Ditto.

	* src/fn-string.c (gnumeric_lower): Use g_strdup to match g_free.
	(gnumeric_upper): Ditto.
	(gnumeric_lower): Use unsigned chars.  (This fixes problems with
 	non-English letters.)
	(gnumeric_upper): Ditto.
	(gnumeric_proper): Ditto.  Operate on a _copy_ of the string, not
 	the source string itself!

1999-06-10  Morten Welinder  <terra@diku.dk>

	* src/parser.y (return_cellref): Surprise: isdigit and friends
 	take unsigned chars (effectively).  The results are *undefined*
 	(and weird) for signed chars.
	(yylex): Ditto.

	* src/fn-string.c (gnumeric_proper): Ditto.

	* src/utils.c (parse_cell_name): Ditto.

	* src/sheet-autofill.c (string_has_number): Ditto.
	(autofill_cell): Ditto.

	* src/cell.c (cell_set_text_simple): Ditto.  Also fix long/int
 	confusion.

1999-06-10  James Henstridge  <james@daa.com.au>

	* src/main.c (gnumeric_main): changed call to glade_init() to a call
	to glade_gnome_init(), so that gnome widget building routines get
	initialised correctly.

1999-06-09  Morten Welinder  <terra@diku.dk>

	* src/xml-io.c: Fix major thinko in writing fonts.  (The name hash
 	table was used to look up a font, which always failed since keys
 	are names in that hash.)

1999-06-09  Nat Friedman  <nat@gnome-support.com>

	* src/sheet-view.c (sheet_view_insert_object): Commented out call
 	to gnome_bonobo_object_new_view since the API changed and this
 	function doesn't do anything anyways.

	* src/sheet-object-container.c: Include gnome-component-client.h
 	and view-frame.h.
	(sheet_object_container_land): Pass soc->client_site to
 	gnome_bonobo_object_new_view.  Get the view wrapper widget from
 	the view frame.
	(sheet_object_container_realize): Likewise.

1999-06-09  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (insert_at_cursor): Use cell_set_value instead of
 	cell_set_text.  Constify.  Accept a Value *, not a double.  All
 	callers changed.

1999-06-08  Morten Welinder  <terra@diku.dk>

	* src/fn-date.c (gnumeric_days360): Get it right, I hope.

	* src/xml-io.c (xmlGetDoubleValue): Improve precision.
	(xmlGetCoordinate): Ditto.
	(xmlGetGnomeCanvasPoints): Ditto.

	* src/fn-math.c (gnumeric_fact): s/float/float_t/

	* src/fn-date.c: Fix types of most functions.  (We really need a
 	way of saying "scalar".)
	(get_serial_date): New helper function.
	(get_serial_time): Ditto.
	(gnumeric_hour): Use get_serial_time.
	(gnumeric_minute): Ditto.
	(gnumeric_second): Ditto.
	(gnumeric_year): Use get_serial_date.
	(gnumeric_month): Ditto.
	(gnumeric_day): Ditto.
	(gnumeric_weekday): Ditto.
	(gnumeric_datevalue): Ditto.
	(gnumeric_timevalue): Implement using get_serial_time.
	(gnumeric_days360): Pretty good first cut.

	* src/parser.y (yylex): Allow dots inside a function name.

	* src/fn-misc.c (gnumeric_error_type): New function.

1999-06-08  David Chan <dpc29@hermes.cam.ac.uk>

	* src/fn-math.c (gcd): Correct.

1999-06-08  Morten Welinder  <terra@diku.dk>

	* src/file.c (workbook_read): Temporarily switch to "C" locale
 	when loading and saving.  [Take 2.]
	(workbook_save_as): Ditto.
	(workbook_save): Ditto.

1999-06-06  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (value_area_get_at_x_y): Add vital check for
	forthcoming name stuff.

1999-06-03  Morten Welinder  <terra@diku.dk>

	* src/item-bar.c (item_bar_event): Handle zoom.
	(item_bar_get_line_points): Handle zoom.
	(item_bar_start_resize): Handle zoom better.
	(get_col_name): Delete.  Use col_name instead.
	(bar_draw_cell): Constify.

	* src/item-bar.h (ItemBar): Delete member resize_guide_offset.

1999-06-02  Morten Welinder  <terra@diku.dk>

	* src/fn-date.c (gnumeric_days360): New (unimplemented) function.

	* src/fn-date.c (gnumeric_year_month_day): Delete.
	(gnumeric_day, gnumeric_month, gnumeric_year): New functions.
	(gnumeric_hour_min_sec): Delete.
	(gnumeric_hour, gnumeric_minute, gnumeric_second): New functions.
	(gnumeric_weekday): New function.
	(gnumeric_date): Handle two-digit years.  Check this, please.
	(gnumeric_timevalue): New function.  (Untested -- Excel plugin
 	does not handle it yet.)

	* src/utils.c (g_date_serial): Deal with 19000229.
	(g_date_new_serial): Ditto.

	* samples/datefuns.xls: New file from Nick Lamb.

	* src/eval.c (workbook_recalc): If a cell has already been
 	computed, do not redo it.  This should speed up things.
	(cell_queue_recalc): Delete useless cast.
	(cell_unqueue_from_recalc): Ditto.
	(cell_queue_recalc_list): Ditto.
	(cell_queue_recalc_list): Extra parameter freelist controls
 	whether list is freed.  All callers changed.
	(workbook_recalc_all): Use cell_queue_recalc_list.

	* src/dialog-goal-seek.c (goal_seek_eval): Properly reevaluate.

	* src/expr.c (eval_expr): Only evaluate references cells when they
 	are queued for recalculation.

	* src/func.c (iterate_cellrange_callback): Ditto.

	* src/fn-math.c (gnumeric_lcm): Remove useless (Sheet *) cast.

	* src/fn-information.c (gnumeric_countblank): Ditto.

	* src/fn-database.c (find_column_of_field): Ditto.
	(parse_database_criteria): Ditto.
	(find_cells_that_match): Ditto.

	* src/cell.c (cell_comment_realize): Ditto.

1999-06-02  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (do_expr_decode_tree): Added ARRAY support.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/format.c (format_value): Mark format for translation.
	(format_number): Locale improvements.

	* src/parser.y (yylex): Translate locale's decimal point into a
 	dot.
	(gnumeric_expr_parser): Extract locale's decimal point.

1999-06-01 Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>

	* src/gnumeric-util.c (font_change_component): Extend the size of
	the array components[] so that it can handle very long fontset
	names.

	* src/style.c: Change the default font names.

	* src/workbook.c: Add gtk_widget_ensure_style() call, which is
	necessary to knowing if a fontset is supplied for the label
	widget.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (callback_function_trimmean): Cleanup.
	(gnumeric_large): Fix conditional.  Thanks to Nick Lamb.
	(gnumeric_small): Ditto.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_skew): Fix crashes and leaks.
	(gnumeric_covar): Ditto.
	(gnumeric_rsq): Ditto.
	(gnumeric_pearson): Ditto.
	(gnumeric_correl): Ditto.
	(gnumeric_avedev): Ditto.

	(gnumeric_stdev): Don't make assumptions of the type of VAR.
	(gnumeric_stdevp): Ditto.
	(gnumeric_stdeva): Ditto.
	(gnumeric_stdevpa): Ditto.

	(callback_function_covar): Simplify greatly.
	(callback_function_correl): Ditto.
	(callback_function_stat_avedev_sum): Ditto.
	(callback_function_skew_sum): Ditto.  Also improve precision.
	(callback_function_rank): Ditto.
	(callback_function_trimmean): Ditto.
	(callback_function_mode): Ditto.
	(callback_function_stat_prod): Ditto.
	(callback_function_count): Ditto.
	(callback_function_kurt_sum): Ditto.
	(callback_function_ztest): Ditto.
	(callback_function_list): Ditto.
	(callback_function_percentrank): Ditto.
	(gnumeric_skew): Handle zero stddev.

	* src/expr.c (eval_cell_value): Delete.  Use value_duplicate
 	instead.
	(eval_funcall): Fix memory corruption on error.  Fix serious leak.
	(free_values): Only free non-NULLs.

1999-06-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (dialog_query_load_file):
	(workbook_save_as): Prettify these.  Thanks to Andrew for pointing
	this out.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_kurt): Fix crashes and leaks.

1999-06-01  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-string.c: Added SEARCH().  Quite a complex beast but
 	should work completely.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_confidence): Fix sign.
	(gnumeric_devsq): Simplify and correct.

	* src/file.c: undo last change.  (The operation succeeded, but the
 	patient died.)

1999-05-31  Matt Loper  <matt@gnome-support.com>

	* src/sheet-view.c: Because GNOME::Component was renamed to
	GNOME::BonoboObject, some bonobo function call names needed to be
	changed here (ex. gnome_component_new_view to
	gnome_bonobo_object_new_view).

	* src/sheet-object-container.c (sheet_object_container_land):
	likewise.
	(sheet_object_container_realize): likewise.

1999-05-31  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-lookup.c: Added ADDRESS().  Cleaned up too long lines.

1999-05-28  Morten Welinder  <terra@diku.dk>

	* src/file.c (workbook_read): Temporarily switch to "C" locale
 	when loading and saving.  I am not sure this is the right thing to
 	do, but until someone finds a better way, it will work fine.
	(workbook_save_as): Ditto.
	(workbook_save): Ditto.

	* src/fn-math.c (gnumeric_power): Fix domain.

1999-05-27  Morten Welinder  <terra@diku.dk>

	* src/expr.c (value_get_as_string): Improve precision -- this
 	impacts the results of saves.

1999-05-27  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (callback_function_mode): Ignore strings as
 	advertised.
	(callback_function_stat_inv_sum): Ditto.
	(callback_function_rank): Ditto.
	(callback_function_trimmean): Ditto.
	(callback_function_covar): Ditto.
	(callback_function_correl): Ditto.
	(callback_function_stat_prod): Ditto.
	(callback_function_skew_sum): Ditto.
	(callback_function_kurt_sum): Ditto.
	(callback_function_stat_avedev_sum): Ditto.
	(callback_function_devsq_sum): Ditto.
	(callback_function_median): Ditto.
	(gnumeric_tinv): Fix meaning.
	(callback_function_count): Cleanup.
	(callback_function_stat_inv_sum): Ditto.  Also fix error case.
	(gnumeric_normdist): Simplify using dnorm.
	(gnumeric_gammadist): Use dgamma.

	* src/mathfunc.c (dgamma): New function from R.

1999-05-27  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added BETAINV() and CHITEST().  Added optional
 	parameters A and B to BETADIST().  Implemented non-cumulative case
 	of NORMDIST().  Implemented cumulative case of POISSON().  Fixed
 	CHIDIST(), CHIINV(), FDIST(), FINV(), and TDIST() to return the
 	complement of the probablity.  It looks like TINV() is still
 	broken after file restructurations.

1999-05-26  Morten Welinder  <terra@diku.dk>

	* src/sheet-view.h: Include fix.

	* src/style.h: Include fix.

	* src/symbol.c (symbol_table_new): Use gnumeric_strcase_equal and
 	gnumeric_strcase_hash.
	(g_strcase_equal): Delete.
	(g_strcase_hash): Delete.

	* src/eval.c (dependency_equal): Constify.

	* src/sheet.c (cell_hash): Constify.
	(cell_compare): Ditto.
	(CRsort): Ditto.

1999-05-26  Michael Meeks  <michael@imaginator.com>

	* src/file.c (file_saver_is_default_format): Fixed bug causing
	incorrect format to be displayed.
	(fill_save_menu): Wait until we have populated the option menu
	before setting the current item.
	(make_format_chooser): Move some code into file_save_menu.

	* src/xml-io.c (writeXmlSheetTo): Removed,
	(writeXmlWorkbook): Use the order workbook_sheets list.

	* src/workbook.c (cb_workbook_sheets): Commented out
	(workbook_sheets): Get sheets in order from notebook tabs.

1999-05-25  Morten Welinder  <terra@diku.dk>

	* src/mathfunc.c, src/mathfunc.h: New files, mostly taken from the
 	R package.  (It's a GPL'ed gold mine.)

	* src/*.c: Use <math.h>, not "math.h".

	* src/utils.c (random_normal): Use qnorm, not inv_phi.

	* src/fn-stat.c: Move all R code to mathfunc.c
	Change all uses to phi to pnorm.
	(gnumeric_normsinv): Use qnorm.
	(gnumeric_confidence): Use qnorm.
	(normsinv): Superseded by qnorm.
	(help_lognormdist): Fix.
	(gnumeric_lognormdist): Fix domain.
	(gnumeric_lognormdist): Use plnorm.
	(gnumeric_loginv): Use qlnorm.
	(gnumeric_norminv): Use qnorm.
	(gnumeric_tinv): Use qt.
	(gnumeric_fdist): Use qf.
	(gnumeric_gammainv): Use qgamma.
	(gnumeric_chiinv): Use qchisq.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add mathfunc.c and
 	mathfunc.h.

1999-05-25  Morten Welinder  <terra@diku.dk>

	* src/fn-string.c (gnumeric_code): Handle compilers for which the
 	"char" type is signed.

	* src/utils.c (parse_cell_name): Don't use isalpha which is
 	subject to locale.  (So is toupper, but the effects are ok.)
	Move bounds check to handle overflow also.
	(col_from_name): Don't use isalpha.

	* src/fn-stat.c: Eliminate fmin2 and fmax2.

	* src/fn-math.c (gnumeric_randbetween): Use random_01.
	(gnumeric_rand): Ditto.

	* src/utils.c (random_01): Function moved from goal-seek.c and
 	improved.
	(random_normal): Function moved from goal-seek.c.

	* configure.in: Check for a few ways of getting random numbers.

1999-05-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (workbook_save_as): Handle the window closing by the
	window manager here.
	(dialog_query_load_file): And here.

	* src/dialog-zoom.c (dialog_zoom): Handle window manager close
	here (it comes in the form of return value being NULL).

	* src/dialog-insert-cells.c (dialog_insert_cells): ditto.

	* src/dialog-delete-cells.c (dialog_delete_cells): ditto.

1999-05-24  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_fixup_references): Set formula
 	directly, not via text strings.  (This actually fixes a bug with
 	insertion of columns/rows where we modify the cells before we
 	restructure the sheet.)  It's much faster and cleaner too.
	(workbook_invalidate_references): Ditto.

1999-05-23  Morten Welinder  <terra@diku.dk>

	* src/gnumeric-sheet.c (gnumeric_sheet_cursor_set): Make the
 	scroll bar reflect the top-left corner's position.  This feels
 	more natural.
	(gnumeric_sheet_set_top_col): Compute visible ranges; do nothing
 	until things change.
	(gnumeric_sheet_set_top_row): Ditto.

	* src/dialog-goal-seek.c (gnumeric_goal_seek): Use
 	goal_seek_initialise.
	(gnumeric_goal_seek): Trawl heavier and earlier in the middle.
	(dialog_goal_seek): downcase a stray uppercase letter.

	* src/goal-seek.c (goal_seek_initialise): New function.

1999-05-23  Morten Welinder  <terra@diku.dk>

	* src/dialog-goal-seek.c: redesign non-gui part.
	(dialog_goal_seek): Added entries for xmin and xmax.

	* src/goal-seek.h: New file.

	* src/goal-seek.c: New file.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add goal-seek.c and
 	goal-seek.h.

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/fn-financial.c (gnumeric_pv): Revert last chance.  (Bogosity
 	is in me.)

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_selection_to_string): Delete unused variable
 	"assembler".

	* src/sheet-view.c (horizontal_scroll_event): Delete unused
 	variable "distance".
	(vertical_scroll_event): Delete unused variable "distance".

	* src/sheet-object.c (control_point_handle_event): Delete unused
 	variables "ll" and "object_item".

	* src/widget-editable-label.c (editable_label_set_text): Delete
 	unused variable "item_text".

	* src/fn-string.c (gnumeric_replace): Delete unused variable "p".

	* src/fn-eng.c (get_real_and_imaginary): Delete unused variables
 	"i" and "buf".

	* src/sheet-object-graphic.c (sheet_object_filled_update): Delete
 	unused variables "x1", "x2", "y1", and "y2".

	* src/fn-stat.c (gnumeric_harmean): Delete unused variable "ans".
	(gnumeric_geomean): Delete unused variable "ans".
	(gnumeric_avedev): Delete unused variable "ans".
	(gnumeric_large): Delete unused variable "count".
	(gnumeric_small): Delete unused variable "count".

	* src/parser.y (make_string_return): Delete unused variable "type".

	* src/workbook.c (cb_sheet_check_dirty): Delete unused variable
 	"f".
	(workbook_focus_sheet): Delete unused variable "sheet_view".
	(workbook_selection_to_string): Delete unused variable "str".

	* src/fn-date.c (gnumeric_datevalue): Delete unused variables
 	"year", "month", and "day".
	(gnumeric_edate): Delete unused variables "year", "month", and
 	"day".

	* src/dialog-cell-format.c (apply_coloring_format): Delete unused
 	variable "cl".

	* src/dialog-solver.c: Delete unused variable "paste_types".

	* src/xml-io.c (xmlGetFloatValue): Delete unused variable "child".
	(xmlGetDoubleValue): Delete unused variable "child".
	(xmlGetCoordinate): Delete unused variable "child".
	(xmlGetGnomeCanvasPoints): Delete unused variable "child".
	(xmlGetColorValue): Delete unused variable "child".
	(xmlGetCoordinates): Delete unused variable "child".
 	(xmlGetCoordinates): Delete unused variables "X1", "Y1", "X2", and
 	"Y2".

	* src/sheet-object-graphic.c (sheet_object_graphic_update): Delete
 	unused variable "sog".

	* src/cell.c (cell_set_value_simple): Delete unused variable "lconv".
	(cell_set_text_simple): Delete unused variable "lconv".
	(cell_draw): Delete unused variable "white_gc".
	(cell_get_text): Delete unused variable "sheet".

	* src/ranges.c (range_list_parse): Delete unused variable "range".
	(range_set_style): Delete unused variables "col" and "row".

	* src/dialog-solver.c (dialog_solver_options): Delete unused
 	variable "button".

	* src/eval.c (search_cell_deps): Delete unused variables "inters"
 	and "nointers".

	* src/dialog-cell-sort.c (dialog_cell_sort): Delete unused
 	variable "txt".

	* src/fn-database.c (find_cells_that_match): Delete unused
 	variable "new_item".

	* src/func.c (function_iterate_do_value): Delete unused variable
 	"list".

	* src/fn-lookup.c (gnumeric_lookup): Delete unused variables "v1"
 	and "ans".
	(lookup_functions): Use correct help variable
 	for "columns".

	* src/dialog-function-select.c (function_select_create): Delete
 	unused variable "hadj".

	* src/main.c (gnumeric_main): Delete unused variable.

	* src/dialog-function-wizard.c (function_type_input): Remove
 	unused variable.
	(get_text_value): Ditto.
	(arg_data_list_destroy): Comment out -- not used.

	* src/fn-financial.c (gnumeric_pv): Fix sign error.  Something is
 	entirely bogus in this file.

	* src/ranges.h: Fix includes.

	* src/pattern-selector.h (PATTERN_SELECTOR_CLASS): Bogosity fixed;
 	macro not used, though.

	* src/workbook.c (sheet_action_delete_sheet): Grammar fix.

	* src/sheet.c (sheet_verify_selection_simple): Grammar fix.

	* src/file.c (file_priority_sort): Constify.
	(file_format_register_open): Make description parameter const.
	(file_format_register_save): Ditto.
	(file_format_unregister_open): Plug leak.
	(file_format_unregister_save): Ditto.
	(workbook_save_as): Grammar fix.

	* src/about.c (dialog_about): Fix URL.

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_set_text): Use General format for all numbers
 	in standard format.  (In particular, don't create a sticky "0" format
	whenever an integer is entered.)

	* src/format.c (format_number): Constify.
	(append_minute): Ditto.
	(append_day): Ditto.
	(append_hour): Ditto.
	(append_month): Ditto.
	(append_year): Ditto.
	(append_second): Ditto.
	(check_valid): Ditto.
	(append_half): Ditto.
	(lookup_color): Ditto.
	(render_number): Ditto.
	(format_value): Ditto.

	* src/expr.c (do_expr_decode_tree): Handle negative numbers, just
 	in case.

1999-05-21  Morten Welinder  <terra@diku.dk>

	* src/sheet-autofill.c (autofill_cell): Add FIXME.

	* src/sheet.h (IS_SHEET): Remove cast.

	* src/expr.h: Delete expr_tree_relocate.

	* src/expr.c (fixup_calc_new_cellref): New function.
	(do_expr_tree_fixup_references): Simplify using
 	fixup_calc_new_cellref.
	(do_expr_tree_relocate): Delete.
	(expr_tree_relocate): Delete.

	* src/sheet.c (sheet_cell_formula_link): Add debug code.
	(sheet_insert_col, sheet_delete_col, sheet_insert_row,
 	sheet_delete_row): Do fixups early.

	* src/cell.c (cell_relocate): Don't relocate cell -- fixup handles
 	all that is needed.

	* src/color.c (gs_white, gs_black, gs_light_gray, gs_dark_gray,
 	gs_red): Moved from src/gnumeric-sheet.c.
	(gnumeric_color_context): make static.

1999-05-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: PERCENTRANK() added.

	* src/func.[ch]: function_iterate_do_value made public.

1999-05-21  Morten Welinder  <terra@diku.dk>

	* configure.in: use AC_CHECK_HEADERS, not AC_CHECK_HEADER for the
 	benefit of autoheader.

1999-05-19  Michael Meeks  <michael@imaginator.com>

	* src/fn-stat.c: Added 'static' to new non-global functions.

	* src/cell.c (cell_set_formula_tree_simple): Added
	missing sheet_cell_formula_unlink.

1999-05-19  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: SERIESSUM(), SUBTOTAL() and SUMA() added.

	* src/fn-stat.c: SLOPE(), AVERAGEA(), MAXA(), MINA(), STDEVA(),
 	STDEVPA(), VARA(), and VARPA() added.

	* src/fn-stat.c (gnumeric_counta, gnumeric_min, gnumeric_max,
 	gnumeric_stdev, gnumeric_stdevp, gnumeric_var, gnumeric_varp):
 	made public (used also in src/fn-math.c for now on).

1999-05-19  Michael Meeks  <michael@imaginator.com>

	* CHANGES: copied to web and blanked.

1999-05-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-args.c (gnumeric_arg_parse): Initialize as a server.
	Thanks to Elliot for fixing this one.

1999-05-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/utils.c (parse_cell_name): Return false if the cell name is
	outside the boundaries of the spreadsheet.

	* src/corba-sheet.c (Sheet_range_set_text): Implement.
	(Sheet_range_set_formula): Implement.
	(Sheet_range_set_format): Implement.

	* src/ranges.c (range_parse, range_list_parse, range_list_destroy,
	range_list_foreach_full, range_list_foreach_all,
	range_list_foreach, range_set_style): New functions.  Used by the
	corba-sheet code.

	* src/corba-sheet.c (Sheet_range_get_values): Implement
	vector-based result return.

	* src/xml-io.c (xmlSetGnomeCanvasPoints): use g_malloc instead of alloc.

	* src/dialog-solver.c (constr_add_click): Use g_malloc instead of
	alloc.  Use g_new instead of malloc.

	* src/utils.c (parse_cell_name_list): Add parameter checking.  Use Migueestyle.

1999-05-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (Workbook_corba_class_init): Make it work
	with the new bonobo.

1999-05-16  Raja R Harinath  <harinath@cs.umn.edu>

	* src/Gnumeric.idl: Revert the following checkin:
	1999-05-13  Kjartan Maraas  <kmaraas@online.no>.
	`gnome-object.idl' is part of `bonobo'.

1999-05-16  Morten Welinder  <terra@diku.dk>

	* src/expr.c (do_expr_tree_relocate): Change to use lazy copying
 	scheme -- this should improve sharing.  (Until someone saves and
	reloads, of course.  More about that at a later time.)
	(expr_tree_invalidate_references): Quiet.
	(expr_tree_fixup_references): Quiet.

	* src/cell.c (cell_relocate): Only update if changed.

	* src/expr.c (evaluate_level): Deleted.
	(bigger_prec): Deleted.
	(do_expr_decode_tree): Handle left/right associativity.

	* src/cell.c (cell_set_text_simple): Simplify value parsing.

	* src/dialog-goal-seek.c (test_cell_with_value): Cast to double,
 	not float.

1999-05-16  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (cb_assemble_selection): Add 'char *sel'
	and change "," -> ','
	(workbook_selection_to_string): Add 'char *result'
	Fix incorrect pointer dereference.

	* src/sheet.c (reference_append): Fix appended strings to
	characters.
	(sheet_selection_to_string): Add missing GList pointer
	'selections'. Changes ":" -> ':', rename res to 'info->result'

1999-05-15  Heath Martin <martinh@pegasus.cc.ucf.edu>

	* src/gnumeric-sheet.c (gnumeric_sheet_compute_visible_ranges):
	Small cut and paste fix.  Use row here instead of col.

1999-05-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* configure.in (ALL_LINGUAS): Added slovak language.

1999-05-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_selection_to_string): New routine.  Returns a
	string representation of the current selection.

	* src/workbook.c (workbook_selection_to_string): New routine.
	Retunrs a string representation of the current selection.

1999-05-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (corba_sheet): Fix.

1999-05-16  Michael Meeks  <michael@imaginator.com>

	* CHANGES: Added to ease burdern of creating accurate descriptions
	between versions.

1999-05-15  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/statfuns.xls: Added a new file.  It can be used for
 	regression testing.  It is in Excel format so it tests the Excel
 	plugin's functionality in the same time too.

1999-05-15  Michael Meeks  <michael@imaginator.com>

	* src/file.c (file_format_register_save): Changed to append
	new types; works round bug in selection.

	* src/expr.c (eval_cell_value): Fix sillyness of top left
	corner stuff.

	* src/expr.h: Added const to value_dump

	* src/parser.y (value_dump): Fixed array problem.
	Added const to parameter.

1999-05-15  Michael Meeks  <michael@imaginator.com>

	* src/parser.c (value_dump): Updated Arrays, to use Value *

	* src/func.c (function_iterate_do_value): same.

	* src/fn-sheet.c (gnumeric_selection): same.

	* src/eval.c (add_value_deps): same.

	* src/expr.c (value_get_as_string): Major re-work of ARRAY
	conversion.
	(value_array_set): Fix rather embarassing bug in assertions.
	(eval_cell_value): Return top left corner of array, seems to be
	what excel does.
	(value_release, value_array_set, value_array_new),
	(value_array_copy_to, value_array_resize):
	Updated value->v.array to Value *'s saves much hassle !

1999-05-14  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (value_area_get_width, value_area_get_height):
	Clip to sheet bounds if CELLRANGE: Massive speedup on some
	lookups.

	* src/expr.h: Added value_zero

	* src/func.c (constants_init): Added a 'value_zero' constant
	to kill leak in out-of-range / NULL cell cases in value_get_at_x_y

1999-05-14  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added LCM().

1999-05-13  Kjartan Maraas  <kmaraas@online.no>

	* src/Gnumeric.idl: s/#include <gnome-object.idl>/
	  #include <GnomeObject.idl>, to make it compile.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/Gnumeric-impl.c: Fixes killing this file by
	mistake.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/expr.h: Updated all prototypes.

	* *.c:
	s/\<value_float *(/value_new_float (/g
	s/\<value_int *(/value_new_int (/g
	s/\<value_str *(/value_new_string (/g
	s/\<value_string *(/value_get_as_string (/g
	s/\<value_cellrange *(/value_new_cellrange (/g
	s/\<value_get_as_double *(/value_get_as_float (/g
	s/\<value_get_bool *(/value_get_as_bool (/g

	* src/expr.c: Moved all pertainant Value functions to the
	same place to aid possible splitting.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (value_area_get_at_x_y): Added warning
	in safety case.

	* src/fn-lookup.c (gnumeric_lookup): Implemented.

	* src/func.h: Updated critera_test_fun_t: returns int,
	should really be gboolean ?

	* src/expr.h: Added prototype & indentation beautified.

	* src/expr.c (value_array_set): Helper function added.

1999-05-13  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added GCD().

1999-05-12  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (workbook_setup_edit_area): Added dependancy
	debugging button for --debug=10 and fixed memory leak.
	(deps_output): Dumps dependency data to stdout.

	* src/gnumeric-util.c (range_contains): Re-order compares
	to catch single cell ranges more quickly.

	* src/eval.c (intersects): Change order of sheet / range check
	for speed.
	(search_cell_deps): Added comment.

	* src/eval.h: Cosmetic typo. fix shet -> sheet

1999-05-12  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: Database functions accept now string
 	criterias too.  In addition, the parsing of criterias and the test
 	functions are now public (src/fn-math.c uses these for now on).

	* src/func.h: Added type definitions and function prototypes for
 	internal functions that parse and test criterias.

	* src/fn-math.c: Added LN().  Changed LOG() to take an optional
 	second parameter.  LOG() returns the logarithm in base 10 if the
 	optional argument is not given, otherwise it returns the logarithm
 	in the given base.

	* src/fn-math.c: Added COUNTIF() and SUMIF().

	* src/fn-eng.c: Added IMLOG10() and IMLOG2().

	* src/fn-eng.c (complex_ln): Fixed a bug.  Imaginary coefficient
	was calculated incorrectly.

1999-05-11  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added CONVERT().  All translations should work.
  	Also get_real_and_imaginary() fixed (complex numbers should now
 	work completely).

1999-05-10  Michael Meeks  <michael@imaginator.com>

	* src/sheet.h: Added workbook_focus_sheet.

	* src/workbook.c (workbook_focus_sheet): Added.

1999-05-10  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added IMARGUMENT(), IMCONJUGATE(), IMCOS(),
 	IMDIV(), IMEXP(), IMLN(), IMPOWER(), IMPRODUCT(), IMSIN(),
 	IMSQRT(), IMSUB(), and IMSUM().

1999-05-08  Michael Meeks  <michael@imaginator.com>

	* web/index.html: Fix sillyness in references.

	* web/gnumeric-0.25: Remove HTML tags...

1999-05-08  Michael Meeks  <michael@imaginator.com>

	* src/Makefile.am (gnumeric_LDADD): Added libole2 library.

	* configure.in (XML_CFLAGS): Updated to add excel/libole2

	* src/sheet.h: Commented sheet_cell_get vs. _fetch.

	* src/expr.c (do_expr_tree_unref, value_string, value_release),
	(eval_cell_value, do_expr_tree_invalidate_references):
	Clean: Added 'default' cases with warnings.
	(value_get_as_double, value_get_as_int, value_get_bool): Changed
	to safer / faster switch statement from if.

1999-05-07  Michael Meeks  <michael@imaginator.com>

	* src/corba-workbook.c (corba_sheet): Add CORBA_Environment
	parameter, needed for Object_dupicate...
	(Workbook_sheet_new, Workbook_sheet_lookup),
	(Workbook_sheet_current): Updated corba_sheet's args.

	* src/fn-lookup.c: Fixed choose help.

1999-05-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (corba_sheet): Duplicate the object before
	returning to ORBit.

1999-05-07  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added COMPLEX(), IMABS(), IMAGINARY(), IMREAL().
  	Also added an internal function get_real_and_imaginary() which
 	still needs to be improved.

	* src/fn-math.c: Added MROUND() and ROMAN().  ROMAN() currently
 	supports only type 0 (classic).

1999-05-07  Heath Martin  <martinh@pegasus.cc.ucf.edu>

	* src/expr.c (expr_tree_invalidate_references): Add extra argument
 	for the sheet we are changing.  All callers changed.
	(expr_tree_fixup_references): Ditto.

1999-05-06  Morten Welinder  <terra@diku.dk>

	* src/eval.c (cell_queue_recalc): Don't re-queue cell.
	(cell_queue_recalc_list): Don't re-queue cells.  (Because it is
 	wasteful and because unqueue then won't work right.)

	* src/fn-lookup.c (gnumeric_column): Fix leak.
	(gnumeric_row): Fix leak.
	(gnumeric_choose): Fix leak.
	(lookup_similar): Fix leaks.

	* src/xml-io.c (xml_probe): Fix leak.
	(xmlGetValue): Fix *HUGE* leak.
	(readXmlStyle): Fix leaks.
	(readXmlSheet): Fix leaks.
	(createXmlSheet): Fix leak.
	(readXmlCell): Move the freeze, just in case.

	* src/fn-lookup.c (gnumeric_choose): Remove (incorrect) arg check.

	* src/cell.c (cell_copy): Properly handle render_color member.
  	Clear the CELL_QUEUED_FOR_RECALC flag.
	(cell_destroy): Add code to make it painfully clear when members
 	of freed cells are accessed.

1999-05-06  Michael Meeks  <michael@imaginator.com>

	* src/cell.h: Added deep freeze prototypes.

	* src/cell.c (cell_deep_freeze_redraws): Added
	(cell_deep_thaw_redraws): Added,
	(cell_queue_redraw): Updated to use deep_freeze
	effectively ignore redraw requests.

	* src/xml-io.c (readXmlCell): Added deep freeze/thaw
	redraws for clean and easy speedup.

1999-05-06  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c: Moved 'Sort' to the tools menu.

	* HACKING: Pedantic clean.

1999-05-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-date.c: Added EDATE().

1999-05-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-date.c: Added DATEVALUE().

1999-05-05  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c (parse_criteria): If a condition contains
	just a number, it is an equality condition.

1999-05-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* configure.in: Laptop does not have resources.  Make guile
	optional until at least.

	* src: Now we only support two modes: Gnumeric and
	Gnumeric-Bonobo.  The later includes all of the CORBA support,
	there is no longer a non-Bonobo CORBA version.

	* src/corba-workbook.c, src/corba-sheet.c, src/workbook-factory.c:
	New files that support the Gnumeric CORBA interfaces.

1999-05-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (WorkbookFactory_init): Add workbook
	factory servant initialization.

1999-05-04  Morten Welinder  <terra@diku.dk>

	* src/eval.c (dependency_remove_cell): Remove unused assignment.
	(cell_queue_recalc_list): Mark queued cells as being so.

	* src/fn-math.c (gnumeric_combin): Clean up.
	(combin): Handle large numbers carefully.

	* src/utils.c (january_1900): Fix argument list.

	* src/fn-stat.c (gnumeric_var): Remove unused variable.
	(gnumeric_varp): Ditto.

1999-05-04  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math: Added ROUND().

	* src/fn-information: Added new file for information functions.
	New function COUNTBLANK() implemented.

	* src/Makefile.am, src/func.[ch]: Added `fn-information.c'.

1999-05-04  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: Added DCOUNTA().

	* src/fn-stat.c: Added argument count checks for VAR() and VARP().
	Added STEYX().

1999-05-03  Morten Welinder  <terra@diku.dk>

	* src/format.c (split_time): Fix leak.

	* src/parser.y (forget): Fix leak.

	* src/expr.c (do_expr_tree_ref): Delete.
	(expr_tree_ref): Just increase the ref-count.
	(do_expr_tree_unref): Properly decrease all the way.
	(expr_tree_new): Fix prototype.
	(value_release): Add "break".
	(value_cellrange): Make args const.  Don't use memcpy call.

	* src/parser.y (v_new): Fix type.
	(alloc_register): Ditto.
	(dump_tree): Fix reference to variable cell.

	* src/file.c (file_format_unregister_save): Fix leak.
	(file_format_unregister_open): Fix leak.

	* src/parser.y (forget): Fix leak.

	* src/eval.c (add_tree_deps): Use OPER_ANY_BINARY.
	(add_value_deps): Delete unused variable.
	(dependency_remove_cell): Fix leak.

	* src/sheet.c (sheet_destroy_styles): Leak fix.  Late night
 	coding?  :-)
	(sheet_shift_row): Ditto.

	* src/parser.y (alloc_clean): Ditto.
	(alloc_list_free): Ditto.

	* src/main.c (gnumeric_main): Get rid of memory leak debug code
 	(handled by other means now).

	* src/cell.c (cell_set_value): Remove "const".
	(cell_set_value_simple): Ditto.

1999-05-03  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: New file added for database
 	functions. Implemented DAVERAGE(), DCOUNT(), DGET(), DMAX(),
 	DMIN(), DPRODUCT(), DSTDEV(), DSTDEVP(), DSUM(), DVAR(), and
 	DVARP().

	* src/func.c: Added registeration of database functions.

	* src/fn-stat.c, src/func.h: callback_function_stat made public.

1999-05-02  Michael Meeks  <michael@imaginator.com>

	* src/expr.h: Spelling fix 'substract' :-)

	* src/expr.c (expr_tree_new): Added for convenience.

1999-05-02  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_value): Created.
	(cell_set_value_simple): Created.

	* src/cell.h: Added headers

1999-05-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c, src/corba-sheet.c: New files implementing
	most of the new Gnumeric.idl interface.

	* src/Gnumeric.idl: Make it useful.

1999-04-30  Morten Welinder  <terra@diku.dk>

	* src/*.h: Properly forward-declare structures.  Include
 	dependencies.  Change the occasional "void *" to its right
	type.

	* src/*.[cy]: Include more dependencies.

	* src/sheet.c (sheet_delete_row): Remove from workbook hash also.

1999-04-29  Morten Welinder  <terra@diku.dk>

	* src/expr.c (expr_tree_fixup_references): Implement.

	* src/sheet.c (sheet_delete_row, sheet_delete_col): Fixup
 	references.

	* src/expr.c (do_expr_tree_relocate): Remove strange and incorrect
 	refcount fiddling.

	* src/workbook.c (workbook_fixup_references,
 	workbook_invalidate_references): Fix cell walking.

	* src/expr.c (do_expr_decode_tree): rename binary_operation_names
	to operation_names and fill in the rest.

	* src/fn-misc.c (gnumeric_error): New function.

	* src/expr.c (value_str): Constify.
	(expr_tree_invalidate_references): Mostly implement.

	* src/fn-math.c (gnumeric_multinomial, gnumeric_product,
 	gnumeric_sumsq): Fix type.

	* src/expr.h (OPER_ANY_BINARY, OPER_ANY_UNARY): new convenience
 	macros.
	(struct _Sheet): declare forward reference so we can use the right
 	types.
	(CellRef, FunctionDefinition, expr_parse_string, expr_decode_tree,
 	eval_expr): use "struct _Sheet *".

	* src/workbook.c (workbook_do_destroy): Carefully clean workbook
 	before deleting sheets.  Do things in the standard way.  Get rid
 	of clipboard leak.
	(insert_cols_cmd): Fix name string.
	(workbook_detach_sheet): New parameter "force".  All callers
 	changed.
	(workbook_fixup_references, workbook_invalidate_references,
 	workbook_sheets): New functions.

	* src/sheet.c (sheet_verify_selection_simple): Mark strings for
 	translation.
	(sheet_insert_col): Fixup references to moved cells.
	(sheet_delete_col, sheet_delete_row): Invalidate references to
 	deleted cells.

	* src/sheet-autofill.c (fill_item_new): Fix copying of cell with
	error.

	* src/parser.y (yylex): "const" fixes.
	(gnumeric_expr_parser): New function (to fix memory corruption and
 	leaks).

	* src/fn-stat.c (i1mach): Make static.
	(gnumeric_var, gnumeric_varp, gnumeric_stdev, gnumeric_stdevp,
 	gnumeric_rank, gnumeric_trimmean, gnumeric_covar, gnumeric_correl,
 	gnumeric_mode, gnumeric_harmean, gnumeric_geomean, gnumeric_count,
 	gnumeric_counta, gnumeric_average, gnumeric_min, gnumeric_max,
 	gnumeric_skew, gnumeric_kurt, gnumeric_avedev, gnumeric_devsq,
 	gnumeric_pearson, gnumeric_rsq, gnumeric_median, gnumeric_large,
 	gnumeric_small, gnumeric_ztest): Fix type.

	* src/fn-math.c (gnumeric_fact, gnumeric_combin): Mark strings for
 	translation.
	(gnumeric_sum, gnumeric_trunc): Fix type.

	* src/fn-lookup.c (gnumeric_choose, gnumeric_column,
 	gnumeric_row): Fix type.

	* src/fn-misc.c (gnumeric_iserror): Fix type.

	* src/fn-sheet.c (gnumeric_selection): Fix type.

	* src/fn-string.c (gnumeric_concatenate): Fix type.

	* src/fn-logical.c (gnumeric_and, gnumeric_not, gnumeric_or,
 	gnumeric_if): Fix type.

	* src/fn-financial.c (gnumeric_npv): Fix type.

	* src/expr.c (expr_parse_string): Move in part to parser.y.
  	Delete global variables to communicate.
	(do_expr_tree_ref, do_expr_tree_unref, do_expr_decode_tree,
 	do_expr_tree_relocate): use OPER_ANY_BINARY and OPER_ANY_UNARY.
	(function_call_with_values): Mark strings for translation.
	(eval_expr, do_expr_decode_tree, expr_decode_tree): Fix type to
 	use "Sheet *" instead of "void *".
	(do_expr_decode_tree): Free sum.
	(expr_tree_invalidate_references, expr_tree_fixup_references): New
 	functions.  Not implemented yet.

	* src/cell.c (cell_set_formula): "const" fix.
	(cell_copy): Ref entered_string also if it exists.
	(cell_relocate): Unlink cell from workbook list of cells.

	* src/about.c (dialog_about): Add myself.  Update copyright.

1999-04-29  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-{math,sheet,logical}.c, src/func.[ch]: Moved logical
 	functions into a new file.

	* src/fn-math.c: Added ROUNDDOWN(), ROUNDUP(), SUMX2MY2(),
 	SUMX2PY2(), and SUMXMY2().

	* src/fn-stat.c: Added PROB(). CONFIDENCE() should now work fully.

1999-04-28  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added COUNTA(), FINV(), and TINV().

	* src/fn-stat.c, src/fn-math.c: AVERAGE(), COUNT(), MAX(), and
	MIN() moved from fn-math.c to fn-stat.c.  They are in the
	statistical function group in Excel.

1999-04-27  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added BETADIST(), FDIST(), and TDIST().

1999-04-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/eval.c (intersects): Typo fix.  Sheet was being assigned
	instead of being tested for equality.  This got Michael to crash
	Gnumeric (as there was no test for can_remove)

1999-04-26  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added CHIDIST(), CHIINV(), and GAMMAINV().

Sat Apr 24 14:39:32 1999  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_selection_reset_only): Remove useless
 	initialisation.  Don't free individual selections here.

	(sheet_selections_free): Walk the list of selections and free each
 	one.

	(sheet_get_selection_name): Calculate buffer size based on the
 	size of an int.

	* src/fn-eng.c: Remove sqrtpi function -- it's already in fn-math.c

	* src/fn-math.c (gnumeric_sqrtpi): Add range check.

	* src/symbol.c (symbol_install): Add sanity check.

Fri Apr 23 17:52:44 1999  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_destroy): Don't check that workbook is
	NULL because it cb_sheet_do_destroy will call it non-NULL.

	* src/workbook.c (cb_sheet_do_destroy): Don't NULL workbook
	member as it will be used.

	* src/format.c (render_number): Fix rounding up.

	* src/*.[chy]: add tons on "const"s.

1999-04-23  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added GAMMADIST() function.  It uses pgamma()
 	function written by Ross Ihaka.  Thanks to Morten for pointing
 	this piece of code.

1999-04-21  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_do_destroy): Release the sheets and the
	hash table that held the references to the sheets.

	* src/func.c: warning fix.

1999-04-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/widget-editable-label.c (el_button_press_event): Add type
	cast to kill warning.

	* src/format.c: Include ieeefp.h if required.

1999-04-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-string.c: Close parentheses in help_stubstitute function
	descritpion.   Thanks to Aldy Hernandez for pointing this out.

1999-04-19  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-goal-seek.c: Goal seek tool implemented.  Goal seek
 	should now find a solution for all linear problems (if there is
 	one).  A simple non-linear search algorithm also implemented.

	* src/workbook.c: Made 'Goal seek' menu entry visible.

	* src/fn-math.c: Added MULTINOMIAL(), PRODUCT(), SIGN(), SUMSQ(),
 	and SQRTPI().

1999-04-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/func.c (iterate_cellrange_callback): Eval the cell here if
	it has not yet been evaluated.

Sun Apr 18 17:59:09 EDT 1999 Gregory McLean <gregm@comstar.net>

	* gnumeric.spec.in: Updated and enhanced spec file. Tastes even
	better and is less filling to boot!

1999-04-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object-container.c (make_container_item): New
	routine.
	(sheet_object_container_land): Used to convert from the temporary
	widgets to the view provided by Bonobo.

1999-04-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (value_array_resize): Fix typo bug I introduced.

	* src/eval.c (cell_queue_recalc): When queuing for recalc, tag the
	cell, so that if we remove the cell from the recalc list we can
	quickly find out if we have to look for it on the list of pending
	recomputations.
	(pick_next_cell_from_queue): Clear the cell's
	CELL_QUEUED_FOR_RECALC bit.
	(cell_unqueue_from_recalc): New routine to remove a cell queued
	for recomputation.

	* src/clipboard.c (new_node): Trim leading spaces.

1999-04-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added EVEN, FACTDOUBLE, ODD, QUOTIENT, and
	RANDBETWEEN.

	* src/fn-stat.c: Added LOGINV, NORMINV, NORMSINV, RSQ, and ZTEST
 	functions.

1999-04-15  Michael Meeks  <michael@edenproject.org>

	* src/parser.y (value_dump): Added CellRange support

	* src/fn-lookup.c (gnumeric_offset): Implemented OFFSET.

	* src/expr.c (value_cellrange): Created.
	(eval_funcall): Major hack to allow auto-conversion
	of cell references to cell ranges on the fly.

	* src/expr.h: Added value_cellrange.

1999-04-15  Michael Meeks  <michael@edenproject.org>

	(gnumeric_choose): CHOOSE function implemented.

1999-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_destroy): No longer destroys the Bonobo
	objects here.

	* src/sheet.h (Sheet): No longer keeps track of the ClientSites
	here.

	* src/sheet-object.c (sheet_finish_object_creation): Invoke new
	class method to signal finalization of object creation.

	* src/sheet-object-container.c, src/sheet-object-container.h: New
	files that implement the Bonobo ClientSites
	(SheetObjectContainers).

	* src/Makefile.am (gnumeric_bonobo_SOURCES): Sources for Bonobo
	compilation.

	* src/sheet-object.c (sheet_object_construct): Create the bounding
	box points here.
	(sheet_set_mode_type): Fix from my previous reorganization:  Only
	stop editing mode if the mode is SHEET_MODE_SHEET.
	(sheet_button_press): Strategy change: now we accept
	sheet->current_object and we stop editing here the object.

	* src/sheet-object.h: points has been renamed to bbox_points.

	* src/sheet-object-graphic.c (sheet_object_filled_realize):
	Simplified this routine.  Also, we now update the bounding box
	here.

1999-04-15  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>

	* src/fn-lookup.c: Silly bug in types fixed.

	* src/expr.c (eval_funcall): Made cellrefs absolute.

	* src/cell.c (cell_set_text_simple): Fix for 1.234E-07

1999-04-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c: Converted SheetObject to a Gtk+ object.
	Splitted the functionality of the SheetObject into classes:
	SheetObject abstract class;  SheetObjectGraphic for simple drawings;
	SheetObjectFilled for objects that have a fill attribute.

	* src/sheet-object-graphic.c: Implement the SheetObjectGraphic and
	SheetObjectFilled objects.

1999-04-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (xml_probe): Do not crash if the file is a broken
	XML file.

1999-04-13  Zbigniew Chyla <cyba@t19.ds.pwr.wroc.pl>

	* src/workbook.c: using 'gnome_dialog_run_and_close' instead of
	'gnome_dialog_run' (which _may_ destroy dialog widget - we don't have to
	check for this case).

1999-04-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-args.c (gnumeric_arg_parse): Intiialize Bonobo.

	* configure.in: add test for Bonobo.

	* src/clipboard.c (x_selection_to_cell_region): Fixed the
	computation of columns in the paste code.

1999-04-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (insert_object_cmd): Add sample bonobo support.
	Still lacking an object server selector.

	* src/sheet.c (sheet_insert_object): Add Bonobo support.

	* src/sheet-view.c (sheet_view_insert_object): Add basic Bonobo
	support.  I need to reuse the SheetObject stuff to add control
	points to the objects and to handle repositioning.

1999-04-12 Michael Meeks  <michael@imaginator.com>

	* TODO: Removed basic functions section, most are done.

1999-04-11 Michael Meeks  <michael@imaginator.com>

	* src/dialog-function-select.c (function_select_row):
	Check event is valid before using it, remove redundant
	total redraw.
	(category_select_row): Fix.
	(function_select_create): Removed redundant call to
	duplicated (create_description): Removed.

	* src/fn-lookup.c: Actualy change the lookup function
	tokens to the correct values.

1998-04-09 Zbigniew Chyla <cyba@t19.ds.pwr.wroc.pl>

	* src/workbook.c: Creating auto_expr menu every time it is popped
        up instead of using one object all the time (and referencing to
        invalid workbook from "activate" signal handler).

        * src/item-grid.c: (item_grid_popup_menu): Fixed memory leak
        (gnumeric_popup_menu used instead of gtk_menu_popup).

1999-04-11 Michael Meeks  <michael@imaginator.com>

	* src/expr.c (eval_funccall): New array / 'area' tokens added,
	error strings simplified ( int type_mismatch added )
	(value_area_get_width, value_area_get_height): Implemented,
	(value_area_get_at_x_y): Implemented.
	(value_array_new, value_array_resize): Implemented.
	(value_release): Updated.
	(value_copy_to, value_array_copy_to): Updated, created.
	Added const to a scad of helper 'value_get' style functions.

	* src/expr.h: Value: Changed 'array' from GList to a
	structure.
	Added struct _Value for self reference.
	Added const to a scad of helper 'value_get' style functions.

	* src/func.c (function_iterate_do_value): Updated Array code.

	* src/eval.c (add_value_deps): Updated Array stuff.
	(add_value_deps): const added to Value *

	* src/dialog-function-wizard.c (function_type_input):
	Updated text for new tokens.

	* src/fn-sheet.c (gnumeric_selection): Update to new array code.

	* src/fn-lookup.c (columns, rows): Updated to clean new API.
	(vlookup, hlookup): Large clean.

	* src/parser.y (value_dump): Updated Array section.

	* docs/C/writing-functions.smgl: Added section explaining tokens,
	and new API.

1999-04-09 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_destroy): Move destruction of cell_hash to
	after destroy_styles.columns_and_rows that use it.
	NULL various pointers.
	(sheet_col_destroy): Added g_return_if_fail (ci)
	(sheet_duplicate_colrow): Merged into (sheet_row_new, sheet_col_new)
	and removed: nasty function.
	(sheet_destroy_columns_and_rows): Fix nasty bug using freed 'l'
	pointer ( freed by sheet_col_destroy / sheet_row_destroy ).
	NULL the pointers for safety.
	(sheet_col_destroy): NULL various pointers.

	* src/sheet.h (sheet_duplicate_colrow): Removed.

1999-04-08  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-solver.c, src/dialog-goal-seek.c, src/solver.h:
	Wrote dialogs for these tools. The tools are not implemented yet.

	* src/solver-lp.c:
	New file for linear programming methods created.

	* src/sheet.h:
	Added parameters for the Solver tool.

	* src/fn-stat.c (gnumeric_correl):
	Bug fixed.  If the covariance is zero the correlation coefficient
	should also be zero. Thanks for Vladimir for pointing this one out.

1999-04-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (xmlGetCoordinates): Include fix from Richard Hult:
	Seemed to be a cut and paste error.

	* src/cell.c (cell_destroy): From Morten Welinder: destroy the
	cell->value only if it does exist.

	* src/file.c (dialog_query_load_file): Set the accepted value to
	false initially.  Thanks for Morten for pointing this one out.

1999-04-06  Zbigniew Chyla <cyba@piast.t19.ds.pwr.wroc.pl>

	* src/workbook.c (workbook_new): Use the translated version of the
	function to display

1999-04-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Enable the function wizard only if the --debug
	flag was passed.

	* src/dialog-function-wizard.c, src/dialog-function-select.c:
	Adapt to the rest of Gnumeric coding style.

	Use a different way of creating the GUI and controlling the
	interactions.

	* src/func.c, src/func.h (function_iterate_do_value): Use my
	indentation and coding style here.

	* src/dialog-cell-format.c (render_formated_version): Handle the
	case where the value might be NULL.

	* src/xml-io.c (createXmlSheet): New function.  Used in an initial
	pass over the XML file to load all of the Sheets defined there.
	(readXmlWorkbook): Now this does two passes at loading the sheet:
	the first pass creates the sheets, the second pass actually loads
	the contents.

1999-04-06 Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (workbook_new): More sensible default
	size.

	* src/sheet.c (sheet_row_set_height): use sheet_row_new()
	instead of sheet_duplicate_colrow(), as we get duff span
	data otherwise ( not calling row_init_span )
	(sheet_col_set_width): Re-order, presumably fixing bug,
	and as for set_height.

1999-04-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (createXmlSheet): New function.  Used in an initial
	pass over the XML file to load all of the Sheets defined there.
	(readXmlWorkbook): Now this does two passes at loading the sheet:
	the first pass creates the sheets, the second pass actually loads
	the contents.

1999-04-06 Michael Meeks  <michael@imaginator.com>

	* src/func.c (tokenised_help_new): Improved algorithem.
	(functions_init): Made descriptions more verbose.

	* src/workbook.c (wizard_input): Cleaned to use local
	entry instead of specific wb->ea_input.

	* src/dialog-function-wizard.c (function_type_input):
	Update types, add recursive function button.
	(function_input): Created.
	(arg_data_list_new): Added wb to ARG_DATA, needed for
	function_input.
	Added default code for multi-arg functions.
	Deals with no-argument functions properly,
	Fix silly args=NULL g_free(args) bug.
	(dialog_function_wizard): Special 'no-arguments' quick
	case.

	* src/fn-math.c (gnumeric_rand): Added RAND function.

1999-04-05  Morten Welinder <terra@diku.dk>

	* src/cell.c (cell_set_rendered_text): Fix for circular
	references.

1999-04-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Do not make the about box modal.

1999-04-05 Michael Meeks  <michael@imaginator.com>

	* src/func.c (tokenised_help_new, tokenised_help_destroy),
	(tokenised_help_find_token): Implemented to assist searching
	for tokens.

	* src/func.h: Inserted TOKENISED_HELP struct, and prototypes.

1999-04-04 Michael Meeks  <michael@imaginator.com>

	* src/dialog_function_wizard.c: Created

	* src/workbook.c (workbook_setup_edit_area): Add Wizard
	button.

	* src/dialogs.h: Add dialog_function_wizard

	* src/func.c (functions_init): Added descriptions.
	Init categories array.
	(get_function_categories): Returns array of categories.
	(install_symbols): Add description argument.

	* src/func.h: Updated prototypes altered,
	add get_function_categories and struct FUNCTION_CATEGORY.

	* plugins/guile/plugin.c (init_plugin): Update install_symbols.

	* plugins/sample/plugin-sample.c (init_plugin): Ditto.

1999-04-03 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_cell_remove_from_hash): Now checks
	return value of g_hash_table_lookup_extended, before
	freeing a random pointer if its not there.

	* src/cellspan.c (cell_unregister_span): Check another
	pointer.

	* src/cell.c (cell_set_formula): Default error_msg !

1999-04-03 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_cell_remove_from_hash): Now checks
	return value of g_hash_table_lookup_extended, before
	freeing a random pointer if its not there.

	* src/cellspan.c (cell_unregister_span): Check another
	pointer.

	* src/cell.c (cell_set_formula): Default error_msg !

1999-04-02 Michael Meeks  <michael@imaginator.com>

	* src/fn-sheet.c (gnumeric_if): Fix to allow variable
	arguments, updated help & struct to comply, removed
	possible memory leak. ( Luke 17:3,4 )

1999-04-01 Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (sheet_action_delete_sheet): Fix docs.

1999-03-31  Morten Welinder <terra@diku.dk>

	* src/fn-stat.c (phi): new internal function.
	(gnumeric_normdist): Implemented using phi instead of the built-in
	table.

1999-03-31  Michael Meeks  <michael@imaginator.com>

	* src/dialog-cell-sort.c (dialog_cell_sort): Added multiple
	clause support, and cleaned UI.
	(add_clause, del_clause): Added.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/dialog-cell-sort.c (dialog_cell_sort): Fix possible
	problem with entire column selection. Need some function
	to determine largest used cell range.

1999-03-31  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Fixed.  Patch from Takashi Matsuda

1999-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-financial.c (gnumeric_dollarfr): Use floor, not floorf,
	as I can not find documentation on this on my system.

	* src/fn-math.c (gnumeric_ceiling): Use ceil, not ceilf.  I can
	not find documentation on this on my system

1998-11-12  Morten Welinder <terra@diku.dk>

	* src/fn-stat.c (gnumeric_variance): More precise method of
	computing the variance.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_selection_first_range): This returns
	the co-ordinates of the first range, and a flag as to whether
	the selection is simply one range. This keeps things simple
	for sort.

	* src/utils.c (col_from_name): Created.

	* src/utils.h: Added prototype.

	* src/dialog-cell-sort.c: Created

	* src/workbook.c (workbook_menu_format): Added 'Sort'.
	(sort_cells_cmd): Created.

	* src/dialogs.h: Added dialog_cell_sort.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/fn-lookup.c (gnumeric_vlookup, gnumeric_hlookup):
	Removed check for same sheets in each cell reference, in
	intersheet references only a->sheet points to the other sheet.

	* src/func.c (function_iterate_do_value): Change CELLRANGE's
	sheet reference to cell_range.cell_a.sheet, since could be an
	inter-sheet reference. This fixes: Sum(Sheet1!A1:B3)

	* src/fn-eng.c: Cleaned function documentation.

	* docs/C/writing-functions.smgl: Updated for option function
	arguments.

	* src/fn-math.c (gnumeric_mod): Implemented.

1999-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Fix from Ian Campbell for fixing the
	subtraction problem.

1999-03-28  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added large, median, pearson, and small.

1999-03-28  Michael Meeks  <michael@imaginator.com>

	* src/parser.y (yylex): Added digits count to stop
	overflow of integers above 9 digits.

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/sheet.c (fail_if_found): Renamed to
        (fail_if_not_selected): Added check for selection
        (sheet_is_region_empty): Renamed to
        (sheet_is_region_empty_or_selected): Better
        described new function.

        * src/item-cursor.c (item_cursor_target_region_ok):
        Uses sheet_is_region_empty_or_selected.

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/expr.c (eval_funcall): Add vital 'break'
        statement :-)

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/eval.c (cell_eval): Set default value of
        error_msg so cell doesn't get null text on
        g_return_val_if_fail (condition, NULL) ;

        * src/sheet.c (sheet_update_auto_expr):
        Internationalized ERROR string.

        * src/fn-lookup.c (gnumeric_column, gnumeric_columns)
        (gnumeric_row, gnumeric_rows): Hacked; best can do for
        now.

1999-03-26  Michael Meeks  <michael@imaginator.com>

	* src/fn-eng.c (gnumeric_delta): Fix memory leak
	(gnumeric_gestep): Cleaned to better arg. model
	(bin/oct/dec/hex2...): Cleaned similarly

	* src/fn-stat.c (gnumeric_poisson): Cleaned

	* src/fn-string.c (string_and_optional_int): Removed.
	(gnumeric_left, gnumeric_right, gnumeric_find),
	(gnumeric_fixed, gnumeric_dollar, gnumeric_substitute):
	Updated to optional argument types.
	(gnumeric_clean): Moved from fn-misc.c

	* src/fn-misc.c (gnumeric_clean): Moved to fn-string.c

	* src/expr.c (cell_ref_make_absolute): Makes a CellRef
	absolute.
	(eval_funcall): Added range token 'r' for lookup
	functions, makes reference absolute so can be used
	downstream without trouble.

	* src/expr.h: Added range comments

	* src/fn-lookup.c: Created
	(lookup_simliar, gnumeric_vlookup):
	Implements VLOOKUP.
	(gnumeric_hlookup): Implements HLOOKUP.

1999-03-25  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-financial.c: dollarde, dollarfr, and npv added.

	* src/fn-stat.c: correl, covar, mode, negbinomdist, rank, and
 	trimmean added.

1999-03-25  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (eval_funcall): Updated to add new optional argument
	token.

	* src/expr.h: Comments to explain above.

	* src/fn-eng.c (gnumeric_erf, gnumeric_delta): Drastic clean to use
	new optional token.

1999-03-23  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: ceiling added.

	* src/fn-stat.c: fisherinv, normsdist, and lognormdist added.

	* AUTHORS, src/about.c: added me.

Tue Mar 23 14:00:37 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c : solved the problem of saving cells with < or &

1999-03-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: avedev, confidence, critbinom, devsq, fisher,
 	kurt, normdist, permut, skew, standardize, and weibull added.

	* src/fn-math.c, src/func.h: gnumeric_average and fact made public
 	(used in src/fn-stat.c).

1999-03-17  Vladimir Vuksan <vuksan@veus.hr>

 	* src/fn-financial.c: Added new functions gnumeric_ipmt,
	gnumeric_ppmt, gnumeric_duration.

1999-03-18  Jukka-Pekka Iivonen  <iivonen@iki.fi>

 	* src/fn-math.c: combin added.

 	* src/fn-stat.c: binomdist, harmean, and hypgeomdist added.

1999-03-18  Michael Meeks  <michael@imaginator.com>

	* src/fn-eng.c (val_to_base): Minor fixes

1999-03-18  Sean Atkinson  <sca20@cam.ac.uk>

	* notes: typos

	* src/expr.c (value_string): cleaned to use g_strdup_printf

	* src/expr.h: typo

	* src/fn-string.c (gnumeric_mid): fixed
	internationalized various strings, typos
	(subs_string_new, subs_string_append_n, subs_string_free): added to
	speed gnumeric_substitute
	(gnumeric_concatenate, gnumeric_rept, gnumeric_find, gnumeric_fixed)
	(gnumeric_proper, gnumeric_replace, gnumeric_t, gnumeric_value)
	(gnumeric_substitute, gnumeric_dollar): implemented.

1999-03-16  Vladimir Vuksan <vuksan@veus.hr>

	* src/fn-financial.c: More financial functions: gnumeric_nominal,
	gnumeric_pv, gnumeric_fv, gnumeric_pmt.

1999-03-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Change from active voice to passive voice in the
	help messages for "New".  Thanks to Morten for pointing this out. 2

1999-03-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (callback_function_sum): Detects integer
	over/under flow.

	* src/expr.c (eval_expr): Add integer overflow code for addition
	and substraction.

	* src/cell.c (cell_set_format): Call cell_render_value and
	cell_queue_redraw calls here.

	* src/expr.c (bigger_prec): When decoding left-to-right apply
	parentheses if the two priorities are equal.

1999-03-13  Richard Hult <rhult@hem2.passagen.se>

	* src/xml-io.c (xmlGetGnomeCanvasPoints): test against the value
	returned by xmlGetValue, not the GnomeCanvasPoints value.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c (val_to_base, val_to_base_place),
	(bin/oct/dec/hex 2 bin/oct/dec/hex):
	Implemented - pending fixes to number storage.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c (gnumeric_delta, gnumeric_sqrtpi),
	(gnumeric_gestep): Implemented

	* src/fn-math.c (sqrt): Implemented.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c: Created
	(gnumeric_erf, gnumeric_erfc, gnumeric_bessely)
	(gnumeric_besselj): Implemented
	(gnumeric_bin2dec): Moved from fn-math.c

	* src/fn-math.c (gnumeric_bin2dec): Moved to fn-eng

	* src/func.c (functions_init): Added eng_functions.

	* src/fn-stat.c: Cleaned functions help.

	* src/Makefile.am: Added fn-eng.c

1999-03-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/clipboard.c (sheet_paste_selection): New routine.  Abstracts
	the paste operation.
	(clipboard_paste_region): Now it uses a clipboard with the active
	X selection instead of defaulting to "request clipboard from X"
	(this is only for inter-workbook copy-paste).

	* src/sheet.c (find_workbook_with_clipboard): Tries to find a
	workbook with clipboard information.  Probably the clipboard
	should be global to all Gnumeric.

	* src/render-ascii.c (cell_region_render_ascii): Free the
	information after we have used it, not before.

	* src/expr.c (eval_expr): Handle new-born recursive references.

1999-03-11  Michael Meeks <michael@imaginator.com>

	* src/fn-math.c (gnumeric_power): Implemented.

	* src/fn-stat.c (gnumeric_poisson, gnumeric_gammaln):
	Implemented.

1999-03-11  Michael Meeks <michael@imaginator.com>

	* src/fn-stat.c (gnumeric_expondist, gnumeric_geomean):
	Implemented.

1999-03-10  Vladimir Vuksan <vuksan@veus.hr>

	* src/fn-financial.c: New file.

	(gnumeric_effect, gnumeric_sln, gnumeric_syd): New functions.

	* src/func.c (functions_init): Added financial functions.

	* src/func.h: Added extern.

1999-03-10  Michael Meeks <michael@imaginator.com>

	* src/fn-stat.c: Created.
	(gnumeric_stdev, gnumeric_stdevp, gnumeric_var, gnumeric_varp): Created

	* src/func.c (functions_init): added stat_functions

	* src/func.h: Added extern stat_functions.

1999-03-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c (gnumeric_clean): Add check here: only loop until
	the end of the string.

	* src/sheet.c (sheet_cell_foreach_range): Revert the arguments if
	they are in a different order.

1999-03-08  Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp>

	* plugins: new text plugin.

	Add new plugin TXT for simple text inport/export
	tab separated text. multiple sheet in a workbook is separated by
	'\f' character.
	If first line of each sheet is not include tab, then that line is
	interpreted as sheet name.

	* src/gnumeric-sheet.c: Add new mean for hard-coded keyboard short
	cut CTRL-Return.  Because ItemEdit does not support XIM, I must
	click the entry whenever I want to input janapese character.  If
	user does not edit the cell, this key combination switchs a
	keyboard focus to entry .

	* Replace gdk_font_load() with gdk_fontset_load()
	src/style.c gdk_font_load() makes impossible to show international
	string.

	* src/clipboard.h 'copy by value' was not possible because of
	miss-definition of PASTE_* enume.

	* src/file.c: gnumeric_notice was called with wrong arguments.

1999-03-07  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_format_from_style): Removed sluggish
	re-drawing code: unneccessary.

1999-03-05  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_color_from_style): Implemented.

1999-03-03  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c (parse_data_new): Trap null pointers
	on entry, ( coming from biff_get_text ).
	(ms_excel_parse_formula): Removed nasty static buffers.

1999-02-23  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_background_radio): Activated
	the patterned background control (although in my machine the
	boxes are all black) and added a radio button to let the
	user do nothing with backgrounds (analogous to the one in
	foreground section).

	* src/dialog-cell-format.c (apply_coloring_format): Now this
	functions takes into account the changes in create_background_radio,
	that is, if the user decides not to change the background,
	the background will not be changed. Also, assigned default
	values to some variables, just to avoid an annoying warning.

	* src/dialog-cell-format.c (create_coloring_page): If there
	are different backgrounds in the range, select by default
	the "no change" radio button for the background.

1999-02-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw): If the cell has a render_color (provided
	by the format specification), use that for the foreground.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (workbook_save_as): Append the extension of the
	default format if no colon is specified

1999-02-22  Tim Mooney  <mooney@dogbert.cc.ndsu.nodak.edu>

	* plugins/guile/plugin.c (func_scm_apply): Initialization of
	structure is done in the function body, rather thatn when it is
	declared.  This is necessary because struct initializer must be
	determinable at compile time, and those aren't.

	* src/expr.c (eval_expr): Add at least one statement to the
	default: handler in the case.

	* src/fn-math.c: provide a break for default handlers.
	* src/item-edit.c (entry_event): ditto
	* src/sheet-autofill.c (fill_item_destroy): ditto.

	* src/dialog-cell-format.c (create_number_format_page): Initialize
	in the body, like above.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* plugins/guile/plugin.c (func_scm_apply): Initialize the
	cell_ref.sheet to NULL.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_cell_remove_internal): Queue recalcs for
	cells that depend on cells that are being destroyed.
	(clear_cell_content): Added a call to workbook_recalc
	(sheet_clear_region_content): same.

1999-02-21  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-formula.c FORMULA_PTG_EXP: Fixed several bugs.

	* plugins/excel/ms-excel.c (ms_excel_set_cell_font, biff_font_data_get_style_font):
	Body of the former moved to the latter, loop invariant code removed for
	big speedup.
	(ms_excel_set_cell_xf): Burdern of border color stuff moved to
	(ms_excel_palette_get): New routine to cache and create
	StyleColor records as needed.
	(ms_excel_sheet_insert): Fixed so no NULL pointers can escape
	into cell_set_text.
	(ms_excelReadWorkbook): Removed BIFF Usage chart, its slow.
	(biff_nasty_font_check_function): Sorts out font sillyness.
	(biff_xf_data_new): Added cached style_format pointer
	(biff_xf_data_destroy): unref style_format if allocated.

	* src/cell.c (cell_set_format_from_style): Implemented.

1999-02-19  Raja R Harinath  <harinath@cs.umn.edu>

	* doc/C/Makefile.am (install-data-local): Use $(mkinstalldirs) not
	$(topsrcdir)/mkinstalldirs.

	* src/Makefile.am: Use $(GNOME_CONFIG) instead of `gnome-config'
	to run the gnome-config script.
	(BUILT_SOURCES): Swap with GNUMERIC_CORBA_GENERATED to be
	conceptually clean.

1999-02-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c (gnumeric_min): Implement ISERROR.

	* src/clipboard.c (paste_cell): Do not render the value if the
	result is an error.

	* src/cell.c (cell_copy): Do not copy the value of a cell when the
	value is NULL (due to the cell having an error).

	* src/expr.c (eval_expr): Evaluate binary operations in parts to
	keep the correct error message on an operation if possible.
	(eval_expr): Propagate errors.

	* src/item-edit.c (item_edit_draw): Sync the before-cursor and
	after-cursor Y-display text cordinate.

	* src/expr.c (eval_funcall): Add type checking for the simple
	functions.

	* doc/C/Makefile.am (install-data-local): use topsrcdir here (fix
	from Ian Campbell <ijc25@cam.ac.uk>

	* src/fn-math.c (gnumeric_not): Implement NOT.

	* src/number-match.c (format_create_regexp): Allow upper case
	format codes.

	* src/format.c: ditto.

1999-02-18  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	case FORMULA_PTG_ATTR: Added 'Optimised SUM' functionality,
	Generaly made output less verbose.

	* plugins/excel/ms-excel.c: BIFF_DBCELL, ignore it, its
	not interesting.
	(ms_excel_set_cell_xf, biff_format_data_lookup,
	biff_format_data_destroy, ms_excel_workbook_new,
	ms_excel_workbook_destroy): Implemented formatting.

1999-02-17  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-excel.c (biff_get_rk): moved RK number
	extraction into function.
	Added MULRK support: the lost numbers arrive !

1999-02-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (gnumeric_trunc): Implement TRUNC.

	* src/func.c (function_iterate_argument_values): Do not evaluate a
	subexpression if the previous expression failed due to an error.
	Basically: add a check to the eval return value.

	I took this oportunity to check all the source and this was the
	only buggy spot.

1999-02-16  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel.c: Fixed many bugs in my
	understanding of hash table functions.
	Added rudimentary NAME stuff.
	made error lookup global.
	Fixed up Header / Footer functionality.
	(ms_excel_sheet_new, ms_excel_sheet_insert,
	ms_excel_read_sheet): Added 'blank' field to excel_sheets,

	* plugins/excel/ms-formula.c: Added puzzling
	PTG_NAME stuff, this is really wierd.
	PTG_ERR added.

1999-02-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (change_auto_expr_menu): OOps I got too excited
	here using my helper routine: Now we do not destroy this helpful
	menu.

	* src/widget-editable-label.c (editable_label_set_text): Bug fix:
	sometimes this code is invoked with its argument being el->text.

1999-02-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_new): Make a local copy of the toolbar,
	as we use this to update the radio buttons.
	(workbook_do_destroy): Free the toolbar.
	(workbook_feedback_set): Use the per-workbook toolbar here.

1999-02-14  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-formula.c: Inserted a whole scad
	of math functions into translation table.
	(parse_list_to_equation): g_strdupped return values.
	FORMULA_PTG_STR: Updated old and broken code.
	* src/about.c (dialog_about): Added Sean.

1999-02-13  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_foreground_radio): Added a
	radio button to let the users 'no change' the text colour, useful
	when there is a range selected with differently colored cells
	and it is desired to change the background of them without
	touching the foreground.

	* src/dialog-cell-format.c (create_coloring_page): When there
	are different foreground colours in the selected cells, the
	default selection is 'no change'.

	* src/dialog-cell-format.c (apply_coloring_format): If there
	is no need to make changes to the foreground color of the
	cells, avoid doing them.

1999-02-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_target_region_ok): Warn the user
	if he overwrites something accidentally by dropping cells in the
	target location.

	* src/sheet.c (sheet_is_region_empty): New function.

1999-02-12  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel.c (biff_get_global_string):
	Drasticly simplified, accelerated and in-lined out.
	(biff_get_text): Fixed using unicode spec, various
	updates to calls to it, fixing offsets.
	Removed lots of debug output to speedup

1999-02-10  Sean Atkinson  <sca20@cam.ac.uk>

	* src/fn-math.c (callback_function_sum): enhanced warning for
	unknown value->type.

1999-02-12  Frederic Devernay  <devernay@istar.fr>

	* plugins/perl/perl.c: Handle the #define dirty in perl-thread.

1999-02-12  Bruno Unna  <bruno@iac.com.mx>

	* src/cell.c (cell_draw): Now the function draws the cell
	using the cell background color setting. Although it does
	the job, I guess there must be a better way to do it. Thanks
	to Michael for the hint.

	* src/item-grid.c (item_grid_draw_cell): Commented out the lines
	involved with patterns display in the cell, for that code is
	not ready yet.

	* src/dialog-cell-format.c (create_coloring_page): Reactivated
	the background selection panel of the coloring page.

	* src/dialog-cell-format.c (create_background_radio): Commented out
	the addition of the pattern selection for a cell.

1999-02-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_detach_sheet): Be less forgiving as to
	removing sheets with pending references.

	(sheet_action_delete_sheet): Add a test for
	dependencies when removing a sheet
	(workbook_can_detach_sheet): New function.

	* src/cell.c (cell_relocate): When relocating a cell with a
	formula, always mark it as changed.  We were doing that before
	only for the case where the location had changed, but we use
	cell_relocate in other cases as well.

	* src/fn-string.c (gnumeric_lower, gnumeric_upper): These
	functions were wrong.  They were never incrementing the pointer
	and they were releasing the wrong pointer.

	* src/clipboard.c (paste_cell): When pasting a cell, mark the
	contents as modified.

	* src/file.c (file_saver_is_default_format): Make sure the saver
	is always set.

1999-02-10  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_read_cell): BOOLERR booleans
	hard-translated to 1, 0: not a good solution to problems with TRUE.
	* src/fn-string.c (gnumeric_upper, gnumeric_lower): Add increment

1999-02-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.y: Apparently string concatenation operator in Excel
	has the lower priority.

	* src/workbook.c (workbook_detach_sheet): New function used to
	detach a sheet from a workbook.
	(sheet_menu_label_run): New routine.  Invoked on button-3 on the
	sheet label.

	* src/gnumeric-util.c (gnumeric_auto_kill_popup_menu_on_hide): New
	routine to deallocate menus when they go to unshown state

1999-02-09  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_sheet_new,
	ms_excel_workbook_attach, biff_boundsheet_data_new):
	Major sheet allocation re-organisation, hash boundsheet data.
	(ms_excel_sheet_set_version, ms_excel_sheet_set_index,
	ms_excel_workbook_get_sheet): re-hashed API
	* plugins/excel/ms-formula.c: PTG_MISSARG implemented

1999-02-08  Sean Atkinson  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel-biff.h, ms-excel.c:
	added BIFF_EXTERNCOUNT
	* plugins/excel/ms-excel.c (ms_excel_read_sheet):
	stubbed BIFF_EXTERNSHEET, stubbed SUPBOOK
	(biff_get_externsheet_name): implemented inter-sheet references
	* plugins/excel/ms-formula.ch: added FORMULA_PTG_CONCAT
	(ms_excel_parse_formula): implemented FORMULA_PTG_REF_3D

1999-02-07  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	FORMULA_PTG_ATTR stubs: can ignore most of AttrSpace.

1999-06-02  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (do_expr_decode_tree): Added ARRAY support.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/format.c (format_value): Mark format for translation.
	(format_number): Locale improvements.

	* src/parser.y (yylex): Translate locale's decimal point into a
 	dot.
	(gnumeric_expr_parser): Extract locale's decimal point.

1999-06-01 Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>

	* src/gnumeric-util.c (font_change_component): Extend the size of
	the array components[] so that it can handle very long fontset
	names.
	
	* src/style.c: Change the default font names.
	
	* src/workbook.c: Add gtk_widget_ensure_style() call, which is
	necessary to knowing if a fontset is supplied for the label
	widget.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (callback_function_trimmean): Cleanup.
	(gnumeric_large): Fix conditional.  Thanks to Nick Lamb.
	(gnumeric_small): Ditto.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_skew): Fix crashes and leaks.
	(gnumeric_covar): Ditto.
	(gnumeric_rsq): Ditto.
	(gnumeric_pearson): Ditto.
	(gnumeric_correl): Ditto.
	(gnumeric_avedev): Ditto.

	(gnumeric_stdev): Don't make assumptions of the type of VAR.
	(gnumeric_stdevp): Ditto.
	(gnumeric_stdeva): Ditto.
	(gnumeric_stdevpa): Ditto.

	(callback_function_covar): Simplify greatly.
	(callback_function_correl): Ditto.
	(callback_function_stat_avedev_sum): Ditto.
	(callback_function_skew_sum): Ditto.  Also improve precision.
	(callback_function_rank): Ditto.
	(callback_function_trimmean): Ditto.
	(callback_function_mode): Ditto.
	(callback_function_stat_prod): Ditto.
	(callback_function_count): Ditto.
	(callback_function_kurt_sum): Ditto.
	(callback_function_ztest): Ditto.
	(callback_function_list): Ditto.
	(callback_function_percentrank): Ditto.
	(gnumeric_skew): Handle zero stddev.

	* src/expr.c (eval_cell_value): Delete.  Use value_duplicate
 	instead.
	(eval_funcall): Fix memory corruption on error.  Fix serious leak.
	(free_values): Only free non-NULLs.

1999-06-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (dialog_query_load_file): 
	(workbook_save_as): Prettify these.  Thanks to Andrew for pointing
	this out.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_kurt): Fix crashes and leaks.

1999-06-01  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-string.c: Added SEARCH().  Quite a complex beast but
 	should work completely.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_confidence): Fix sign.
	(gnumeric_devsq): Simplify and correct.

	* src/file.c: undo last change.  (The operation succeeded, but the
 	patient died.)

1999-05-31  Matt Loper  <matt@gnome-support.com>

	* src/sheet-view.c: Because GNOME::Component was renamed to
	GNOME::BonoboObject, some bonobo function call names needed to be
	changed here (ex. gnome_component_new_view to
	gnome_bonobo_object_new_view).

	* src/sheet-object-container.c (sheet_object_container_land):
	likewise.
	(sheet_object_container_realize): likewise.

1999-05-31  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-lookup.c: Added ADDRESS().  Cleaned up too long lines.

1999-05-28  Morten Welinder  <terra@diku.dk>

	* src/file.c (workbook_read): Temporarily switch to "C" locale
 	when loading and saving.  I am not sure this is the right thing to
 	do, but until someone finds a better way, it will work fine.
	(workbook_save_as): Ditto.
	(workbook_save): Ditto.

	* src/fn-math.c (gnumeric_power): Fix domain.

1999-05-27  Morten Welinder  <terra@diku.dk>

	* src/expr.c (value_get_as_string): Improve precision -- this
 	impacts the results of saves.

1999-05-27  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (callback_function_mode): Ignore strings as
 	advertised.
	(callback_function_stat_inv_sum): Ditto.
	(callback_function_rank): Ditto.
	(callback_function_trimmean): Ditto.
	(callback_function_covar): Ditto.
	(callback_function_correl): Ditto.
	(callback_function_stat_prod): Ditto.
	(callback_function_skew_sum): Ditto.
	(callback_function_kurt_sum): Ditto.
	(callback_function_stat_avedev_sum): Ditto.
	(callback_function_devsq_sum): Ditto.
	(callback_function_median): Ditto.
	(gnumeric_tinv): Fix meaning.
	(callback_function_count): Cleanup.
	(callback_function_stat_inv_sum): Ditto.  Also fix error case.
	(gnumeric_normdist): Simplify using dnorm.
	(gnumeric_gammadist): Use dgamma.

	* src/mathfunc.c (dgamma): New function from R.

1999-05-27  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added BETAINV() and CHITEST().  Added optional
 	parameters A and B to BETADIST().  Implemented non-cumulative case
 	of NORMDIST().  Implemented cumulative case of POISSON().  Fixed
 	CHIDIST(), CHIINV(), FDIST(), FINV(), and TDIST() to return the
 	complement of the probablity.  It looks like TINV() is still
 	broken after file restructurations.

1999-05-26  Morten Welinder  <terra@diku.dk>

	* src/sheet-view.h: Include fix.

	* src/style.h: Include fix.

	* src/symbol.c (symbol_table_new): Use gnumeric_strcase_equal and
 	gnumeric_strcase_hash.
	(g_strcase_equal): Delete.
	(g_strcase_hash): Delete.

	* src/eval.c (dependency_equal): Constify.

	* src/sheet.c (cell_hash): Constify.
	(cell_compare): Ditto.
	(CRsort): Ditto.

1999-05-26  Michael Meeks  <michael@imaginator.com>

	* src/file.c (file_saver_is_default_format): Fixed bug causing
	incorrect format to be displayed.
	(fill_save_menu): Wait until we have populated the option menu
	before setting the current item.
	(make_format_chooser): Move some code into file_save_menu.

	* src/xml-io.c (writeXmlSheetTo): Removed,
	(writeXmlWorkbook): Use the order workbook_sheets list.

	* src/workbook.c (cb_workbook_sheets): Commented out
	(workbook_sheets): Get sheets in order from notebook tabs.

1999-05-25  Morten Welinder  <terra@diku.dk>

	* src/mathfunc.c, src/mathfunc.h: New files, mostly taken from the
 	R package.  (It's a GPL'ed gold mine.)

	* src/*.c: Use <math.h>, not "math.h".

	* src/utils.c (random_normal): Use qnorm, not inv_phi.

	* src/fn-stat.c: Move all R code to mathfunc.c
	Change all uses to phi to pnorm.
	(gnumeric_normsinv): Use qnorm.
	(gnumeric_confidence): Use qnorm.
	(normsinv): Superseded by qnorm.
	(help_lognormdist): Fix.
	(gnumeric_lognormdist): Fix domain.
	(gnumeric_lognormdist): Use plnorm.
	(gnumeric_loginv): Use qlnorm.
	(gnumeric_norminv): Use qnorm.
	(gnumeric_tinv): Use qt.
	(gnumeric_fdist): Use qf.
	(gnumeric_gammainv): Use qgamma.
	(gnumeric_chiinv): Use qchisq.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add mathfunc.c and
 	mathfunc.h.

1999-05-25  Morten Welinder  <terra@diku.dk>

	* src/fn-string.c (gnumeric_code): Handle compilers for which the
 	"char" type is signed.

	* src/utils.c (parse_cell_name): Don't use isalpha which is
 	subject to locale.  (So is toupper, but the effects are ok.)
	Move bounds check to handle overflow also.
	(col_from_name): Don't use isalpha.

	* src/fn-stat.c: Eliminate fmin2 and fmax2.

	* src/fn-math.c (gnumeric_randbetween): Use random_01.
	(gnumeric_rand): Ditto.

	* src/utils.c (random_01): Function moved from goal-seek.c and
 	improved.
	(random_normal): Function moved from goal-seek.c.

	* configure.in: Check for a few ways of getting random numbers.

1999-05-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (workbook_save_as): Handle the window closing by the
	window manager here.
	(dialog_query_load_file): And here.

	* src/dialog-zoom.c (dialog_zoom): Handle window manager close
	here (it comes in the form of return value being NULL).
	
	* src/dialog-insert-cells.c (dialog_insert_cells): ditto.

	* src/dialog-delete-cells.c (dialog_delete_cells): ditto.

1999-05-24  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_fixup_references): Set formula
 	directly, not via text strings.  (This actually fixes a bug with
 	insertion of columns/rows where we modify the cells before we
 	restructure the sheet.)  It's much faster and cleaner too.
	(workbook_invalidate_references): Ditto.

1999-05-23  Morten Welinder  <terra@diku.dk>

	* src/gnumeric-sheet.c (gnumeric_sheet_cursor_set): Make the
 	scroll bar reflect the top-left corner's position.  This feels
 	more natural.
	(gnumeric_sheet_set_top_col): Compute visible ranges; do nothing
 	until things change.
	(gnumeric_sheet_set_top_row): Ditto.

	* src/dialog-goal-seek.c (gnumeric_goal_seek): Use
 	goal_seek_initialise.
	(gnumeric_goal_seek): Trawl heavier and earlier in the middle.
	(dialog_goal_seek): downcase a stray uppercase letter.

	* src/goal-seek.c (goal_seek_initialise): New function.

1999-05-23  Morten Welinder  <terra@diku.dk>

	* src/dialog-goal-seek.c: redesign non-gui part.
	(dialog_goal_seek): Added entries for xmin and xmax.

	* src/goal-seek.h: New file.

	* src/goal-seek.c: New file.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add goal-seek.c and
 	goal-seek.h.

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/fn-financial.c (gnumeric_pv): Revert last chance.  (Bogosity
 	is in me.)

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_selection_to_string): Delete unused variable
 	"assembler".

	* src/sheet-view.c (horizontal_scroll_event): Delete unused
 	variable "distance".
	(vertical_scroll_event): Delete unused variable "distance".

	* src/sheet-object.c (control_point_handle_event): Delete unused
 	variables "ll" and "object_item".

	* src/widget-editable-label.c (editable_label_set_text): Delete
 	unused variable "item_text".

	* src/fn-string.c (gnumeric_replace): Delete unused variable "p".

	* src/fn-eng.c (get_real_and_imaginary): Delete unused variables
 	"i" and "buf".

	* src/sheet-object-graphic.c (sheet_object_filled_update): Delete
 	unused variables "x1", "x2", "y1", and "y2".

	* src/fn-stat.c (gnumeric_harmean): Delete unused variable "ans".
	(gnumeric_geomean): Delete unused variable "ans".
	(gnumeric_avedev): Delete unused variable "ans".
	(gnumeric_large): Delete unused variable "count".
	(gnumeric_small): Delete unused variable "count".

	* src/parser.y (make_string_return): Delete unused variable "type".

	* src/workbook.c (cb_sheet_check_dirty): Delete unused variable
 	"f".
	(workbook_focus_sheet): Delete unused variable "sheet_view".
	(workbook_selection_to_string): Delete unused variable "str".

	* src/fn-date.c (gnumeric_datevalue): Delete unused variables
 	"year", "month", and "day".
	(gnumeric_edate): Delete unused variables "year", "month", and
 	"day".

	* src/dialog-cell-format.c (apply_coloring_format): Delete unused
 	variable "cl".

	* src/dialog-solver.c: Delete unused variable "paste_types".

	* src/xml-io.c (xmlGetFloatValue): Delete unused variable "child".
	(xmlGetDoubleValue): Delete unused variable "child".
	(xmlGetCoordinate): Delete unused variable "child".
	(xmlGetGnomeCanvasPoints): Delete unused variable "child".
	(xmlGetColorValue): Delete unused variable "child".
	(xmlGetCoordinates): Delete unused variable "child".
 	(xmlGetCoordinates): Delete unused variables "X1", "Y1", "X2", and
 	"Y2".

	* src/sheet-object-graphic.c (sheet_object_graphic_update): Delete
 	unused variable "sog".

	* src/cell.c (cell_set_value_simple): Delete unused variable "lconv".
	(cell_set_text_simple): Delete unused variable "lconv".
	(cell_draw): Delete unused variable "white_gc".
	(cell_get_text): Delete unused variable "sheet".

	* src/ranges.c (range_list_parse): Delete unused variable "range".
	(range_set_style): Delete unused variables "col" and "row".

	* src/dialog-solver.c (dialog_solver_options): Delete unused
 	variable "button".

	* src/eval.c (search_cell_deps): Delete unused variables "inters"
 	and "nointers".

	* src/dialog-cell-sort.c (dialog_cell_sort): Delete unused
 	variable "txt".

	* src/fn-database.c (find_cells_that_match): Delete unused
 	variable "new_item".

	* src/func.c (function_iterate_do_value): Delete unused variable
 	"list".

	* src/fn-lookup.c (gnumeric_lookup): Delete unused variables "v1"
 	and "ans".
	(lookup_functions): Use correct help variable
 	for "columns".

	* src/dialog-function-select.c (function_select_create): Delete
 	unused variable "hadj".

	* src/main.c (gnumeric_main): Delete unused variable.

	* src/dialog-function-wizard.c (function_type_input): Remove
 	unused variable.
	(get_text_value): Ditto.
	(arg_data_list_destroy): Comment out -- not used.

	* src/fn-financial.c (gnumeric_pv): Fix sign error.  Something is
 	entirely bogus in this file.

	* src/ranges.h: Fix includes.

	* src/pattern-selector.h (PATTERN_SELECTOR_CLASS): Bogosity fixed;
 	macro not used, though.

	* src/workbook.c (sheet_action_delete_sheet): Grammar fix.

	* src/sheet.c (sheet_verify_selection_simple): Grammar fix.

	* src/file.c (file_priority_sort): Constify.
	(file_format_register_open): Make description parameter const.
	(file_format_register_save): Ditto.
	(file_format_unregister_open): Plug leak.
	(file_format_unregister_save): Ditto.
	(workbook_save_as): Grammar fix.

	* src/about.c (dialog_about): Fix URL.

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_set_text): Use General format for all numbers
 	in standard format.  (In particular, don't create a sticky "0" format
	whenever an integer is entered.)

	* src/format.c (format_number): Constify.
	(append_minute): Ditto.
	(append_day): Ditto.
	(append_hour): Ditto.
	(append_month): Ditto.
	(append_year): Ditto.
	(append_second): Ditto.
	(check_valid): Ditto.
	(append_half): Ditto.
	(lookup_color): Ditto.
	(render_number): Ditto.
	(format_value): Ditto.

	* src/expr.c (do_expr_decode_tree): Handle negative numbers, just
 	in case.

1999-05-21  Morten Welinder  <terra@diku.dk>

	* src/sheet-autofill.c (autofill_cell): Add FIXME.

	* src/sheet.h (IS_SHEET): Remove cast.

	* src/expr.h: Delete expr_tree_relocate.

	* src/expr.c (fixup_calc_new_cellref): New function.
	(do_expr_tree_fixup_references): Simplify using
 	fixup_calc_new_cellref.
	(do_expr_tree_relocate): Delete.
	(expr_tree_relocate): Delete.

	* src/sheet.c (sheet_cell_formula_link): Add debug code.
	(sheet_insert_col, sheet_delete_col, sheet_insert_row,
 	sheet_delete_row): Do fixups early.

	* src/cell.c (cell_relocate): Don't relocate cell -- fixup handles
 	all that is needed.

	* src/color.c (gs_white, gs_black, gs_light_gray, gs_dark_gray,
 	gs_red): Moved from src/gnumeric-sheet.c.
	(gnumeric_color_context): make static.

1999-05-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: PERCENTRANK() added.

	* src/func.[ch]: function_iterate_do_value made public.

1999-05-21  Morten Welinder  <terra@diku.dk>

	* configure.in: use AC_CHECK_HEADERS, not AC_CHECK_HEADER for the
 	benefit of autoheader.

1999-05-19  Michael Meeks  <michael@imaginator.com>

	* src/fn-stat.c: Added 'static' to new non-global functions.

	* src/cell.c (cell_set_formula_tree_simple): Added
	missing sheet_cell_formula_unlink.

1999-05-19  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: SERIESSUM(), SUBTOTAL() and SUMA() added.

	* src/fn-stat.c: SLOPE(), AVERAGEA(), MAXA(), MINA(), STDEVA(),
 	STDEVPA(), VARA(), and VARPA() added.

	* src/fn-stat.c (gnumeric_counta, gnumeric_min, gnumeric_max,
 	gnumeric_stdev, gnumeric_stdevp, gnumeric_var, gnumeric_varp):
 	made public (used also in src/fn-math.c for now on).

1999-05-19  Michael Meeks  <michael@imaginator.com>

	* CHANGES: copied to web and blanked.

1999-05-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-args.c (gnumeric_arg_parse): Initialize as a server.
	Thanks to Elliot for fixing this one.

1999-05-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/utils.c (parse_cell_name): Return false if the cell name is
	outside the boundaries of the spreadsheet.

	* src/corba-sheet.c (Sheet_range_set_text): Implement.
	(Sheet_range_set_formula): Implement.
	(Sheet_range_set_format): Implement.

	* src/ranges.c (range_parse, range_list_parse, range_list_destroy,
	range_list_foreach_full, range_list_foreach_all,
	range_list_foreach, range_set_style): New functions.  Used by the
	corba-sheet code.

	* src/corba-sheet.c (Sheet_range_get_values): Implement
	vector-based result return.

	* src/xml-io.c (xmlSetGnomeCanvasPoints): use g_malloc instead of alloc.

	* src/dialog-solver.c (constr_add_click): Use g_malloc instead of
	alloc.  Use g_new instead of malloc.

	* src/utils.c (parse_cell_name_list): Add parameter checking.  Use Migueestyle.

1999-05-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (Workbook_corba_class_init): Make it work
	with the new bonobo.

1999-05-16  Raja R Harinath  <harinath@cs.umn.edu>

	* src/Gnumeric.idl: Revert the following checkin:
	1999-05-13  Kjartan Maraas  <kmaraas@online.no>.
	`gnome-object.idl' is part of `bonobo'.

1999-05-16  Morten Welinder  <terra@diku.dk>

	* src/expr.c (do_expr_tree_relocate): Change to use lazy copying
 	scheme -- this should improve sharing.  (Until someone saves and
	reloads, of course.  More about that at a later time.)
	(expr_tree_invalidate_references): Quiet.
	(expr_tree_fixup_references): Quiet.

	* src/cell.c (cell_relocate): Only update if changed.

	* src/expr.c (evaluate_level): Deleted.
	(bigger_prec): Deleted.
	(do_expr_decode_tree): Handle left/right associativity.

	* src/cell.c (cell_set_text_simple): Simplify value parsing.

	* src/dialog-goal-seek.c (test_cell_with_value): Cast to double,
 	not float.

1999-05-16  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (cb_assemble_selection): Add 'char *sel'
	and change "," -> ','
	(workbook_selection_to_string): Add 'char *result'
	Fix incorrect pointer dereference.

	* src/sheet.c (reference_append): Fix appended strings to
	characters.
	(sheet_selection_to_string): Add missing GList pointer
	'selections'. Changes ":" -> ':', rename res to 'info->result'

1999-05-15  Heath Martin <martinh@pegasus.cc.ucf.edu>

	* src/gnumeric-sheet.c (gnumeric_sheet_compute_visible_ranges):
	Small cut and paste fix.  Use row here instead of col.

1999-05-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* configure.in (ALL_LINGUAS): Added slovak language.

1999-05-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_selection_to_string): New routine.  Returns a
	string representation of the current selection.

	* src/workbook.c (workbook_selection_to_string): New routine.
	Retunrs a string representation of the current selection.

1999-05-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (corba_sheet): Fix.

1999-05-16  Michael Meeks  <michael@imaginator.com>

	* CHANGES: Added to ease burdern of creating accurate descriptions
	between versions.

1999-05-15  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/statfuns.xls: Added a new file.  It can be used for
 	regression testing.  It is in Excel format so it tests the Excel
 	plugin's functionality in the same time too.

1999-05-15  Michael Meeks  <michael@imaginator.com>

	* src/file.c (file_format_register_save): Changed to append
	new types; works round bug in selection.

	* src/expr.c (eval_cell_value): Fix sillyness of top left
	corner stuff.

	* src/expr.h: Added const to value_dump

	* src/parser.y (value_dump): Fixed array problem.
	Added const to parameter.

1999-05-15  Michael Meeks  <michael@imaginator.com>

	* src/parser.c (value_dump): Updated Arrays, to use Value *

	* src/func.c (function_iterate_do_value): same.

	* src/fn-sheet.c (gnumeric_selection): same.

	* src/eval.c (add_value_deps): same.

	* src/expr.c (value_get_as_string): Major re-work of ARRAY
	conversion.
	(value_array_set): Fix rather embarassing bug in assertions.
	(eval_cell_value): Return top left corner of array, seems to be
	what excel does.
	(value_release, value_array_set, value_array_new),
	(value_array_copy_to, value_array_resize):
	Updated value->v.array to Value *'s saves much hassle !

1999-05-14  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (value_area_get_width, value_area_get_height):
	Clip to sheet bounds if CELLRANGE: Massive speedup on some
	lookups.

	* src/expr.h: Added value_zero

	* src/func.c (constants_init): Added a 'value_zero' constant
	to kill leak in out-of-range / NULL cell cases in value_get_at_x_y

1999-05-14  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added LCM().

1999-05-13  Kjartan Maraas  <kmaraas@online.no>

	* src/Gnumeric.idl: s/#include <gnome-object.idl>/
	  #include <GnomeObject.idl>, to make it compile.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/Gnumeric-impl.c: Fixes killing this file by
	mistake.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/expr.h: Updated all prototypes.

	* *.c:
	s/\<value_float *(/value_new_float (/g
	s/\<value_int *(/value_new_int (/g
	s/\<value_str *(/value_new_string (/g
	s/\<value_string *(/value_get_as_string (/g
	s/\<value_cellrange *(/value_new_cellrange (/g
	s/\<value_get_as_double *(/value_get_as_float (/g
	s/\<value_get_bool *(/value_get_as_bool (/g

	* src/expr.c: Moved all pertainant Value functions to the
	same place to aid possible splitting.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (value_area_get_at_x_y): Added warning
	in safety case.

	* src/fn-lookup.c (gnumeric_lookup): Implemented.

	* src/func.h: Updated critera_test_fun_t: returns int,
	should really be gboolean ?

	* src/expr.h: Added prototype & indentation beautified.

	* src/expr.c (value_array_set): Helper function added.

1999-05-13  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added GCD().

1999-05-12  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (workbook_setup_edit_area): Added dependancy
	debugging button for --debug=10 and fixed memory leak.
	(deps_output): Dumps dependency data to stdout.

	* src/gnumeric-util.c (range_contains): Re-order compares
	to catch single cell ranges more quickly.

	* src/eval.c (intersects): Change order of sheet / range check
	for speed.
	(search_cell_deps): Added comment.

	* src/eval.h: Cosmetic typo. fix shet -> sheet

1999-05-12  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: Database functions accept now string
 	criterias too.  In addition, the parsing of criterias and the test
 	functions are now public (src/fn-math.c uses these for now on).

	* src/func.h: Added type definitions and function prototypes for
 	internal functions that parse and test criterias.

	* src/fn-math.c: Added LN().  Changed LOG() to take an optional
 	second parameter.  LOG() returns the logarithm in base 10 if the
 	optional argument is not given, otherwise it returns the logarithm
 	in the given base.

	* src/fn-math.c: Added COUNTIF() and SUMIF().

	* src/fn-eng.c: Added IMLOG10() and IMLOG2().

	* src/fn-eng.c (complex_ln): Fixed a bug.  Imaginary coefficient
	was calculated incorrectly.

1999-05-11  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added CONVERT().  All translations should work.
  	Also get_real_and_imaginary() fixed (complex numbers should now
 	work completely).

1999-05-10  Michael Meeks  <michael@imaginator.com>

	* src/sheet.h: Added workbook_focus_sheet.

	* src/workbook.c (workbook_focus_sheet): Added.

1999-05-10  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added IMARGUMENT(), IMCONJUGATE(), IMCOS(),
 	IMDIV(), IMEXP(), IMLN(), IMPOWER(), IMPRODUCT(), IMSIN(),
 	IMSQRT(), IMSUB(), and IMSUM().

1999-05-08  Michael Meeks  <michael@imaginator.com>

	* web/index.html: Fix sillyness in references.

	* web/gnumeric-0.25: Remove HTML tags...

1999-05-08  Michael Meeks  <michael@imaginator.com>

	* src/Makefile.am (gnumeric_LDADD): Added libole2 library.

	* configure.in (XML_CFLAGS): Updated to add excel/libole2

	* src/sheet.h: Commented sheet_cell_get vs. _fetch.

	* src/expr.c (do_expr_tree_unref, value_string, value_release),
	(eval_cell_value, do_expr_tree_invalidate_references):
	Clean: Added 'default' cases with warnings.
	(value_get_as_double, value_get_as_int, value_get_bool): Changed
	to safer / faster switch statement from if.

1999-05-07  Michael Meeks  <michael@imaginator.com>

	* src/corba-workbook.c (corba_sheet): Add CORBA_Environment
	parameter, needed for Object_dupicate...
	(Workbook_sheet_new, Workbook_sheet_lookup),
	(Workbook_sheet_current): Updated corba_sheet's args.

	* src/fn-lookup.c: Fixed choose help.

1999-05-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (corba_sheet): Duplicate the object before
	returning to ORBit.

1999-05-07  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added COMPLEX(), IMABS(), IMAGINARY(), IMREAL().
  	Also added an internal function get_real_and_imaginary() which
 	still needs to be improved.

	* src/fn-math.c: Added MROUND() and ROMAN().  ROMAN() currently
 	supports only type 0 (classic).

1999-05-07  Heath Martin  <martinh@pegasus.cc.ucf.edu>

	* src/expr.c (expr_tree_invalidate_references): Add extra argument
 	for the sheet we are changing.  All callers changed.
	(expr_tree_fixup_references): Ditto.

1999-05-06  Morten Welinder  <terra@diku.dk>

	* src/eval.c (cell_queue_recalc): Don't re-queue cell.
	(cell_queue_recalc_list): Don't re-queue cells.  (Because it is
 	wasteful and because unqueue then won't work right.)

	* src/fn-lookup.c (gnumeric_column): Fix leak.
	(gnumeric_row): Fix leak.
	(gnumeric_choose): Fix leak.
	(lookup_similar): Fix leaks.

	* src/xml-io.c (xml_probe): Fix leak.
	(xmlGetValue): Fix *HUGE* leak.
	(readXmlStyle): Fix leaks.
	(readXmlSheet): Fix leaks.
	(createXmlSheet): Fix leak.
	(readXmlCell): Move the freeze, just in case.

	* src/fn-lookup.c (gnumeric_choose): Remove (incorrect) arg check.

	* src/cell.c (cell_copy): Properly handle render_color member.
  	Clear the CELL_QUEUED_FOR_RECALC flag.
	(cell_destroy): Add code to make it painfully clear when members
 	of freed cells are accessed.

1999-05-06  Michael Meeks  <michael@imaginator.com>

	* src/cell.h: Added deep freeze prototypes.

	* src/cell.c (cell_deep_freeze_redraws): Added
	(cell_deep_thaw_redraws): Added,
	(cell_queue_redraw): Updated to use deep_freeze
	effectively ignore redraw requests.

	* src/xml-io.c (readXmlCell): Added deep freeze/thaw
	redraws for clean and easy speedup.

1999-05-06  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c: Moved 'Sort' to the tools menu.

	* HACKING: Pedantic clean.

1999-05-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-date.c: Added EDATE().

1999-05-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-date.c: Added DATEVALUE().

1999-05-05  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c (parse_criteria): If a condition contains
	just a number, it is an equality condition.

1999-05-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* configure.in: Laptop does not have resources.  Make guile
	optional until at least.

	* src: Now we only support two modes: Gnumeric and
	Gnumeric-Bonobo.  The later includes all of the CORBA support,
	there is no longer a non-Bonobo CORBA version.

	* src/corba-workbook.c, src/corba-sheet.c, src/workbook-factory.c:
	New files that support the Gnumeric CORBA interfaces.

1999-05-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (WorkbookFactory_init): Add workbook
	factory servant initialization.

1999-05-04  Morten Welinder  <terra@diku.dk>

	* src/eval.c (dependency_remove_cell): Remove unused assignment.
	(cell_queue_recalc_list): Mark queued cells as being so.

	* src/fn-math.c (gnumeric_combin): Clean up.
	(combin): Handle large numbers carefully.

	* src/utils.c (january_1900): Fix argument list.

	* src/fn-stat.c (gnumeric_var): Remove unused variable.
	(gnumeric_varp): Ditto.

1999-05-04  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math: Added ROUND().

	* src/fn-information: Added new file for information functions.
	New function COUNTBLANK() implemented.

	* src/Makefile.am, src/func.[ch]: Added `fn-information.c'.

1999-05-04  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: Added DCOUNTA().

	* src/fn-stat.c: Added argument count checks for VAR() and VARP().
	Added STEYX().

1999-05-03  Morten Welinder  <terra@diku.dk>

	* src/format.c (split_time): Fix leak.

	* src/parser.y (forget): Fix leak.

	* src/expr.c (do_expr_tree_ref): Delete.
	(expr_tree_ref): Just increase the ref-count.
	(do_expr_tree_unref): Properly decrease all the way.
	(expr_tree_new): Fix prototype.
	(value_release): Add "break".
	(value_cellrange): Make args const.  Don't use memcpy call.

	* src/parser.y (v_new): Fix type.
	(alloc_register): Ditto.
	(dump_tree): Fix reference to variable cell.

	* src/file.c (file_format_unregister_save): Fix leak.
	(file_format_unregister_open): Fix leak.

	* src/parser.y (forget): Fix leak.

	* src/eval.c (add_tree_deps): Use OPER_ANY_BINARY.
	(add_value_deps): Delete unused variable.
	(dependency_remove_cell): Fix leak.

	* src/sheet.c (sheet_destroy_styles): Leak fix.  Late night
 	coding?  :-)
	(sheet_shift_row): Ditto.

	* src/parser.y (alloc_clean): Ditto.
	(alloc_list_free): Ditto.

	* src/main.c (gnumeric_main): Get rid of memory leak debug code
 	(handled by other means now).

	* src/cell.c (cell_set_value): Remove "const".
	(cell_set_value_simple): Ditto.

1999-05-03  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: New file added for database
 	functions. Implemented DAVERAGE(), DCOUNT(), DGET(), DMAX(),
 	DMIN(), DPRODUCT(), DSTDEV(), DSTDEVP(), DSUM(), DVAR(), and
 	DVARP().

	* src/func.c: Added registeration of database functions.

	* src/fn-stat.c, src/func.h: callback_function_stat made public.

1999-05-02  Michael Meeks  <michael@imaginator.com>

	* src/expr.h: Spelling fix 'substract' :-)

	* src/expr.c (expr_tree_new): Added for convenience.

1999-05-02  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_value): Created.
	(cell_set_value_simple): Created.

	* src/cell.h: Added headers

1999-05-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c, src/corba-sheet.c: New files implementing
	most of the new Gnumeric.idl interface.

	* src/Gnumeric.idl: Make it useful.

1999-04-30  Morten Welinder  <terra@diku.dk>

	* src/*.h: Properly forward-declare structures.  Include
 	dependencies.  Change the occasional "void *" to its right
	type.

	* src/*.[cy]: Include more dependencies.

	* src/sheet.c (sheet_delete_row): Remove from workbook hash also.

1999-04-29  Morten Welinder  <terra@diku.dk>

	* src/expr.c (expr_tree_fixup_references): Implement.

	* src/sheet.c (sheet_delete_row, sheet_delete_col): Fixup
 	references.

	* src/expr.c (do_expr_tree_relocate): Remove strange and incorrect
 	refcount fiddling.

	* src/workbook.c (workbook_fixup_references,
 	workbook_invalidate_references): Fix cell walking.

	* src/expr.c (do_expr_decode_tree): rename binary_operation_names
	to operation_names and fill in the rest.

	* src/fn-misc.c (gnumeric_error): New function.

	* src/expr.c (value_str): Constify.
	(expr_tree_invalidate_references): Mostly implement.

	* src/fn-math.c (gnumeric_multinomial, gnumeric_product,
 	gnumeric_sumsq): Fix type.

	* src/expr.h (OPER_ANY_BINARY, OPER_ANY_UNARY): new convenience
 	macros.
	(struct _Sheet): declare forward reference so we can use the right
 	types.
	(CellRef, FunctionDefinition, expr_parse_string, expr_decode_tree,
 	eval_expr): use "struct _Sheet *".

	* src/workbook.c (workbook_do_destroy): Carefully clean workbook
 	before deleting sheets.  Do things in the standard way.  Get rid
 	of clipboard leak.
	(insert_cols_cmd): Fix name string.
	(workbook_detach_sheet): New parameter "force".  All callers
 	changed.
	(workbook_fixup_references, workbook_invalidate_references,
 	workbook_sheets): New functions.

	* src/sheet.c (sheet_verify_selection_simple): Mark strings for
 	translation.
	(sheet_insert_col): Fixup references to moved cells.
	(sheet_delete_col, sheet_delete_row): Invalidate references to
 	deleted cells.

	* src/sheet-autofill.c (fill_item_new): Fix copying of cell with
	error.

	* src/parser.y (yylex): "const" fixes.
	(gnumeric_expr_parser): New function (to fix memory corruption and
 	leaks).

	* src/fn-stat.c (i1mach): Make static.
	(gnumeric_var, gnumeric_varp, gnumeric_stdev, gnumeric_stdevp,
 	gnumeric_rank, gnumeric_trimmean, gnumeric_covar, gnumeric_correl,
 	gnumeric_mode, gnumeric_harmean, gnumeric_geomean, gnumeric_count,
 	gnumeric_counta, gnumeric_average, gnumeric_min, gnumeric_max,
 	gnumeric_skew, gnumeric_kurt, gnumeric_avedev, gnumeric_devsq,
 	gnumeric_pearson, gnumeric_rsq, gnumeric_median, gnumeric_large,
 	gnumeric_small, gnumeric_ztest): Fix type.

	* src/fn-math.c (gnumeric_fact, gnumeric_combin): Mark strings for
 	translation.
	(gnumeric_sum, gnumeric_trunc): Fix type.

	* src/fn-lookup.c (gnumeric_choose, gnumeric_column,
 	gnumeric_row): Fix type.

	* src/fn-misc.c (gnumeric_iserror): Fix type.

	* src/fn-sheet.c (gnumeric_selection): Fix type.

	* src/fn-string.c (gnumeric_concatenate): Fix type.

	* src/fn-logical.c (gnumeric_and, gnumeric_not, gnumeric_or,
 	gnumeric_if): Fix type.

	* src/fn-financial.c (gnumeric_npv): Fix type.

	* src/expr.c (expr_parse_string): Move in part to parser.y.
  	Delete global variables to communicate.
	(do_expr_tree_ref, do_expr_tree_unref, do_expr_decode_tree,
 	do_expr_tree_relocate): use OPER_ANY_BINARY and OPER_ANY_UNARY.
	(function_call_with_values): Mark strings for translation.
	(eval_expr, do_expr_decode_tree, expr_decode_tree): Fix type to
 	use "Sheet *" instead of "void *".
	(do_expr_decode_tree): Free sum.
	(expr_tree_invalidate_references, expr_tree_fixup_references): New
 	functions.  Not implemented yet.

	* src/cell.c (cell_set_formula): "const" fix.
	(cell_copy): Ref entered_string also if it exists.
	(cell_relocate): Unlink cell from workbook list of cells.

	* src/about.c (dialog_about): Add myself.  Update copyright.

1999-04-29  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-{math,sheet,logical}.c, src/func.[ch]: Moved logical
 	functions into a new file.

	* src/fn-math.c: Added ROUNDDOWN(), ROUNDUP(), SUMX2MY2(),
 	SUMX2PY2(), and SUMXMY2().

	* src/fn-stat.c: Added PROB(). CONFIDENCE() should now work fully.

1999-04-28  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added COUNTA(), FINV(), and TINV().

	* src/fn-stat.c, src/fn-math.c: AVERAGE(), COUNT(), MAX(), and
	MIN() moved from fn-math.c to fn-stat.c.  They are in the
	statistical function group in Excel.

1999-04-27  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added BETADIST(), FDIST(), and TDIST().

1999-04-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/eval.c (intersects): Typo fix.  Sheet was being assigned
	instead of being tested for equality.  This got Michael to crash
	Gnumeric (as there was no test for can_remove)

1999-04-26  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added CHIDIST(), CHIINV(), and GAMMAINV().

Sat Apr 24 14:39:32 1999  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_selection_reset_only): Remove useless
 	initialisation.  Don't free individual selections here.

	(sheet_selections_free): Walk the list of selections and free each
 	one.

	(sheet_get_selection_name): Calculate buffer size based on the
 	size of an int.

	* src/fn-eng.c: Remove sqrtpi function -- it's already in fn-math.c

	* src/fn-math.c (gnumeric_sqrtpi): Add range check.

	* src/symbol.c (symbol_install): Add sanity check.

Fri Apr 23 17:52:44 1999  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_destroy): Don't check that workbook is
	NULL because it cb_sheet_do_destroy will call it non-NULL.

	* src/workbook.c (cb_sheet_do_destroy): Don't NULL workbook
	member as it will be used.

	* src/format.c (render_number): Fix rounding up.

	* src/*.[chy]: add tons on "const"s.

1999-04-23  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added GAMMADIST() function.  It uses pgamma()
 	function written by Ross Ihaka.  Thanks to Morten for pointing
 	this piece of code.

1999-04-21  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_do_destroy): Release the sheets and the
	hash table that held the references to the sheets.

	* src/func.c: warning fix.

1999-04-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/widget-editable-label.c (el_button_press_event): Add type
	cast to kill warning.

	* src/format.c: Include ieeefp.h if required.

1999-04-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-string.c: Close parentheses in help_stubstitute function
	descritpion.   Thanks to Aldy Hernandez for pointing this out.

1999-04-19  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-goal-seek.c: Goal seek tool implemented.  Goal seek
 	should now find a solution for all linear problems (if there is
 	one).  A simple non-linear search algorithm also implemented.

	* src/workbook.c: Made 'Goal seek' menu entry visible.

	* src/fn-math.c: Added MULTINOMIAL(), PRODUCT(), SIGN(), SUMSQ(),
 	and SQRTPI().

1999-04-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/func.c (iterate_cellrange_callback): Eval the cell here if
	it has not yet been evaluated.

Sun Apr 18 17:59:09 EDT 1999 Gregory McLean <gregm@comstar.net>

	* gnumeric.spec.in: Updated and enhanced spec file. Tastes even
	better and is less filling to boot!

1999-04-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object-container.c (make_container_item): New
	routine.
	(sheet_object_container_land): Used to convert from the temporary
	widgets to the view provided by Bonobo.

1999-04-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (value_array_resize): Fix typo bug I introduced.

	* src/eval.c (cell_queue_recalc): When queuing for recalc, tag the
	cell, so that if we remove the cell from the recalc list we can
	quickly find out if we have to look for it on the list of pending
	recomputations.
	(pick_next_cell_from_queue): Clear the cell's
	CELL_QUEUED_FOR_RECALC bit.
	(cell_unqueue_from_recalc): New routine to remove a cell queued
	for recomputation.

	* src/clipboard.c (new_node): Trim leading spaces.

1999-04-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added EVEN, FACTDOUBLE, ODD, QUOTIENT, and
	RANDBETWEEN.

	* src/fn-stat.c: Added LOGINV, NORMINV, NORMSINV, RSQ, and ZTEST
 	functions.

1999-04-15  Michael Meeks  <michael@edenproject.org>

	* src/parser.y (value_dump): Added CellRange support

	* src/fn-lookup.c (gnumeric_offset): Implemented OFFSET.

	* src/expr.c (value_cellrange): Created.
	(eval_funcall): Major hack to allow auto-conversion
	of cell references to cell ranges on the fly.

	* src/expr.h: Added value_cellrange.

1999-04-15  Michael Meeks  <michael@edenproject.org>

	(gnumeric_choose): CHOOSE function implemented.

1999-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_destroy): No longer destroys the Bonobo
	objects here.

	* src/sheet.h (Sheet): No longer keeps track of the ClientSites
	here.

	* src/sheet-object.c (sheet_finish_object_creation): Invoke new
	class method to signal finalization of object creation.

	* src/sheet-object-container.c, src/sheet-object-container.h: New
	files that implement the Bonobo ClientSites
	(SheetObjectContainers).

	* src/Makefile.am (gnumeric_bonobo_SOURCES): Sources for Bonobo
	compilation.

	* src/sheet-object.c (sheet_object_construct): Create the bounding
	box points here.
	(sheet_set_mode_type): Fix from my previous reorganization:  Only
	stop editing mode if the mode is SHEET_MODE_SHEET.
	(sheet_button_press): Strategy change: now we accept
	sheet->current_object and we stop editing here the object.

	* src/sheet-object.h: points has been renamed to bbox_points.

	* src/sheet-object-graphic.c (sheet_object_filled_realize):
	Simplified this routine.  Also, we now update the bounding box
	here.

1999-04-15  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>

	* src/fn-lookup.c: Silly bug in types fixed.

	* src/expr.c (eval_funcall): Made cellrefs absolute.

	* src/cell.c (cell_set_text_simple): Fix for 1.234E-07

1999-04-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c: Converted SheetObject to a Gtk+ object.
	Splitted the functionality of the SheetObject into classes:
	SheetObject abstract class;  SheetObjectGraphic for simple drawings;
	SheetObjectFilled for objects that have a fill attribute.

	* src/sheet-object-graphic.c: Implement the SheetObjectGraphic and
	SheetObjectFilled objects.

1999-04-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (xml_probe): Do not crash if the file is a broken
	XML file.

1999-04-13  Zbigniew Chyla <cyba@t19.ds.pwr.wroc.pl>

	* src/workbook.c: using 'gnome_dialog_run_and_close' instead of
	'gnome_dialog_run' (which _may_ destroy dialog widget - we don't have to
	check for this case).

1999-04-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-args.c (gnumeric_arg_parse): Intiialize Bonobo.

	* configure.in: add test for Bonobo.

	* src/clipboard.c (x_selection_to_cell_region): Fixed the
	computation of columns in the paste code.

1999-04-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (insert_object_cmd): Add sample bonobo support.
	Still lacking an object server selector.

	* src/sheet.c (sheet_insert_object): Add Bonobo support.

	* src/sheet-view.c (sheet_view_insert_object): Add basic Bonobo
	support.  I need to reuse the SheetObject stuff to add control
	points to the objects and to handle repositioning.

1999-04-12 Michael Meeks  <michael@imaginator.com>

	* TODO: Removed basic functions section, most are done.

1999-04-11 Michael Meeks  <michael@imaginator.com>

	* src/dialog-function-select.c (function_select_row):
	Check event is valid before using it, remove redundant
	total redraw.
	(category_select_row): Fix.
	(function_select_create): Removed redundant call to
	duplicated (create_description): Removed.

	* src/fn-lookup.c: Actualy change the lookup function
	tokens to the correct values.

1998-04-09 Zbigniew Chyla <cyba@t19.ds.pwr.wroc.pl>

	* src/workbook.c: Creating auto_expr menu every time it is popped
        up instead of using one object all the time (and referencing to
        invalid workbook from "activate" signal handler).

        * src/item-grid.c: (item_grid_popup_menu): Fixed memory leak
        (gnumeric_popup_menu used instead of gtk_menu_popup).

1999-04-11 Michael Meeks  <michael@imaginator.com>

	* src/expr.c (eval_funccall): New array / 'area' tokens added,
	error strings simplified ( int type_mismatch added )
	(value_area_get_width, value_area_get_height): Implemented,
	(value_area_get_at_x_y): Implemented.
	(value_array_new, value_array_resize): Implemented.
	(value_release): Updated.
	(value_copy_to, value_array_copy_to): Updated, created.
	Added const to a scad of helper 'value_get' style functions.

	* src/expr.h: Value: Changed 'array' from GList to a
	structure.
	Added struct _Value for self reference.
	Added const to a scad of helper 'value_get' style functions.

	* src/func.c (function_iterate_do_value): Updated Array code.

	* src/eval.c (add_value_deps): Updated Array stuff.
	(add_value_deps): const added to Value *

	* src/dialog-function-wizard.c (function_type_input):
	Updated text for new tokens.

	* src/fn-sheet.c (gnumeric_selection): Update to new array code.

	* src/fn-lookup.c (columns, rows): Updated to clean new API.
	(vlookup, hlookup): Large clean.

	* src/parser.y (value_dump): Updated Array section.

	* docs/C/writing-functions.smgl: Added section explaining tokens,
	and new API.

1999-04-09 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_destroy): Move destruction of cell_hash to
	after destroy_styles.columns_and_rows that use it.
	NULL various pointers.
	(sheet_col_destroy): Added g_return_if_fail (ci)
	(sheet_duplicate_colrow): Merged into (sheet_row_new, sheet_col_new)
	and removed: nasty function.
	(sheet_destroy_columns_and_rows): Fix nasty bug using freed 'l'
	pointer ( freed by sheet_col_destroy / sheet_row_destroy ).
	NULL the pointers for safety.
	(sheet_col_destroy): NULL various pointers.

	* src/sheet.h (sheet_duplicate_colrow): Removed.

1999-04-08  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-solver.c, src/dialog-goal-seek.c, src/solver.h:
	Wrote dialogs for these tools. The tools are not implemented yet.

	* src/solver-lp.c:
	New file for linear programming methods created.

	* src/sheet.h:
	Added parameters for the Solver tool.

	* src/fn-stat.c (gnumeric_correl):
	Bug fixed.  If the covariance is zero the correlation coefficient
	should also be zero. Thanks for Vladimir for pointing this one out.

1999-04-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (xmlGetCoordinates): Include fix from Richard Hult:
	Seemed to be a cut and paste error.

	* src/cell.c (cell_destroy): From Morten Welinder: destroy the
	cell->value only if it does exist.

	* src/file.c (dialog_query_load_file): Set the accepted value to
	false initially.  Thanks for Morten for pointing this one out.

1999-04-06  Zbigniew Chyla <cyba@piast.t19.ds.pwr.wroc.pl>

	* src/workbook.c (workbook_new): Use the translated version of the
	function to display

1999-04-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Enable the function wizard only if the --debug
	flag was passed.

	* src/dialog-function-wizard.c, src/dialog-function-select.c:
	Adapt to the rest of Gnumeric coding style.

	Use a different way of creating the GUI and controlling the
	interactions.

	* src/func.c, src/func.h (function_iterate_do_value): Use my
	indentation and coding style here.

	* src/dialog-cell-format.c (render_formated_version): Handle the
	case where the value might be NULL.

	* src/xml-io.c (createXmlSheet): New function.  Used in an initial
	pass over the XML file to load all of the Sheets defined there.
	(readXmlWorkbook): Now this does two passes at loading the sheet:
	the first pass creates the sheets, the second pass actually loads
	the contents.

1999-04-06 Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (workbook_new): More sensible default
	size.

	* src/sheet.c (sheet_row_set_height): use sheet_row_new()
	instead of sheet_duplicate_colrow(), as we get duff span
	data otherwise ( not calling row_init_span )
	(sheet_col_set_width): Re-order, presumably fixing bug,
	and as for set_height.

1999-04-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (createXmlSheet): New function.  Used in an initial
	pass over the XML file to load all of the Sheets defined there.
	(readXmlWorkbook): Now this does two passes at loading the sheet:
	the first pass creates the sheets, the second pass actually loads
	the contents.

1999-04-06 Michael Meeks  <michael@imaginator.com>

	* src/func.c (tokenised_help_new): Improved algorithem.
	(functions_init): Made descriptions more verbose.

	* src/workbook.c (wizard_input): Cleaned to use local
	entry instead of specific wb->ea_input.

	* src/dialog-function-wizard.c (function_type_input):
	Update types, add recursive function button.
	(function_input): Created.
	(arg_data_list_new): Added wb to ARG_DATA, needed for
	function_input.
	Added default code for multi-arg functions.
	Deals with no-argument functions properly,
	Fix silly args=NULL g_free(args) bug.
	(dialog_function_wizard): Special 'no-arguments' quick
	case.

	* src/fn-math.c (gnumeric_rand): Added RAND function.

1999-04-05  Morten Welinder <terra@diku.dk>

	* src/cell.c (cell_set_rendered_text): Fix for circular
	references.

1999-04-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Do not make the about box modal.

1999-04-05 Michael Meeks  <michael@imaginator.com>

	* src/func.c (tokenised_help_new, tokenised_help_destroy),
	(tokenised_help_find_token): Implemented to assist searching
	for tokens.

	* src/func.h: Inserted TOKENISED_HELP struct, and prototypes.

1999-04-04 Michael Meeks  <michael@imaginator.com>

	* src/dialog_function_wizard.c: Created

	* src/workbook.c (workbook_setup_edit_area): Add Wizard
	button.

	* src/dialogs.h: Add dialog_function_wizard

	* src/func.c (functions_init): Added descriptions.
	Init categories array.
	(get_function_categories): Returns array of categories.
	(install_symbols): Add description argument.

	* src/func.h: Updated prototypes altered,
	add get_function_categories and struct FUNCTION_CATEGORY.

	* plugins/guile/plugin.c (init_plugin): Update install_symbols.

	* plugins/sample/plugin-sample.c (init_plugin): Ditto.

1999-04-03 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_cell_remove_from_hash): Now checks
	return value of g_hash_table_lookup_extended, before
	freeing a random pointer if its not there.

	* src/cellspan.c (cell_unregister_span): Check another
	pointer.

	* src/cell.c (cell_set_formula): Default error_msg !

1999-04-03 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_cell_remove_from_hash): Now checks
	return value of g_hash_table_lookup_extended, before
	freeing a random pointer if its not there.

	* src/cellspan.c (cell_unregister_span): Check another
	pointer.

	* src/cell.c (cell_set_formula): Default error_msg !

1999-04-02 Michael Meeks  <michael@imaginator.com>

	* src/fn-sheet.c (gnumeric_if): Fix to allow variable
	arguments, updated help & struct to comply, removed
	possible memory leak. ( Luke 17:3,4 )

1999-04-01 Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (sheet_action_delete_sheet): Fix docs.

1999-03-31  Morten Welinder <terra@diku.dk>

	* src/fn-stat.c (phi): new internal function.
	(gnumeric_normdist): Implemented using phi instead of the built-in
	table.

1999-03-31  Michael Meeks  <michael@imaginator.com>

	* src/dialog-cell-sort.c (dialog_cell_sort): Added multiple
	clause support, and cleaned UI.
	(add_clause, del_clause): Added.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/dialog-cell-sort.c (dialog_cell_sort): Fix possible
	problem with entire column selection. Need some function
	to determine largest used cell range.

1999-03-31  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Fixed.  Patch from Takashi Matsuda

1999-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-financial.c (gnumeric_dollarfr): Use floor, not floorf,
	as I can not find documentation on this on my system.

	* src/fn-math.c (gnumeric_ceiling): Use ceil, not ceilf.  I can
	not find documentation on this on my system

1998-11-12  Morten Welinder <terra@diku.dk>

	* src/fn-stat.c (gnumeric_variance): More precise method of
	computing the variance.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_selection_first_range): This returns
	the co-ordinates of the first range, and a flag as to whether
	the selection is simply one range. This keeps things simple
	for sort.

	* src/utils.c (col_from_name): Created.

	* src/utils.h: Added prototype.

	* src/dialog-cell-sort.c: Created

	* src/workbook.c (workbook_menu_format): Added 'Sort'.
	(sort_cells_cmd): Created.

	* src/dialogs.h: Added dialog_cell_sort.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/fn-lookup.c (gnumeric_vlookup, gnumeric_hlookup):
	Removed check for same sheets in each cell reference, in
	intersheet references only a->sheet points to the other sheet.

	* src/func.c (function_iterate_do_value): Change CELLRANGE's
	sheet reference to cell_range.cell_a.sheet, since could be an
	inter-sheet reference. This fixes: Sum(Sheet1!A1:B3)

	* src/fn-eng.c: Cleaned function documentation.

	* docs/C/writing-functions.smgl: Updated for option function
	arguments.

	* src/fn-math.c (gnumeric_mod): Implemented.

1999-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Fix from Ian Campbell for fixing the
	subtraction problem.

1999-03-28  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added large, median, pearson, and small.

1999-03-28  Michael Meeks  <michael@imaginator.com>

	* src/parser.y (yylex): Added digits count to stop
	overflow of integers above 9 digits.

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/sheet.c (fail_if_found): Renamed to
        (fail_if_not_selected): Added check for selection
        (sheet_is_region_empty): Renamed to
        (sheet_is_region_empty_or_selected): Better
        described new function.

        * src/item-cursor.c (item_cursor_target_region_ok):
        Uses sheet_is_region_empty_or_selected.

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/expr.c (eval_funcall): Add vital 'break'
        statement :-)

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/eval.c (cell_eval): Set default value of
        error_msg so cell doesn't get null text on
        g_return_val_if_fail (condition, NULL) ;

        * src/sheet.c (sheet_update_auto_expr):
        Internationalized ERROR string.

        * src/fn-lookup.c (gnumeric_column, gnumeric_columns)
        (gnumeric_row, gnumeric_rows): Hacked; best can do for
        now.

1999-03-26  Michael Meeks  <michael@imaginator.com>

	* src/fn-eng.c (gnumeric_delta): Fix memory leak
	(gnumeric_gestep): Cleaned to better arg. model
	(bin/oct/dec/hex2...): Cleaned similarly

	* src/fn-stat.c (gnumeric_poisson): Cleaned

	* src/fn-string.c (string_and_optional_int): Removed.
	(gnumeric_left, gnumeric_right, gnumeric_find),
	(gnumeric_fixed, gnumeric_dollar, gnumeric_substitute):
	Updated to optional argument types.
	(gnumeric_clean): Moved from fn-misc.c

	* src/fn-misc.c (gnumeric_clean): Moved to fn-string.c

	* src/expr.c (cell_ref_make_absolute): Makes a CellRef
	absolute.
	(eval_funcall): Added range token 'r' for lookup
	functions, makes reference absolute so can be used
	downstream without trouble.

	* src/expr.h: Added range comments

	* src/fn-lookup.c: Created
	(lookup_simliar, gnumeric_vlookup):
	Implements VLOOKUP.
	(gnumeric_hlookup): Implements HLOOKUP.

1999-03-25  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-financial.c: dollarde, dollarfr, and npv added.

	* src/fn-stat.c: correl, covar, mode, negbinomdist, rank, and
 	trimmean added.

1999-03-25  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (eval_funcall): Updated to add new optional argument
	token.

	* src/expr.h: Comments to explain above.

	* src/fn-eng.c (gnumeric_erf, gnumeric_delta): Drastic clean to use
	new optional token.

1999-03-23  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: ceiling added.

	* src/fn-stat.c: fisherinv, normsdist, and lognormdist added.

	* AUTHORS, src/about.c: added me.

Tue Mar 23 14:00:37 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c : solved the problem of saving cells with < or &

1999-03-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: avedev, confidence, critbinom, devsq, fisher,
 	kurt, normdist, permut, skew, standardize, and weibull added.

	* src/fn-math.c, src/func.h: gnumeric_average and fact made public
 	(used in src/fn-stat.c).

1999-03-17  Vladimir Vuksan <vuksan@veus.hr>

 	* src/fn-financial.c: Added new functions gnumeric_ipmt,
	gnumeric_ppmt, gnumeric_duration.

1999-03-18  Jukka-Pekka Iivonen  <iivonen@iki.fi>

 	* src/fn-math.c: combin added.

 	* src/fn-stat.c: binomdist, harmean, and hypgeomdist added.

1999-03-18  Michael Meeks  <michael@imaginator.com>

	* src/fn-eng.c (val_to_base): Minor fixes

1999-03-18  Sean Atkinson  <sca20@cam.ac.uk>

	* notes: typos

	* src/expr.c (value_string): cleaned to use g_strdup_printf

	* src/expr.h: typo

	* src/fn-string.c (gnumeric_mid): fixed
	internationalized various strings, typos
	(subs_string_new, subs_string_append_n, subs_string_free): added to
	speed gnumeric_substitute
	(gnumeric_concatenate, gnumeric_rept, gnumeric_find, gnumeric_fixed)
	(gnumeric_proper, gnumeric_replace, gnumeric_t, gnumeric_value)
	(gnumeric_substitute, gnumeric_dollar): implemented.

1999-03-16  Vladimir Vuksan <vuksan@veus.hr>

	* src/fn-financial.c: More financial functions: gnumeric_nominal,
	gnumeric_pv, gnumeric_fv, gnumeric_pmt.

1999-03-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Change from active voice to passive voice in the
	help messages for "New".  Thanks to Morten for pointing this out. 2

1999-03-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (callback_function_sum): Detects integer
	over/under flow.

	* src/expr.c (eval_expr): Add integer overflow code for addition
	and substraction.

	* src/cell.c (cell_set_format): Call cell_render_value and
	cell_queue_redraw calls here.

	* src/expr.c (bigger_prec): When decoding left-to-right apply
	parentheses if the two priorities are equal.

1999-03-13  Richard Hult <rhult@hem2.passagen.se>

	* src/xml-io.c (xmlGetGnomeCanvasPoints): test against the value
	returned by xmlGetValue, not the GnomeCanvasPoints value.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c (val_to_base, val_to_base_place),
	(bin/oct/dec/hex 2 bin/oct/dec/hex):
	Implemented - pending fixes to number storage.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c (gnumeric_delta, gnumeric_sqrtpi),
	(gnumeric_gestep): Implemented

	* src/fn-math.c (sqrt): Implemented.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c: Created
	(gnumeric_erf, gnumeric_erfc, gnumeric_bessely)
	(gnumeric_besselj): Implemented
	(gnumeric_bin2dec): Moved from fn-math.c

	* src/fn-math.c (gnumeric_bin2dec): Moved to fn-eng

	* src/func.c (functions_init): Added eng_functions.

	* src/fn-stat.c: Cleaned functions help.

	* src/Makefile.am: Added fn-eng.c

1999-03-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/clipboard.c (sheet_paste_selection): New routine.  Abstracts
	the paste operation.
	(clipboard_paste_region): Now it uses a clipboard with the active
	X selection instead of defaulting to "request clipboard from X"
	(this is only for inter-workbook copy-paste).

	* src/sheet.c (find_workbook_with_clipboard): Tries to find a
	workbook with clipboard information.  Probably the clipboard
	should be global to all Gnumeric.

	* src/render-ascii.c (cell_region_render_ascii): Free the
	information after we have used it, not before.

	* src/expr.c (eval_expr): Handle new-born recursive references.

1999-03-11  Michael Meeks <michael@imaginator.com>

	* src/fn-math.c (gnumeric_power): Implemented.

	* src/fn-stat.c (gnumeric_poisson, gnumeric_gammaln):
	Implemented.

1999-03-11  Michael Meeks <michael@imaginator.com>

	* src/fn-stat.c (gnumeric_expondist, gnumeric_geomean):
	Implemented.

1999-03-10  Vladimir Vuksan <vuksan@veus.hr>

	* src/fn-financial.c: New file.

	(gnumeric_effect, gnumeric_sln, gnumeric_syd): New functions.

	* src/func.c (functions_init): Added financial functions.

	* src/func.h: Added extern.

1999-03-10  Michael Meeks <michael@imaginator.com>

	* src/fn-stat.c: Created.
	(gnumeric_stdev, gnumeric_stdevp, gnumeric_var, gnumeric_varp): Created

	* src/func.c (functions_init): added stat_functions

	* src/func.h: Added extern stat_functions.

1999-03-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c (gnumeric_clean): Add check here: only loop until
	the end of the string.

	* src/sheet.c (sheet_cell_foreach_range): Revert the arguments if
	they are in a different order.

1999-03-08  Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp>

	* plugins: new text plugin.

	Add new plugin TXT for simple text inport/export
	tab separated text. multiple sheet in a workbook is separated by
	'\f' character.
	If first line of each sheet is not include tab, then that line is
	interpreted as sheet name.

	* src/gnumeric-sheet.c: Add new mean for hard-coded keyboard short
	cut CTRL-Return.  Because ItemEdit does not support XIM, I must
	click the entry whenever I want to input janapese character.  If
	user does not edit the cell, this key combination switchs a
	keyboard focus to entry .

	* Replace gdk_font_load() with gdk_fontset_load()
	src/style.c gdk_font_load() makes impossible to show international
	string.

	* src/clipboard.h 'copy by value' was not possible because of
	miss-definition of PASTE_* enume.

	* src/file.c: gnumeric_notice was called with wrong arguments.

1999-03-07  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_format_from_style): Removed sluggish
	re-drawing code: unneccessary.

1999-03-05  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_color_from_style): Implemented.

1999-03-03  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c (parse_data_new): Trap null pointers
	on entry, ( coming from biff_get_text ).
	(ms_excel_parse_formula): Removed nasty static buffers.

1999-02-23  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_background_radio): Activated
	the patterned background control (although in my machine the
	boxes are all black) and added a radio button to let the
	user do nothing with backgrounds (analogous to the one in
	foreground section).

	* src/dialog-cell-format.c (apply_coloring_format): Now this
	functions takes into account the changes in create_background_radio,
	that is, if the user decides not to change the background,
	the background will not be changed. Also, assigned default
	values to some variables, just to avoid an annoying warning.

	* src/dialog-cell-format.c (create_coloring_page): If there
	are different backgrounds in the range, select by default
	the "no change" radio button for the background.

1999-02-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw): If the cell has a render_color (provided
	by the format specification), use that for the foreground.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (workbook_save_as): Append the extension of the
	default format if no colon is specified

1999-02-22  Tim Mooney  <mooney@dogbert.cc.ndsu.nodak.edu>

	* plugins/guile/plugin.c (func_scm_apply): Initialization of
	structure is done in the function body, rather thatn when it is
	declared.  This is necessary because struct initializer must be
	determinable at compile time, and those aren't.

	* src/expr.c (eval_expr): Add at least one statement to the
	default: handler in the case.

	* src/fn-math.c: provide a break for default handlers.
	* src/item-edit.c (entry_event): ditto
	* src/sheet-autofill.c (fill_item_destroy): ditto.

	* src/dialog-cell-format.c (create_number_format_page): Initialize
	in the body, like above.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* plugins/guile/plugin.c (func_scm_apply): Initialize the
	cell_ref.sheet to NULL.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_cell_remove_internal): Queue recalcs for
	cells that depend on cells that are being destroyed.
	(clear_cell_content): Added a call to workbook_recalc
	(sheet_clear_region_content): same.

1999-02-21  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-formula.c FORMULA_PTG_EXP: Fixed several bugs.

	* plugins/excel/ms-excel.c (ms_excel_set_cell_font, biff_font_data_get_style_font):
	Body of the former moved to the latter, loop invariant code removed for
	big speedup.
	(ms_excel_set_cell_xf): Burdern of border color stuff moved to
	(ms_excel_palette_get): New routine to cache and create
	StyleColor records as needed.
	(ms_excel_sheet_insert): Fixed so no NULL pointers can escape
	into cell_set_text.
	(ms_excelReadWorkbook): Removed BIFF Usage chart, its slow.
	(biff_nasty_font_check_function): Sorts out font sillyness.
	(biff_xf_data_new): Added cached style_format pointer
	(biff_xf_data_destroy): unref style_format if allocated.

	* src/cell.c (cell_set_format_from_style): Implemented.

1999-02-19  Raja R Harinath  <harinath@cs.umn.edu>

	* doc/C/Makefile.am (install-data-local): Use $(mkinstalldirs) not
	$(topsrcdir)/mkinstalldirs.

	* src/Makefile.am: Use $(GNOME_CONFIG) instead of `gnome-config'
	to run the gnome-config script.
	(BUILT_SOURCES): Swap with GNUMERIC_CORBA_GENERATED to be
	conceptually clean.

1999-02-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c (gnumeric_min): Implement ISERROR.

	* src/clipboard.c (paste_cell): Do not render the value if the
	result is an error.

	* src/cell.c (cell_copy): Do not copy the value of a cell when the
	value is NULL (due to the cell having an error).

	* src/expr.c (eval_expr): Evaluate binary operations in parts to
	keep the correct error message on an operation if possible.
	(eval_expr): Propagate errors.

	* src/item-edit.c (item_edit_draw): Sync the before-cursor and
	after-cursor Y-display text cordinate.

	* src/expr.c (eval_funcall): Add type checking for the simple
	functions.

	* doc/C/Makefile.am (install-data-local): use topsrcdir here (fix
	from Ian Campbell <ijc25@cam.ac.uk>

	* src/fn-math.c (gnumeric_not): Implement NOT.

	* src/number-match.c (format_create_regexp): Allow upper case
	format codes.

	* src/format.c: ditto.

1999-02-18  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	case FORMULA_PTG_ATTR: Added 'Optimised SUM' functionality,
	Generaly made output less verbose.

	* plugins/excel/ms-excel.c: BIFF_DBCELL, ignore it, its
	not interesting.
	(ms_excel_set_cell_xf, biff_format_data_lookup,
	biff_format_data_destroy, ms_excel_workbook_new,
	ms_excel_workbook_destroy): Implemented formatting.

1999-02-17  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-excel.c (biff_get_rk): moved RK number
	extraction into function.
	Added MULRK support: the lost numbers arrive !

1999-02-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (gnumeric_trunc): Implement TRUNC.

	* src/func.c (function_iterate_argument_values): Do not evaluate a
	subexpression if the previous expression failed due to an error.
	Basically: add a check to the eval return value.

	I took this oportunity to check all the source and this was the
	only buggy spot.

1999-02-16  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel.c: Fixed many bugs in my
	understanding of hash table functions.
	Added rudimentary NAME stuff.
	made error lookup global.
	Fixed up Header / Footer functionality.
	(ms_excel_sheet_new, ms_excel_sheet_insert,
	ms_excel_read_sheet): Added 'blank' field to excel_sheets,

	* plugins/excel/ms-formula.c: Added puzzling
	PTG_NAME stuff, this is really wierd.
	PTG_ERR added.

1999-02-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (change_auto_expr_menu): OOps I got too excited
	here using my helper routine: Now we do not destroy this helpful
	menu.

	* src/widget-editable-label.c (editable_label_set_text): Bug fix:
	sometimes this code is invoked with its argument being el->text.

1999-02-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_new): Make a local copy of the toolbar,
	as we use this to update the radio buttons.
	(workbook_do_destroy): Free the toolbar.
	(workbook_feedback_set): Use the per-workbook toolbar here.

1999-02-14  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-formula.c: Inserted a whole scad
	of math functions into translation table.
	(parse_list_to_equation): g_strdupped return values.
	FORMULA_PTG_STR: Updated old and broken code.
	* src/about.c (dialog_about): Added Sean.

1999-02-13  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_foreground_radio): Added a
	radio button to let the users 'no change' the text colour, useful
	when there is a range selected with differently colored cells
	and it is desired to change the background of them without
	touching the foreground.

	* src/dialog-cell-format.c (create_coloring_page): When there
	are different foreground colours in the selected cells, the
	default selection is 'no change'.

	* src/dialog-cell-format.c (apply_coloring_format): If there
	is no need to make changes to the foreground color of the
	cells, avoid doing them.

1999-02-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_target_region_ok): Warn the user
	if he overwrites something accidentally by dropping cells in the
	target location.

	* src/sheet.c (sheet_is_region_empty): New function.

1999-02-12  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel.c (biff_get_global_string):
	Drasticly simplified, accelerated and in-lined out.
	(biff_get_text): Fixed using unicode spec, various
	updates to calls to it, fixing offsets.
	Removed lots of debug output to speedup

1999-02-10  Sean Atkinson  <sca20@cam.ac.uk>

	* src/fn-math.c (callback_function_sum): enhanced warning for
	unknown value->type.

1999-02-12  Frederic Devernay  <devernay@istar.fr>

	* plugins/perl/perl.c: Handle the #define dirty in perl-thread.

1999-02-12  Bruno Unna  <bruno@iac.com.mx>

	* src/cell.c (cell_draw): Now the function draws the cell
	using the cell background color setting. Although it does
	the job, I guess there must be a better way to do it. Thanks
	to Michael for the hint.

	* src/item-grid.c (item_grid_draw_cell): Commented out the lines
	involved with patterns display in the cell, for that code is
	not ready yet.

	* src/dialog-cell-format.c (create_coloring_page): Reactivated
	the background selection panel of the coloring page.

	* src/dialog-cell-format.c (create_background_radio): Commented out
	the addition of the pattern selection for a cell.

1999-02-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_detach_sheet): Be less forgiving as to
	removing sheets with pending references.

	(sheet_action_delete_sheet): Add a test for
	dependencies when removing a sheet
	(workbook_can_detach_sheet): New function.

	* src/cell.c (cell_relocate): When relocating a cell with a
	formula, always mark it as changed.  We were doing that before
	only for the case where the location had changed, but we use
	cell_relocate in other cases as well.

	* src/fn-string.c (gnumeric_lower, gnumeric_upper): These
	functions were wrong.  They were never incrementing the pointer
	and they were releasing the wrong pointer.

	* src/clipboard.c (paste_cell): When pasting a cell, mark the
	contents as modified.

	* src/file.c (file_saver_is_default_format): Make sure the saver
	is always set.

1999-02-10  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_read_cell): BOOLERR booleans
	hard-translated to 1, 0: not a good solution to problems with TRUE.
	* src/fn-string.c (gnumeric_upper, gnumeric_lower): Add increment

1999-02-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.y: Apparently string concatenation operator in Excel
	has the lower priority.

	* src/workbook.c (workbook_detach_sheet): New function used to
	detach a sheet from a workbook.
	(sheet_menu_label_run): New routine.  Invoked on button-3 on the
	sheet label.

	* src/gnumeric-util.c (gnumeric_auto_kill_popup_menu_on_hide): New
	routine to deallocate menus when they go to unshown state

1999-02-09  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_sheet_new,
	ms_excel_workbook_attach, biff_boundsheet_data_new):
	Major sheet allocation re-organisation, hash boundsheet data.
	(ms_excel_sheet_set_version, ms_excel_sheet_set_index,
	ms_excel_workbook_get_sheet): re-hashed API
	* plugins/excel/ms-formula.c: PTG_MISSARG implemented

1999-02-08  Sean Atkinson  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel-biff.h, ms-excel.c:
	added BIFF_EXTERNCOUNT
	* plugins/excel/ms-excel.c (ms_excel_read_sheet):
	stubbed BIFF_EXTERNSHEET, stubbed SUPBOOK
	(biff_get_externsheet_name): implemented inter-sheet references
	* plugins/excel/ms-formula.ch: added FORMULA_PTG_CONCAT
	(ms_excel_parse_formula): implemented FORMULA_PTG_REF_3D

1999-02-07  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	FORMULA_PTG_ATTR stubs: can ignore most of AttrSpace.

1999-06-02  Morten Welinder  <terra@diku.dk>

	* samples/datefuns.xls: New file from Nick Lamb.

	* src/eval.c (workbook_recalc): If a cell has already been
 	computed, do not redo it.  This should speed up things.
	(cell_queue_recalc): Delete useless cast.
	(cell_unqueue_from_recalc): Ditto.
	(cell_queue_recalc_list): Ditto.
	(cell_queue_recalc_list): Extra parameter freelist controls
 	whether list is freed.  All callers changed.
	(workbook_recalc_all): Use cell_queue_recalc_list.

	* src/dialog-goal-seek.c (goal_seek_eval): Properly reevaluate.

	* src/expr.c (eval_expr): Only evaluate references cells when they
 	are queued for recalculation.

	* src/func.c (iterate_cellrange_callback): Ditto.

	* src/fn-math.c (gnumeric_lcm): Remove useless (Sheet *) cast.

	* src/fn-information.c (gnumeric_countblank): Ditto.

	* src/fn-database.c (find_column_of_field): Ditto.
	(parse_database_criteria): Ditto.
	(find_cells_that_match): Ditto.

	* src/cell.c (cell_comment_realize): Ditto.

1999-06-02  Michael Meeks  <michael@edenproject.org>

	* src/expr.c (do_expr_decode_tree): Added ARRAY support.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/format.c (format_value): Mark format for translation.
	(format_number): Locale improvements.

	* src/parser.y (yylex): Translate locale's decimal point into a
 	dot.
	(gnumeric_expr_parser): Extract locale's decimal point.

1999-06-01 Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>

	* src/gnumeric-util.c (font_change_component): Extend the size of
	the array components[] so that it can handle very long fontset
	names.
	
	* src/style.c: Change the default font names.
	
	* src/workbook.c: Add gtk_widget_ensure_style() call, which is
	necessary to knowing if a fontset is supplied for the label
	widget.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (callback_function_trimmean): Cleanup.
	(gnumeric_large): Fix conditional.  Thanks to Nick Lamb.
	(gnumeric_small): Ditto.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_skew): Fix crashes and leaks.
	(gnumeric_covar): Ditto.
	(gnumeric_rsq): Ditto.
	(gnumeric_pearson): Ditto.
	(gnumeric_correl): Ditto.
	(gnumeric_avedev): Ditto.

	(gnumeric_stdev): Don't make assumptions of the type of VAR.
	(gnumeric_stdevp): Ditto.
	(gnumeric_stdeva): Ditto.
	(gnumeric_stdevpa): Ditto.

	(callback_function_covar): Simplify greatly.
	(callback_function_correl): Ditto.
	(callback_function_stat_avedev_sum): Ditto.
	(callback_function_skew_sum): Ditto.  Also improve precision.
	(callback_function_rank): Ditto.
	(callback_function_trimmean): Ditto.
	(callback_function_mode): Ditto.
	(callback_function_stat_prod): Ditto.
	(callback_function_count): Ditto.
	(callback_function_kurt_sum): Ditto.
	(callback_function_ztest): Ditto.
	(callback_function_list): Ditto.
	(callback_function_percentrank): Ditto.
	(gnumeric_skew): Handle zero stddev.

	* src/expr.c (eval_cell_value): Delete.  Use value_duplicate
 	instead.
	(eval_funcall): Fix memory corruption on error.  Fix serious leak.
	(free_values): Only free non-NULLs.

1999-06-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (dialog_query_load_file): 
	(workbook_save_as): Prettify these.  Thanks to Andrew for pointing
	this out.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_kurt): Fix crashes and leaks.

1999-06-01  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-string.c: Added SEARCH().  Quite a complex beast but
 	should work completely.

1999-06-01  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (gnumeric_confidence): Fix sign.
	(gnumeric_devsq): Simplify and correct.

	* src/file.c: undo last change.  (The operation succeeded, but the
 	patient died.)

1999-05-31  Matt Loper  <matt@gnome-support.com>

	* src/sheet-view.c: Because GNOME::Component was renamed to
	GNOME::BonoboObject, some bonobo function call names needed to be
	changed here (ex. gnome_component_new_view to
	gnome_bonobo_object_new_view).

	* src/sheet-object-container.c (sheet_object_container_land):
	likewise.
	(sheet_object_container_realize): likewise.

1999-05-31  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-lookup.c: Added ADDRESS().  Cleaned up too long lines.

1999-05-28  Morten Welinder  <terra@diku.dk>

	* src/file.c (workbook_read): Temporarily switch to "C" locale
 	when loading and saving.  I am not sure this is the right thing to
 	do, but until someone finds a better way, it will work fine.
	(workbook_save_as): Ditto.
	(workbook_save): Ditto.

	* src/fn-math.c (gnumeric_power): Fix domain.

1999-05-27  Morten Welinder  <terra@diku.dk>

	* src/expr.c (value_get_as_string): Improve precision -- this
 	impacts the results of saves.

1999-05-27  Morten Welinder  <terra@diku.dk>

	* src/fn-stat.c (callback_function_mode): Ignore strings as
 	advertised.
	(callback_function_stat_inv_sum): Ditto.
	(callback_function_rank): Ditto.
	(callback_function_trimmean): Ditto.
	(callback_function_covar): Ditto.
	(callback_function_correl): Ditto.
	(callback_function_stat_prod): Ditto.
	(callback_function_skew_sum): Ditto.
	(callback_function_kurt_sum): Ditto.
	(callback_function_stat_avedev_sum): Ditto.
	(callback_function_devsq_sum): Ditto.
	(callback_function_median): Ditto.
	(gnumeric_tinv): Fix meaning.
	(callback_function_count): Cleanup.
	(callback_function_stat_inv_sum): Ditto.  Also fix error case.
	(gnumeric_normdist): Simplify using dnorm.
	(gnumeric_gammadist): Use dgamma.

	* src/mathfunc.c (dgamma): New function from R.

1999-05-27  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added BETAINV() and CHITEST().  Added optional
 	parameters A and B to BETADIST().  Implemented non-cumulative case
 	of NORMDIST().  Implemented cumulative case of POISSON().  Fixed
 	CHIDIST(), CHIINV(), FDIST(), FINV(), and TDIST() to return the
 	complement of the probablity.  It looks like TINV() is still
 	broken after file restructurations.

1999-05-26  Morten Welinder  <terra@diku.dk>

	* src/sheet-view.h: Include fix.

	* src/style.h: Include fix.

	* src/symbol.c (symbol_table_new): Use gnumeric_strcase_equal and
 	gnumeric_strcase_hash.
	(g_strcase_equal): Delete.
	(g_strcase_hash): Delete.

	* src/eval.c (dependency_equal): Constify.

	* src/sheet.c (cell_hash): Constify.
	(cell_compare): Ditto.
	(CRsort): Ditto.

1999-05-26  Michael Meeks  <michael@imaginator.com>

	* src/file.c (file_saver_is_default_format): Fixed bug causing
	incorrect format to be displayed.
	(fill_save_menu): Wait until we have populated the option menu
	before setting the current item.
	(make_format_chooser): Move some code into file_save_menu.

	* src/xml-io.c (writeXmlSheetTo): Removed,
	(writeXmlWorkbook): Use the order workbook_sheets list.

	* src/workbook.c (cb_workbook_sheets): Commented out
	(workbook_sheets): Get sheets in order from notebook tabs.

1999-05-25  Morten Welinder  <terra@diku.dk>

	* src/mathfunc.c, src/mathfunc.h: New files, mostly taken from the
 	R package.  (It's a GPL'ed gold mine.)

	* src/*.c: Use <math.h>, not "math.h".

	* src/utils.c (random_normal): Use qnorm, not inv_phi.

	* src/fn-stat.c: Move all R code to mathfunc.c
	Change all uses to phi to pnorm.
	(gnumeric_normsinv): Use qnorm.
	(gnumeric_confidence): Use qnorm.
	(normsinv): Superseded by qnorm.
	(help_lognormdist): Fix.
	(gnumeric_lognormdist): Fix domain.
	(gnumeric_lognormdist): Use plnorm.
	(gnumeric_loginv): Use qlnorm.
	(gnumeric_norminv): Use qnorm.
	(gnumeric_tinv): Use qt.
	(gnumeric_fdist): Use qf.
	(gnumeric_gammainv): Use qgamma.
	(gnumeric_chiinv): Use qchisq.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add mathfunc.c and
 	mathfunc.h.

1999-05-25  Morten Welinder  <terra@diku.dk>

	* src/fn-string.c (gnumeric_code): Handle compilers for which the
 	"char" type is signed.

	* src/utils.c (parse_cell_name): Don't use isalpha which is
 	subject to locale.  (So is toupper, but the effects are ok.)
	Move bounds check to handle overflow also.
	(col_from_name): Don't use isalpha.

	* src/fn-stat.c: Eliminate fmin2 and fmax2.

	* src/fn-math.c (gnumeric_randbetween): Use random_01.
	(gnumeric_rand): Ditto.

	* src/utils.c (random_01): Function moved from goal-seek.c and
 	improved.
	(random_normal): Function moved from goal-seek.c.

	* configure.in: Check for a few ways of getting random numbers.

1999-05-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (workbook_save_as): Handle the window closing by the
	window manager here.
	(dialog_query_load_file): And here.

	* src/dialog-zoom.c (dialog_zoom): Handle window manager close
	here (it comes in the form of return value being NULL).
	
	* src/dialog-insert-cells.c (dialog_insert_cells): ditto.

	* src/dialog-delete-cells.c (dialog_delete_cells): ditto.

1999-05-24  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_fixup_references): Set formula
 	directly, not via text strings.  (This actually fixes a bug with
 	insertion of columns/rows where we modify the cells before we
 	restructure the sheet.)  It's much faster and cleaner too.
	(workbook_invalidate_references): Ditto.

1999-05-23  Morten Welinder  <terra@diku.dk>

	* src/gnumeric-sheet.c (gnumeric_sheet_cursor_set): Make the
 	scroll bar reflect the top-left corner's position.  This feels
 	more natural.
	(gnumeric_sheet_set_top_col): Compute visible ranges; do nothing
 	until things change.
	(gnumeric_sheet_set_top_row): Ditto.

	* src/dialog-goal-seek.c (gnumeric_goal_seek): Use
 	goal_seek_initialise.
	(gnumeric_goal_seek): Trawl heavier and earlier in the middle.
	(dialog_goal_seek): downcase a stray uppercase letter.

	* src/goal-seek.c (goal_seek_initialise): New function.

1999-05-23  Morten Welinder  <terra@diku.dk>

	* src/dialog-goal-seek.c: redesign non-gui part.
	(dialog_goal_seek): Added entries for xmin and xmax.

	* src/goal-seek.h: New file.

	* src/goal-seek.c: New file.

	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add goal-seek.c and
 	goal-seek.h.

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/fn-financial.c (gnumeric_pv): Revert last chance.  (Bogosity
 	is in me.)

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_selection_to_string): Delete unused variable
 	"assembler".

	* src/sheet-view.c (horizontal_scroll_event): Delete unused
 	variable "distance".
	(vertical_scroll_event): Delete unused variable "distance".

	* src/sheet-object.c (control_point_handle_event): Delete unused
 	variables "ll" and "object_item".

	* src/widget-editable-label.c (editable_label_set_text): Delete
 	unused variable "item_text".

	* src/fn-string.c (gnumeric_replace): Delete unused variable "p".

	* src/fn-eng.c (get_real_and_imaginary): Delete unused variables
 	"i" and "buf".

	* src/sheet-object-graphic.c (sheet_object_filled_update): Delete
 	unused variables "x1", "x2", "y1", and "y2".

	* src/fn-stat.c (gnumeric_harmean): Delete unused variable "ans".
	(gnumeric_geomean): Delete unused variable "ans".
	(gnumeric_avedev): Delete unused variable "ans".
	(gnumeric_large): Delete unused variable "count".
	(gnumeric_small): Delete unused variable "count".

	* src/parser.y (make_string_return): Delete unused variable "type".

	* src/workbook.c (cb_sheet_check_dirty): Delete unused variable
 	"f".
	(workbook_focus_sheet): Delete unused variable "sheet_view".
	(workbook_selection_to_string): Delete unused variable "str".

	* src/fn-date.c (gnumeric_datevalue): Delete unused variables
 	"year", "month", and "day".
	(gnumeric_edate): Delete unused variables "year", "month", and
 	"day".

	* src/dialog-cell-format.c (apply_coloring_format): Delete unused
 	variable "cl".

	* src/dialog-solver.c: Delete unused variable "paste_types".

	* src/xml-io.c (xmlGetFloatValue): Delete unused variable "child".
	(xmlGetDoubleValue): Delete unused variable "child".
	(xmlGetCoordinate): Delete unused variable "child".
	(xmlGetGnomeCanvasPoints): Delete unused variable "child".
	(xmlGetColorValue): Delete unused variable "child".
	(xmlGetCoordinates): Delete unused variable "child".
 	(xmlGetCoordinates): Delete unused variables "X1", "Y1", "X2", and
 	"Y2".

	* src/sheet-object-graphic.c (sheet_object_graphic_update): Delete
 	unused variable "sog".

	* src/cell.c (cell_set_value_simple): Delete unused variable "lconv".
	(cell_set_text_simple): Delete unused variable "lconv".
	(cell_draw): Delete unused variable "white_gc".
	(cell_get_text): Delete unused variable "sheet".

	* src/ranges.c (range_list_parse): Delete unused variable "range".
	(range_set_style): Delete unused variables "col" and "row".

	* src/dialog-solver.c (dialog_solver_options): Delete unused
 	variable "button".

	* src/eval.c (search_cell_deps): Delete unused variables "inters"
 	and "nointers".

	* src/dialog-cell-sort.c (dialog_cell_sort): Delete unused
 	variable "txt".

	* src/fn-database.c (find_cells_that_match): Delete unused
 	variable "new_item".

	* src/func.c (function_iterate_do_value): Delete unused variable
 	"list".

	* src/fn-lookup.c (gnumeric_lookup): Delete unused variables "v1"
 	and "ans".
	(lookup_functions): Use correct help variable
 	for "columns".

	* src/dialog-function-select.c (function_select_create): Delete
 	unused variable "hadj".

	* src/main.c (gnumeric_main): Delete unused variable.

	* src/dialog-function-wizard.c (function_type_input): Remove
 	unused variable.
	(get_text_value): Ditto.
	(arg_data_list_destroy): Comment out -- not used.

	* src/fn-financial.c (gnumeric_pv): Fix sign error.  Something is
 	entirely bogus in this file.

	* src/ranges.h: Fix includes.

	* src/pattern-selector.h (PATTERN_SELECTOR_CLASS): Bogosity fixed;
 	macro not used, though.

	* src/workbook.c (sheet_action_delete_sheet): Grammar fix.

	* src/sheet.c (sheet_verify_selection_simple): Grammar fix.

	* src/file.c (file_priority_sort): Constify.
	(file_format_register_open): Make description parameter const.
	(file_format_register_save): Ditto.
	(file_format_unregister_open): Plug leak.
	(file_format_unregister_save): Ditto.
	(workbook_save_as): Grammar fix.

	* src/about.c (dialog_about): Fix URL.

1999-05-22  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_set_text): Use General format for all numbers
 	in standard format.  (In particular, don't create a sticky "0" format
	whenever an integer is entered.)

	* src/format.c (format_number): Constify.
	(append_minute): Ditto.
	(append_day): Ditto.
	(append_hour): Ditto.
	(append_month): Ditto.
	(append_year): Ditto.
	(append_second): Ditto.
	(check_valid): Ditto.
	(append_half): Ditto.
	(lookup_color): Ditto.
	(render_number): Ditto.
	(format_value): Ditto.

	* src/expr.c (do_expr_decode_tree): Handle negative numbers, just
 	in case.

1999-05-21  Morten Welinder  <terra@diku.dk>

	* src/sheet-autofill.c (autofill_cell): Add FIXME.

	* src/sheet.h (IS_SHEET): Remove cast.

	* src/expr.h: Delete expr_tree_relocate.

	* src/expr.c (fixup_calc_new_cellref): New function.
	(do_expr_tree_fixup_references): Simplify using
 	fixup_calc_new_cellref.
	(do_expr_tree_relocate): Delete.
	(expr_tree_relocate): Delete.

	* src/sheet.c (sheet_cell_formula_link): Add debug code.
	(sheet_insert_col, sheet_delete_col, sheet_insert_row,
 	sheet_delete_row): Do fixups early.

	* src/cell.c (cell_relocate): Don't relocate cell -- fixup handles
 	all that is needed.

	* src/color.c (gs_white, gs_black, gs_light_gray, gs_dark_gray,
 	gs_red): Moved from src/gnumeric-sheet.c.
	(gnumeric_color_context): make static.

1999-05-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: PERCENTRANK() added.

	* src/func.[ch]: function_iterate_do_value made public.

1999-05-21  Morten Welinder  <terra@diku.dk>

	* configure.in: use AC_CHECK_HEADERS, not AC_CHECK_HEADER for the
 	benefit of autoheader.

1999-05-19  Michael Meeks  <michael@imaginator.com>

	* src/fn-stat.c: Added 'static' to new non-global functions.

	* src/cell.c (cell_set_formula_tree_simple): Added
	missing sheet_cell_formula_unlink.

1999-05-19  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: SERIESSUM(), SUBTOTAL() and SUMA() added.

	* src/fn-stat.c: SLOPE(), AVERAGEA(), MAXA(), MINA(), STDEVA(),
 	STDEVPA(), VARA(), and VARPA() added.

	* src/fn-stat.c (gnumeric_counta, gnumeric_min, gnumeric_max,
 	gnumeric_stdev, gnumeric_stdevp, gnumeric_var, gnumeric_varp):
 	made public (used also in src/fn-math.c for now on).

1999-05-19  Michael Meeks  <michael@imaginator.com>

	* CHANGES: copied to web and blanked.

1999-05-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-args.c (gnumeric_arg_parse): Initialize as a server.
	Thanks to Elliot for fixing this one.

1999-05-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/utils.c (parse_cell_name): Return false if the cell name is
	outside the boundaries of the spreadsheet.

	* src/corba-sheet.c (Sheet_range_set_text): Implement.
	(Sheet_range_set_formula): Implement.
	(Sheet_range_set_format): Implement.

	* src/ranges.c (range_parse, range_list_parse, range_list_destroy,
	range_list_foreach_full, range_list_foreach_all,
	range_list_foreach, range_set_style): New functions.  Used by the
	corba-sheet code.

	* src/corba-sheet.c (Sheet_range_get_values): Implement
	vector-based result return.

	* src/xml-io.c (xmlSetGnomeCanvasPoints): use g_malloc instead of alloc.

	* src/dialog-solver.c (constr_add_click): Use g_malloc instead of
	alloc.  Use g_new instead of malloc.

	* src/utils.c (parse_cell_name_list): Add parameter checking.  Use Migueestyle.

1999-05-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (Workbook_corba_class_init): Make it work
	with the new bonobo.

1999-05-16  Raja R Harinath  <harinath@cs.umn.edu>

	* src/Gnumeric.idl: Revert the following checkin:
	1999-05-13  Kjartan Maraas  <kmaraas@online.no>.
	`gnome-object.idl' is part of `bonobo'.

1999-05-16  Morten Welinder  <terra@diku.dk>

	* src/expr.c (do_expr_tree_relocate): Change to use lazy copying
 	scheme -- this should improve sharing.  (Until someone saves and
	reloads, of course.  More about that at a later time.)
	(expr_tree_invalidate_references): Quiet.
	(expr_tree_fixup_references): Quiet.

	* src/cell.c (cell_relocate): Only update if changed.

	* src/expr.c (evaluate_level): Deleted.
	(bigger_prec): Deleted.
	(do_expr_decode_tree): Handle left/right associativity.

	* src/cell.c (cell_set_text_simple): Simplify value parsing.

	* src/dialog-goal-seek.c (test_cell_with_value): Cast to double,
 	not float.

1999-05-16  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (cb_assemble_selection): Add 'char *sel'
	and change "," -> ','
	(workbook_selection_to_string): Add 'char *result'
	Fix incorrect pointer dereference.

	* src/sheet.c (reference_append): Fix appended strings to
	characters.
	(sheet_selection_to_string): Add missing GList pointer
	'selections'. Changes ":" -> ':', rename res to 'info->result'

1999-05-15  Heath Martin <martinh@pegasus.cc.ucf.edu>

	* src/gnumeric-sheet.c (gnumeric_sheet_compute_visible_ranges):
	Small cut and paste fix.  Use row here instead of col.

1999-05-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* configure.in (ALL_LINGUAS): Added slovak language.

1999-05-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_selection_to_string): New routine.  Returns a
	string representation of the current selection.

	* src/workbook.c (workbook_selection_to_string): New routine.
	Retunrs a string representation of the current selection.

1999-05-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (corba_sheet): Fix.

1999-05-16  Michael Meeks  <michael@imaginator.com>

	* CHANGES: Added to ease burdern of creating accurate descriptions
	between versions.

1999-05-15  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* samples/statfuns.xls: Added a new file.  It can be used for
 	regression testing.  It is in Excel format so it tests the Excel
 	plugin's functionality in the same time too.

1999-05-15  Michael Meeks  <michael@imaginator.com>

	* src/file.c (file_format_register_save): Changed to append
	new types; works round bug in selection.

	* src/expr.c (eval_cell_value): Fix sillyness of top left
	corner stuff.

	* src/expr.h: Added const to value_dump

	* src/parser.y (value_dump): Fixed array problem.
	Added const to parameter.

1999-05-15  Michael Meeks  <michael@imaginator.com>

	* src/parser.c (value_dump): Updated Arrays, to use Value *

	* src/func.c (function_iterate_do_value): same.

	* src/fn-sheet.c (gnumeric_selection): same.

	* src/eval.c (add_value_deps): same.

	* src/expr.c (value_get_as_string): Major re-work of ARRAY
	conversion.
	(value_array_set): Fix rather embarassing bug in assertions.
	(eval_cell_value): Return top left corner of array, seems to be
	what excel does.
	(value_release, value_array_set, value_array_new),
	(value_array_copy_to, value_array_resize):
	Updated value->v.array to Value *'s saves much hassle !

1999-05-14  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (value_area_get_width, value_area_get_height):
	Clip to sheet bounds if CELLRANGE: Massive speedup on some
	lookups.

	* src/expr.h: Added value_zero

	* src/func.c (constants_init): Added a 'value_zero' constant
	to kill leak in out-of-range / NULL cell cases in value_get_at_x_y

1999-05-14  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added LCM().

1999-05-13  Kjartan Maraas  <kmaraas@online.no>

	* src/Gnumeric.idl: s/#include <gnome-object.idl>/
	  #include <GnomeObject.idl>, to make it compile.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/Gnumeric-impl.c: Fixes killing this file by
	mistake.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/expr.h: Updated all prototypes.

	* *.c:
	s/\<value_float *(/value_new_float (/g
	s/\<value_int *(/value_new_int (/g
	s/\<value_str *(/value_new_string (/g
	s/\<value_string *(/value_get_as_string (/g
	s/\<value_cellrange *(/value_new_cellrange (/g
	s/\<value_get_as_double *(/value_get_as_float (/g
	s/\<value_get_bool *(/value_get_as_bool (/g

	* src/expr.c: Moved all pertainant Value functions to the
	same place to aid possible splitting.

1999-05-13  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (value_area_get_at_x_y): Added warning
	in safety case.

	* src/fn-lookup.c (gnumeric_lookup): Implemented.

	* src/func.h: Updated critera_test_fun_t: returns int,
	should really be gboolean ?

	* src/expr.h: Added prototype & indentation beautified.

	* src/expr.c (value_array_set): Helper function added.

1999-05-13  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added GCD().

1999-05-12  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (workbook_setup_edit_area): Added dependancy
	debugging button for --debug=10 and fixed memory leak.
	(deps_output): Dumps dependency data to stdout.

	* src/gnumeric-util.c (range_contains): Re-order compares
	to catch single cell ranges more quickly.

	* src/eval.c (intersects): Change order of sheet / range check
	for speed.
	(search_cell_deps): Added comment.

	* src/eval.h: Cosmetic typo. fix shet -> sheet

1999-05-12  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: Database functions accept now string
 	criterias too.  In addition, the parsing of criterias and the test
 	functions are now public (src/fn-math.c uses these for now on).

	* src/func.h: Added type definitions and function prototypes for
 	internal functions that parse and test criterias.

	* src/fn-math.c: Added LN().  Changed LOG() to take an optional
 	second parameter.  LOG() returns the logarithm in base 10 if the
 	optional argument is not given, otherwise it returns the logarithm
 	in the given base.

	* src/fn-math.c: Added COUNTIF() and SUMIF().

	* src/fn-eng.c: Added IMLOG10() and IMLOG2().

	* src/fn-eng.c (complex_ln): Fixed a bug.  Imaginary coefficient
	was calculated incorrectly.

1999-05-11  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added CONVERT().  All translations should work.
  	Also get_real_and_imaginary() fixed (complex numbers should now
 	work completely).

1999-05-10  Michael Meeks  <michael@imaginator.com>

	* src/sheet.h: Added workbook_focus_sheet.

	* src/workbook.c (workbook_focus_sheet): Added.

1999-05-10  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added IMARGUMENT(), IMCONJUGATE(), IMCOS(),
 	IMDIV(), IMEXP(), IMLN(), IMPOWER(), IMPRODUCT(), IMSIN(),
 	IMSQRT(), IMSUB(), and IMSUM().

1999-05-08  Michael Meeks  <michael@imaginator.com>

	* web/index.html: Fix sillyness in references.

	* web/gnumeric-0.25: Remove HTML tags...

1999-05-08  Michael Meeks  <michael@imaginator.com>

	* src/Makefile.am (gnumeric_LDADD): Added libole2 library.

	* configure.in (XML_CFLAGS): Updated to add excel/libole2

	* src/sheet.h: Commented sheet_cell_get vs. _fetch.

	* src/expr.c (do_expr_tree_unref, value_string, value_release),
	(eval_cell_value, do_expr_tree_invalidate_references):
	Clean: Added 'default' cases with warnings.
	(value_get_as_double, value_get_as_int, value_get_bool): Changed
	to safer / faster switch statement from if.

1999-05-07  Michael Meeks  <michael@imaginator.com>

	* src/corba-workbook.c (corba_sheet): Add CORBA_Environment
	parameter, needed for Object_dupicate...
	(Workbook_sheet_new, Workbook_sheet_lookup),
	(Workbook_sheet_current): Updated corba_sheet's args.

	* src/fn-lookup.c: Fixed choose help.

1999-05-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (corba_sheet): Duplicate the object before
	returning to ORBit.

1999-05-07  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-eng.c: Added COMPLEX(), IMABS(), IMAGINARY(), IMREAL().
  	Also added an internal function get_real_and_imaginary() which
 	still needs to be improved.

	* src/fn-math.c: Added MROUND() and ROMAN().  ROMAN() currently
 	supports only type 0 (classic).

1999-05-07  Heath Martin  <martinh@pegasus.cc.ucf.edu>

	* src/expr.c (expr_tree_invalidate_references): Add extra argument
 	for the sheet we are changing.  All callers changed.
	(expr_tree_fixup_references): Ditto.

1999-05-06  Morten Welinder  <terra@diku.dk>

	* src/eval.c (cell_queue_recalc): Don't re-queue cell.
	(cell_queue_recalc_list): Don't re-queue cells.  (Because it is
 	wasteful and because unqueue then won't work right.)

	* src/fn-lookup.c (gnumeric_column): Fix leak.
	(gnumeric_row): Fix leak.
	(gnumeric_choose): Fix leak.
	(lookup_similar): Fix leaks.

	* src/xml-io.c (xml_probe): Fix leak.
	(xmlGetValue): Fix *HUGE* leak.
	(readXmlStyle): Fix leaks.
	(readXmlSheet): Fix leaks.
	(createXmlSheet): Fix leak.
	(readXmlCell): Move the freeze, just in case.

	* src/fn-lookup.c (gnumeric_choose): Remove (incorrect) arg check.

	* src/cell.c (cell_copy): Properly handle render_color member.
  	Clear the CELL_QUEUED_FOR_RECALC flag.
	(cell_destroy): Add code to make it painfully clear when members
 	of freed cells are accessed.

1999-05-06  Michael Meeks  <michael@imaginator.com>

	* src/cell.h: Added deep freeze prototypes.

	* src/cell.c (cell_deep_freeze_redraws): Added
	(cell_deep_thaw_redraws): Added,
	(cell_queue_redraw): Updated to use deep_freeze
	effectively ignore redraw requests.

	* src/xml-io.c (readXmlCell): Added deep freeze/thaw
	redraws for clean and easy speedup.

1999-05-06  Michael Meeks  <michael@imaginator.com>

	* src/workbook.c: Moved 'Sort' to the tools menu.

	* HACKING: Pedantic clean.

1999-05-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-date.c: Added EDATE().

1999-05-06  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-date.c: Added DATEVALUE().

1999-05-05  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c (parse_criteria): If a condition contains
	just a number, it is an equality condition.

1999-05-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* configure.in: Laptop does not have resources.  Make guile
	optional until at least.

	* src: Now we only support two modes: Gnumeric and
	Gnumeric-Bonobo.  The later includes all of the CORBA support,
	there is no longer a non-Bonobo CORBA version.

	* src/corba-workbook.c, src/corba-sheet.c, src/workbook-factory.c:
	New files that support the Gnumeric CORBA interfaces.

1999-05-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c (WorkbookFactory_init): Add workbook
	factory servant initialization.

1999-05-04  Morten Welinder  <terra@diku.dk>

	* src/eval.c (dependency_remove_cell): Remove unused assignment.
	(cell_queue_recalc_list): Mark queued cells as being so.

	* src/fn-math.c (gnumeric_combin): Clean up.
	(combin): Handle large numbers carefully.

	* src/utils.c (january_1900): Fix argument list.

	* src/fn-stat.c (gnumeric_var): Remove unused variable.
	(gnumeric_varp): Ditto.

1999-05-04  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math: Added ROUND().

	* src/fn-information: Added new file for information functions.
	New function COUNTBLANK() implemented.

	* src/Makefile.am, src/func.[ch]: Added `fn-information.c'.

1999-05-04  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: Added DCOUNTA().

	* src/fn-stat.c: Added argument count checks for VAR() and VARP().
	Added STEYX().

1999-05-03  Morten Welinder  <terra@diku.dk>

	* src/format.c (split_time): Fix leak.

	* src/parser.y (forget): Fix leak.

	* src/expr.c (do_expr_tree_ref): Delete.
	(expr_tree_ref): Just increase the ref-count.
	(do_expr_tree_unref): Properly decrease all the way.
	(expr_tree_new): Fix prototype.
	(value_release): Add "break".
	(value_cellrange): Make args const.  Don't use memcpy call.

	* src/parser.y (v_new): Fix type.
	(alloc_register): Ditto.
	(dump_tree): Fix reference to variable cell.

	* src/file.c (file_format_unregister_save): Fix leak.
	(file_format_unregister_open): Fix leak.

	* src/parser.y (forget): Fix leak.

	* src/eval.c (add_tree_deps): Use OPER_ANY_BINARY.
	(add_value_deps): Delete unused variable.
	(dependency_remove_cell): Fix leak.

	* src/sheet.c (sheet_destroy_styles): Leak fix.  Late night
 	coding?  :-)
	(sheet_shift_row): Ditto.

	* src/parser.y (alloc_clean): Ditto.
	(alloc_list_free): Ditto.

	* src/main.c (gnumeric_main): Get rid of memory leak debug code
 	(handled by other means now).

	* src/cell.c (cell_set_value): Remove "const".
	(cell_set_value_simple): Ditto.

1999-05-03  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-database.c: New file added for database
 	functions. Implemented DAVERAGE(), DCOUNT(), DGET(), DMAX(),
 	DMIN(), DPRODUCT(), DSTDEV(), DSTDEVP(), DSUM(), DVAR(), and
 	DVARP().

	* src/func.c: Added registeration of database functions.

	* src/fn-stat.c, src/func.h: callback_function_stat made public.

1999-05-02  Michael Meeks  <michael@imaginator.com>

	* src/expr.h: Spelling fix 'substract' :-)

	* src/expr.c (expr_tree_new): Added for convenience.

1999-05-02  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_value): Created.
	(cell_set_value_simple): Created.

	* src/cell.h: Added headers

1999-05-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-workbook.c, src/corba-sheet.c: New files implementing
	most of the new Gnumeric.idl interface.

	* src/Gnumeric.idl: Make it useful.

1999-04-30  Morten Welinder  <terra@diku.dk>

	* src/*.h: Properly forward-declare structures.  Include
 	dependencies.  Change the occasional "void *" to its right
	type.

	* src/*.[cy]: Include more dependencies.

	* src/sheet.c (sheet_delete_row): Remove from workbook hash also.

1999-04-29  Morten Welinder  <terra@diku.dk>

	* src/expr.c (expr_tree_fixup_references): Implement.

	* src/sheet.c (sheet_delete_row, sheet_delete_col): Fixup
 	references.

	* src/expr.c (do_expr_tree_relocate): Remove strange and incorrect
 	refcount fiddling.

	* src/workbook.c (workbook_fixup_references,
 	workbook_invalidate_references): Fix cell walking.

	* src/expr.c (do_expr_decode_tree): rename binary_operation_names
	to operation_names and fill in the rest.

	* src/fn-misc.c (gnumeric_error): New function.

	* src/expr.c (value_str): Constify.
	(expr_tree_invalidate_references): Mostly implement.

	* src/fn-math.c (gnumeric_multinomial, gnumeric_product,
 	gnumeric_sumsq): Fix type.

	* src/expr.h (OPER_ANY_BINARY, OPER_ANY_UNARY): new convenience
 	macros.
	(struct _Sheet): declare forward reference so we can use the right
 	types.
	(CellRef, FunctionDefinition, expr_parse_string, expr_decode_tree,
 	eval_expr): use "struct _Sheet *".

	* src/workbook.c (workbook_do_destroy): Carefully clean workbook
 	before deleting sheets.  Do things in the standard way.  Get rid
 	of clipboard leak.
	(insert_cols_cmd): Fix name string.
	(workbook_detach_sheet): New parameter "force".  All callers
 	changed.
	(workbook_fixup_references, workbook_invalidate_references,
 	workbook_sheets): New functions.

	* src/sheet.c (sheet_verify_selection_simple): Mark strings for
 	translation.
	(sheet_insert_col): Fixup references to moved cells.
	(sheet_delete_col, sheet_delete_row): Invalidate references to
 	deleted cells.

	* src/sheet-autofill.c (fill_item_new): Fix copying of cell with
	error.

	* src/parser.y (yylex): "const" fixes.
	(gnumeric_expr_parser): New function (to fix memory corruption and
 	leaks).

	* src/fn-stat.c (i1mach): Make static.
	(gnumeric_var, gnumeric_varp, gnumeric_stdev, gnumeric_stdevp,
 	gnumeric_rank, gnumeric_trimmean, gnumeric_covar, gnumeric_correl,
 	gnumeric_mode, gnumeric_harmean, gnumeric_geomean, gnumeric_count,
 	gnumeric_counta, gnumeric_average, gnumeric_min, gnumeric_max,
 	gnumeric_skew, gnumeric_kurt, gnumeric_avedev, gnumeric_devsq,
 	gnumeric_pearson, gnumeric_rsq, gnumeric_median, gnumeric_large,
 	gnumeric_small, gnumeric_ztest): Fix type.

	* src/fn-math.c (gnumeric_fact, gnumeric_combin): Mark strings for
 	translation.
	(gnumeric_sum, gnumeric_trunc): Fix type.

	* src/fn-lookup.c (gnumeric_choose, gnumeric_column,
 	gnumeric_row): Fix type.

	* src/fn-misc.c (gnumeric_iserror): Fix type.

	* src/fn-sheet.c (gnumeric_selection): Fix type.

	* src/fn-string.c (gnumeric_concatenate): Fix type.

	* src/fn-logical.c (gnumeric_and, gnumeric_not, gnumeric_or,
 	gnumeric_if): Fix type.

	* src/fn-financial.c (gnumeric_npv): Fix type.

	* src/expr.c (expr_parse_string): Move in part to parser.y.
  	Delete global variables to communicate.
	(do_expr_tree_ref, do_expr_tree_unref, do_expr_decode_tree,
 	do_expr_tree_relocate): use OPER_ANY_BINARY and OPER_ANY_UNARY.
	(function_call_with_values): Mark strings for translation.
	(eval_expr, do_expr_decode_tree, expr_decode_tree): Fix type to
 	use "Sheet *" instead of "void *".
	(do_expr_decode_tree): Free sum.
	(expr_tree_invalidate_references, expr_tree_fixup_references): New
 	functions.  Not implemented yet.

	* src/cell.c (cell_set_formula): "const" fix.
	(cell_copy): Ref entered_string also if it exists.
	(cell_relocate): Unlink cell from workbook list of cells.

	* src/about.c (dialog_about): Add myself.  Update copyright.

1999-04-29  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-{math,sheet,logical}.c, src/func.[ch]: Moved logical
 	functions into a new file.

	* src/fn-math.c: Added ROUNDDOWN(), ROUNDUP(), SUMX2MY2(),
 	SUMX2PY2(), and SUMXMY2().

	* src/fn-stat.c: Added PROB(). CONFIDENCE() should now work fully.

1999-04-28  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added COUNTA(), FINV(), and TINV().

	* src/fn-stat.c, src/fn-math.c: AVERAGE(), COUNT(), MAX(), and
	MIN() moved from fn-math.c to fn-stat.c.  They are in the
	statistical function group in Excel.

1999-04-27  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added BETADIST(), FDIST(), and TDIST().

1999-04-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/eval.c (intersects): Typo fix.  Sheet was being assigned
	instead of being tested for equality.  This got Michael to crash
	Gnumeric (as there was no test for can_remove)

1999-04-26  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added CHIDIST(), CHIINV(), and GAMMAINV().

Sat Apr 24 14:39:32 1999  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_selection_reset_only): Remove useless
 	initialisation.  Don't free individual selections here.

	(sheet_selections_free): Walk the list of selections and free each
 	one.

	(sheet_get_selection_name): Calculate buffer size based on the
 	size of an int.

	* src/fn-eng.c: Remove sqrtpi function -- it's already in fn-math.c

	* src/fn-math.c (gnumeric_sqrtpi): Add range check.

	* src/symbol.c (symbol_install): Add sanity check.

Fri Apr 23 17:52:44 1999  Morten Welinder  <terra@diku.dk>

	* src/sheet.c (sheet_destroy): Don't check that workbook is
	NULL because it cb_sheet_do_destroy will call it non-NULL.

	* src/workbook.c (cb_sheet_do_destroy): Don't NULL workbook
	member as it will be used.

	* src/format.c (render_number): Fix rounding up.

	* src/*.[chy]: add tons on "const"s.

1999-04-23  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added GAMMADIST() function.  It uses pgamma()
 	function written by Ross Ihaka.  Thanks to Morten for pointing
 	this piece of code.

1999-04-21  Morten Welinder  <terra@diku.dk>

	* src/workbook.c (workbook_do_destroy): Release the sheets and the
	hash table that held the references to the sheets.

	* src/func.c: warning fix.

1999-04-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/widget-editable-label.c (el_button_press_event): Add type
	cast to kill warning.

	* src/format.c: Include ieeefp.h if required.

1999-04-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-string.c: Close parentheses in help_stubstitute function
	descritpion.   Thanks to Aldy Hernandez for pointing this out.

1999-04-19  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-goal-seek.c: Goal seek tool implemented.  Goal seek
 	should now find a solution for all linear problems (if there is
 	one).  A simple non-linear search algorithm also implemented.

	* src/workbook.c: Made 'Goal seek' menu entry visible.

	* src/fn-math.c: Added MULTINOMIAL(), PRODUCT(), SIGN(), SUMSQ(),
 	and SQRTPI().

1999-04-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/func.c (iterate_cellrange_callback): Eval the cell here if
	it has not yet been evaluated.

Sun Apr 18 17:59:09 EDT 1999 Gregory McLean <gregm@comstar.net>

	* gnumeric.spec.in: Updated and enhanced spec file. Tastes even
	better and is less filling to boot!

1999-04-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object-container.c (make_container_item): New
	routine.
	(sheet_object_container_land): Used to convert from the temporary
	widgets to the view provided by Bonobo.

1999-04-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (value_array_resize): Fix typo bug I introduced.

	* src/eval.c (cell_queue_recalc): When queuing for recalc, tag the
	cell, so that if we remove the cell from the recalc list we can
	quickly find out if we have to look for it on the list of pending
	recomputations.
	(pick_next_cell_from_queue): Clear the cell's
	CELL_QUEUED_FOR_RECALC bit.
	(cell_unqueue_from_recalc): New routine to remove a cell queued
	for recomputation.

	* src/clipboard.c (new_node): Trim leading spaces.

1999-04-16  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: Added EVEN, FACTDOUBLE, ODD, QUOTIENT, and
	RANDBETWEEN.

	* src/fn-stat.c: Added LOGINV, NORMINV, NORMSINV, RSQ, and ZTEST
 	functions.

1999-04-15  Michael Meeks  <michael@edenproject.org>

	* src/parser.y (value_dump): Added CellRange support

	* src/fn-lookup.c (gnumeric_offset): Implemented OFFSET.

	* src/expr.c (value_cellrange): Created.
	(eval_funcall): Major hack to allow auto-conversion
	of cell references to cell ranges on the fly.

	* src/expr.h: Added value_cellrange.

1999-04-15  Michael Meeks  <michael@edenproject.org>

	(gnumeric_choose): CHOOSE function implemented.

1999-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_destroy): No longer destroys the Bonobo
	objects here.

	* src/sheet.h (Sheet): No longer keeps track of the ClientSites
	here.

	* src/sheet-object.c (sheet_finish_object_creation): Invoke new
	class method to signal finalization of object creation.

	* src/sheet-object-container.c, src/sheet-object-container.h: New
	files that implement the Bonobo ClientSites
	(SheetObjectContainers).

	* src/Makefile.am (gnumeric_bonobo_SOURCES): Sources for Bonobo
	compilation.

	* src/sheet-object.c (sheet_object_construct): Create the bounding
	box points here.
	(sheet_set_mode_type): Fix from my previous reorganization:  Only
	stop editing mode if the mode is SHEET_MODE_SHEET.
	(sheet_button_press): Strategy change: now we accept
	sheet->current_object and we stop editing here the object.

	* src/sheet-object.h: points has been renamed to bbox_points.

	* src/sheet-object-graphic.c (sheet_object_filled_realize):
	Simplified this routine.  Also, we now update the bounding box
	here.

1999-04-15  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>

	* src/fn-lookup.c: Silly bug in types fixed.

	* src/expr.c (eval_funcall): Made cellrefs absolute.

	* src/cell.c (cell_set_text_simple): Fix for 1.234E-07

1999-04-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c: Converted SheetObject to a Gtk+ object.
	Splitted the functionality of the SheetObject into classes:
	SheetObject abstract class;  SheetObjectGraphic for simple drawings;
	SheetObjectFilled for objects that have a fill attribute.

	* src/sheet-object-graphic.c: Implement the SheetObjectGraphic and
	SheetObjectFilled objects.

1999-04-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (xml_probe): Do not crash if the file is a broken
	XML file.

1999-04-13  Zbigniew Chyla <cyba@t19.ds.pwr.wroc.pl>

	* src/workbook.c: using 'gnome_dialog_run_and_close' instead of
	'gnome_dialog_run' (which _may_ destroy dialog widget - we don't have to
	check for this case).

1999-04-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/corba-args.c (gnumeric_arg_parse): Intiialize Bonobo.

	* configure.in: add test for Bonobo.

	* src/clipboard.c (x_selection_to_cell_region): Fixed the
	computation of columns in the paste code.

1999-04-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (insert_object_cmd): Add sample bonobo support.
	Still lacking an object server selector.

	* src/sheet.c (sheet_insert_object): Add Bonobo support.

	* src/sheet-view.c (sheet_view_insert_object): Add basic Bonobo
	support.  I need to reuse the SheetObject stuff to add control
	points to the objects and to handle repositioning.

1999-04-12 Michael Meeks  <michael@imaginator.com>

	* TODO: Removed basic functions section, most are done.

1999-04-11 Michael Meeks  <michael@imaginator.com>

	* src/dialog-function-select.c (function_select_row):
	Check event is valid before using it, remove redundant
	total redraw.
	(category_select_row): Fix.
	(function_select_create): Removed redundant call to
	duplicated (create_description): Removed.

	* src/fn-lookup.c: Actualy change the lookup function
	tokens to the correct values.

1998-04-09 Zbigniew Chyla <cyba@t19.ds.pwr.wroc.pl>

	* src/workbook.c: Creating auto_expr menu every time it is popped
        up instead of using one object all the time (and referencing to
        invalid workbook from "activate" signal handler).

        * src/item-grid.c: (item_grid_popup_menu): Fixed memory leak
        (gnumeric_popup_menu used instead of gtk_menu_popup).

1999-04-11 Michael Meeks  <michael@imaginator.com>

	* src/expr.c (eval_funccall): New array / 'area' tokens added,
	error strings simplified ( int type_mismatch added )
	(value_area_get_width, value_area_get_height): Implemented,
	(value_area_get_at_x_y): Implemented.
	(value_array_new, value_array_resize): Implemented.
	(value_release): Updated.
	(value_copy_to, value_array_copy_to): Updated, created.
	Added const to a scad of helper 'value_get' style functions.

	* src/expr.h: Value: Changed 'array' from GList to a
	structure.
	Added struct _Value for self reference.
	Added const to a scad of helper 'value_get' style functions.

	* src/func.c (function_iterate_do_value): Updated Array code.

	* src/eval.c (add_value_deps): Updated Array stuff.
	(add_value_deps): const added to Value *

	* src/dialog-function-wizard.c (function_type_input):
	Updated text for new tokens.

	* src/fn-sheet.c (gnumeric_selection): Update to new array code.

	* src/fn-lookup.c (columns, rows): Updated to clean new API.
	(vlookup, hlookup): Large clean.

	* src/parser.y (value_dump): Updated Array section.

	* docs/C/writing-functions.smgl: Added section explaining tokens,
	and new API.

1999-04-09 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_destroy): Move destruction of cell_hash to
	after destroy_styles.columns_and_rows that use it.
	NULL various pointers.
	(sheet_col_destroy): Added g_return_if_fail (ci)
	(sheet_duplicate_colrow): Merged into (sheet_row_new, sheet_col_new)
	and removed: nasty function.
	(sheet_destroy_columns_and_rows): Fix nasty bug using freed 'l'
	pointer ( freed by sheet_col_destroy / sheet_row_destroy ).
	NULL the pointers for safety.
	(sheet_col_destroy): NULL various pointers.

	* src/sheet.h (sheet_duplicate_colrow): Removed.

1999-04-08  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/dialog-solver.c, src/dialog-goal-seek.c, src/solver.h:
	Wrote dialogs for these tools. The tools are not implemented yet.

	* src/solver-lp.c:
	New file for linear programming methods created.

	* src/sheet.h:
	Added parameters for the Solver tool.

	* src/fn-stat.c (gnumeric_correl):
	Bug fixed.  If the covariance is zero the correlation coefficient
	should also be zero. Thanks for Vladimir for pointing this one out.

1999-04-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (xmlGetCoordinates): Include fix from Richard Hult:
	Seemed to be a cut and paste error.

	* src/cell.c (cell_destroy): From Morten Welinder: destroy the
	cell->value only if it does exist.

	* src/file.c (dialog_query_load_file): Set the accepted value to
	false initially.  Thanks for Morten for pointing this one out.

1999-04-06  Zbigniew Chyla <cyba@piast.t19.ds.pwr.wroc.pl>

	* src/workbook.c (workbook_new): Use the translated version of the
	function to display

1999-04-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Enable the function wizard only if the --debug
	flag was passed.

	* src/dialog-function-wizard.c, src/dialog-function-select.c:
	Adapt to the rest of Gnumeric coding style.

	Use a different way of creating the GUI and controlling the
	interactions.

	* src/func.c, src/func.h (function_iterate_do_value): Use my
	indentation and coding style here.

	* src/dialog-cell-format.c (render_formated_version): Handle the
	case where the value might be NULL.

	* src/xml-io.c (createXmlSheet): New function.  Used in an initial
	pass over the XML file to load all of the Sheets defined there.
	(readXmlWorkbook): Now this does two passes at loading the sheet:
	the first pass creates the sheets, the second pass actually loads
	the contents.

1999-04-06 Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (workbook_new): More sensible default
	size.

	* src/sheet.c (sheet_row_set_height): use sheet_row_new()
	instead of sheet_duplicate_colrow(), as we get duff span
	data otherwise ( not calling row_init_span )
	(sheet_col_set_width): Re-order, presumably fixing bug,
	and as for set_height.

1999-04-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (createXmlSheet): New function.  Used in an initial
	pass over the XML file to load all of the Sheets defined there.
	(readXmlWorkbook): Now this does two passes at loading the sheet:
	the first pass creates the sheets, the second pass actually loads
	the contents.

1999-04-06 Michael Meeks  <michael@imaginator.com>

	* src/func.c (tokenised_help_new): Improved algorithem.
	(functions_init): Made descriptions more verbose.

	* src/workbook.c (wizard_input): Cleaned to use local
	entry instead of specific wb->ea_input.

	* src/dialog-function-wizard.c (function_type_input):
	Update types, add recursive function button.
	(function_input): Created.
	(arg_data_list_new): Added wb to ARG_DATA, needed for
	function_input.
	Added default code for multi-arg functions.
	Deals with no-argument functions properly,
	Fix silly args=NULL g_free(args) bug.
	(dialog_function_wizard): Special 'no-arguments' quick
	case.

	* src/fn-math.c (gnumeric_rand): Added RAND function.

1999-04-05  Morten Welinder <terra@diku.dk>

	* src/cell.c (cell_set_rendered_text): Fix for circular
	references.

1999-04-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Do not make the about box modal.

1999-04-05 Michael Meeks  <michael@imaginator.com>

	* src/func.c (tokenised_help_new, tokenised_help_destroy),
	(tokenised_help_find_token): Implemented to assist searching
	for tokens.

	* src/func.h: Inserted TOKENISED_HELP struct, and prototypes.

1999-04-04 Michael Meeks  <michael@imaginator.com>

	* src/dialog_function_wizard.c: Created

	* src/workbook.c (workbook_setup_edit_area): Add Wizard
	button.

	* src/dialogs.h: Add dialog_function_wizard

	* src/func.c (functions_init): Added descriptions.
	Init categories array.
	(get_function_categories): Returns array of categories.
	(install_symbols): Add description argument.

	* src/func.h: Updated prototypes altered,
	add get_function_categories and struct FUNCTION_CATEGORY.

	* plugins/guile/plugin.c (init_plugin): Update install_symbols.

	* plugins/sample/plugin-sample.c (init_plugin): Ditto.

1999-04-03 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_cell_remove_from_hash): Now checks
	return value of g_hash_table_lookup_extended, before
	freeing a random pointer if its not there.

	* src/cellspan.c (cell_unregister_span): Check another
	pointer.

	* src/cell.c (cell_set_formula): Default error_msg !

1999-04-03 Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_cell_remove_from_hash): Now checks
	return value of g_hash_table_lookup_extended, before
	freeing a random pointer if its not there.

	* src/cellspan.c (cell_unregister_span): Check another
	pointer.

	* src/cell.c (cell_set_formula): Default error_msg !

1999-04-02 Michael Meeks  <michael@imaginator.com>

	* src/fn-sheet.c (gnumeric_if): Fix to allow variable
	arguments, updated help & struct to comply, removed
	possible memory leak. ( Luke 17:3,4 )

1999-04-01 Michael Meeks  <michael@imaginator.com>

	* src/workbook.c (sheet_action_delete_sheet): Fix docs.

1999-03-31  Morten Welinder <terra@diku.dk>

	* src/fn-stat.c (phi): new internal function.
	(gnumeric_normdist): Implemented using phi instead of the built-in
	table.

1999-03-31  Michael Meeks  <michael@imaginator.com>

	* src/dialog-cell-sort.c (dialog_cell_sort): Added multiple
	clause support, and cleaned UI.
	(add_clause, del_clause): Added.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/dialog-cell-sort.c (dialog_cell_sort): Fix possible
	problem with entire column selection. Need some function
	to determine largest used cell range.

1999-03-31  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/about.c (dialog_about): Fixed.  Patch from Takashi Matsuda

1999-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-financial.c (gnumeric_dollarfr): Use floor, not floorf,
	as I can not find documentation on this on my system.

	* src/fn-math.c (gnumeric_ceiling): Use ceil, not ceilf.  I can
	not find documentation on this on my system

1998-11-12  Morten Welinder <terra@diku.dk>

	* src/fn-stat.c (gnumeric_variance): More precise method of
	computing the variance.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/sheet.c (sheet_selection_first_range): This returns
	the co-ordinates of the first range, and a flag as to whether
	the selection is simply one range. This keeps things simple
	for sort.

	* src/utils.c (col_from_name): Created.

	* src/utils.h: Added prototype.

	* src/dialog-cell-sort.c: Created

	* src/workbook.c (workbook_menu_format): Added 'Sort'.
	(sort_cells_cmd): Created.

	* src/dialogs.h: Added dialog_cell_sort.

1999-03-30  Michael Meeks  <michael@imaginator.com>

	* src/fn-lookup.c (gnumeric_vlookup, gnumeric_hlookup):
	Removed check for same sheets in each cell reference, in
	intersheet references only a->sheet points to the other sheet.

	* src/func.c (function_iterate_do_value): Change CELLRANGE's
	sheet reference to cell_range.cell_a.sheet, since could be an
	inter-sheet reference. This fixes: Sum(Sheet1!A1:B3)

	* src/fn-eng.c: Cleaned function documentation.

	* docs/C/writing-functions.smgl: Updated for option function
	arguments.

	* src/fn-math.c (gnumeric_mod): Implemented.

1999-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Fix from Ian Campbell for fixing the
	subtraction problem.

1999-03-28  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: Added large, median, pearson, and small.

1999-03-28  Michael Meeks  <michael@imaginator.com>

	* src/parser.y (yylex): Added digits count to stop
	overflow of integers above 9 digits.

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/sheet.c (fail_if_found): Renamed to
        (fail_if_not_selected): Added check for selection
        (sheet_is_region_empty): Renamed to
        (sheet_is_region_empty_or_selected): Better
        described new function.

        * src/item-cursor.c (item_cursor_target_region_ok):
        Uses sheet_is_region_empty_or_selected.

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/expr.c (eval_funcall): Add vital 'break'
        statement :-)

1999-03-27  Michael Meeks  <michael@imaginator.com>

        * src/eval.c (cell_eval): Set default value of
        error_msg so cell doesn't get null text on
        g_return_val_if_fail (condition, NULL) ;

        * src/sheet.c (sheet_update_auto_expr):
        Internationalized ERROR string.

        * src/fn-lookup.c (gnumeric_column, gnumeric_columns)
        (gnumeric_row, gnumeric_rows): Hacked; best can do for
        now.

1999-03-26  Michael Meeks  <michael@imaginator.com>

	* src/fn-eng.c (gnumeric_delta): Fix memory leak
	(gnumeric_gestep): Cleaned to better arg. model
	(bin/oct/dec/hex2...): Cleaned similarly

	* src/fn-stat.c (gnumeric_poisson): Cleaned

	* src/fn-string.c (string_and_optional_int): Removed.
	(gnumeric_left, gnumeric_right, gnumeric_find),
	(gnumeric_fixed, gnumeric_dollar, gnumeric_substitute):
	Updated to optional argument types.
	(gnumeric_clean): Moved from fn-misc.c

	* src/fn-misc.c (gnumeric_clean): Moved to fn-string.c

	* src/expr.c (cell_ref_make_absolute): Makes a CellRef
	absolute.
	(eval_funcall): Added range token 'r' for lookup
	functions, makes reference absolute so can be used
	downstream without trouble.

	* src/expr.h: Added range comments

	* src/fn-lookup.c: Created
	(lookup_simliar, gnumeric_vlookup):
	Implements VLOOKUP.
	(gnumeric_hlookup): Implements HLOOKUP.

1999-03-25  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-financial.c: dollarde, dollarfr, and npv added.

	* src/fn-stat.c: correl, covar, mode, negbinomdist, rank, and
 	trimmean added.

1999-03-25  Michael Meeks  <michael@imaginator.com>

	* src/expr.c (eval_funcall): Updated to add new optional argument
	token.

	* src/expr.h: Comments to explain above.

	* src/fn-eng.c (gnumeric_erf, gnumeric_delta): Drastic clean to use
	new optional token.

1999-03-23  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-math.c: ceiling added.

	* src/fn-stat.c: fisherinv, normsdist, and lognormdist added.

	* AUTHORS, src/about.c: added me.

Tue Mar 23 14:00:37 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c : solved the problem of saving cells with < or &

1999-03-21  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* src/fn-stat.c: avedev, confidence, critbinom, devsq, fisher,
 	kurt, normdist, permut, skew, standardize, and weibull added.

	* src/fn-math.c, src/func.h: gnumeric_average and fact made public
 	(used in src/fn-stat.c).

1999-03-17  Vladimir Vuksan <vuksan@veus.hr>

 	* src/fn-financial.c: Added new functions gnumeric_ipmt,
	gnumeric_ppmt, gnumeric_duration.

1999-03-18  Jukka-Pekka Iivonen  <iivonen@iki.fi>

 	* src/fn-math.c: combin added.

 	* src/fn-stat.c: binomdist, harmean, and hypgeomdist added.

1999-03-18  Michael Meeks  <michael@imaginator.com>

	* src/fn-eng.c (val_to_base): Minor fixes

1999-03-18  Sean Atkinson  <sca20@cam.ac.uk>

	* notes: typos

	* src/expr.c (value_string): cleaned to use g_strdup_printf

	* src/expr.h: typo

	* src/fn-string.c (gnumeric_mid): fixed
	internationalized various strings, typos
	(subs_string_new, subs_string_append_n, subs_string_free): added to
	speed gnumeric_substitute
	(gnumeric_concatenate, gnumeric_rept, gnumeric_find, gnumeric_fixed)
	(gnumeric_proper, gnumeric_replace, gnumeric_t, gnumeric_value)
	(gnumeric_substitute, gnumeric_dollar): implemented.

1999-03-16  Vladimir Vuksan <vuksan@veus.hr>

	* src/fn-financial.c: More financial functions: gnumeric_nominal,
	gnumeric_pv, gnumeric_fv, gnumeric_pmt.

1999-03-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Change from active voice to passive voice in the
	help messages for "New".  Thanks to Morten for pointing this out. 2

1999-03-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (callback_function_sum): Detects integer
	over/under flow.

	* src/expr.c (eval_expr): Add integer overflow code for addition
	and substraction.

	* src/cell.c (cell_set_format): Call cell_render_value and
	cell_queue_redraw calls here.

	* src/expr.c (bigger_prec): When decoding left-to-right apply
	parentheses if the two priorities are equal.

1999-03-13  Richard Hult <rhult@hem2.passagen.se>

	* src/xml-io.c (xmlGetGnomeCanvasPoints): test against the value
	returned by xmlGetValue, not the GnomeCanvasPoints value.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c (val_to_base, val_to_base_place),
	(bin/oct/dec/hex 2 bin/oct/dec/hex):
	Implemented - pending fixes to number storage.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c (gnumeric_delta, gnumeric_sqrtpi),
	(gnumeric_gestep): Implemented

	* src/fn-math.c (sqrt): Implemented.

1999-03-13  Michael Meeks <michael@imaginator.com>

	* src/fn-eng.c: Created
	(gnumeric_erf, gnumeric_erfc, gnumeric_bessely)
	(gnumeric_besselj): Implemented
	(gnumeric_bin2dec): Moved from fn-math.c

	* src/fn-math.c (gnumeric_bin2dec): Moved to fn-eng

	* src/func.c (functions_init): Added eng_functions.

	* src/fn-stat.c: Cleaned functions help.

	* src/Makefile.am: Added fn-eng.c

1999-03-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/clipboard.c (sheet_paste_selection): New routine.  Abstracts
	the paste operation.
	(clipboard_paste_region): Now it uses a clipboard with the active
	X selection instead of defaulting to "request clipboard from X"
	(this is only for inter-workbook copy-paste).

	* src/sheet.c (find_workbook_with_clipboard): Tries to find a
	workbook with clipboard information.  Probably the clipboard
	should be global to all Gnumeric.

	* src/render-ascii.c (cell_region_render_ascii): Free the
	information after we have used it, not before.

	* src/expr.c (eval_expr): Handle new-born recursive references.

1999-03-11  Michael Meeks <michael@imaginator.com>

	* src/fn-math.c (gnumeric_power): Implemented.

	* src/fn-stat.c (gnumeric_poisson, gnumeric_gammaln):
	Implemented.

1999-03-11  Michael Meeks <michael@imaginator.com>

	* src/fn-stat.c (gnumeric_expondist, gnumeric_geomean):
	Implemented.

1999-03-10  Vladimir Vuksan <vuksan@veus.hr>

	* src/fn-financial.c: New file.

	(gnumeric_effect, gnumeric_sln, gnumeric_syd): New functions.

	* src/func.c (functions_init): Added financial functions.

	* src/func.h: Added extern.

1999-03-10  Michael Meeks <michael@imaginator.com>

	* src/fn-stat.c: Created.
	(gnumeric_stdev, gnumeric_stdevp, gnumeric_var, gnumeric_varp): Created

	* src/func.c (functions_init): added stat_functions

	* src/func.h: Added extern stat_functions.

1999-03-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c (gnumeric_clean): Add check here: only loop until
	the end of the string.

	* src/sheet.c (sheet_cell_foreach_range): Revert the arguments if
	they are in a different order.

1999-03-08  Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp>

	* plugins: new text plugin.

	Add new plugin TXT for simple text inport/export
	tab separated text. multiple sheet in a workbook is separated by
	'\f' character.
	If first line of each sheet is not include tab, then that line is
	interpreted as sheet name.

	* src/gnumeric-sheet.c: Add new mean for hard-coded keyboard short
	cut CTRL-Return.  Because ItemEdit does not support XIM, I must
	click the entry whenever I want to input janapese character.  If
	user does not edit the cell, this key combination switchs a
	keyboard focus to entry .

	* Replace gdk_font_load() with gdk_fontset_load()
	src/style.c gdk_font_load() makes impossible to show international
	string.

	* src/clipboard.h 'copy by value' was not possible because of
	miss-definition of PASTE_* enume.

	* src/file.c: gnumeric_notice was called with wrong arguments.

1999-03-07  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_format_from_style): Removed sluggish
	re-drawing code: unneccessary.

1999-03-05  Michael Meeks  <michael@imaginator.com>

	* src/cell.c (cell_set_color_from_style): Implemented.

1999-03-03  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c (parse_data_new): Trap null pointers
	on entry, ( coming from biff_get_text ).
	(ms_excel_parse_formula): Removed nasty static buffers.

1999-02-23  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_background_radio): Activated
	the patterned background control (although in my machine the
	boxes are all black) and added a radio button to let the
	user do nothing with backgrounds (analogous to the one in
	foreground section).

	* src/dialog-cell-format.c (apply_coloring_format): Now this
	functions takes into account the changes in create_background_radio,
	that is, if the user decides not to change the background,
	the background will not be changed. Also, assigned default
	values to some variables, just to avoid an annoying warning.

	* src/dialog-cell-format.c (create_coloring_page): If there
	are different backgrounds in the range, select by default
	the "no change" radio button for the background.

1999-02-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw): If the cell has a render_color (provided
	by the format specification), use that for the foreground.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (workbook_save_as): Append the extension of the
	default format if no colon is specified

1999-02-22  Tim Mooney  <mooney@dogbert.cc.ndsu.nodak.edu>

	* plugins/guile/plugin.c (func_scm_apply): Initialization of
	structure is done in the function body, rather thatn when it is
	declared.  This is necessary because struct initializer must be
	determinable at compile time, and those aren't.

	* src/expr.c (eval_expr): Add at least one statement to the
	default: handler in the case.

	* src/fn-math.c: provide a break for default handlers.
	* src/item-edit.c (entry_event): ditto
	* src/sheet-autofill.c (fill_item_destroy): ditto.

	* src/dialog-cell-format.c (create_number_format_page): Initialize
	in the body, like above.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* plugins/guile/plugin.c (func_scm_apply): Initialize the
	cell_ref.sheet to NULL.

1999-02-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_cell_remove_internal): Queue recalcs for
	cells that depend on cells that are being destroyed.
	(clear_cell_content): Added a call to workbook_recalc
	(sheet_clear_region_content): same.

1999-02-21  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-formula.c FORMULA_PTG_EXP: Fixed several bugs.

	* plugins/excel/ms-excel.c (ms_excel_set_cell_font, biff_font_data_get_style_font):
	Body of the former moved to the latter, loop invariant code removed for
	big speedup.
	(ms_excel_set_cell_xf): Burdern of border color stuff moved to
	(ms_excel_palette_get): New routine to cache and create
	StyleColor records as needed.
	(ms_excel_sheet_insert): Fixed so no NULL pointers can escape
	into cell_set_text.
	(ms_excelReadWorkbook): Removed BIFF Usage chart, its slow.
	(biff_nasty_font_check_function): Sorts out font sillyness.
	(biff_xf_data_new): Added cached style_format pointer
	(biff_xf_data_destroy): unref style_format if allocated.

	* src/cell.c (cell_set_format_from_style): Implemented.

1999-02-19  Raja R Harinath  <harinath@cs.umn.edu>

	* doc/C/Makefile.am (install-data-local): Use $(mkinstalldirs) not
	$(topsrcdir)/mkinstalldirs.

	* src/Makefile.am: Use $(GNOME_CONFIG) instead of `gnome-config'
	to run the gnome-config script.
	(BUILT_SOURCES): Swap with GNUMERIC_CORBA_GENERATED to be
	conceptually clean.

1999-02-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c (gnumeric_min): Implement ISERROR.

	* src/clipboard.c (paste_cell): Do not render the value if the
	result is an error.

	* src/cell.c (cell_copy): Do not copy the value of a cell when the
	value is NULL (due to the cell having an error).

	* src/expr.c (eval_expr): Evaluate binary operations in parts to
	keep the correct error message on an operation if possible.
	(eval_expr): Propagate errors.

	* src/item-edit.c (item_edit_draw): Sync the before-cursor and
	after-cursor Y-display text cordinate.

	* src/expr.c (eval_funcall): Add type checking for the simple
	functions.

	* doc/C/Makefile.am (install-data-local): use topsrcdir here (fix
	from Ian Campbell <ijc25@cam.ac.uk>

	* src/fn-math.c (gnumeric_not): Implement NOT.

	* src/number-match.c (format_create_regexp): Allow upper case
	format codes.

	* src/format.c: ditto.

1999-02-18  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	case FORMULA_PTG_ATTR: Added 'Optimised SUM' functionality,
	Generaly made output less verbose.

	* plugins/excel/ms-excel.c: BIFF_DBCELL, ignore it, its
	not interesting.
	(ms_excel_set_cell_xf, biff_format_data_lookup,
	biff_format_data_destroy, ms_excel_workbook_new,
	ms_excel_workbook_destroy): Implemented formatting.

1999-02-17  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-excel.c (biff_get_rk): moved RK number
	extraction into function.
	Added MULRK support: the lost numbers arrive !

1999-02-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (gnumeric_trunc): Implement TRUNC.

	* src/func.c (function_iterate_argument_values): Do not evaluate a
	subexpression if the previous expression failed due to an error.
	Basically: add a check to the eval return value.

	I took this oportunity to check all the source and this was the
	only buggy spot.

1999-02-16  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel.c: Fixed many bugs in my
	understanding of hash table functions.
	Added rudimentary NAME stuff.
	made error lookup global.
	Fixed up Header / Footer functionality.
	(ms_excel_sheet_new, ms_excel_sheet_insert,
	ms_excel_read_sheet): Added 'blank' field to excel_sheets,

	* plugins/excel/ms-formula.c: Added puzzling
	PTG_NAME stuff, this is really wierd.
	PTG_ERR added.

1999-02-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (change_auto_expr_menu): OOps I got too excited
	here using my helper routine: Now we do not destroy this helpful
	menu.

	* src/widget-editable-label.c (editable_label_set_text): Bug fix:
	sometimes this code is invoked with its argument being el->text.

1999-02-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_new): Make a local copy of the toolbar,
	as we use this to update the radio buttons.
	(workbook_do_destroy): Free the toolbar.
	(workbook_feedback_set): Use the per-workbook toolbar here.

1999-02-14  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-formula.c: Inserted a whole scad
	of math functions into translation table.
	(parse_list_to_equation): g_strdupped return values.
	FORMULA_PTG_STR: Updated old and broken code.
	* src/about.c (dialog_about): Added Sean.

1999-02-13  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_foreground_radio): Added a
	radio button to let the users 'no change' the text colour, useful
	when there is a range selected with differently colored cells
	and it is desired to change the background of them without
	touching the foreground.

	* src/dialog-cell-format.c (create_coloring_page): When there
	are different foreground colours in the selected cells, the
	default selection is 'no change'.

	* src/dialog-cell-format.c (apply_coloring_format): If there
	is no need to make changes to the foreground color of the
	cells, avoid doing them.

1999-02-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_target_region_ok): Warn the user
	if he overwrites something accidentally by dropping cells in the
	target location.

	* src/sheet.c (sheet_is_region_empty): New function.

1999-02-12  Michael Meeks  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel.c (biff_get_global_string):
	Drasticly simplified, accelerated and in-lined out.
	(biff_get_text): Fixed using unicode spec, various
	updates to calls to it, fixing offsets.
	Removed lots of debug output to speedup

1999-02-10  Sean Atkinson  <sca20@cam.ac.uk>

	* src/fn-math.c (callback_function_sum): enhanced warning for
	unknown value->type.

1999-02-12  Frederic Devernay  <devernay@istar.fr>

	* plugins/perl/perl.c: Handle the #define dirty in perl-thread.

1999-02-12  Bruno Unna  <bruno@iac.com.mx>

	* src/cell.c (cell_draw): Now the function draws the cell
	using the cell background color setting. Although it does
	the job, I guess there must be a better way to do it. Thanks
	to Michael for the hint.

	* src/item-grid.c (item_grid_draw_cell): Commented out the lines
	involved with patterns display in the cell, for that code is
	not ready yet.

	* src/dialog-cell-format.c (create_coloring_page): Reactivated
	the background selection panel of the coloring page.

	* src/dialog-cell-format.c (create_background_radio): Commented out
	the addition of the pattern selection for a cell.

1999-02-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_detach_sheet): Be less forgiving as to
	removing sheets with pending references.

	(sheet_action_delete_sheet): Add a test for
	dependencies when removing a sheet
	(workbook_can_detach_sheet): New function.

	* src/cell.c (cell_relocate): When relocating a cell with a
	formula, always mark it as changed.  We were doing that before
	only for the case where the location had changed, but we use
	cell_relocate in other cases as well.

	* src/fn-string.c (gnumeric_lower, gnumeric_upper): These
	functions were wrong.  They were never incrementing the pointer
	and they were releasing the wrong pointer.

	* src/clipboard.c (paste_cell): When pasting a cell, mark the
	contents as modified.

	* src/file.c (file_saver_is_default_format): Make sure the saver
	is always set.

1999-02-10  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_read_cell): BOOLERR booleans
	hard-translated to 1, 0: not a good solution to problems with TRUE.
	* src/fn-string.c (gnumeric_upper, gnumeric_lower): Add increment

1999-02-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.y: Apparently string concatenation operator in Excel
	has the lower priority.

	* src/workbook.c (workbook_detach_sheet): New function used to
	detach a sheet from a workbook.
	(sheet_menu_label_run): New routine.  Invoked on button-3 on the
	sheet label.

	* src/gnumeric-util.c (gnumeric_auto_kill_popup_menu_on_hide): New
	routine to deallocate menus when they go to unshown state

1999-02-09  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_sheet_new,
	ms_excel_workbook_attach, biff_boundsheet_data_new):
	Major sheet allocation re-organisation, hash boundsheet data.
	(ms_excel_sheet_set_version, ms_excel_sheet_set_index,
	ms_excel_workbook_get_sheet): re-hashed API
	* plugins/excel/ms-formula.c: PTG_MISSARG implemented

1999-02-08  Sean Atkinson  <sca20@cam.ac.uk>

	* plugins/excel/ms-excel-biff.h, ms-excel.c:
	added BIFF_EXTERNCOUNT
	* plugins/excel/ms-excel.c (ms_excel_read_sheet):
	stubbed BIFF_EXTERNSHEET, stubbed SUPBOOK
	(biff_get_externsheet_name): implemented inter-sheet references
	* plugins/excel/ms-formula.ch: added FORMULA_PTG_CONCAT
	(ms_excel_parse_formula): implemented FORMULA_PTG_REF_3D

1999-02-07  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	FORMULA_PTG_ATTR stubs: can ignore most of AttrSpace.

1999-02-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw): Make the clip region one pixel bigger to
	account for the offset.
	(cell_draw): Do not add one to text_base.

	* src/item-edit.c (item_edit_draw): Take into account the margin_b.

1999-02-07  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c: Fixed memory leaks
	* plugins/excel/ms-excel.c: Fixed several memory leaks

1999-02-07  Sean Atkinson  <sca20@cam.ac.uk>

	* plugins/excel/ms-formula.ch: added FORMULA_PTG_NUM

1999-02-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_set_text_simple): Allow a single "=" to
	represent a string.

1999-02-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-util.c (gnumeric_notice): Now we take a Workbook
	argument to bind the dialog boxes properly to the main window.  We
	use gnome_messagebox now to report errors.  We now take a type
	parameter for the message box type.

	* plugins/ff-csv/csv-io.c: Use gnumeric_error

	* src/workbook.c (wb_input_finished): Call sheet_set_current_value
	instead of the cancel pending input routine.

	* Moved src/csv-io.[ch] to the plugins/ff-csv directory and
	converted them to

1999-02-06  Vincent Renardias <vincent@ldsol.com>

	* src/csv-io.h src/csv-io.c: Added code to load
	csv files.

1999-02-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (fill_save_menu): Creates an option menu with the
	file format to save on.
	(workbook_save_as): Use the saver selected by the user.
	(saver_activate): Keep track of the current file save format, set
	as default.
	gnumeric_file_savers, gnumeric_file_openers: made static.

	* src/sheet.c (sheet_destroy_styles): Release the proper style, I
	was releasing a different structure.

1999-02-06  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-formula.c: Cut out lots of debug in working
	cases

	* plugins/excel/ms-excel.c: Implemented a hash table for fast
	font lookups, removed and simplified dead font code.

	* plugins/excel/ms-excel.c (ms_excel_set_font): Bold if boldness
	greater or equal to threshold, not just equal.

	* plugins/excel/ms-excel.c (ms_excel_read_cell): Added support
	for BIFF_STRING records, and re-organised switch statement. Added
	BIFF_BOOLERR support.

1999-02-06  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>

	* gnumeric.desktop: Added Korean translations.

1999-02-04  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-excel.ch: Major overhaul of how XF styles
	are looked up, sparation of Cell / style XF records. Hash
	table implemented for lage speedup and code simplification.

1999-02-04  Michael Meeks  <michael@imaginator.com>

	* plugins/excel/ms-biff.h: Added a biff_getdouble function for
	G_BIG_ENDIAN machines, since I don't have one... [begs forgiveness]

1999-02-03  Sean Atkinson  <sca20@cam.ac.uk>

	* plugins/excel/ms-formula.c (ms_excel_parse_formula):
	FORMULA_PTG_INT and FORMULA_PTG_BOOL added

	* plugins/excel/ms-formula.c:
	Implemented remaining binary operators and unary operators +,-,%
	interpolated operator precedences.
	formula_func_data[] : added AND, OR, V/H LOOKUP functions

1999-02-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_configure_minimized_pixmap): Provide an
	icon.  Note that I could not get this to work on fvwm2 though.  I
	will wait for other people to try it.

1999-02-01  Jaka Mocnik  <jaka.mocnik@kiss.uni-lj.si>

	* src/widget-editable-label.c (el_realize): new function.
	set the font for text_item here to match the widget's style.
	(editable_label_set_text): don't bother to set the font when
	creating the text_item, as the style is not set properly yet.

1999-01-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c: Added documentation for the functions in this file.

1999-01-26  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c (create_coloring_page): Now, the
	method to find out whether a cell has been colored or not
	is to compare the RGB values to zero.
	Commented out the attachment of background_radio_list
	because the functionality is not ready yet.

	* src/dialog-cell-format.c (apply_coloring_format): Added support
	for background solid coloring. Howver, changes to the style of
	the cells in this regard have no effect in the display. The reason
	for this is unknown to me as of now.

1999-01-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-autofill.c (sheet_autofill_dir): Add a call to
	sheet_cell_remove before calling cell_destroy.

1999-01-23  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c: Reactivated the 'Coloring' page
	in struct array cell_format_pages.

	* src/dialog-cell-format.c (create_coloring_page): Lots of
	changes, practically a full rewrite. One problem is that cells
	are thrown into this world with the flag STYLE_FORE_COLOR of
	their style set, which causes a lack of synchronization with
	what is expressed in the global variable foreground_radio_list.

	* src/dialog-cell-format.c (apply_coloring_format): By the moment
	being, deactivated the call of function cell_set_pattern, along
	with the STYLE_PATTERN bit flag of style->valid_flags. I will
	concentrate in fg/bg coloring of the cell.

1999-01-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/widget-editable-label.c 	(el_init): Set the scroll region
	to something very big.  This fixes the label-sliding problem.
	Thanks to Federico for his quick debugging eye.

	(el_button_press_event): WOW.  I am amazed.  I now gtk grab add
	and if I receive a widget->window different than the canvas, I
	drop the grab and stop editing.

1999-01-19  Francisco Bustamante  <pancho@nuclecu.unam.mx>

	* src/workbook.c (workbook_delete_event)  Return TRUE when the
	workbook should not be destroyed. (i.e. the user presses cancel)

1999-01-19  Jeff Garzik  <jgarzik@pobox.com>

	* src/dialog-cell-format.c, src/gnumeric-util.c,
	  src/sheet-view.c, src/workbook.c:
	Renamed deprecated Gtk+ functions.

1999-01-18  Bruno Unna  <bruno@iac.com.mx>

	* src/dialog-cell-format.c: Now the terminator element of the
	cell_format_pages has three null elements (as stated in the struct
	definition), instead of two. Fixed up some comments. Started
	to pursue the bug that causes that when adding the "Coloring"
	tab the program generates a Gdk-ERROR. Modifications not commited.

1999-01-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_can_move_cursor): Do not
	enable item editing if sheet is not in edit mode.

1999-01-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Mark sheet
	as being edited.

1999-01-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/file.c (dialog_query_load_file): Set the window modal.
	(workbook_save_as): ditto.

1999-01-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/format.c (format_value): Use 0.0########## instead.  Looks saner.

1999-01-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (change_auto_expr_menu): Use the event->button
	field to get the popup menu to behave correctly.
	(workbook_setup_auto_calc): Put the information display inside a
	GtkFrame.

	* src/item-bar.c (set_cursor): This routine can be invoked before
	we are realized.

	* src/workbook.c (sheet_label_button_press): We need to do the
	page flipping ourselves, as the GtkNotebook wont take events if
	they are not for a window it knows about.

	* src/widget-editable-label.c (el_button_press_event): Forward
	events to parent.

	* src/parser.y: New non-terminal "cellref".  Make this
	non-terminal include CELLREF and SHEETREF!CELLREF constructions.

	* src/expr.c: Changed the whole module according to the dropping
	of VALUE_CELLREF.

	* src/expr.h: VALUE_CELLREF did not make much sense.  Better add
	to the ExprTree union a CellRef field specifically for OPER_VAR
	nodes.

1999-01-10  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excelReadWorkbook): Only believe the
	first BOF with regard to BIFF version number, other BOFs seem to lie.

1999-01-10  Nick Lamb <njl98r@ecs.soton.ac.uk>

	* plugins/excel/ms-excel.h: Added global string table to EXCEL_WORKBOOK

	* plugins/excel/ms-excel.c (ms_excel_workbook_new): Setup new fields,
	(ms_excel_read_cell): case BIFF_STRING_REF,
	(biff_get_global_string): Retrieves a global string from the EXCEL_WORKBOOK table.
	(ms_excel_read_cell): case BIFF_STRING_REF,
	(ms_excelReadWorkbook): case BIFF_STRINGS reads the global table.

1999-01-10  Michael Meeks <michael@imaginator.com>

	* plugins/excel/ms-excel.c: Rehash of border code to use neater centralised
	enumerations / types.
	(get_style_color_from_idx): Implemented.

	* src/style.h: Major expansion of 'StyleBorderType', massive simplification
	of StyleBorder to use directional [ StyleSide ] arrays instead of lots of
	unique member names.

	* src/style.c (border_equal, border_hash, style_border_new,
	style_border_new_plain): Major overhaul and shrink to fit new structure.

	* src/xml-io.c: Updated BorderTypes array to give textual names to
	the new border types, also created an array of text names for StyleSides.

	* src/xml-io.c (readXmlStyleBorder,writeXmlStyleBorder): Use new
	arrays and struct.

	* src/cell.c, src/cell.h: Added cell_set_border.

1999-01-10  Thomas Meeks  <meekte95@christs-hospital.org.uk>

 	* plugins/excel/ms-excel.c (ms_excel_read_cell):
 	added header and footer Biff code.
 	* plugins/excel/ms-excel-biff.h: the defines.

1999-01-10  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>

	* src/workbook.c (cb_sheet_check_dirty): Use g_strdup_printf
	instead of g_strconcat.  More easy to translate the string.

1999-01-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (wb_input_finished): Use
	sheet_accept_pending_input instead of sheet_set_current_value.
	(workbook_setup_auto_calc): Stick the information display inside
	the status bar.

	* src/eval.c (add_value_deps): Reorganization.  Hanlde
	VALUE_CELLREF here and make OPER_VAR and OPER_CONSTANT call
	add_value_deps.

	* src/expr.c (do_expr_tree_relocate, expr_tree_relocate): New
	routine that returns an ExprTree relocated.
	(value_copy_to): Handle the VALUE_CELLREF type.

	* src/expr.h: define VALUE_CELLREF

	* src/parser.y (yylex): Type fix.
	When creating values of type VALUE_CELLREF, set this value.

1999-01-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_move_column): Update to new cell_relocate
	semantics.
	(sheet_shift_row): ditto.
	(sheet_insert_row): ditto.
	(sheet_delete_row): ditto.
	(sheet_shift_col): ditto.

	* src/clipboard.c: Update to new cell_relocate semantics.
	Remove the old GTK compatibility code.

	* src/cell.c (cell_relocate): We do not need to reference this
	formula.
	This routine now takes delta-x and delta-y values for the
	relocation, instead of absolute cordinates.  To implement the
	proper semantics of cell movement that other spreadsheets implement

1999-01-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Return the
	result of gtk_widget_event() if we get to the switch's default
	case.
	(gnumeric_sheet_key): Return FALSE in the default case, since we
	did nothing there.

	* src/workbook.c (open_cmd): If the file-open dialog was
	cancelled, it will return NULL.  Take this into account.

1999-01-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_setup_status_area): We do not use the
	progress bar feature currently.

1999-01-07  Nat Friedman  <nat@nat.org>

	* src/workbook.c: Added hints to the rest of the custom menu items.

1999-01-07  Nat Friedman  <nat@nat.org>

	* src/workbook.c (workbook_new): Install the menu hints.
	(workbook_setup_status_area): Create the GnomeAppBar.

	Added hints to most of the custom menu items.

	* src/sheet.h: Added the appbar field to the Workbook structure.

1999-01-07  Nat Friedman  <nat@nat.org>

	* src/workbook.c: Use GNOMEUIINFO_MENU_ABOUT_ITEM and the new
 	GNOMEUIINFO_MENU trees.

1999-01-07  Nat Friedman  <nat@nat.org>

	* src/workbook.c: Pass the menu item description to
 	GNOMEUIINFO_MENU_NEW_ITEM.

1999-01-06  Nat Friedman  <nat@nat.org>

	* src/workbook.c: Use the standard GNOMEUIINFO macros from
 	gnome-app-helper.h.

1999-01-06  Nat Friedman  <nat@nat.org>

	* src/workbook.c: Use the gnome-uidefs.h macros for the
 	accelerators.

1999-01-04  Havoc Pennington  <hp@pobox.com>

	* src/fn-date.c (gnumeric_date): Allocate the GDate on the stack,
	saves some small amount of time. Check user-provided
	month/day/year for validity before using it.
	(gnumeric_today): Allocate GDate on the stack.
	(gnumeric_now): Ditto.

1999-01-04  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_rename): New routine.

	* src/workbook.c (workbook_attach_sheet): Use a EditableLabel for
	the notebook tab.
	(workbook_rename_sheet): New routine.

	* src/widget-editable-label.c:  New widget.  This is a label that
	can be edited if you double click on it.  This uses the same trick
	of the gnome-icon-item to provide the editing facilities.

1999-01-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_setup_status_area): Use the style font,
	not "fixed".
	(workbook_setup_status_area): One hack down.  Use GTK_ANCHOR_NW to
	achieve the same effect I had with my previous hack.

	* src/dialog-cell-comment.c (dialog_cell_comment): New file.
	Implements the cell comment dialog box.

	* src/cell.c (cell_relocate): Only call cell_comment_reposition is
	there is a cell comment bound to this cell.

	* src/format.c (format_value): No format means "General" format as
	well.
	If the value has decimal numbers use "0.00##########" for the
	formatting instead of 0.00.

1998-01-03  Jeff Garzik  <jgarzik@pobox.com>

	* src/number-match.c, src/plugin-manager.c, src/sheet.c:
	Warning fixes.

1999-01-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (do_expr_decode_tree): Add termination NULL to the OPER_NEG
	operation.

	* (eval_expr): Add support for non-local cells here.  I am
	impressed how simple this was.

	* src/parser.y: Add rules for cell references outside of the
	current sheet.

	* src/main.c: New option --debug.  Turns on the zoom in/zoom out
	buttons on the main sheet.

	* src/workbook.c: Include the zoom in/zoom out buttons conditionally.

	* src/xml-io.c (xmlGetCoordinates): Load using double numbers the
	information.

	* src/parser.y (yylex): Allow strings to be specified with "'"
	characters.

1999-01-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.c (item_grid_button_1): When starting a selection
	of cells during a formula edit, insert the currently clicked cell
	name.

1998-12-30  Jeff Garzik  <jgarzik@pobox.com>

	* plugins/perl/perl.c, src/cell.c, src/expr.c, src/plugin.c,
	  src/sheet-autofill.c, src/sheet.c, src/workbook.c:
	s/g_copy_strings/g_strconcat/

1998-12-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* plugins/excel/boot.c: New file, this holds the probing and load
	wrapper code for Gnumeric to use as well as the initial format
	registering code.

	* src/xml-io.c (xml_probe): New routine, used to probe if a file
	is a Gnumeric-xml file.

	* src/file.c (file_format_register_open,
	file_format_unregister_open, file_format_register_save,
	file_format_unregister_save): New routines used to register and
	unregister file formats in Gnumeric.

	* src/main.c (main): Boot xml and excel formats, since they now
	need to register themselves with the file.c code

	* src/cell.h: cell->entered_text is back, now only used for typo
	correction.  Maybe I will use it for saving.

	* src/fn-string.c (gnumeric_right): Use value_str.
	(gnumeric_char): same
	(gnumeric_left): same

	* src/expr.c (value_str): New function.

	* src/xml-io.c (writeXmlCell): Use cell_get_content instead of
	cell_get_text.

	* src/cell.c (cell_get_content): New function.

1998-12-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: fix bug introduced yesterday.

1998-12-17  Tuomas Kuosmanen  <tigert@fun112.koivukyla.hoas.fi>

	* gnumeric.desktop: Added gnumeric program icon
	* Makefile.am: added the stuff to install the icon -
	could someone check that I did it correctly?
	* gnome-gnumeric.png: the icon itself

1998-12-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Use GNOME stock icons for the stuff that hsa
	icons on Gnome Stock.

	* gnumeric.keys.in: New file that defines the mime-type for Gnumeric

1998-12-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/workbook.c (workbook_setup_status_area): Do not set_usize()
	on the info item.

	* src/sheet-view.c (new_canvas_bar): Set the width or height to -1
	in set_usize().

	* src/gnumeric-sheet.c (gnumeric_sheet_new): Do not set_usize() on
	the sheet.

	* src/item-bar.c: Updated for the new canvas item API.
	* src/item-cursor.c: Likewise.
	* src/item-edit.c: Likewise.
	* src/item-grid.c: Likewise.

1998-12-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_new): Use the new gnomeapp api.

	* src/gnumeric-sheet.c: Use the new canvas.

1998-12-14  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_new): Use
	gtk_widget_set_usize() instead of gnome_canvas_set_size().
	* src/pattern-selector.c (pattern_selector_new): Likewise.
	* src/sheet-view.c (new_canvas_bar): Likewise.

1998-12-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* src/fn-date.c (gnumeric_year_month_day, gnumeric_now,
	gnumeric_today,gnumeric_date):
	* src/workbook.c (insert_current_date_cmd):
	* src/number-match.c (compute_value): Changed to use the glib
	GDate type instead of the lib_date functions. Fixed off by-one
	error for some date functions (e.g. =today ()) was one day to
	early).

	* src/utils.c, src/utils.h (g_date_serilal, g_date_serial_new):
	New functions for handling the gnumeric serial of a date.

1998-12-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_set_bounds_visibly): Update the
	cursor position as well.

1998-12-10  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-excel.c (ms_excel_read_cell): Fixed serious bug
	in IEE floating point number reading from RK records.

	* plugins/excel/ms-formula.c (ms_excel_parse_formula): Implemented
	string expressions in formulae, MS stores numbers like this !

1998-12-10  Owen Taylor  <otaylor@redhat.com>

	* src/workbook.c (filenames_dropped): Make toplevel
	windows drop targets for files.

1998-12-09  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-ole.c: Indented correctly, implemented writes
	of all file lengths.

1998-12-08  Jaka Mocnik  <jaka.mocnik@kiss.uni-lj.si>

	* src/dialog-paste-special.c (dialog_paste_special): changed
	gnome_dialog_run_modal() to gtk_window_set_modal() and
	gnome_dialog_run().

1998-12-06  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-ole.c: Much trivial bug fixing, API fixups,
	testing and stabilizing.

1998-12-05  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-ole.c: Major work on creation of readable
	macros for accessing obscure fields, removing magic numbers from
	main code.
	(ms_ole_create): Created to create new OLE files.

	* plugins/excel/ms-excel-biff.h: Update comments, and re-arrange.

	* plugins/excel/ms-biff.h: Commenting fixes

1998-12-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* configure.in (ALL_LINGUAS): Added Japanese translation courtesy
	of Mitsuru Oka <moka@globe.to>.  Also updated the .desktop file.

1998-12-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_set_top_row,
	gnumeric_sheet_set_top_col): New functions to set the sheet top
	column and row respectively.

	(gnumeric_sheet_bar_set_top_row, gnumeric_sheet_bar_set_top_col):
	Renamed from their old names to reflect their actual action.

	* src/item-cursor.c (item_cursor_autofill_event): Do not pass
	negative numbers to item_grid_find_col and item_grid_find_row.

	* src/item-grid.c (item_grid_find_row, item_grid_find_col): Check
	for possitive numbers. I think the right fix is to accept negative
	numbers and find the column even if the number is negative instead
	of this ugly restriction.

1998-11-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (cellref_name): Add more space.

1998-12-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* src/Makefile.am: make Gnumeric-impl.c dependend on Gnumeric.h to
	make it compile the idl-file before compiling Gnumeric-impl.c

1998-11-28  Michael Meeks    <mejm2@cam.ac.uk>

	* plugins/excel/ms-formula.c(ms_excel_parse_formula): Fixed serious
	memory leaks on return values from cellref_name

	* plugins/excel/ms-formula.c(getRefV7): Now sets CellRef->sheet properly
	(getRefV8): same.

	* plugins/excel/ms-ole.c: Several minor changes, moving seperate
	structures back into the raw datastream with macros.

1998-11-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-util.c (gnumeric_notice): Do not use
	gnome_dialog_run_modal.

	* src/dialog-goto-cell.c (dialog_goto_cell): Do not use
	gnome_dialog_run_modal

	* src/sheet.c (sheet_mark_clean): New routine to mark a sheet as
	not modified.

	* src/workbook.c (workbook_mark_clean): New routine to mark a
	workbook as not modified.

1998-11-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-autofill.c (autofill_cell): Simplify by using
	cell_set_formula_tree

	* src/expr.c (expr_parse_string): Take a sheet argument
	(expr_decode_tree): Same

	* sheet.c (cellref_name): Now takes a sheet argument and decodes the
	cellref depending on the sheet.

	* cell.c (CellRef): Now they include the sheet location.

1998-11-28  Michael Meeks    <mejm2@cam.ac.uk>

	* plugins/excel/ms-ole.c, plugins/excel/ms-ole.h: Total re-write
	of internal interfaces, code streamlined, '?' operators expunged.

1998-11-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.c (item_grid_realize): Oops.  This was not a bug.
	gc was actually initialized as being item_grid->grid_gc, it was
	just not obvious.

	* src/main.c (gnumeric_main): Fix the prototype.

	* src/dialog-goto-cell.c (dialog_goto_cell): Revert const from gtk-clist.

	* src/dialog-cell-format.c (create_number_format_page): Revert
	const from gtk-clist.

	* src/dialog-goto-cell.c (dialog_goto_cell): Revert const from gtk-clist.

	* src/Gnumeric-impl.c: Empty stubs for now.

	* src/Makefile.am (GNUMERIC_CORBA_SOURCES): Add rules for
	compiling the CORBA support.

	* plugins/python/Makefile.am (LIBTOOL): This one needs xlibtool
	instead of our modified libtool.

	* plugins/sample/Makefile.am (GNUMERIC_SRC_DIR): Simplified Makefile.am

1998-11-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.c (item_grid_realize): Removed bogus calls to
	invalid gc.

1998-11-24  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/item-grid.c (item_grid_unrealize): Unref all the item_grid's GCs.

1998-11-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-goto-cell.c (dialog_goto_cell): Set the policy on the
	scrolled window.

	* src/sheet.h: formula_cell_list *ONLY* exists in the Workbook,
	not on the Sheet.

	* src/sheet.c (sheet_cell_formula_link,	sheet_cell_formula_unlink):
	Keep the formula on the Workbook, not on the Sheet.  Thanks to
	Havoc for reporting these bugs.

	* src/cell.c (cell_set_formula): Use cell_set_rendered_text to
	propery set the error messages.
	(cell_get_text): If value is NULL, use the rendered version of the
	text instead of re-rendering it.

	* src/dialog-cell-format.c (create_number_format_page): Put the
	clist inside a scrolled window for the new CList api.

	* src/dialog-define-names.c (dialog_define_names): ditto.

	* src/dialog-goto-cell.c (dialog_goto_cell): ditto

1998-11-23 Marin Purgar <pmc@iskon.hr>

	* src/dialog-cell-format.c: Style general was applied to more
	than one cell in various cases.

1998-11-18  Bruno Unna       <bruno@iac.com.mx>
	* src/style.c: added the default italic font as helvetica-oblique.

	* src/style.h: added declaration for new global variable
	  gnumeric_default_bold_font

	* src/gnumeric-util.c: enhanced the robusteness of the function
	  font_get_italic_name. But it's not at a 100%, though.

	* plugins/excel/ms-excel.c: slight modification to the error
	  tracking mechanism (font stuff in ms_excel_set_cell_font).

1998-11-15  Michael Meeks    <mejm2@cam.ac.uk>

	* plugins/excel/ms-ole.c(ms_ole_directory*): Created new directory
	API for ole files, such that the excel dependant stuff is now moved
	out of ms-ole.c into ms-excel.c

	* plugins/excel/ms-excel.c(find_workbook): Nicer routine using the
	directory API to find its file

	* plugins/excel/ms-ole.c(ms_ole_stream_open): Renamed from ~_new

	* plugins/excel/ms-ole.c: Re-organisation, code clean, many cases
	added throughout to make NULL pointers less harmful, and allow
	for turning into a library soon.

1998-11-14  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-excel.c(ms_excel_set_cell_font): Fixed buffer
	overflow bug, and secured sprintf.

1998-11-12  Bruno Unna       <bruno@iac.com.mx>

	* plugins/excel/ms-excel.c: added support for fount size.

	* plugins/excel/ms-excel.c: included ctype.h.

	* plugins/excel/ms-excel.c: initial hacks on font name importing,
	  from windoze to X.

1998-11-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.y:

	* src/workbook.c (workbook_new): Use case-insenstive routines when
	creating the hash table.
	(workbook_sheet_get_free_name): Find an unused name for a sheet.
	(workbook_sheet_lookup): Looks up a sheet by name in a Workbook.
	(insert_sheet_cmd): New command to insert a sheet into a workbook.

	* src/utils.c (gnumeric_strcase_hash, gnumeric_strcase_equal):
	Routines used for strings hash tables that are not case
	sensitive.

1998-11-12  Morten Welinder <terra@diku.dk>

	* test-parser.c: Fix to compile with the new API

	* parser.y: Make the code more maintainable.

1998-11-12  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-ole.c, plugins/excel/ms-ole.h: Massive changes
	renamed many functions to conform to a sensible naming convention.
	Cleaned the interface, and structure names.

	* plugins/excel/ms-excel-biff.h: Split from ms-biff.h removing all
	the excel specifics so that the biff & ole stuff can be turned into
	a library sometime.

	* src/workbook.c(workbook_read): Updated to new structure names.

	* plugins/excel/ms-excel.c: Added list of array formulae, as yet
	unused, possibly unneccesary.

	* plugins/excel/ms-formula.c: Added support for slightly different
	array formula BIFF layout.

1998-11-11  Bruno Unna       <bruno@iac.com.mx>

	* src/gnumeric-util.c: Added function font_get_italic_name,
	analogous to font_get_bold_name.

	* plugins/excel/ms-excel.c: added enhanced support for styles
	(bold & italic). Included gnumeric-util.h.

1998-11-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-util.c (font_get_italic_name): Missing function.

	* src/parser.y: Use '^'.

1998-11-11  Mark Probst  <schani@obiwan.unix.cslab.tuwien.ac.at>

	* plugins/guile: Added guile plug-in.

1998-11-11  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-biff.h, plugins/excel/ms-excel.c: Removed fatal
	bug, and accelerated code by testing for DV in MULBLANK case.

	* plugins/excel/ms-excel.c(ms_excel_set_cell_xf): Out by one indexes
	causing serious attribute offset grief in fonts.

	* Rememberance_Day:
	They went with songs to the battle, they were young,
	Straight of limb, true of eye, steady and aglow.
	They were staunch to the end against odds uncounted,
	They fell with their faces to the foe.

	They shall grow not old, as we that are left grow old,
	Age shall not weary them, nor the years condemn.
	At the going down of the sun, and in the morning,
	We will remember them.

	Lest we forget.

1998-11-10  Bruno Unna       <bruno@iac.com.mx>

	* plugins/excel/ms-excel.c(ms_excel_set_font): Started implementing
	font styles properly.

	* src/gnumeric-util.c(font_get_bold_name, font_get_italic_name): Hacked
	both so they allow testing of new font code.

1998-11-10  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-ole.c(create_link_array): Truly
	brainless one suprised it took so long to surface.

1998-11-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-view.c (sheet_view_comment_get_points): Scale properly
	the points to be in window cordinates.

	* src/sheet.c (sheet_col_set_width): Move comments on column
	change.

	* src/cell.c (cell_copy): Duplicated cells get col, row and sheet
	values set to NULL.

1998-11-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-misc.c: Add ctype.h

	* src/sheet-view.c (sheet_view_comment_get_points): New utility
	routine used.
	(sheet_view_comment_relocate): New function used to relocate a
	comment canvas item in a cell to its new location.

	* src/cell.c (cell_relocate): Move the comments with the cell.
	(cell_realize, cell_unrealize, cell_comment_realize,
	cell_comment_unrealize): New functions used to create and destroy
	view-specific cell components (the comments are canvas objects
	that need to be created on a per-view basis).

1998-11-10  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-ole.h: Added unsigned to WORD, LONG
	types.

	* plugins/excel/ms-formula.c(getRefV7, getRefV8): Fixed
	bug in relative column retrieval.

	* plugins/excel/ms-formula.c(ms_excel_parse_formula):
	Squashed silly op-code bug, and got simple op-codes working.

1998-11-09  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-formula.c: Re-designed the translation
	code, abstracted, and implemented AVERAGE, MIN & MAX using
	StarOffice 4.0 to deduce the standard function numbers.

1998-11-08  Michael Meeks    <michael@imaginator.com>

	* plugins/excel/ms-formula.c: Major top to bottom changes
	basic hacked RPN to Infix parsing started in a rather nasty
	fashion. Much more work needed only 1 ( the SUM ) function
	supported.

	* src/cell.c (cell_split_text): Fixed string length malloc
	bug, out by 1 trashing stack.

1998-11-08  Michael Meeks    <michael@imaginator.com>

	* src/workbook.c, src/sheet.h, src/main.c (workbook_read):
	Added generic routine to read a file

	* plugins/excel/ms-excel.c: Major code overhaul, multiple bug
	fixes, BLANK, MULBLANK implemented & tested

1998-11-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c, src/workbook.c, src/sheet-view.c: Finish cell
	comment display routines.  Now we only need the dialog box to
	insert/edit a cell comment.

1998-10-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_set_comment): new implementation.

1998-10-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-date.c (gnumeric_date): Fix longstanding off by one
	error.
	(gnumeric_today): ditto
	(gnumeric_now): ditto.

	* Prepare for 0.4 release.

	* configure.in: Add test for new GTK+ selection code.

	* src/clipboard.c: Make it work with both APIs: the old and the
	new one.

1998-10-28  Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c: now the basic I/O functions should be clean
	  removed all direct references to node->content.

1998-10-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Added
	keypad support.

	* src/parser.y (dump_tree): Updated to use the new symbol table.

1998-10-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.c (dump_tree): Use extra argument.

	* src/expr.c (function_call_with_values): Use the extra argument
	to symbol_lookup

	* src/func.c (constants_init): Use the extra argument to symbol_install.

	* src/main.c (main): Invoke global_symbol_init.

	* src/symbol.h: Symbol routines now take an extra argument; the
	symboltable they work on.  Now the code can have multiple symbol
	tables (this is required for the cell range name bindings in a
	per-sheet fashion.

1998-10-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_set_zoom_factor): Zoom factor should be
	applied to to the default styles.

1998-10-27  Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c: adapted code to the new XML tree format, however
	  to compile you need to update your libxml from the CVS tree too.
	  Not a definite solution I'm thinking about a more general API
	  for XML tree values encoding/decoding. I modified the endoding
	  format but backward compatibility should be maintained.

1998-10-23  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/workbook.c: Made the menus consistent with the (unwritten!)
	UI Guidelines document.

1998-10-18  Tom Dyas  <tdyas@vger.rutgers.edu>

	* src/clipboard.c: Update to new GTK selection API.

1998-10-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-string.c (gnumeric_right): New file.  Implements
	left/right string functions.

1998-10-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.h: Add some missing variables.

1998-10-13  Jakub Jelinek  <jj@ultra.penguin.cz>

	* src/item-grid.c (item_grid_stop_sliding,
	item_grid_sliding_callback, item_grid_start_sliding):
	New functions.
	(item_grid_event): If x or y is out of canvas bounds,
	do sliding for both cell and formula selection.
	For button release from formula selection, make cell
	being edited visible afterwards.
	(item_grid_button_1): If not extending selection with
	shift, make cursor cell visible.

	* src/gnumeric-sheet.c (move_cursor,
	gnumeric_sheet_key_mode_sheet): Make cursor cell visible.

	* src/sheet.c (sheet_select_all): Make home visible.
	(sheet_make_cell_visible): New function.
	(sheet_cursor_move, sheet_cursor_set): Don't make cursor
	visible, caller has to do it himself if desired.

	* src/sheet.h (sheet_make_cell_visible): New prototype.

	* src/workbook.c (workbook_parse_and_jump): Make cursor
	cell visible.

1998-10-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/utils.c (col_name): It is amazing the number of times I
	duplicated this code.  I wonder if I took prozac by accident.
	This should fix the bug reported by Morten Welinder

1998-10-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-view.c (vertical_scroll_event,
	horizontal_scroll_event): Set the top column/row from the
	adjustment as well.

	* src/gnumeric-sheet.c (gnumeric_sheet_set_top_col,
	gnumeric_sheet_set_top_row): Export these functions to improve the
	scrolling behaviour.

1998-10-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/utils.c (cellref_name): Fixed another of column name
	decoding.  I wonder when I will learn.

1998-10-07  Jakub Jelinek  <jj@ultra.penguin.cz>

	* src/sheet.c (sheet_cursor_set): Add base_col and
	base_row arguments. Move cursor to that location, so
	that it really reflects base of the selection.

	* src/sheet.h (sheet_cursor_set): Ditto.

	* src/clipboard.c (x_selection_received): Callers changed.

	* src/gnumeric-sheet.c (gnumeric_sheet_set_selection): Ditto.
	(move_cursor): Ditto.

	* src/item-cursor.c (item_cursor_autofill_event): Ditto.
	(item_cursor_init): Fix a typo.

1998-10-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c (create_object): Rectangles have the same
	problems Ovals do in terms of Canvas cordinate constraints.
	(sheet_view_object_realize): same.

1998-10-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-view.c (sheet_view_col_selection_changed): Make sure
	the column is allocated (so that the column size change picks up
	the column during the iteration).
	(sheet_view_row_selection_changed): Same

	* src/style.c (font_init): New routine: loads a couple of default
	fonts to be used in Gnumeric.

	* src/item-bar.c (bar_draw_cell): Make the SELECTION cells display
	with a bold font.
	(item_bar_realize, item_bar_unrealize): reference and unreference
	the gnumeric_default_bold_font.

1998-10-07  Jakub Jelinek  <jj@ultra.linux.cz>

	* src/item-grid.c (item_grid_button_1): Handle shift+click
	on cells (removes last selection and selects from last base
	to current mouse location).
	(item_grid_event): Don't lock up if mouse is moved during
	selection behind left or top margin of sheet canvas (later
	on we should move the current view).

	* src/cell.c (cell_formula_changed): Cast void * to something
	reasonable.

	* src/item-bar.c (draw_bar_cell): Switch from 2 state bars
	to 3 state: whole column/row is selected in one of the current
	selections, some cells are selected in one of the selections
	or nothing is selected. Get rid of ci->selected, compute it
	from the selections.
	(item_bar_draw): Ditto.

	* src/cell.h (selected): Ditto.

	* src/sheet.c (sheet_init_default_styles, sheet_init_dummy_stuff):
	Ditto.
	(sheet_selection_row_extend_to, sheet_selection_col_extend_to):
	Remove.
	(sheet_all_is_selected): True if any of the selections covers whole
	sheet.
	(sheet_col_selection_type, sheet_row_selection_type): New functions.
	(sheet_selection_set): New function.

	* src/sheet-view.c (sheet_view_row_set_selection,
	sheet_view_col_set_selection): Remove.
	(sheet_view_col_selection_changed, sheet_view_row_selection_changed):
	Handle shift+click and ctrl+click on whole columns/bars as well.
	(sheet_view_col_size_changed, sheet_view_row_size_changed): Use
	sheet_*_selection_type instead of ci->selected.

	* src/item-bar.h (ItemBarSelectionType): Enum for the new 3 state
	column/row titles.
	(ItemBarClass): selection_changed takes modifier mask as argument.

	* src/sheet-view.h (sheet_view_*_set_selection): Remove prototypes.

	* src/sheet.h (sheet_selection_*_extend_to): Ditto.
	(sheet_selection_set, sheet_*_selection_type): New prototypes.

1998-10-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_modified): Cells from the clipboard do not have
	a Sheet parameter attached.

	* src/sheet.c (sheet_cell_add): Check the computed style:  if the
	computed style includes a format, then turn on the cell flag for
	format is set to avoid the auto guess of cell content.
	(sheet_style_compute): Now can return the flags of the style that
	were not part of the default style.

	* src/file.c (dialog_query_load_file, workbook_save_as): Put the
	window close to the mouse.

	* src/workbook.c (sheet_check_dirty, workbook_close): Do not
	cancel without warning the user if the workbook has changed.
	(workbook_new, workbook_can_close, workbook_window_destroy,
	quit_cmd, close_cmd): Reorganized the code to suit the new code to
	prevent inadvertent quits.

1998-10-06 Adrian Likins <adrian@gimp.or>

	* doc/images/*.gif: gifs for documenting the button bar
	* doc/editing.sgml, files.sgml, formulas.sgml, gnumeric.sgml,
	number-format.sgml, worksheet.sgml: doc updates, some prelim
	info on file loading/saving

1998-10-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_modified): New function, used to tag a modified
	cell in a sheet.

	* src/fn-math.c (gnumeric_average): Display error on division by
	zero.  Make the code not depend on the types returned by
	gnumeric_sum and gnumeric_count.
	(callback_function_sum): Keep sum as integers as long as
	possible instead of using floating point all the time.

1998-10-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (callback_function_sum): Do not try to be smart
	about string content.  Let the smartiness to other layers.
	(gnumeric_average): Handle division by zero on average routine.

	* src/number-match.c (create_option_list): Small bug fix:  First
	translate, then move the pointer ahead.

	* src/cell.c (str_trim_spaces): Trim space routine was removing
	everything after the first space instead of removing only the
	trailing space.
	(cell_draw): Free the original string, not the modified copy.

	* src/sheet.c (sheet_set_text): Test if the format has been
	manually set by the user before trying to do format matching.

	* src/cell.h: New flag: CELL_FORMAT_SET, used if the user has
	manually specified a format. FIXME: This information should be
	saved and loaded.

	* src/cell.c (cell_set_format): Set the CELL_FORMAT_SET flag

1998-10-03  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>

	* src/workbook.c: Added some more keys to navigate the menus.

	* gnumeric.desktop: Added Portuguese translations.

	* autogen.sh: Modified hack that patches libtool to work with
	srcdir != builddir

1998-10-02  Richard Hestilow <hestgray@ionet.net>

	* plugins/stat/stat.c: added new function NVARIANCE
	for division by N instead of N - 1, fixed div by 0 error if
	variance of a single value was taken, free'd up some mem leaks.
	(Thanks to Morten Welinder for noticing these)

1998-10-02  Richard Hestilow <hestgray@ionet.net>

	* Added new statistics plugin

1998-10-02  Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>

	* src/dialog-cell-format.c (apply_coloring_format): fix,
	fore_color was assigned twice, and back_color never.

1998-10-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.h: ItemGridSelectionType: new enumeration type
	used for item_grid->selecting to avoid shutting down entirely the
	formula selection range on mouse release.

1998-10-02 Vincent Renardias <vincent@waw.com>

	* Changed 'es@mx' into 'es_MX' for locale stuff in
	  configure.in, po/*, doc/translating.sgml.

1998-10-01 Adrian Likins <adrian@gimp.org>

	* src/*.sgml: guess what? doc updates.. mainly
	info on formatting cells.

	* src/images/number-format-*.jpg: more images

1998-10-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.c (item_grid_event): Removed unused variables

	* src/gnumeric-sheet.c (gnumeric_sheet_start_cell_selection,
	gnumeric_sheet_selection_extend,
	gnumeric_sheet_selection_cursor_place): New routines for letting
	the user use the mouse to select a cell range.  Invoked from
	item-grid.c

	* src/item-grid.c (item_grid_event): Clean and reorgranize the
	event handler, remove unused variables.

	* src/gnumeric-sheet.c (selection_expand_horizontal): -1 now means
	"shrink the selection", which means Left/Up keys shrink.
	Right/Down expand.
	(selection_expand_vertical): likewise.

	* src/format.c (format_number): Fixed memory leak: this is a
	pretty bad construction: g_string_append (s, alloc_string()).  I
	just did not see it coming.  Taking metal note of this.

	* src/number-match.c (format_create_regexp): Fixed memory leaks.
	The strings returned by create_option_list need to be released.

	* src/style.c (style_color_new): Important bug fix:  The key I was
	passing was a GdkColor, but our hash table stored StyleColors
	inside.

	* src/format.c (append_year): Better fix, suggested by Morten
	Welinder <terra@diku.dk>

1998-09-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/clipboard.c (clipboard_export_cell_region): Correct fix to
	the paste problem: dont pass current_workbook, but rather the wb
	we get.

	* src/format.c (split_time): Compute the day of week.  This was
	done before by localtime, but the new code was not doing it (thus,
	format "ddd" always reported "Sun").

	* src/item-edit.c (item_edit_reconfigure): Call reconfigure in parent.

	* src/item-cursor.c (item_cursor_reconfigure): Call reconfigure in parent.

	* src/format.c (append_year): Year 2000 fix :-).

	* src/cell.c (cell_set_text_simple): Fix, use localeconv
	information to figure out if the text is a number or not.

1998-09-30  Havoc Pennington  <hp@pobox.com>

	* src/dialog-cell-format.c (color_pick_change_notify): Change args
	to match new gnome-color-picker color_set args.

1998-09-39 Adrian Likins <adrian@gimp.org>

	* doc/autofill.sgml, sell_refer.sgml, editing.sgml,
	  gnumeric.sgml, number-format.sgml, worksheet.sgml:
	    Minor updates, new info on formatting, spelling
	    and formatting fixes.

	* doc/selection.sgml, selections.sgml: removed selection.sgml
	and added selections.sgml.

	* doc/images/worksheet-data-[1234].jpg,
	worksheet-running-calc-1.jpg, number-format-dialog-1.jpg:
	more pics to go along with the docs.

1998-09-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (quick_compute_routines): Made static

	* src/item-grid.c (item_grid_context_menus): Made static.

1998-09-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw_comment): New routine to paint a little
	red triangle if the cell hsa notes.

	* src/cell.c (cell_destroy): Destroy the comment.
	(str_trim_spaces): New routine.  Trims the spaces on a string.
	(cell_draw): Trim the leading and trailing spaces on every string
	of a multi-line text.

	* src/color.c (color_init): Allocate a red for tagging the
	spreadhseet notes.

	* src/dialog-cell-format.c (format_list_fill): Apply the
	traslation when adding the format.

	* doc/tranlating.sgml: New document that describes how to
	internationalize and localize Gnumeric properly.

	* src/workbook.c (recalc_cmd): Provide a way to force a recomputation.
	(insert_current_time_cmd): New function.  insert the current time.
	(insert_current_date_cmd): New function.  insert the current date.
	(insert_at_cursor): New utility function.

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Handle control-home

1998-09-29  Raja R Harinath  <harinath@cs.umn.edu>

	* src/parser.y (dump_tree): Update to change in `expr.h'.
	s/OP_/OPER_/g.

1998-09-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c: Changed the formatting of it to be like the rest
	of Gnumeric.

	* src/fn-math.c, src/fn-date.c: Simplify routines to use
	value_float and value_int.

	* src/expr.c (value_float, value_int): New utility functions to
	create values of type integer and float.

	* src/sheet.c (sheet_set_text): Use the matching engine on entered text

	* src/cell.c (cell_set_text_simple): New function.  Does not queue
	cell computations nor queue any redraws
	(cell_content_changed): New function: Queues recomputations for
	cells that depend on the contents of the argument.
	(cell_set_format_simple): New routine, like cell_set_format but
	does not render the value nor queues a redraw.

	* src/xml-io.c: Use workbook_recalc_all instead of workbook_recalc

	* src/fn-math.c (gnumeric_log10, gnumeric_log, gnumeric_log2):
	Range check fix was wrong.  The valid range does not include
	zero.  Thanks to Morten Welinder for noticing this.
	(gnumeric_cosh): Call cosh, not cos.
	Reordered this file to have the help always before the function
	that defines it.
	(callback_function_or): Bug fix: any non-zero value is considered
	to be TRUE.
	(gnumeric_fact): Use exp (lgamma (n+1)) to compute large
	factorials (this only applies to factorials over 40).

	* src/about.c (dialog_about): Stop using gnome_dialog_set_modal.

1998-09-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/number-match.c (format_create_regexp): Small bug fix.  I was
	making 'mm' be parsed as 'mmm'.  Support 'mmmm'.

	* src/fn-date.c (gnumeric_now, gnumeric_date, gnumeric_today):
	Note that jannuary 1st is day 1, not day zero.

	* src/format.c (append_month): Fixed handling: tm_mon is zero based.
	(split_time): Fixed silly mistake I did last time I looked at this code

	* src/cell.c (cell_set_formula): Try to set the cell style if the
	style is General.

	* src/parser.y (return_symbol): Try to match the input with the
	format matching engine.

	* autogen.sh (PKG_NAME): Another hack to get rid of the annoying
	extracing symbols list, which, slows down my link time :-)

1998-09-28  Adrian Likins <adrian@gimp.org>

	* doc/gnumeric.sgml, autofil.sgml, worksheet.sgml: More docs.
	* docs/images/worksheet*.jpg: jpg's for the new worksheet docs.

1998-09-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/number-match.c (compute_value): New file:  Implements a
	smart way of parsing numbers:  From all of the registered formats,
	it creates regexps for matching at the time the user inputs data.
	If that data matches any of the regexps, then the input is
	converted into a float, and a display format is assigned to it.

	* src/format.c (append_day, append_month): Skip the -now included-
	start at the begining for internationalization purposes.
	(split_time): Fixed the hour and second renddering.
	(format_number): Fix:  hour_seen was not being set.

	* src/sheet-autofill.c (matches_list): Allow the lists to include
	an asterisk to be able to distinguish between abbreviations and
	full descriptions.

	* src/clipboard.c (x_selection_to_cell_region): New routine.
	Creates a CellRegion of type text based on the selection provided
	by X.
	(paste_cell_flags): New function, decoupled from
	do_clipboard_paste_cell_region.   Handles new type in CellCopy.

	* src/sheet.c (sheet_selection_paste): Simplified as most of the
	work is now

	* src/clipboard.c (x_selection_received): Perform the paste
	operation, moved most of the logic from sheet.c.  This does both
	internal paste and paste from the X selection (and everything
	works the way the user expects it to behave).

1998-09-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.h: Cell Copys now can contain both Cells or plain
	text.

	* src/expr.c (function_call_with_values): Check the return value
	from symbol_lookup.

1998-09-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* plugins/python/python.c (marshal_func): Our scheduled
	indentation changes.

	* plugins/python/gnumeric_startup.py: Sample file that gets loaded
	when the Module is loaded.

1998-09-27  Raja R Harinath  <harinath@cs.umn.edu>

	* configure.in (GNOME_COMPILE_WARNINGS): New check.
	(PYTHON_EXEC_PREFIX): Figure out `exec_prefix'
	where python was installed.
	(PYTHON_LIB_LOC): Use $PYTHON_EXEC_PREFIX instead of
	$PYTHON_PREFIX.

	* src/Makefile.am (CFLAGS): Comment out.
	(gnumeric_LDFLAGS): Pass `-export-dynamic', so that plugins can
	access symbols from the `gnumeric' binary.

	* plugins/sample/Makefile.am (CFLAGS): Comment out.

	* plugins/python/Makefile.am (CFLAGS): Comment out.
	(libpython_la_LDFLAGS): Move $(PYTHON_LIB_LOC) here.

1998-09-27 Adrian Likins <adrian@gimp.org>

	* doc/{gnumeric, editing, formulas, autofill.sgml}: More
	approriate tags for the images and examples. Restructed to be a
	bit more logical.

1998-09-26  Adrian Likins <adrian@gimp.org>

	* doc/*.jpg:
	* doc/images/*.jpg: moved images to an images subdir

	* doc/gnumeric.sgml, editing.sgml, autofill.sgml: cleaned
	up the markup some

1998-09-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c (sheet_view_object_realize): Swap coordinates
	before passing to the canvas item.

	* plugins/python/python.c (init_plugin): Use the system
	installation directory to load the python scripts.

	* autogen.sh: Hack to make libtool add library dependcy
	information (it modifies the libtool file after it has been
	created).

	* src/workbook.c (workbook_set_filename): New routine to set the
	filename being edited of the workbook.

	* src/sheet-object.c (create_object): Swap arguments to the
	ellipse object to guarrantee we pass valid information.

	* src/render-ascii.c (cell_region_render_ascii): Ok, remove the
	leaks now.

1998-09-25 Adrian Likins <adrian@gimp.org>

	* doc/cell_refer.sgml, doc/gnumeric.sgml, doc/editing.sgml:
	Change the structure of the outline of the docs to make a bit
	more sense. Added some more docs too.

	* doc/cell-*.jpg, doc/selection[8,9,10].jpg: more jpgs

1998-09-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/render-ascii.c (cell_region_render_ascii): new routine that
	renders a cell selection into a an ascii string.  IT HAS PILES OF
	LEAKS.  I have to go to the movies, will fix later tonight.

	* src/clipboard.c (x_clipboard_bind_workbook): New function used
	to connect the selection signals for a workbook.
	(x_selection_handler): New function: X selection handler.
	(clipboard_export_cell_region): New function: Export our clipboard
	to the X selection.
	(clipboard_copy_cell_range): call clipboard_export_cell_region

	* src/plugin-manager.c (plugin_manager_new), plugin.c: Add
	internationalization support.

	* src/sheet.c (sheet_selection_row_extend_to,
	sheet_selection_col_extend_to): New version that makes sure the
	column information has been allocated.

	* src/workbook.c (workbook_parse_and_jump): Maximum ranges were a
	little bit off.

	* src/parser.y (return_cellref): Fixed the same bug we had in
	parse_cell_name:  The parsing of the column name to a column index
	was wrong here too.

	* src/sheet.c (sheet_row_info_set_height,
	sheet_col_info_set_width): New functions based on the older
	non-ColRowInfo versions.

	* src/sheet-view.c (sheet_view_row_size_changed,
	sheet_view_col_size_changed): Apply changes globaly if the whole
	sheet is selected.

1998-09-25 Adrian Likins <adrian@gimp.org>

	* doc/dndselection.sgml, selection.sml: more docs, some
        on creating selections, and some on moving/copying cells
	* doc/dndselection-*.jpg, selection-*.jpg: jpegs to
        accompany the docs.

1998-09-24 Adrian Likins <adrian@gimp.org>

	* doc/gnumeric.sgml, autofill.sgml: Some docs on the autofill
        stuff.
	* doc/autofill-[1..10].jpg: jpegs accompaning the autofill docs

1998-09-24  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Do not
	handle Control-a here.

	* src/workbook.c: Handle C-a with the GnomeApp accelerators

Thu Sep 24 15:12:13 EDT 1998 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c: moved to a per-XML file compression interface.

1998-09-24  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_draw): Make the anted selection
	one pixel wider.

1998-09-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_feedback_set): Add italic font setting support.

	* src/cell.c (cell_set_style): Render the value after copying a style.

	* src/clipboard.c (clipboard_paste_region): Add support for
	pasting the formats only.

	* src/xml-io.c: Destroy the extra style.

	* src/main.c (main): No need to init colors as they are auto-inited.

	* src/style.c (font_compute_hints): At font creation time store a
	couple of the font attributes for quick retrieval.

	* src/sheet-view.c (sheet_view_construct): Do not allow this
	button to have the focus either.

	* src/item-bar.c (item_bar_draw): If the whole sheet is selected,
	draw all of the columns in pressed presenstation

	* src/sheet.c (sheet_is_all_selected): Return wheter all the sheet
	is selected.

	* src/utils.c (cell_name): Fixed cell name computation.
	(parse_cell_name): Fixed parsing of the cell name.

	* src/item-grid.c (item_grid_event): More range checks.

	* src/item-bar.c (item_bar_event): range checks here too.

	* src/sheet-autofill.c (FillItem): Keep track of the originating
	cell so that we can copy the format.

	* src/cell.c (cell_set_style): New function.

	* src/sheet.c (sheet_selection_reset_only): Simple fix: For the
	row case, redraw the rows, not the columns.  Cut/paste typo.

	* src/dialog-goto-cell.c (dialog_goto_cell): Do not complain if
	there was no target cell entered.

	* src/expr.c (eval_expr): Division of integers results in a
	float.

	* src/workbook.c: Added shortcuts to the File menu.

	* src/item-cursor.c (item_cursor_autofill_event): Do not allow
	under-the-base coordinates.

	* src/sheet-autofill.c: Its "january" not "jannuary".

	* src/cell.c (cell_set_text): Enhanced number detection.

	* src/item-cursor.c (item_cursor_drag_event): Handle sheet
	boundaries.

	* src/gnumeric-sheet.c (move_cursor_vertical,
	move_cursor_horizontal): Handle sheet boundaries.

	* src/item-grid.c (item_grid_event): Handle sheet boundaries.

	* src/item-bar.c (item_bar_draw): Handle sheet boundaries.

	* src/pixmaps/bold.xpm:  Oops.  Use the bold icon I created
	yesterday.

1998-09-23  Richard Hestilow  <hestgray@ionet.net>

	* src/style.c: fixed hyphen vs hypen typo.

Wed, 23 Sep 1998 12:52:20 +0200 Paolo Molaro <lupus@debian.org>

	* src/format.c: added #include <locale.h>

	* src/pixmaps: added bold.xpm: this is from gwp, maybe
	we need a better one:-)

1998-09-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-autofill.c (string_has_number): I got too agressive
	with the test so no Strings + Numbers were being autofilled.

	* src/workbook.c (workbook_setup_edit_area): Remove the CAN_FOCUS
	flags form the accept and cancel buttons.  Bind the buttons.
	(buttons): Neither Zoom-in and Zoom-out can take the focus.
	(change_selection_font): New function to change the fonts of a
	cell range.

	* src/sheet.c (sheet_accept_pending_input): Renamed from
	sheet_accept_pending_output.

	* samples/: Added a new sample file: hypothetical-sales.

	* src/parser.y (yylex): Accept underscores in identifiers.

	* src/xml-io.c (readXmlCell): Set the content of the cell even if
	the file contains NULLS.

	* src/style.c (style_font_new): Better tolerance to missing fonts.

	* src/xml-io.c: Remove geometry setting: it has some bad side
	effects.

	* src/func.c (constants_init): Add a GNUMERIC_VERSION constant.

Tue Sep 22 20:50:11 EDT 1998 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c: set-up for compression of output. Should be tunable
	  from the interface.

1998-09-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c (writeXmlStyle): Save colors.  Save pattern.
	(readXmlStyle): return the value.  Start with an empty style. Load
	font.
	(xmlGetColorValue): Use the style color allocation routines.
	(readXmlCell): Load style. Merge styles if an element is missing.
	Trim the cell tail content (spaces and newlines at the end).
	Changed the use of all hash tables to use strings instead of
	pointers.
	(readXmlObject); Call sheet_object_realize on the object loaded.

	* src/item-cursor.c (item_cursor_autofill_event): Commted out
	debugging code.

	* src/sheet-autofill.c (string_has_number): Bug fix: it was
	assuming every string had a number at the end.

	* src/workbook.c (workbook_new): Handle to destroy signal.  Add
	Close option to file menu.

	* src/style.c, src/style.h (border_equal): Colors in the
	BorderStyler are now stored as StyleColors.

	* src/sheet.c (sheet_shift_col): Small buglette fixes: we need to
	advance our row walker here ;-)
	(sheet_shift_row): Same error was here.

	* src/format.c (format_value): Handle NaN/infinite numbers

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Last fix was a little
	too good:  Forward the keystroke events if the user is already
	editing a cell.

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Do not process events
	that might be catched by the menubar.

	* src/about.c: Add about box.

1998-09-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c: Changed the way we tag the function definitions
	before its too late.

	* src/item-cursor.c (item_cursor_point): Made the thresholds for
	the cursor a little better.

	* src/dialog-cell-format.c: Small changes to the color
	configuration code.

	* src/expr.c (do_expr_decode_tree): When decoding a tree, include
	the argument separator.  Also, loop properly trough the arguments
	being decoded.

	(function_call_with_values, function_def_call_with_values): New
	functions: these ones are for the plugins so that a plugin can
	invoke other functions in Gnumeric.

	* src/fn-date.c (gnumeric_now): The serial number returned by
	NOW() should be relative to 1900/1/1, not year zero.

1998-09-21  Adrian Likins <adrian@gimp.org>

	*src/fn-math.c: firat stab at fleshing out the help
	blurbs here.

1998-09-20  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Fix the way we computed expressions.

	* src/eval.c (cell_eval): Maintain a CELL_ERROR flag to know if
	the value is NULL due to an error or to the cell not being
	evaluated.

	* src/expr.c (funcion_call_with_values): Add a routine to allow
	plugins to call other functions defined in Gnumeric.

	* src/style.c: Handle the pattern property of the styles.

	* src/style.h: Pattern style is now just a 4 bit quantity, instead
	of a RefCounted structure.

	* src/plugin.c: Include gnumeric-util.h

1998-09-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_do_drop): Use button-1 to select
	an option on the popup menu.

	* src/fn-date.c: New file, implements various date and time
	manipulation routines.

	* src/main.c: Accept --dump-func-defs flag to dump the help
	available for our built in functions.

	* src/symbol.c: Export the symbol hash table.

	* src/format.c (render_number): Use the locale provided rendering
	number.  This will require translators to also translate correctly
	the default formats for their locale.

	* src/format.c (split_time): New code that works correctly
	in the range expected by Microsoft Excel [1900,1900+65535].  We of
	course work on a wider range than Excel can.  We can work on
	pre-1900 dates and on 1900+2^31 dates, but it might make little sense.

1998-09-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-autofill.c (fill_item_new): Trivial bug fix (I was
	using a variable before testing if it wsa ok).

1998-09-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_autofill_event): Accept pending
	input when the user autofills.

	* README, Doc/Design: Updated

	* configure.in: autoconf tests for python.

	* src/sheet-autofill.c (sheet_autofill_dir): Only fill the region
	we were requested.

1998-09-17  Tom Dyas  <tdyas@vger.rutgers.edu>

	* plugins/sample/plugin-sample.c: Update to the new plugin API.

	* src/plugin.c (plugin_load,plugin_unload): Replaced g_print's
	with gnumeric_notice. Call new API function "can_unload" to see if
	a plugin is still in use.

	* src/plugin.h: New API function "can_unload". Removed refcount.

1998-09-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-view.c (sheet_view_row_size_changed,
	sheet_view_col_size_changed): If there is a selection of columns
	or rows, change the sizes of all of the columns.

	* src/sheet.c (sheet_row_get_distance, sheet_col_get_distance):
	optimized to be O(n) instead of O(n^2) using
	(col_row_distance): new routine to compute distances.

	* src/sheet-view.c (sheet_view_redraw_cell_region): Add the
	scrolling offset to the x and y positions to draw properly

	* src/xml-io.c (readXmlSheet): Call sheet_set_zoom_factor to
	initialize the ->pixels field.

	* src/expr.h: Valued functions  now take a FunctionDefinition *
	parameter which points to the definition that was used for this
	function.  This is required for the python interpreter.

	* src/cellspan.c (row_cell_get_displayed_at): row->data might be NULL.
	(cell_unregister_span): row->data might be NULL.

	* src/main.c (main): Add support to load more than one file from
	the command line.  Drop requirement for --file option.

	* src/sheet-object.c (sheet_object_destroy): Keep track of the
	sheet->objects structure.
	(sheet_object_create_line, sheet_object_create_filled): Keep track
	of the sheet->objects structure.
	(sheet_object_realize, sheet_object_unrealize): Export these
	functions.
	(sheet_object_destroy): Keep track of the sheet->objects structure

	* src/sheet-autofill.c (autofill_cell): Implemented autofill on
	strings that contains numbers.  This allows autofill to handle
	stuff like "Product1" -> "Product2", ...

Wed Sep 16 23:56:59 EDT 1998 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c: started working on object saving/loading.

1998-09-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cursors.c (cursors_shutdown): Fix bug.  Destroy the ith
	cursor, nor cursor 0 over and over.

	* src/sheet-autofill.c (type_is_compatible,
	autofill_create_fill_items):  Better type compatible routine.
	This is required for the list fill type.
	(autofill_init): startup the autofill code.  It registers a number
	of default lists (weekdays and months for now).

1998-09-16  Tom Dyas  <tdyas@vger.rutgers.edu>

	* src/plugin-manager.c: Changed where the Remove button was made
	sensitive so that it actually sync's with the list selection.

1998-09-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c: Use the new accelerator setup from
	gnome-app-helper.

	* src/sheet-autofill.c (fill_item_new): We now have a working
	implementation of the Autofill feature.

1998-09-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-autofill.c (fill_range_new): New routine, used to
	create a fill_item

	* src/item-grid.c (item_grid_event): Use the proper cursor
	depending on the sheet mode.

	* src/sheet-object.c (object_event): Set the cursor to the arrow.
	(object_handle_event): Same.

	* src/cursors.h (cursor_set_widget, cursor_set): New macros to
	access easily the gnumeric cursors.

1998-09-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cursors.c: Define the Gnumeric cursors here.
	(create_bitmap_and_mask_from_xpm): New simplistic function to
	create cursors from an XPM inlined file.  It assumes 3 colors are
	used: none (transparency), black and white.
	(cursors_init): Create various cursors for use in Gnumeric.

	* src/item-grid.c (item_grid_event): Set the fat cross cursor on
	enter-notify

	* src/item-cursor.c (item_cursor_selection_event): Handle
	GDK_ENTER_NOTIFY and GDK_MOTION_NOTIFY to set the X window pointer
	shape properly according to the position of the mouse pointer.

1998-09-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_realize): Fix: initilaize
	the GdkWindow pointer after we have invoked our parent method.

	* src/cursors.c: New file.  Loads the various cursors used by
	Gnumeric.

	* src/item-cursor.c (item_cursor_autofill_event): Implement the
	cursor growing autofill rules.

1998-09-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_setup_sheets): Dont let the workbooks
	take the focus.
	(do_focus_sheet): Do focus the current sheet on
	page change.
	(workbook_setup_signals): Focus the GnumericSheet if no widget has
	the focus.

	* src/cell.c (cell_draw): Use the value-specified color.

	* src/format.c (lookup_color, format_color_init,
	format_color_shutdown): New routines to use StyleColors instead of
	color names.

1998-09-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (queue_cell, cell_freeze_redraws, cell_thaw_redraws):
	Support for freezing/thawing cell redraws to avoid the multiple
	calls that will be produced by appying a format.

	* src/xml-io.c: Use the new color allocation routines.

	* src/color.c: Implement color allocation routines with a Color
	context shared by all of Gnumeric's code.

	* src/item-cursor.c (item_cursor_realize): Do not allocate
	colors here now

	* src/item-grid.c (item_grid_realize): Do not allocate colors
	manually here now.

	* src/gnumeric-sheet.c (gnumeric_sheet_color_alloc): Remove.  This
	was a quick hack.

1998-09-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw): Fix center alignment code.

1998-09-10  Tom Dyas <tdyas@vger.rutgers.edu>

	* src/func.c: Made install_symbols public.

	* src/main.c: initialize the plugins.

	* src/workbook.c (plugins_cmd): Add a menu option for plugin
	loading.

	* plugin-manager.c: New file.  Implements the GUI part of the
	plugin manager.

	* plugin.c, plugin.h: New file. Support for the dynamically loaded
	Gnumeric plugin components.

1998-09-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-cell-format.c (dialog_cell_format): save and restore
	the last page used during a cell style application.

	* src/item-edit.c (item_edit_draw): Do not shift the characters
	one pixel to draw the cursor.

1998-09-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-cell-format.c (create_background_radio): Use the new
	pattern selector.

	(create_foreground_radio, create_background_radio): Use the new
	gnome color pickers.

	* src/pattern-selector.c (pattern_selector_select): New widget.
	This is a patter selector.

1998-09-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c (sheet_button_press): Lots of changes to
	finish the editing facilities for objects: you can now resize the
	objects and you can move them.

1998-09-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-cell-format.c (apply_font_format): Optimization, walk
	the row list instead of calling repeatedly the sheet_row_get
	routine.

1998-09-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/style.h: Color style is now a single color

1998-09-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet-object.c: New file.  The support for adding graphical
	objects to the spreadhseet is here.  The main entry point is
	sheet_set_mode_type which hooks to the signal handlers for object
	creation.

	Various routines for per-view creation, destruction are provided.

1998-09-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.y: Add unary '+'

	* src/gnumeric-sheet.c: Add keybinding for Control-Enter which
	fills the selection with the current text.

	* src/sheet.c (sheet_set_text): New function: sets the contents of
	an arbitrary cell to the text as if it were typed by the user.
	(sheet_fill_selection_with): Fill the selection with a string.

1998-09-04  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Fix the way the
	hotkeys were processed (c-a specifically is annoying and all of
	the control-keys were being consumed before reaching the
	item-edit).
	(gnumeric_sheet_key): implemenet control-space

	* src/dialog-cell-format.c (create_align_page): Connect to the
	toggled signal of auto return.

	* src/cell.c (cell_draw): Fix the VALIGN_JUSTIFY case.

	* src/item-grid.c (item_grid_draw): Redone the cell draw driver.

	* src/cell.c (cell_draw): Now it returns the number of cells it
	draw on top of.
	(cell_calc_dimensions): Unregister the spans when entering,
	register the span at exit.

1998-09-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/utils.c (int_get_from_range): Bug fix, we were not doing the
	range thing for the "big" case.  Thanks to Alan for finding this
	bug.

1998-09-02  Tristan Tarrant  <ttarrant@etnoteam.it>

	* configure.in: Included it in ALL_LINGUAS

1998-09-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_set_alignment): Bug fix:  optimize only if
	auto_return is the same value that we have set

	* src/gnumeric-sheet.c: Define lots of cool patterns.  Where cool
	in this sentence is defined as 13 (to leave room for the solid
	pattern).
	(gnumeric_sheet_realize): Create the pattern stipples here.

	* src/file.c (workbook_save_as, workbook_save,
	dialog_query_load_file): New file, new routines to deal with file
	save and file load dialog boxes.

	* src/workbook.c: Improved our toolbar with new actions.

	* src/xml-io.c: Fixed the order in which parameters were passed to
	sheet_cell_get/sheet_cell_new

	* src/sheet.c (sheet_clear_region): Redraw the deleted region.
	(sheet_clear_region_content): Same.
	(sheet_cell_remove): same.

	* src/sheet-view.c (sheet_view_redraw_cell_region):

	* src/cell.c (cell_set_halign): New routine:  Only changes the
	Horizontal alignment of a cell.
	(cell_set_format, cell_set_text, cell_set_font_from_style,
	cell_set_halign, cell_set_alignment): Queue a redraw to a cell
	before making changes to the properties, to repaint correctly the
	regions it covers before the change.

	* src/workbook.c (center_cmd, left_align_cmd, right_align_cmd,
	set_selection_halign):  New routines used to bind the alignment
	commands from the toolbar.

	* src/sheet-view.c (sheet_view_redraw_cell_region): Silly mistake
	fix.  Last time I touched this routine i got too excited.  I
	should use *_col_get_distance only for numbers, not rows.

	My variables were badly named and I thus commmited a mistake, fix.

1998-09-01  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-cell-format.c (create_align_page): Added support for
	the "add returns automatically" formatting option.

	* src/cell.c (cell_draw): Finished implementing my new drawing
	scheme.  It now supports all of the Excel 5.0 alignements.

	Added missing calls to cell_calc_dimensions in various spots.

	* src/workbook.c: Added a toolbar with some actions.

1998-08-31  Tristan Tarrant  <ttarrant@etnoteam.it>

	* TODO: some ideas for key shortcuts (from Excel :-)

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Implemented page up,
	page down and home keys. They don't work for selections at the moment.
	Implemented clear. It currently does a clear_all, but ideally it
	should pop-up a dialog asking the user what kind of clear he/she wants,
	as in Excel. Also clearing cells doesn't update the display.

1998-08-31  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_do_calc_dimensions): New routine that computes
	the dimenssions of a cell based on the alignement constraints of
	the cell.

	* src/item-bar.c (item_bar_event): grab the focus when selecting
	as well.

	* src/sheet-view.c (sheet_view_redraw_cell_region): Implemented
	correctly: we now use cell_get_span on every cell in the range to
	actually compute which areas need to be updated.

	* src/cell.c (cell_get_span): New routine.  Computes the number of
	columns spanned by a cell.

Sun Aug 30 17:19:02 EDT 1998 Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c: added saving of the current workbook as one
	  file, added code to load the workbook. Some part are really
	  untested/incomplete especially the style support.

	* src/main.c (main): added loading of "default.wb" on startup
	  i.e. the default workbook.

1998-08-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-bar.c (item_bar_get_line_points): New helper routine,
	used to create the position of the tracking line for the bar resizing.
	(item_bar_event, item_bar_start_resize): Fix the incremental
	tracking.

1998-08-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_row_set_internal_height): New routine used to
	change the heigh of a sheet.  Now we also keep a variable to see
	if the user has hardcoded the dimensions of the row.
	(sheet_compute_visible_ranges): New function to compute the
	visible ranges of the Sheets.

	* src/item-edit.c (item_edit_init): Init all values.
	(item_edit_set_arg): Set the child bounds
	(item_edit_draw): Use the style font for the current cell when
	drawing the cell.

	* src/dialog-cell-format.c (apply_font_format, create_font_page):
	New cell property configuration page: font selector.

	* src/cell.c (cell_set_font, cell_set_font_from_style): New
	routines to change a cell's font.

	* src/item-bar.c (item_bar_start_resize): Fix routine after the
	massive changes of yesterday.

1998-08-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/format.c (format_number): Rewrote the format parser.  I
	took Chris's number formatting routine and made it a
	number-rendering only thing to support the complexities of the
	Excel formating codes.

1998-08-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/format.c (format_number): Add support for text quoting
	inside a format (double quotes and single character quotes); Add
	support for space skipping (_) and concatenation of the allowed
	characters.
	Added color lookup.

	* src/sheet-view.c, src/sheet.c, src/gnumeric.c: Massive changes
	to the structure of the code to accomodate the fact that we should
	be able to have multiple views for a single sheet.

1998-08-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_clear_region_content): New function to remove
	the contents of a region of cells.

	* src/dialog-zoom.c (dialog_zoom): Add Zoom window.

	* src/style.c (style_color_new, style_color_ref,
	style_color_unref): New functions.  Color for a cell will be kept
	as part of the style.  Hack note: if valid_flags reports
	STYLE_COLOR style->color might be NULL: this means use the default
	sheet colors for this cell.

	* src/cell.h: Get rid of GdkColor field.

	* src/item-grid.c (item_grid_draw_cell): Draw selected cells
	smartly.  Now we invert the resulting area (this works for my
	16-bpp display, have to try the XOR trick tomorrow on a paletted
	display).
	(context_clear_cmd): New context command that clears the content
	of a cell region.

1998-08-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_row_selection_changed,
	sheet_col_selection_changed): Use sheet_selection_clear_only to
	avoid getting two selections.
	(sheet_col_add): Keep track of the last used columns/rows.
	(set_tip_label): New routine to set the tooltip to the value of
	the current scroll section
	(vertical_scroll_change, horizontal_scroll_change): Update the
	tooltip to reflect the current value.
	(vertical_scroll_event, horizontal_scroll_event): Create and
	destroy the tooltips
	(sheet_col_add, sheet_row_add): Keep track of the maximum sheet size

	(sheet_delete_col): New public routine.
	(sheet_delete_row): New public routine.
	(sheet_move_column): New helper routine, it was part of
	sheet_insert_col before.
	(sheet_insert_row): Manipulate the structures carefully.  I was
	changing a list that I was using.

	* src/dialog-delete-cells.c (dialog_delete_cells): Use
	sheet_delete_col, sheet_delete_row.  This completes this dialog
	box.

1998-08-24  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_shift_row): Bug fix:  We can not be making
	changes to the column/row lists when we are walking them.

	* src/cell.c (cell_formula_relocate): Re-parse the expression
	after relocating the formula: the resulting expression might have
	invalid cell references.

	* src/sheet.c (sheet_shift_col): Implement the column shift
	operation.

1998-08-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-cell-format.c (apply_align_format): Actually store
	the style selection on the computed style.

	* src/eval.c (intersects): Write in terms of range_contains.

	* src/utils.c (range_contains): New utility routine.

	* src/style.c (style_destroy): It now allow
	(style_merge_to): Implement new routine for gradually compute the
	full value of a style.
	(style_duplicate): Make the routine duplicate only
	the valid fields, not all of them.
	(style_destory): account for the fact that now we might have
	non-complete styles.
	(sheet_style_compute): Make it fully functional.

	* src/sheet.c (sheet_cell_formula_link,
	sheet_cell_formula_unlink): Now we maintain the dependencies at
	formula link/unlink time
	(sheet_shift_row, shift_insert_col, shift_insert_row): Compute the
	dependencies for any changed cells and recalculate.
	(sheet_style_attach): Implement.
	(sheet_destroy): Destroy the column and row information.

	* src/item-grid.c (context_insert_cmd): Use the
	dialog_insert_cells instead of the dummy test code we had before.

	* src/workbook.c (insert_cols_cmd, insert_rows_cmd): Implement.

1998-08-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_redraw_all): Redraw also the column and row
	bars.
	(sheet_insert_row): Fix.  I was accessing the wrong information;
	Fix, on the row selection code;
	(sheet_cell_add): Recompute the dimensions properly of the cell
	after insertion (this is to fit the use of this routine in a new
	context).
	(sheet_shift_row): Fix the

	* src/dialog-insert-cells.c (dialog_insert_cells): Learn to use
	GtkCauldroun's way of dealing with radio buttons.

	* src/sheet.c (sheet_selection_paste): Now the clipboard fills the
	region which is the union of the current selection and the
	information in the clipboard.

	* src/clipboard.c (clipboard_paste_region): Check the region where
	we pasted for possible dependencies, and if so, queue a recalc.
	(clipboard_paste_region): It now takes a region to be filled
	instead of just using the contents of the clipboard.

	* src/eval.c (search_cell_deps): Updated to search on cell ranges
	instead of a single cell.
	(region_get_dependencies): Get dependencies for a complete
	region.
	(cell_get_dependencies): Reworked to use new scheme

1998-08-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/dialog-insert-cells.c: New file.  Handle the insert cells
	dialog box.  This uses GtkCauldron for the first time.  That
	routine is soooo cool!

	* src/sheet.c (sheet_cell_remove): Remove the memory used by the
	key in the hashtable as well.
	(sheet_insert_col): new routine used to insert columns in the
	spreadsheet, it is pretty elaborate.
	(sheet_col_destroy, sheet_row_destroy): New routine used by the
	column-overflow logic in the insertion routines.
	(sheet_cell_add): Only attach a style to a cell if it does not
	have any yet.
	(sheet_move_row): New routine: shifts a row a number of columns.
	(sheet_verify_selection_simple): New routine for warnging about
	the multiple-selections case.  In the future it should provide a
	help context.
	(sheet_insert_row): Implement this new routine.

	* src/clipboard.c (paste_cell): Simplify.

	* src/cell.c (cell_make_value, cell_formula_relocate): New routines
	based on the code that was done for the clipboard.  Now they are
	used in other places as well.  cell_make_value actually fixes a
	potential bug that caused formulas to reappear magically on
	paste-values commands (never hit the bug, but it was there, I
	swear to god).

1998-08-20  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_set_cursor_bounds): New
	routine to set the cursor bounds.

	* src/sheet.c (sheet_selection_paste): Set the cursor and the
	selection to the new spot.

	* src/dialog-paste-specia.c: Move the dialog code here.

	* src/format.c (format_number): Do not abort after we have
	processed the whole format, but rather append the rest of the
	format string.
	(style_entry_free): Kill the warnings

1998-08-20  Chris Lahey  <clahey@umich.edu>

	* src/style.h: Added StyleFormatEntry and changed StyleFormat.

	* src/format.c: Added multi-field formatting.  format_text now
	takes a StyleFormatEntry.

	(check_valid): Returns true if the given StyleFormatEntry is
	applicable to the given value.

1998-08-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/format.c (format_value): The new entry point for formating
	values.  This takes a Value instead of a float.
	NULL is never returned from format_value now: if there is a format
	error, then value_string is used to display it.

	(format_compile): This routine should always return, it cant fail,
	in the worst * case it should just downgrade to simplistic formatting.

	(format_destroy): This routine is invoked when the last user of
	the format is gone (ie, refcount has reached zero) just before the
	StyleFormat structure is actually released.  resources allocated
	in format_compile should be disposed here

	* src/sheet.c (sheet_cursor_set): New function.  Use this instead
	of the view-specific routine (gnumeric_cursor_set).

	* src/gnumeric-sheet.c (gnumeric_sheet_can_move_cursor): ':' is a
	valid separator for activating the cursor-cell selection mode.

	* src/cell.c (cell_auto_align): New function.  This tries to
	auto-align the cell contents depending on the value type.

	* src/dialog-cell-format.c (cell_properties_apply): Create a
	single style that is attached to a region and let each property
	page fill the structure in.
	(apply_align_format): Implement.  No wonder it was not working
	last night.
	(apply_number_formats): Fill the passed Style structure only.
	Remove obsolete code.

	* src/sheet.c (sheet_cell_new): New cells are born with auto-style
	flag turned on.

	* src/clipboard.c (paste_cell): Render the cell after computation
	is finished.  Clean up the usage of the cell manipulation;  make
	auto-style work on pasted cells.

	* src/str.c (string_ref): Return the value referenced.

	* src/item-cursor.c (item_cursor_do_drop): New function:  Handles
	the action from the cursor drag operation.

	* src/gnumeric-util.c (run_popup_menu): New utility function to
	popup menus created from an array of strings.

	* src/sheet.c (sheet_selection_cut, sheet_selection_copy): They
	now return whether it was possible to perform the operation.

1998-08-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_set_alignment): Provide a way to change the
	cell alignment.

	* src/dialog-cell-format.c (create_align_page): Implement the cell
	formats/alignment page.

	* src/item-cursor.c (item_cursor_realize): Add stypple support for
	drag and autofill cursors.

	* src/gnumeric-sheet.c (gnumeric_sheet_compute_visible_ranges):
	Make the selected column and row be always fully visible (ie, use
	the ->last_full_[col|row] instead of last_visible_[col|row].

	* src/cell.c (cell_set_format): Call cell_queue_redraw after
	changing the cell contents.

1998-08-18  Chris Lahey  <clahey@jennifer.reshall.umich.edu>

	* src/format.c (format_number): Fixed the small '.' error.
	(decimal point shown even if not requested in numeric
	conversions.)

1998-08-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/eval.c (cell_eval): Use the formating routine now.

	* src/expr.c (value_format): Format a Value with a StyleFormat.

	* src/item-cursor.c (item_cursor_set_bounds_visibly): Force a
	canvas update after moving the selection.

	* src/sheet.c (sheet_selection_to_list): New function: generates a
	list of cells from the sheet->selections list.

	* src/style.c: Now styles have a "valid_flag" that has a bit
	turned on for those parts of the style that are actually used.
	This is required for adding the regions of style application in a
	Sheet.
	(style_destroy): destroy only those valid parts in a style.

	* src/dialog-cell-format.c: New file.   Implements the cell/format
	dialog box.

	* src/cell.c (cell_render_value): new routine used to render the
	cell->value into cell->text.
	(cell_queue_redraw): new routine to queue individual redraws of
	the screen.  I believe it is buggy, as the screen does not update
	after an apply in the cell/format dialog box.
	(cell_set_format): New routine to change the format of an existing
	cell.

	* src/format.c (format_number): Added color argument;  smaller
	fixes to use it within gnumeric.

	* src/main.c (main): Include i18n setup as per namsh's suggetion.

1998-08-15  Chris Lahey  <clahey@umich.edu>

	* src/format.c: Merged format_text and format_date into
	format_number.
	Added parsing of am/pm.
	Added a short format description.

1998-08-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-cursor.c (item_cursor_drag_event): Make the drag cursor
	actually dragable.

	* src/item-grid.c (item_grid_event): Use the converted cordinates.
	(item_grid_find_row, item_grid_find_col): Rename and export these
	routines to be used by the ItemCursor.

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Do not remove the
	selection string when the input has been accepted.

	* src/expr.c (expr_tree_ref): Strategy change:  Now every ExprTree
	node is properly refcounted, as soon we will start sharing parts
	of the ExprTree between cells.
	(do_expr_decode_tree): Decoding an expression now takes into
	account the precedence of the operators and uses paretheses only
	when they are actually required.

1998-08-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-grid.c (item_grid_event): Implemented context sensitive
	menu for the grid.
	(item_grid_event): Use <control> instead of <shift> for extending
	a selection

	* src/clipboard.c (clipboard_paste_region): After pasting, trigger
	a recalculation.

1998-08-14  Jaka Mocnik  <jaka.mocnik@kiss.uni-lj.si>

	* src/clipboard.h: changed PASTE_ALL to PASTE_ALL_TYPES.
	* src/gnumeric-util.c (gtk_radio_group_get_selected):
	changed to work. I guess it is a bit weird trying to
	access a next member of an int ;).

1998-08-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (workbook_set_region_status): Support going to a
	cell by typing the cell name on the entry line.
	(workbook_parse_and_jump): new routine for jumpting to a specific
	cell.

	* src/dialog-goto-cell.c: New file.  Implements the goto cell
	dialog box.

	* src/clipboard.c: implemented paste-special dialog box.
	(clipboard_paste_region): Redraw after clearing and after each
	cell is pasted.

	* src/sheet.c (sheet_selection_changed_hook): Display the current
	selection.
	(sheet_selection_walk_step): Fix the movememnt code to walk
	correctly over the selection.

	* src/cell.c (cell_formula_changed): New function used to notify
	of a cell formula change (required for recomputation and to add
	the cells to the proper computation lists).

	* src/expr.c (expr_decode_tree): Goes from ExprTree to a string
	representation.  This is required when copying cell values to
	recompute the string that is displayed to the user.

	* src/util.c (cellref_name): New function, get a string
	representation for a CellRef.
	(parse_cell_name): New function, returns integers for col, row
	from a cell string representation.

Thu Aug 13 19:08:28 1998  Tom Tromey  <tromey@cygnus.com>

	* src/xml-io.c: Look in gnome-xml for tree.h and parser.h.

Thu Aug 13 00:02:23 EDT 1998  Daniel Veillard <Daniel.Veillard@w3.org>

	* src/xml-io.c : adapated to the new version 0.2 of the xml lib

1998-08-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/fn-math.c (gnumeric_bin2dec): finish implementation of
	BIN2DEC

	* src/item-grid.c (item_grid_event): Call
	gnumeric_sheet_accept_pending_output before moving the cursor.

	* src/item-cursor.c (item_cursor_event): Event handler for the
	item_cursors.

	* src/item-cursor.h: More cursor types: ITEM_CURSOR_AUTOFILL (for
	the case where the small drag box is used) and ITEM_CURSOR_DRAG
	(for when the item is being dragged).

	* src/clipboard.c (clipboard_paste_region,
	clipboard_copy_cell_range): New functions for cut and paste
	support.

	* src/cell.c (cell_destroy, cell_copy): New functions.  Preparing
	for cut and paste support.

	* src/expr.c (value_copy_to): Finish implementing all cases.
	(value_duplicate): New function.  Duplicates a value.

	* src/sheet.c (sheet_cell_remove): Implement a way to remove
	cells.

	* src/eval.c (workbook_recalc): New recomputation strategy:  We
	now keep a generation flag for determining whenever a cell value
	has been recomputed for this generation.  The generation variable
	is a char.  Everytime we are about to overflow the char, we walk
	the list of formulas and reset the generation flag.

1998-08-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/eval.c (workbook_recalc): Queue computation for cells that
	have been recomputed.

	* src/expr.c (eval_expr): Implement the concatenation operator.

1998-08-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Implement comparission.

	* src/str.c (string_unref_ptr, string_unref): Remove the string
	from the string_hash_table when the refcount reaches zero.

	* src/symbol.c (symbol_unref): Remove the symbol from the hash
	table when the refcount reaches zero.

1998-08-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c: Renamed all references to (GnumericSheet
	*) called "sheet" to "gsheet".

	* src/sheet.h: Renamed parent_workbook in to be workbook.

	* src/cell.h: Include a Sheet * in the cell.  Make routines that
	required a Sheet parameter only use the Cell parameter now.

	* src/eval.c (add_tree_deps, cell_add_dependencies,
	add_value_deps, dependency_hash_init, dependency_hash,
	dependency_equal): New functions to maintain the
	DependencyRanges.

	* src/fn-math.c
	(gnumeric_max): Implemented function MAX.
	(gnumeric_min): Implemented function MIN.

1998-08-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Implemented exponentiation.
	Removed the code that used GMP.

	* src/parser.y (yylex): Bug fix: allocate the string.

	* src/sheet.c (CRowSort): Sort in the other direction my list of
	cells.
	(sheet_cell_foreach_range): Iterate over the lists with ->next,
	not with ->data.   Important bug fix.

	* src/parser.y (return_cellref): Fix the cell parsing routine to
	store the correct information.

	* src/fn-math.c: Moved the math functions to this file.
	(gnumeric_sum): Make it use the new function_iterate_argument_values.
	(gnumeric_and): Implement AND function.
	(gnumeric_or):  Implement OR function.

	* src/func.c (function_iterate_argument_values): New function to
	ease the creation of functions with multiple arguments.  It
	generates Value * for a list of expressions that might include
	arrays and cell ranges.

	* src/expr.c (cell_get_col_row): New routine to get the absolute
	cordinates with respect to an evaluation column and row.

	* src/parser.y (return_symbol): Support for constants.

	* src/expr.c (value_copy_to): Support for making Value copies
	(only used for our constants actually).

	* src/symbol.c (init_constants): Declare TRUE and FALSE.

	* src/sheet.c (sheet_selection_changed_hook): Autocomputation
	routine.  Whenever selection changes this routine will execute an
	arbitrary expression (kept in the workbook) and display the
	result.

1998-08-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (value_release): Release the value.
	(value_release): Add support for arrays.

	* src/symbol.c (g_strcase_hash): Use case insensitive hash tables.

	* src/item-bar.c (item_bar_unrealize): Call parent unrealize
	(item_bar_realize): Call parent realize

	* src/item-grid.c (item_bar_unrealize): Call parent unrealize
	(item_bar_realize): Call parent realize

	* src/item-cursor.c (item_bar_unrealize): Call parent unrealize
	(item_bar_realize): Call parent realize.
	(item_cursor_point): Implement correctly.

	* src/expr.c, parser.y (eval_expr): Added comparission operators.

	* src/fn-sheet.c (gnumeric_if):
	Implemented IF function.
	Implemented SELECTION function.

	* src/func.c (gnumeric_sum):
	Implement SUM function.

1998-08-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_funcall): No need for the the extra argc
	parameter on the functions with strong prototypes.

	* src/func.c (gnumeric_cosh): More functions.

	* src/item-edit.c (item_edit_set_arg):

	* src/gnumeric-sheet.c (cancel_pending_input): Cancel changes
	made.
	(start_editing_at_cursor): Make a copy of the original text, and
	clear the actual text to fix the redraw problems.

	* src/item-edit.c (item_edit_set_editor): Make the cursor be in
	sync with the GtkEntry by hooking to the "event" signal and
	catching key press and key release events.

	* src/func.c: More functions added.

	* src/symbol.c (g_strcase_equal): Symbol hash table does is
	case-insensitive.

	* src/expr.c (eval_funcall): Added function evaluation.

1998-08-03  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/eval.c: New file.  Move the evaluation routines here.

	* src/func.c: Functions will go here.

	* src/parser.y (alloc_glist): Keep track of argument lists.

1998-07-30  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/sheet.c (canvas_bar_realized):
	* src/gnumeric-sheet.c (gnumeric_sheet_realize): Neat X hack:  set
	the window backing pixmap to NULL, so that the window does not get
	cleared when it receives an exposure event.  It will just leave
	whatever bits were on the window when the expose happened.  This
	allows us to avoid flicker.  *** MIGUEL, LOOK AT THIS ***

	* src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible): Fixed
	width/height confusion (cut&paste bug).

	* src/sheet.c (new_canvas_bar): Set outrageously big scrolling
	limits.  This has to be fixed to use the real sheet's dimensions.
	(sheet_new): Use correct table expansion parameters.

	* src/sheet.c (sheet_set_zoom_factor): Use gnome_canvas_scroll_to().

	* src/gnumeric-sheet.c (gnumeric_sheet_set_top_row): Scroll using
	gnome_canvas_scroll_to().
	(gnumeric_sheet_set_top_col): Likewise.
	(gnumeric_sheet_make_cell_visible): Get the offsets using
	gnome_canvas_get_scroll_offsets().
	(gnumeric_sheet_make_cell_visible): Use gnome_canvas_scroll_to().

	* src/gnumeric-sheet.c (gnumeric_sheet_color_alloc): Query the
	colormap with gtkdget_get_colormap(), because the canvas structure
	no longer has a colormap field in it.
	(gnumeric_sheet_set_top_row): Use the canvas layout adjustment to
	scroll.
	(gnumeric_sheet_set_top_col): Use the canvas layout adjustment to
	scroll.
	(gnumeric_sheet_make_cell_visible): Get the values from the canvas
	adjustments.

	* src/sheet.c (new_canvas_bar): Call gnome_canvas_new() correctly.
	(scroll_to): New helper function to scroll a canvas.
	(sheet_set_zoom_factor): Use scroll_to().

	* src/gnumeric-sheet.c (gnumeric_sheet_create): Do not call
	gnome_canvas_construct() at is does not exist anymore.
	(gnumeric_sheet_new): Use outrageously big values for the canvas
	scrolling region, for now.  This needs to be fixed.
	(gnumeric_sheet_make_cell_visible): Use the canvas layout
	adjustment to scroll.

1998-07-30    <miguel@nuclecu.unam.mx>

	* src/parser.y (alloc_clean): Free the record that tracks the
	allocation records.
	(alloc_clean): Handle Strings.
	(alloc_list_free): New function: cleans up the allocation list.

	* src/gnumeric-sheet.c (gnumeric_sheet_load_cell_val): Fix to use
	the new Strings.

	* src/cell.h: Use the new Strings instead of the Symbols.  That
	was just a stupid idea.

	* src/str.c (string_ref): New file:  Implements string sharing.

	* src/symbol.c (symbol_install): Use our copy of the allocated key
	when installing the symbol.

1998-07-29    <miguel@nuclecu.unam.mx>

	* src/symbol.c (symbol_unref_ptr): New function that does symbol
	unreferencing and if the reference count reaches zero, it also
	sets the value pointed to NULL.

	* src/sheet.c (cell_set_text): Release evaluation tree after
	entering new contents in a cell.

	* src/sheet.h (Cell): We now keep all of the character information
	as refcounted Symbols.

	* src/expr.c (eval_node_release): Renamed and made static.  New
	allocation strategy: EvalTree's top node are now refcounted to
	simplify cell duplication.
	(eval_expr): Now it takes column and row arguments for evaluating
	the expression in that context.
	(expr_parse_string): Same.

	* src/parser.y: Renamed EvalNode to EvalTree.
	(return_cellref): CellRefs now contain offsets relative to the
	current column/row if the references are not absolute.

	* src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible): Use new
	helper routines for doing the scrolling.  Scroll vertically.
	(gnumeric_sheet_set_top_row, gnumeric_sheet_set_top_col): New
	routines for keeping the contents of the canvas and the bars in
	sync.
	(gnumeric_sheet_new): Take the ItemBars for the columns and rows
	as a parameter now.

	* src/sheet.c (sheet_select_all): New routine: select the complete spreadsheet.

	* src/item-bar.c (item_bar_class_init): Signal now takes an extra
	argument which indicates the beginning of a column selection.

	* src/sheet.c (sheet_selection_col_extend_to,
	sheet_selection_row_extend_to): New methods for implementing the
	extending column and row selection.
	(sheet_row_selection_changed, sheet_col_selection_changed): Now
	they use the new parameter to start the selection.

1998-07-28    <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_cell_new): Insert the row, not the cell in
	the column list.
	(sheet_cell_foreach_range): Fixety fix

1998-07-27    <miguel@nuclecu.unam.mx>

	* src/sheet.c (sheet_cell_new): Cells are born with their propper
	width.
	(cell_set_text): Width should include the margins.

	* src/main.c (main): Rename currentWorkbook to current_workbook,
	so that it follows the style of the rest of my code ;-)

	* src/item-cursor.c (item_cursor_init): Add a timeout handler for
	drawing the anted animation.
	(item_cursor_set_bounds): Setup the Canvas Item bounding box when
	the bounds of the cursor change.

	* src/gnumeric-sheet.c (start_cell_selection): Create the
	selection cursor at the same position the regular cursor is.

	(gnumeric_sheet_init): Share colors between items and the canvas.

Sun Jul 26 17:39:53 EDT 1998  Daniel Veillard <Daniel.Veillard@w3.org>

	* configure.in: added GNOME_XML_CHECK

	* src/Makefile.am: added xml-io.c to GNUMERIC_BASE_SOURCES and
	  GNOME_XML_LIB to gnumeric_LDADD and test_parser_LDADD

	* src/xml-io.[ch]: Added, provides saving to XML format

	* src/main.c: added currentWorkbook global variable

	* sheet.h: added currentWorkbook global variable

	* workbook.c: added currentWorkbook global variable, a Save menu with
	  save_cmd callback.

	* src/sheet.c: cell_set_text, initialized is_float to zero

	* doc/saving.txt: Added, what to be saved and first example.

1998-07-25  Miguel de Icaza  <miguel@redhat.com>

	* src/item-cursor.c (item_cursor_draw): Minimal code to support
	the anted-cursor.  There is a bug, I just dont know where :-)

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Added support for
	selecting cell values with the cursor keys.
	(start_cell_selection): Starts the interactive selection of a cell
	(stop_cell_selection): Stops the interactive selection of a cell.
	(selection_remove_selection_string): Removes the text that has
	been inserted into the text line for selection purposes.
	(selection_insert_selection_string): Updates the entry with the
	contents of the selection range.
	(selection_expand_vertical, selection_expand_horizontal): Expands
	the selection.

	* src/item-cursor.h (item_cursor_set_bounds): Change prototype to
	reflect actual argument names.  I was a victim of my own lazyness.

	* src/gnumeric-sheet.c (move_cursor_vertical, move_cursor,
	move_cursor_horizontal): Renamed to allow formatting in 80
	columns.

	* src/utils.c (cell_name): New routine.  Renders a cell name.

	* src/sheet.h (IS_SHEET): Added a signature to Sheet strucutres
	and a signature to test with.

	* src/symbol.c (symbol_ref_string): New function: it makes sure a
	symbol exists: it either increases the refcount for an existing
	string, or creates it.

1998-07-24    Miguel de Icaza <miguel@redhat.com>

	* src/workbook.c (workbook_get_current_sheet): New function.

	* src/sheet.c (cell_set_formula): New function.  Loads a cell with
	a formula.

	* src/parser.y (eval_value_string): New routine to return a string
	representation of a Value *.  This should use the format.c that
	Chris is working on, but we need Chris to commit his changes ;-).
	For now it uses %d and %g.

	* src/numbers.h: Compatibility functions to make the code work
	with or without GMP.

	* src/gnumeric-sheet.c (gnumeric_sheet_set_current_value): Sets
	the value to whatever happens to be on the input line.

	* src/expr.c (eval_cast_to_float): New function: casts a value to
	float.
	(eval_cell_value): new function.
	(eval_node_value): evaluates the expression tree.

	* src/cell.h: Keep the computed value as well.

Sat Jul 25 14:10:23 1998  Tom Tromey  <tromey@cygnus.com>

	* src/Makefile.am (test_parser_LDADD): Added INTLLIBS.
	(test_format_LDADD): Likewise.
	(check_PROGRAMS): Renamed from noinst_PROGRAMS.

	* src/format.c (do_roundup): Renamed from roundup (my Linux
	install has a 2-argument `roundup' macro in sys/types.h).  Now
	static.

1998-07-25  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>

	* configure.in (ALL_LINGUAS): Added "pt".

1998-07-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/parser.y (yylex): Numbers are parsed correctly.  Bits of
	Oleo number parsing plugged in.

	* src/util.c, src/util.h: New files with assorted number utilities.

	* src/numbers.h: New file: takes care of using gmp or regular
	double/int.

	* src/expr.c (eval_release_node): Implement.
	(eval_release_value): New function.

	* src/sheet.c (sheet_col_selection_changed,
	sheet_row_selection_changed): Implement.
	(sheet_selection_clear, sheet_selection_clear_only): Splitted
	functionality into two routines.
	(sheet_selection_clear_only): Remove any marks from the bars.
	(sheet_row_set_selection, sheet_col_set_selection): Implement.

	* src/item-bar.c (is_pointer_on_division): Return the column
	changed.

	* src/item-grid.c (item_grid_draw_cell): Fix the computation for
	right indentation.

1998-07-17  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_key): Add support for
	keyboard-selection.

	* src/item-edit.c (item_edit_destroy): Request a repaint for every
	area we touched at destruction time.

	* src/sheet.c (sheet_redraw_cell_region, sheet_redraw_selection):
	New functions to request that only a specific range of cells be
	redrawn.
	(sheet_selection_extend_vertical,
	sheet_selection_extend_horizontal): new routines to deal with
	mouse selection.
	Use those functions all over sheet.c

1998-07-19  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/gnumeric-sheet.c src/item-bar.c src/sheet.c: Removed the
	canvas parameter from calls to gnome_canvas_item_new().

1998-07-18  Raja R Harinath  <harinath@cs.umn.edu>

	* src/Makefile.am (noinst_PROGRAMS): Don't bother installing
	`test-format' and `test-token'.

1998-07-15  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/gnumeric-sheet.c (gnumeric_sheet_cursor_set): Add tracking.

	* src/sheet.c (sheet_destroy): Add destructor.
	(sheet_selection_append): New functions for managing the cell
	selection.

	* src/style.c (style_destroy): Add destructor.

1998-07-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-edit.c: New file.  Adds the editing widget to the
	spreadsheet.

1998-07-15  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/item-bar.c (item_bar_event): Use
	gnome_canvas_item_grab/ungrab() now that they exist.

1998-07-14  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* src/item-bar.c (item_bar_realize): Set the item_bar->gc's
	foreground color to black (it is by default initialized to pixel
	value 0, which is not black on all default colormaps).
	(bar_draw_cell): Center the cell's text correctly.

	* src/gnumeric-sheet.c (gnumeric_sheet_create): Use
	gnome_canvas_construct() to initialize the canvas.

	* src/item-bar.c (get_col_name): Fixed generation of column names.
	(get_row_name): Rows are numbered from 1, not 0.  Also, assert
	that the row number is less than 65536.
	(item_bar_event): Grab/ungrab the mouse on button press/release.
	(item_bar_event): On motion_notify, only call set_cursor() if we
	are not resizing.
	(item_bar_event): Only take care of enter_notify events if we are
	not resizing.

	* po/es.po configure.in: Added Spanish translation.

1998-07-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/item-bar.c (item_bar_event): Do world->canvas cordinate
	conversion to get zoomed resizng working).
	(bar_draw_cell): Minor look fix.

	* src/sheet.c (sheet_row_set_height): Silly mistake, add the newly
	created rowinfo to the row array, not the column array.

1998-07-11  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/style.c (style_duplicate): New function.  Does style
	duplication.

	* src/sheet.c (sheet_new): Simple hook signals to test the code.

	* src/item-bar.c (item_bar_class_init): Added signals:
	size_changed and selection_changed.
	(item_bar_event): Add support for resizing columns and rows.

1998-07-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/style.c: New file.  Implement the style manager for the
	spreadsheet.

1998-07-09  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/*: Dropped the ColInfo and RowInfo structures, they are now
	unified into a single ColRowInfo structure, they were really the
	same thing.  Thanks to Federico for the suggestion.

	* src/item-grid.c:
	New paint strategy for the grid (uses what apparently Excel does);
	It now correctly uses the coordinate system from the canvas (ie,
	zoom in and zoom out work);

	* src/item-cursor.c: Implemented new version of the cursor.  I am
	using black lines for the cursor.  One day, when I find the
	strenght, I will use inversion and the inversion will do the right
	thing.

	* src/item-bar.c: New file.  Implements the titles for the columns
	and rows;

	* src/*: made stuff fit together.

1998-07-06  Raja R Harinath  <harinath@cs.umn.edu>

	* configure.in: Remove duplicated AM_GNU_GETTEXT.

Sat Jul  4 15:07:49 PDT 1998 Manish Singh <yosh@gimp.org>

	* fixed up intl autoconf stuff

1998-07-04  Chris Lahey  <clahey@umich.edu>

	* src/Makefile.am (bin_PROGRAMS): Added test-format to compile the
	formatting tests.

	* src/format.c (format_time): Added date formatting.
	(format_text): More accurate numeric formatting.

1998-07-03  Chris Lahey  <clahey@umich.edu>

	* src/format.c: New file to do excel style number formatting.

1998-07-03  Chris Lahey  <clahey@umich.edu>

	* ChangeLog: Cleared the gnome-games entries from the ChangeLog.
