1. 25 Oct, 2001 1 commit
    • Wayne Schuller's avatar
      New canvas based header and footer preview widget. The customize · f0770524
      Wayne Schuller authored
      2001-10-21  Wayne Schuller <k_wayne@linuxpower.org>
      
      	* dialog-printer-setup.c : New canvas based header and footer preview
      	  widget. The customize header/footer widget now also uses a
      	  GnomePropertyBox for UI consistency.
      	* print.glade : Updated.
      	* hf-config.glade : Updated.
      
      2001-10-25  Jody Goldberg <jgoldberg@home.com>
      
      	* src/ranges.c (range_trim) : decrease lobotomization factor.
      
      2001-10-23  Jody Goldberg <jgoldberg@home.com>
      
      	* src/expr-name.c (named_expr_new) : renamed from add_real, simplified
      	  interface.
      	(expr_name_add) : take and store a parse position.
      	(expr_name_create) : ditto.
      	(expr_name_destroy) : adjust to stored parsepos.
      	(expr_name_unlink) : ditto.
      	(expr_name_sheet2wb) : ditto.
      	(expr_name_init) : ditto.
      	(expr_name_as_string) : renamed from expr_name_value.
      	(expr_name_eval) : renamed from eval_expr_name.
      
      	s/eval_expr/expr_eval/
      
      	* src/expr.c (do_expr_tree_to_string) : Use value_as_string in most
      	  places.
      	* src/value-sheet.c (value_cellrange_get_as_string) : delete bogus
      	  useless arg.
      	(encode_cellref) : delete redundant.
      
      	* src/parse-util.c (cellref_name) : ICK!  XL wraps relative references
      	  that are out of bounds.
      f0770524
  2. 21 Oct, 2001 1 commit
  3. 27 Jul, 2001 1 commit
  4. 12 Jul, 2001 2 commits
    • Morten Welinder's avatar
      Fix. · d735b77f
      Morten Welinder authored
      2001-07-12  Morten Welinder  <terra@diku.dk>
      
      	* fn-math.c (gnumeric_lcm): Fix.
      d735b77f
    • Morten Welinder's avatar
      New function. · 3c2b4775
      Morten Welinder authored
      2001-07-12  Morten Welinder  <terra@diku.dk>
      
      	* src/mathfunc.c (range_multinomial): New function.
      
      	* configure.in (evolution): Fix check, but see BUGS.
      
      2001-07-12  Morten Welinder  <terra@diku.dk>
      
      	* fn-math.c (gnumeric_multinomial): Cleanup.
      3c2b4775
  5. 18 Jun, 2001 1 commit
  6. 03 Jun, 2001 1 commit
    • Morten Welinder's avatar
      Do arg type checking here. (fn_def_new): Not here. (function_remove): Free · 5668bf4c
      Morten Welinder authored
      2001-06-03  Morten Welinder  <terra@diku.dk>
      
      	* src/func.c (function_add_args): Do arg type checking here.
      	(fn_def_new): Not here.
      	(function_remove): Free cached arg types.
      	(function_add_args): Pre-calculate arg counts and types.
      	(function_def_get_full_info_if_needed): Ditto.
      	(function_call_with_list): Use pre-calculated arg counts and
       	types.
      	(function_add_name_only): Use FUNCTION_NAMEONLY for type.
      
      2001-06-03  Morten Welinder  <terra@diku.dk>
      
      	* fn-information.c (information_functions_init): Don't supply arg
       	spec for node function.
      	* fn-lookup.c (lookup_functions_init): Ditto.
      	* fn-math.c (math_functions_init): Ditto.
      	* fn-eng.c (eng_functions_init): Ditto.
      
      	* fn-date.c (gnumeric_datedif): Constify.
      5668bf4c
  7. 14 May, 2001 1 commit
  8. 24 Feb, 2001 1 commit
    • Chyla Zbigniew's avatar
      Added files: plugin-service.[ch], plugin-loader.[ch], · a924975e
      Chyla Zbigniew authored
      
      * src/Makefile.am: Added files:  plugin-service.[ch],
      plugin-loader.[ch], plugin-loader-module.[ch], module-plugin-defs.h.
      
      * src/error-info.[ch] (error_info_new_from_errno): New function.
      
      * src/file.c
      (struct _FileOpener, struct _FileSaver): Moved from file.h
      (file_opener_get_format_description, file_opener_has_probe,
      file_saver_get_extension,  file_saver_get_format_description):
      New accessor functions.
      (file_opener_probe, file_opener_open, file_saver_save,
      file_opener_set_user_data, file_opener_get_user_data,
      file_saver_set_user_data, file_saver_get_user_data): New
      functions.
      (get_file_opener_by_id, get_file_saver_by_id): Removed
      Now using FileOpener*/FileSaver* instead of FileOpenerId/FileSaverId
      everywhere.
      
      * src/file.h
      (struct _FileOpener, struct _FileSaver): Moved to file.c.
      Adjusted to file.c.
      
      * src/gui-file.c: Adjusted to file.[ch], now FileSaver.extension
      field should contain real extension (without a dot).
      
      * src/func.[ch]
      (enum FunctionFlags, struct _FunctionDefinition): Moved from func.h
      to func.c.
      (struct _FunctionCategory): Added "internal_name" and "display_name"
      in place of "name" field.
      (function_get_category_with_translation,
      function_category_remove_func, func_get_ref_count, function_remove,
      function_add_name_only): New functions.
      Now it's possible to load function implementation on demand (after
      registering function using function_add_name_only() and providing
      function of type FunctionGetFullInfoCallback).
      Rename fd and fndef to fn_def for consistency.
      
      * src/functions/fn-database.c (database_functions_init),
      src/functions/fn-date.c (date_functions_init),
      src/functions/fn-eng.c (eng_functions_init),
      src/functions/fn-financial.c (finance_functions_init),
      src/functions/fn-information.c (information_functions_init),
      src/functions/fn-logical.c (logical_functions_init),
      src/functions/fn-lookup.c (lookup_functions_init),
      src/functions/fn-math.c (math_functions_init),
      src/functions/fn-sheet.c (sheet_functions_init),
      src/functions/fn-stat.c (stat_functions_init),
      src/functions/fn-string.c (string_functions_init):
      Use function_get_category_with_translation, instead of
      function_get_category.
      
      * src/plugin.[ch]
      (struct _PluginInfo): Removed many fields.
      (plugin_info_get_extra_info_list):
      Just call gnumeric_plugin_loader_get_extra_info_list.
      (plugin_info_peek_services_data, plugin_info_peek_loader_type_str):
      New accessor functions.
      (plugin_info_read_service_list, plugin_info_read_loader,
      plugin_info_read):
      Read services and loader info, use functions from
      gal/util/e-xml-utils.h everywhere.
      (activate_plugin, deactivate_plugin): Just activate/deactivate all
      plugin services.
      (plugin_can_deactivate): Ask plugin services.
      (plugin_load_service, plugin_unload_service,
      plugin_info_offers_loader_by_type_str,
      plugin_loader_register_type, plugin_loader_register_id_only,
      plugin_loader_get_by_id, plugin_loader_is_available_by_id,
      plugin_list_sort_by_dependency):
      New functions.
      (plugin_db_activate_plugin_list): Activate plugins in correct order,
      using plugin_list_sort_by_dependency function.
      (plugin_info_print): Removed.
      (module_plugin_print_info, module_plugin_info_get_extra_info_list,
      module_plugin_free, module_plugin_info_read, module_plugin_activate,
      module_plugin_deactivate, module_plugin_can_deactivate): Removed,
      most code  moved to plugin-loader.c and plugin-loader-module.c.
      
      * src/plugin-service.[ch]: New files, support for plugin services
      (five types of these so far).
      
      * src/plugin-loader.[ch]: New files, base class for plugin loaders.
      
      * src/plugin-loader-module.[ch]: New files, support for "g_module"
      plugins.
      
      * src/plugin-util.[ch] (gnumeric_fopen_error_info,
      gnumeric_open_error_info, gnumeric_mmap_error_info): New functions.
      
      * src/gutils.[ch] (g_list_free_custom, g_slist_free_custom,
      gnumeric_time_counter_push, gnumeric_time_counter_pop):
      New functions.
      
      * src/io-context-priv.h (struct _IOContext): Added error_info field.
      
      * src/io-context.[ch] (gnumeric_io_context_new,
      gnumeric_io_context_free, gnumeric_io_error_info_set,
      gnumeric_io_error_info_push, gnumeric_io_error_info_pop,
      gnumeric_io_error_info_clear, gnumeric_io_error_info_display,
      gnumeric_io_has_error_info): New functions, quick hack to add
      support for ErrorInfo.
      
      * src/module-plugin-defs.h: New file, should be included be every
      g_module plugin.
      
      * src/auto-format.c: Use accessor function from func.h.
      
      * src/bonobo-io.c (gnumeric_bonobo_write_workbook,
      gnumeric_bonobo_read_workbook, gnumeric_bonobo_io_probe),
      src/stf.c (stf_read_workbook, stf_write_workbook),
      src/xml-io.[ch] (xml_probe, gnumeric_xml_read_workbook,
      gnumeric_xml_write_workbook):
      Signature changes.
      
      * src/workbook.c: Adjusted to
      workbook_load_from/gnumeric_xml_write_workbook signature change.
      
      * src/dialogs/dialog-function-select.c: Adjust to func.[ch].
      
      * src/dialogs/dialog-plugin-manager.c
      Adjust to plugin.[ch].
      (cb_pm_button_activate_plugin_clicked): Check if loader for current
      plugin is available, suggest activating loader plugin otherwise.
      a924975e
  9. 31 Jan, 2001 1 commit
  10. 12 Jan, 2001 1 commit
    • Jody Goldberg's avatar
      Rework the style engine. Mostly functional. see BUGS for remaining details. · 9e615b65
      Jody Goldberg authored
      NOTE : I have not tested persistance.
      
      2001-01-11  Jody Goldberg <jgoldberg@home.com>
      
      	* src/mstyle.c (mstyle_ref_multiple) : new function.
      	(mstyle_copy_merge) : new function.
      	(mstyle_new_default) : Do not cache the result.  That is done at the
      	  sheet level.
      	(mstyle_do_merge) : delete.
      	(mstyle_get_format) : constness.
      
      	* src/format-template.c (cb_format_sheet_border) : delete.
      	(format_template_apply_to_sheet_regions) : borders are no longer special.
      
      	* src/expr.c (expr_tree_array_formula_corner) : do not store the
      	  corner anymore.
      	(expr_tree_new_array) : ditto.
      	(do_expr_tree_unref) : ditto.
      
      	* src/cell.c (cell_relocate) : Arrays are simplified.  No need to keep
      	  a pointer to the corner.  It made the system too brittle.
      	(cell_set_mstyle) : delete.
      
      	* src/Makefile.am : remove test.[ch]
      
      	* src/gnumeric-sheet.c (gnumeric_sheet_find_{col,row}) : There is no
      	  1 pixel border.
      
      2001-01-09  Jody Goldberg <jgoldberg@home.com>
      
      	* src/mstyle.h : Change order of borders to match BorderLocation
      
      2001-01-08  Jody Goldberg <jgoldberg@home.com>
      
      	* src/ranges.c (range_has_header) : avoid leaking styles.
      
      	* src/cell.c (cell_get_mstyle) : Use sheet_style_get, and do not bump
      	  the ref count.
      	(cell_render_value) : Adjust.
      	(cell_get_format : Adjust.
      	(cell_set_text) : Adjust.
      
      	* src/functions/fn-information.c (gnumeric_cell) : sheet_style_get
      	  does not make a reference. Use it.
      	* src/workbook-format-toolbar.c (modify_cell_format) :  Ditto.
      	(change_selection_font) : Ditto.
      	* src/sheet-autofill.c (fill_item_new) : ditto.
      	* src/print-cell.c (print_cell_range) : ditto.
      	* src/cellspan.c (cell_calc_span) : ditto.
      	* src/sheet.c (sheet_cell_set_text) : ditto.
      	* src/rendered-value.c (rendered_value_calc_size) : ditto.
      	* src/workbook-view.c (wb_view_format_feedback) : ditto.
      
      2001-01-07  Jody Goldberg <jgoldberg@home.com>
      
      	* src/dialogs/dialog-cell-format.c (dialog_cell_format) :
      	  init initial style to NULL.
      	(fmt_dialog_selection_type) : call sheet_style_get_uniform here.
      
      	* src/commands.c (cmd_format_redo) : Now that apply_border is not
      	  doing a redraw we need to if there is no style applied.
      
      	* src/selection.c (sheet_selection_extend_to) : Add support akin to
      	  gnumeric_sheet_rangesel_cursor_extend to extend to full col/row.
      
      	* src/sheet-control-gui.c (scg_colrow_select) : extend to full col/row
      	  if necessary.
      
      	* src/item-bar.c (item_bar_event) : Set the selection, not extend it.
      9e615b65
  11. 20 Dec, 2000 1 commit
    • Morten Welinder's avatar
      New function for more user-wanted rounding behaviour. · 8d31f4c7
      Morten Welinder authored
      2000-12-20  Morten Welinder  <terra@diku.dk>
      
      	* src/mathfunc.c (gnumeric_add_epsilon): New function for more
       	user-wanted rounding behaviour.
      	(gnumeric_fake_floor, gnumeric_fake_ceil, gnumeric_fake_round):
       	New functions.
      
      	* src/fn-math (gnumeric_round, gnumeric_roundup,
       	gnumeric_rounddown, gnumeric_trunc, gnumeric_ceil,
       	gnumeric_floor): use fake rounding.
      8d31f4c7
  12. 12 Dec, 2000 1 commit
  13. 11 Dec, 2000 1 commit
  14. 22 Nov, 2000 1 commit
  15. 15 Nov, 2000 1 commit
    • Morten Welinder's avatar
      Remove trailing white-space from files that have it. · 5570aef3
      Morten Welinder authored
      (The following command was done in src/ and plugins/.  Note, that the
      grep has a space and a tab.)
      
      for i in `find . -name '*.[ch]' -print`; do if grep '[         ]$' $i >/dev/null; then echo $i; perl -pi -e 's/[ \t]+$//' $i; fi; done
      5570aef3
  16. 30 Oct, 2000 1 commit
    • Morten Welinder's avatar
      Move endian dependencies into the core. · 9f4c754a
      Morten Welinder authored
      2000-10-30  Morten Welinder  <terra@diku.dk>
      
      	* ms-biff.c (biff_getdouble, biff_setdouble): Delete.  Replace all
       	callers with gnumeric_get_le_double and gnumeric_set_le_double.
      
      2000-10-30  Morten Welinder  <terra@diku.dk>
      
      	* src/functions/fn-math.c (gnumeric_sumproduct): Plug leak.
      9f4c754a
  17. 24 Sep, 2000 1 commit
    • Jody Goldberg's avatar
      Suppress some warnings and make non-bonobo build clean. · a9a20284
      Jody Goldberg authored
      2000-09-24  Jody Goldberg <jgoldberg@home.com>
      
      	* src/normal-args.c : Suppress warning.
      
      	* src/functions/fn*.c : Add a prototype of the _init routine to
      	  suppress warning.
      
      	* src/eval.c (cell_recalc_dependencies ) : Comment out until it is
      	  implemented.
      
      	* src/sheet-object-widget.c (sheet_object_widget_new) : delete.
      a9a20284
  18. 12 Aug, 2000 1 commit
    • Jody Goldberg's avatar
      Add graph-guru for bonobo enabled builds. · c665e798
      Jody Goldberg authored
      
      2000-08-11  Jody Goldberg <jgoldberg@home.com>
      
      	* src/dialogs/Makefile.am : Add graph-guru for bonobo enabled builds.
      
      	* src/dialogs/formula-guru.glade (rolled_label) : Don't fill.
      
      2000-08-11  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-math.c (gnumeric_g_product) : Ignore blanks.
      	(gnumeric_product) : Ditto.
      	(gnumeric_sumsq) : Ditto.
      	(gnumeric_suma) : Ditto.
      	(gnumeric_sum) : Ditto.
      	(gnumeric_gcd) : Ditto.
      
      2000-08-11  Jody Goldberg <jgoldberg@home.com>
      
      	* src/corba-args.c : Remove support for Gnorba. Die Pig Die !
      	* src/corba-workbook-factory.c : Ditto.
      	* src/embeddable-grid.c : Ditto.
      	* src/sheet-object.c : Ditto.
      	* src/workbook.c : Ditto.
      
      	* src/cell-comment.c (cell_comment_realize) : Use Cell::pos rather
      	  than Cell::{row,col}_info->pos.
      	(cell_comment_reposition) : Ditto.
      	* src/cell-draw.c (cell_draw) : Ditto.
      	* src/cellspan.c (cell_register_span) : Ditto.
      	(cell_calc_span) : Ditto.
      	* src/clipboard.c (paste_cell_with_operation) : Ditto.
      	(paste_cell) : Ditto.
      	* src/cmd-edit.c (cb_compare_deps) : Ditto.
      	(cmd_select_cur_depends) : Ditto.
      	* src/eval.c (dependency_range_ctor) : Ditto.
      	(handle_cell_single_dep) : Ditto.
      	(handle_cell_range_deps) : Ditto.
      	(cell_get_range_dependencies) : Ditto.
      	(cell_get_dependencies) : Ditto.
      	* src/item-grid.c (item_grid_draw) : Ditto.
      	* src/parse-util.c (cell_name) : Ditto.
      	* src/position.c (eval_pos_init_cell) : Ditto.
      	* src/print-cell.c (print_cell) : Ditto.
      	(print_cell_range) : Ditto.
      	* src/sheet-autofill.c (autofill_cell) : Ditto.
      	* src/sheet-vector.c (sheet_vectors_cell_changed) : Ditto.
      	* src/sheet.c (sheet_cell_calc_span) : Ditto.
      	(sheet_reposition_comments) : Ditto.
      	(sheet_get_extent_cb) : Ditto.
      	(sheet_redraw_cell) : Ditto.
      	(sheet_cell_add_to_hash) : Ditto.
      	(sheet_cell_insert) : Ditto.
      	(sheet_cell_new) : Ditto.
      	(sheet_cell_remove_from_hash) : Ditto.
      	(sheet_move_range) : Ditto.
      	* src/solver-lp.c (solver_simplex) : Ditto.
      	(make_solver_arrays) : Ditto.
      	(solver_affine_scaling) : Ditto.
      	(make_int_array) : Ditto.
      	(solver_branch_and_bound) : Ditto.
      	(solver_answer_report) : Ditto.
      	(solver_sensitivity_report) : Ditto.
      	* src/xml-io.c (xml_write_cell) : Ditto.
      	(xml_cell_set_array_expr) : Ditto.
      	(xml_write_solver) : Ditto.
      	* src/dialogs/dialog-solver.c (check_int_constraints) : Ditto.
      
      	* src/about.c : Move the ABOUT_KEY here from.
      	* src/dialogs/dialogs.h : here.  Also, add dialog_graph_guru.
      
      	* src/Makefile.am : Remove wizard.h and the seperate wizard library.
      c665e798
  19. 08 Aug, 2000 1 commit
    • Jody Goldberg's avatar
      Handle blanks as 0. (callback_function_make_list) : Ditto. · c644804f
      Jody Goldberg authored
      
      2000-08-07  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-stat.c (callback_function_stat) : Handle blanks as 0.
      	(callback_function_make_list) : Ditto.
      	(callback_function_ttest) : Ditto.
      	(gnumeric_mode) : Explicitly ignore blanks.
      	(gnumeric_count) : Ditto.
      	(gnumeric_ztest) : Ditto.
      	(gnumeric_counta) : Ditto.
      	(gnumeric_percentile) : Ditto.
      	(gnumeric_quartile) : Ditto.
      	(gnumeric_prob) : DO NOT IGNORE BLANKS.
      	(gnumeric_ftest) : Ditto.
      	(gnumeric_ttest) : Ditto.
      	(gnumeric_frequency) : Ditto.
      
      	* src/functions/fn-logical.c (gnumeric_and) : Handle
      	  changes to function_iterate_argument_values.
      	(gnumeric_or) : Ditto.
      	* src/functions/fn-math.c (gnumeric_lcm) : Ditto.
      	(gnumeric_multinomial) : Ditto.
      	(gnumeric_seriessum) : Ditto.
      
      	* src/functions/fn-financial.c (gnumeric_mirr) : Use the old
      	  behavior of ignoring blanks.
      	(gnumeric_irr) : Ditto.
      	(gnumeric_npv) : Ditto.
      
      	* src/functions/fn-eng.c (gnumeric_improduct) : Handle
      	  changes to function_iterate_argument_values.
      	(gnumeric_imsum) : Ditto.
      
      	* src/func.c (function_iterate_argument_values) : Add ignore_blank
      	  flag.
      
      	* src/collect.c (callback_function_collect) : Support new collect flag
      	  COLLECT_IGNORE_BLANKS.
      	(collect_floats) : change to function_iterate_argument_values.
      	(float_range_function2) : Use COLLECT_IGNORE_BLANKS.
      
      2000-08-01  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet-autofill.c (fill_item_new) : It is legal to have 'D' and 'M'
      	  for day or month fields.
      
      2000-08-01  Jody Goldberg <jgoldberg@home.com>
      	For : John N S Gill <bmrg@gofree.indigo.ie>
      
      	* src/item-cursor.c (item_cursor_autofill_event) : Implement support
      	  for double click on autofill button.
      c644804f
  20. 07 Jul, 2000 1 commit
    • Morten Welinder's avatar
      Rewrite with lots of care in error handling. · 8b9837b3
      Morten Welinder authored
      2000-07-07  Morten Welinder  <terra@diku.dk>
      
      	* src/functions/fn-math.c (gnumeric_sumproduct): Rewrite with lots
       	of care in error handling.
      
      	* src/value-sheet.c (value_area_get_width): Make it official that
       	scalars have width 1.
      	(value_area_get_height): Likewise.
      	(value_area_get_x_y): Likewise.
      8b9837b3
  21. 28 Jun, 2000 1 commit
    • Jody Goldberg's avatar
      new function. · 93f11589
      Jody Goldberg authored
      
      2000-06-28  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-sheet.c (GNUMERIC_VERSION) : new function.
      
      	* src/workbook.c (workbook_do_destroy) : No need to release the
      	  clipboard here.  The Sheet does it for us.
      
      	* src/workbook-format-toolbar.c : Add Fill to the default money
      	  format.
      
      	* src/symbol.c : The only symbols are functions.  The global table
      	  should not be world visible.
      
      	* src/sheet.c (sheet_flag_status_update_cell) : Take a CellPos.
      	(sheet_get_extent_cb) : Use Cell::pos rather than adding an
      	  indirection.
      	(cb_set_cell_content) : Use StyleFormat.
      	(sheet_cell_set_value) : Call sheet_flag_status_update_cell.
      	(sheet_cell_set_value) : Ditto.
      	(sheet_destroy) : Prepare to clear out named expressions.
      	(colrow_move) : Handle changes in cell_relocate signature.
      	(sheet_move_range) : Ditto.
      
      	* src/sheet-autofill.c : Use StyleFormats.
      
      	* src/position.c (parse_pos_init) : Global position are permitted.
      
      	* src/parser.y : Large change.  Do not automaticlly look for function
      	  names or named expressions in the lexer.  The lexer returns STRING
      	  and QUOTED_STRING.  The parser then does the appropriate lookups to
      	  potentially convert to something else.  This allows us to have sheet
      	  names that are the same as functions.
      
      	* src/parse-util.c (cellref_name) : Add flag to optionally disable the
      	  addition of the sheet name.  This is useful when printing
      	  Sheet2!A1:A3 rather than Sheet2!A1:Sheet2!A3.
      
      	* src/number-match.c (format_create_regexp) : Handle fill formats.
      
      	* src/mstyle.c (mstyle_get_border) : Fix constness.
      
      	* src/mathfunc.c (combin, fact) : Moved these here from
      	  functions/fn-math.c
      
      	* src/main.c (gnumeric_main) : No more constants_init, or
      	  global_symbol_init.
      
      	* src/func.c () : Reorg.  Remove some dead code.  Begin adding
      	  workbook local function support, Begin adding volatile, and
      	  semi-volatile functions.  Move the use of SymbolTable internal
      	  in preparation for eliminating it.
      
      	* src/format.c (format_number) : Improve support for pound, yen, and euro.
      	  Remember to produce a number when we hit spacing.
      
      	* src/expr.c : Have ExprFunc refer directly to the FunctionDefinition
      	  We still use a SymbolTable internally, but that will be merged out
      	  later.
      
      	* src/expr-name.c : Major reorg.  Not complete.
      
      	* src/corba-sheet.c (fill_corba_value) : Adjust to changes in
      	  cellref_name signature.
      
      	* src/commands.c (cmd_set_date_time_undo) : No need to manually call
      	  update_cell_flag.  cell_remove, and cell_set_text do that for us.
      	(cmd_set_date_time_redo) : Ditto.
      	  Use StyleFormat.
      
      	* src/clipboard.c (paste_cell) : Take the ExprRewriteInfo as an
      	  argument.
      	(clipboard_paste_region) : Init the ExprRewriteInfo.  We need to do
      	  this here rather than in cell_relocate because we may be moving a
      	  region, not just a single cell, and references within the region
      	  should not be changed.
      
      	* src/cell.c (cell_relocate) : Take the relocation info as an
      	  argument.  Non NULL indicates a request to check bounds.  We can not
      	  do this at the cell level. becuase we may be moving a block rather
      	  than just a single cell, and references into the block should NOT be
      	  rewritten.
      	(cell_set_text_and_value) : Take a StyleFormat.
      	(cell_assign_value) : Ditto.
      	(cell_set_value) : Ditto.
      	(cell_set_expr_internal) : Ditto.
      	(cell_set_expr_unsafe) : Ditto.
      	(cell_set_expr) : Ditto.
      
      	* src/auto-format.c (do_af_suggest) : Expression now refers directly
      	  to functionDef.
      93f11589
  22. 14 Jun, 2000 3 commits
    • Jody Goldberg's avatar
      45432962
    • Jody Goldberg's avatar
      Bug 12042 · aba702b5
      Jody Goldberg authored
      2000-06-13  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-math.c (callback_function_sumproduct) : Handle
      	  empty.
      	(gnumeric_sumproduct) : Handle blank cells correctly, correct error
      	  handling slightly.
      
      	* src/func.c (iterate_cellrange_callback) : Handle empty cells.
      	(function_iterate_do_value) : Add a new argument to control the
      	  handling of empty cells.
      	(function_iterate_argument_values) : Hard code the ignore_blanks
      	  argument to TRUE the same as the previous behavior.
      aba702b5
    • Jody Goldberg's avatar
      No need to malloc memory for an int. Fix the logic to handle empty cells · 1b9ee9c0
      Jody Goldberg authored
      
      2000-06-13  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-math.c (callback_function_sumif) : No need to
      	  malloc memory for an int.  Fix the logic to handle empty cells
      	  properly.
      1b9ee9c0
  23. 13 Jun, 2000 1 commit
    • Morten Welinder's avatar
      Round properly. · 9ddd3c3c
      Morten Welinder authored
      2000-06-13  Morten Welinder  <terra@diku.dk>
      
      	* src/functions/fn-math.c (gnumeric_round): Round properly.
      9ddd3c3c
  24. 27 May, 2000 1 commit
  25. 15 May, 2000 1 commit
  26. 05 May, 2000 1 commit
    • Jody Goldberg's avatar
      Make code match comment. We can safely ignore blanks. (gnumeric_sumif) : · 5ba47b54
      Jody Goldberg authored
      
      2000-05-05  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-math.c (gnumeric_countif) :
      	    Make code match comment.  We can safely ignore blanks.
      	(gnumeric_sumif) : Code was correct.  Add a larger comment explaining
      	  rationale.
      	(gnumeric_sumx2my2) : Code was wrong.  We can not skip blank cells
      	  if there are multiple ranges that need to be kept in sync.
      	(gnumeric_sumx2py2) : Ditto.
      	(gnumeric_sumxmy2) : Ditto.
      5ba47b54
  27. 03 May, 2000 1 commit
    • Jody Goldberg's avatar
      Begin to rationalize support for inverted and 3D references. · de62dd3a
      Jody Goldberg authored
      More renaming and movement name rationalization.
      Some minor improvements in the function wizard.
      
      2000-05-03  Jody Goldberg <jgoldberg@home.com>
      
      	* EvalPosition -> EvalPos
      	  ParsePosition -> ParsePos
      	  new struct RangeRef used in ValueRange
      
      	  eval_pos_init* -> position.[ch]
      	  parse_pos_init*
      	  cell_ref_{get,make}*
      
      	* src/workbook.c : Reorder the toolbar a bit.
      	(workbook_foreach_cell_in_range) : New function.
      	(cb_autofunction) : New routine.
      	(workbook_set_auto_expr) : DO NOT put real code into pre/post
      	  conditions.  It will be removed when debugging is eventually
      	  disabled.
      
      	* src/position.c (range_ref_normalize) : New function.
      
      	* src/ranges.c (range_normalize) : New function.
      
      	* src/expr.c (expr_implicit_intersection) : Use range_ref_normalize.
      
      	* src/eval.c (cell_eval_content) : No need to release the value.
      	  cell_assign_value already does that.
      	(dependency_range_ctor) : Use range_normalize.
      
      	* src/auto-format.c (do_af_suggest) : Use workbook_foreach_cell_in_range.
      
      	* src/cell.c (cell_set_expr_and_value) : link the new expression but
      	  do not queue it for recalc.
      	(cell_assign_value) : Release the old value.
      	(cell_copy) : Init the value to empty.
      
      	* src/func.c (function_iterate_do_value) : Use
      	  workbook_foreach_cell_in_range.
      
      	* src/dialogs/dialog-function-wizard.c (create_description) : Use
      	  a label rather than a text entry widget.  It looks better.
      
      	* src/functions/fn-string.c (gnumeric_expression) : range is already
      	  absolute.
      
      	* src/functions/fn-stat.c (gnumeric_linest) : Handle inverted ranges.
      	(gnumeric_logest) : Ditto.
      
      	* src/functions/fn-information.c (gnumeric_countblank) : Use
      	workbook_foreach_cell_in_range.
      	(gnumeric_{row,column}) : Handle inversions.
      
      	* src/functions/fn-lookup.c (gnumeric_offset) : No need to make
      	  absolute.  The marshaller already did that.
      
      2000-05-02  Jody Goldberg <jgoldberg@home.com>
      
      	* src/eval.c (dependency_range_ctor) : normalize the range.
      
      	* src/xml-io.c (xml_write_cell_and_position) : Suppress warning.
      
      	* src/pixmaps.h : Add function wizard and equal sign.
      de62dd3a
  28. 29 Apr, 2000 1 commit
  29. 21 Apr, 2000 1 commit
    • Jody Goldberg's avatar
      Fix a few update issues on startup. · 22913301
      Jody Goldberg authored
      Optimize a bit to ensure that we do not rerender already rendered cells
      on startup.
      Make Value::type const in preparation for spliting the union.
      22913301
  30. 20 Apr, 2000 1 commit
    • Jody Goldberg's avatar
      Reorg cell contents and assignment. · bedb925b
      Jody Goldberg authored
      Fixs lots of usability details.
      
      2000-04-20  Jody Goldberg <jgoldberg@home.com>
      
      	* src/dialogs/dialog-cell-format.c : Use the edit_pos as the example
      	  not the top left corner.
      
      	* src/functions/fn-stat.c (gnumeric_ftest) : Use eval_pos_cellref
      	  to help localize the strangeness.
      	(gnumeric_ttest) : Ditto.
      
      	* src/xml-io.c (xml_write_cell_and_position) : If this is an array
      	  expression and we are the top left then add attributes to indicate
      	  size of array.  Ignore the rest of the array.
      	(xml_not_used_old_array_spec) : New routinr to handle the old array format.
      	(xml_cell_set_array_expr) : store an array.
      	(xml_read_cell) : Handle the old and the new array formats.
      
      	* src/workbook.c (workbook_close_if_user_permits) : Accept input
      	  first.
      	(wb_edit_key_pressed) : Handle array formulas here.
      	(workbook_detach_sheet) : Do not recalc all if we are exiting.
      	(workbook_start_editing_at_cursor) : When we start editing an
      	  array formula display just the formula not all the extra {}()[][] crap.
      
      	* src/sheet.c (SheetPrivate) : Add a recompute_spans flag.
      	(sheet_calc_spans) : New routine.
      	(sheet_cell_calc_span) : New routine.
      	(sheet_range_calc_spans) : Renamed and extended from
      	  sheet_cells_update.
      	(sheet_update) : Use sheet_calc_spans when necessary.
      	  Update the location region when the edit_pos changes.
      	(cb_recalc_spans_in_col) : Renamed from cb_collect_cells_in_col.
      	  Recalcs spans directly, no need to collect first.
      	(cb_set_cell_content) : New routine to set expr, or expr_and_value.
      	(sheet_range_set_text) : Use cb_set_cell_content, and remember
      	  chosen format with the cell rather than overriding the assigned
      	  format.
      	(sheet_cell_set_text) : Renamed from sheet_set_text.  Be more specific
      	  about how spans, rendering and the rest are handled.
      	(sheet_cell_set_expr) : New routine.
      	(sheet_cell_set_value) : Ditto.
      	(sheet_load_cell_val) : When displaying an array formula add {%s}()[][].
      	(sheet_redraw_cell_region) : Honour spans when redrawing.
      	(sheet_redraw_partial_row) : New routine.
      	(sheet_redraw_cell) : Ditto.
      	(sheet_is_cell_array) : Use cell_is_array.
      	(sheet_range_splits_array) : Renamed from sheet_check_for_partial_array.
      	(sheet_cell_add_to_hash) :  Do not touch spans at this point.
      	(sheet_cell_insert) : Rename from sheet_cell_add made recalc span
      	  optional.
      	(sheet_cell_new) : New routine that does not touch spans.
      	(sheet_cell_remove) : Made redraw optional.
      	(cb_clear_cell_comments) : Remove the cell if there is no comment.
      	(sheet_clear_region) : Remove the cell if there are no comments or
      	  contents.  Flag an update of the status region.
      
      	* src/sheet-view.c (cb_colrow_resize) : New function.
      	(sheet_view_col_size_changed) : Resize all rows, irrespective of
      	(sheet_view_row_size_changed) : existing cells.
      	(sheet_view_redraw_cell_region) : This no longer honours spans.
      
      	* src/sheet-style.c (sheet_style_attach) : Removed call to redraw.
      	sheet_cells_update : rename to sheet_range_calc_spans and move to
      	  sheet.c.
      
      	* src/sheet-autofill.c (autofill_cell) : Use sheet_cell_set_value
      	  rather than set_text.
      
      	* src/selection.c (sheet_selection_changed_hook) : Delete.
      	(sheet_selection_extend_to) : Update the status region to display the
      	  new size.
      	(sheet_selection_cut) : Use sheet_range_splits_array.
      	(selection_check_for_array) : New routine.
      
      	* src/parser.y : Remove icky array formula parsing that conflicted
      	  with array entries.
      
      	* src/number-match.c (format_match) : Return a Value * rather than a
      	  double.
      
      	* src/mstyle.c (mstyle_set_font_size) : Do not allow font sizes < 1.
      
      	* src/main.c (gnumeric_main) : Do NOT create an empty workbook
      	  then delete it if things are successfully loaded.  This causes
      	  a global recalc.  Instead add a flag to disable exit when the
      	  number of workbooks go to zero.  Then only enable the flag AFTER
      	  we have attempted to load the initial workbooks.
      
      	* src/item-grid.c (item_grid_event) : Update the status_region when
      	  button-1 is release.  It should display the edit_pos.
      
      	* src/gutils.c : Move cell_name, col_name, col_from_name,
      	  parse_cell_name, parse_cell_name_or_range and parse_cell_name_list,
      	  to parse-util.c.
      
      	* src/gnumeric.h  : Add RenderedValue.
      
      	* src/gnumeric-util.c (gnumeric_char_start_expr_p) : Move
      	  to parse-util.c
      
      	* src/file.c (workbook_read) : Remove freese thaw usage.
      	  Move call to update AFTER mark clean.
      
      	* src/expr.c (eval_pos_init) : Take a cellpos.
      	(parse_pos_evalpos) : New routine.
      	(eval_pos_cellref) : There is some questionable code scattered in the
      	  functions.  This routing localizes the odd bits for correction.
      
      	* src/eval.c (cell_eval_content) : Use sheet_redraw_cell,
      	  and rendered_value_calc_size.
      	(cell_get_dependencies) : Improve constness.
      
      	* src/corba-sheet.c : Remove the freeze thaw operations.
      	(Sheet_cell_set_formula) : Deleted.
      	(Sheet_range_set_formula) : Delete.
      
      	* src/commands.c : Adjust so that registration of command auto
      	  calls redo.  Add misc checks for splitting arrays.
      
      	* src/clipboard.h : Move the CellCopy types here from cell.h
      
      	* src/clipboard.c (paste_cell) : Use cell_has_expr.
      	  Don't insert the new cell till after its contents are assigned.
      
      	* src/cellspan.c (cell_register_span) : Improve constness.
      	(cell_unregister_span) : Ditto.
      	(row_cell_get_displayed_at) : Delete.
      	(cell_calc_span) : Moved here from cell.c
      
      	* src/dialogs/dialog-stf.glade : Adjust the header background colour
      	  to match the purdy new icon.  Add the icon.
      
      	* src/cell-draw.c : Use the rendered_value routines.
      	  Improve constness.
      
      	* src/analysis-tools.c (set_cell) : Use sheet_cell_fetch.
      
      	*.*
      	    cell_set_* -> sheet_cell_set_
      	    cell_set_*_simple -> cell_set_
      	    Cell::{row,col} -> Cell::{row,col}_info
      	    cell_get_text -> cell_get_entered_text
      	    cell_get_content -> cell_get_entered_text
      	    cell_name -> cell_coord_name
      	    cell_get_formatted_val -> cell_get_rendered_text
      	    cell_get_content -> cell_get_entered_text
      
      	* src/cell.c :
      	(cell_dirty) : Renamed from cell_modified.  Use
      	  sheet_set_dirty.
      	(cell_formula_changed) : Make the queuing of the recalc optional.
      	(cell_cleanout) : Handle union of expression and entered_text,
      	  and remove the rendered value.
      	(cell_copy) : Ditto.
      	(cell_destroy) : handle cell_modified -> cell_dirty.
      	(cell_set_text) : Use parse_text_value_or_expr and store the prefered
      	  format.
      	(cell_set_text_and_value) : New routine.
      	(cell_assign_value) : New routine.
      	(cell_set_value) : Support formats.
      	(cell_set_expr_and_value) : New routine.
      	(cell_set_expr_internal) : Split from cell_set_expr.
      	(cell_set_expr) : Divide to allow for not queuing a recalc.
      	(cell_set_array_formula) : Use cell_set_expr_internal.
      	(cell_is_array) : New utility.
      	(cell_is_partial_array) : New utility.
      	(cell_has_expr) : New utility.
      	(cell_render_value) : Use rendered_value_*.
      	Move all comment routines into cell-comment.[ch].
      
      	* idl/Gnumeric.idl : Remove cell_set_formula, and range_set_formula.
      	  These were identical to set_text.  Made Workbook embeddable.
      bedb925b
  31. 16 Apr, 2000 1 commit
  32. 10 Apr, 2000 1 commit
    • Miguel de Icaza's avatar
      Do not destroy the context here, as it is dereferenced later in the · 30aba440
      Miguel de Icaza authored
      
      
      2000-04-07  Miguel de Icaza  <miguel@gnu.org>
      
      	* main.c (button_cancel): Do not destroy the context here, as it
      	is dereferenced later in the mainloop.
      
      2000-04-10  Miguel de Icaza  <miguel@gnu.org>
      
      	* Lots of files: replaces utils.h for gutils.h
      
      	* renamed utils.h to gutils.h to avoid the compilation problem on
      	some Unices (yes, fixing the Makefile would have done it, but
      	utils.h was still a lame name;  Of course gutils.h is not any
      	better, but it is now done).
      
      2000-04-07  Miguel de Icaza  <miguel@gnu.org>
      
      	* src/cellspan.c (span_remove): Pretify code.
      30aba440
  33. 06 Apr, 2000 1 commit
  34. 05 Apr, 2000 1 commit
    • Jody Goldberg's avatar
      Fix some updates. Be more paranoid when printing. Big speedup for implicit · a447415c
      Jody Goldberg authored
      Fix some updates.
      Be more paranoid when printing.
      Big speedup for implicit intersection.
      
      2000-04-05  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-logical.c (gnumeric_if) : Use eval_expr_nonempty
      	  and permit non-scalars.
      	* src/functions/fn-lookup.c (gnumeric_choose) : Ditto.
      	* src/functions/fn-math.c (gnumeric_sumproduct) : Ditto.
      
      	* src/functions/fn-information.c (get_value_class) : Use
      	  eval_expr_empty, and permit non-scalars.
      
      	* src/func.c (function_iterate_argument_values) : Permit non-scalar
      	  values.
      	(function_marshal_arg) : Be more specific about what types of argument
      	  must be scalar.
      
      2000-04-04  Jody Goldberg <jgoldberg@home.com>
      
      	* src/functions/fn-math.c (gnumeric_sumproduct) : eval_expr_nonempty
      	  and permit non-scalars.
      	* src/functions/fn-lookup.c (gnumeric_choose) : Ditto.
      
      	* src/expr-name.c (eval_expr_name) : Accept 'as_scalar' as an
      	  argument use eval_expr_empty.
      
      	* src/expr.c (eval_expr_real) : Push the common cases for implicit
      	  intersection further down for a big speed improvement.
      	(eval_expr_nonempty) : New routine.
      	(eval_expr_empty) : Accept as_scalar.
      
      2000-04-04  Jody Goldberg <jgoldberg@home.com>
      
      	* src/item-grid.c (item_grid_button_1) : sheet_update after button
      	  press that changes selection.
      
      2000-04-04  Jody Goldberg <jgoldberg@home.com>
      
      	* src/print.c (print_hf) : Add precautions in an attempt to address
      	  http://bugs.gnome.org/db/82/8200.html
      	  I can not replicate it, but it can't hurt to be more careful just in
      	  case.
      a447415c
  35. 01 Apr, 2000 1 commit
  36. 28 Feb, 2000 1 commit
    • Dom Lachowicz's avatar
      catch DIV0 · 09f59d38
      Dom Lachowicz authored
      2000-02-24  Dom Lachowicz <dominicl@seas.upenn.edu>
      
       	* src/functions/fn-eng.c (convert): catch DIV0
      
       	* src/functions/fn-financial.c (gnumeric_accrint), (gnumeric_accrintm),
       	(gnumeric_intrate), (gnumeric_disc), (gnumeric_db),
       	(gnumeric_ddb), (gnumeric_mirr), (gnumeric_pv): More errors.
      
       	* src/function/fn-math.c (gnumeric_quotient): ditto.
      
       	* src/function/fn-stat.c (callback_function_stat),
      	(callback_function_chitest_theoretical, gnumeric_betadist),
      	(gnumeric_confidence, gnumeric_ftest): ditto.
      09f59d38
  37. 15 Feb, 2000 1 commit