1. 27 Jun, 2001 1 commit
  2. 21 Jun, 2001 1 commit
    • Morten Welinder's avatar
      #include <string.h> for strlen. · fbb769d8
      Morten Welinder authored
      2001-06-21  Morten Welinder  <terra@diku.dk>
      
      	* src/summary.c: #include <string.h> for strlen.
      
      	* src/search.c (calculate_replacement): Warning killer.
      
      	* src/regression.c: #include <stdlib.h> for abs.
      
      	* src/plugin-loader-module.c: #include <string.h> for strcmp.
      
      	* src/formats.c (cell_format_fraction): Avoid accidental use of
       	trigraph.
      
      	* src/complete.c: #include <stdlib.h> for abort.
      
      
      2001-06-21  Morten Welinder  <terra@diku.dk>
      
      	* fn-stat.c: #include <string.h> for memset.
      
      	* fn-lookup.c: #include <stdlib.h> for abs.
      
      	* fn-information.c (translate_table): Fix accidental use of
       	trigraph.
      	#include <stdlib.h> for abs and <string.h> for strcmp.
      
      	* fn-date.c: #include <string.h> for strcmp and <stdlib.h> for
       	abort.
      fbb769d8
  3. 18 Jun, 2001 1 commit
  4. 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
  5. 01 Jun, 2001 1 commit
    • Morten Welinder's avatar
      Use value_peek_string. · 19b0b593
      Morten Welinder authored
      2001-05-29  Morten Welinder  <terra@diku.dk>
      
      	* fn-information.c (gnumeric_cell, gnumeric_info, gnumeric_error,
       	gnumeric_n): Use value_peek_string.
      
      	* fn-financial.c (gnumeric_coupdaybs, gnumeric_coupdays,
       	gnumeric_coupncd, gnumeric_coupnum): Remove mysterious and
       	unnecessary references to VALUE_ERROR.
      	(gnumeric_db): Improve error checking.
      
      	* fn-eng.c (gnumeric_complex): Fix using value_peek_string.
      	(gnumeric_convert): Get rid of one_C_to_K and introduce
       	C_K_offset.  Fix using value_peek_string.
      	(get_constant_of_unit): Constify.
      	(convert): Constify.
      	(help_erfc): complement, not compliment, :-)
      
      	* fn-date.c (gnumeric_datedif): Use value_peek_string.
      19b0b593
  6. 14 May, 2001 1 commit
  7. 30 Apr, 2001 1 commit
    • Morten Welinder's avatar
      Warning killer. · 5ef75629
      Morten Welinder authored
      2001-04-30  Morten Welinder  <terra@diku.dk>
      
      	* src/func.c (tokenized_help_find): Warning killer.
      
      	* src/value.c (value_new_array): Kill warnings.
      	(value_new_array_empty): Ditto.
      	(value_release): Ditto.
      
      	* src/print-cell.c (print_show): Use proper types.
      	(get_width_string_n): Ditto.
      
      	* src/number-match.c (gnumeric_error_init): Warning killer.
      
      	* src/parser.y (deallocate_all): Warning killer.
      
      	* src/item-bar.c (item_bar_draw): Avoid signedness problems.
      
      	* src/format-template.c (hash_table_destroy): Warning killer.
      
      	* src/colrow.h (struct _ColRowInfo): Make size_pixels an int.
      
      	* src/value-sheet.c (value_area_get_width, value_area_get_height):
       	Return an int, not a guint.
      
      2001-04-26  Morten Welinder  <terra@diku.dk>
      
      	* fn-string.c (gnumeric_mid): Un-suckify.
      	(gnumeric_find): Un-suckify.
      	(gnumeric_substitute): Warning killer.
      	(match_string): Warning killer.
      
      	* fn-information.c (translate_cell_format): Warning killer.
      
      	* fn-eng.c (val_to_base): Warning killer.
      
      2001-04-30  Morten Welinder  <terra@diku.dk>
      
      	* ms-summary.c (sum_name_to_excel): Fix index count.  Constify.
        	Make static.
      	(excel_to_gnum_mapping): Make static.
      5ef75629
  8. 29 Apr, 2001 1 commit
  9. 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
  10. 13 Feb, 2001 1 commit
  11. 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
  12. 02 Jan, 2001 1 commit
    • Jody Goldberg's avatar
      add the new file. · 8f9fa37b
      Jody Goldberg authored
      
      2001-01-02  Jody Goldberg <jgoldberg@home.com>
      
      	* src/Makefile.am : add the new file.
      
      	* src/sheet-style.h : new file split from sheet.h in preparation
      	  for changing the style engine.
      8f9fa37b
  13. 10 Dec, 2000 1 commit
    • Jody Goldberg's avatar
      comment out the warning. These the life cycles of names are too fluid to · e605d42e
      Jody Goldberg authored
      
      2000-12-10  Jody Goldberg <jgoldberg@home.com>
      
      	* src/expr-name.c (expr_name_invalidate_refs_sheet) : comment out the
      	  warning.  These the life cycles of names are too fluid to scare
      	  users yet.
      	(expr_name_invalidate_refs_wb) : Ditto.
      
      2000-12-10  Jody Goldberg <jgoldberg@home.com>
      
      	* src/cell.c (cell_set_text) : send the current format to the
      	  number matcher..
      	* src/sheet.c (sheet_cell_set_text) : Ditto.
      
      	* src/parse-util.c (parse_text_value_or_expr) : send the curent
      	  format to the number matcher.
      
      	* src/number-match.c (format_match) : take the current format as a
      	  parameter.  Begin using it to handle cells formated as text.
      
      	* src/format.c (style_format_is_text)  utility routine.
      
      2000-12-09  Jody Goldberg <jgoldberg@home.com>
      
      	* src/selection.c (sheet_selection_set_internal) : rename from
      	  sheet_selection_set and add the 'just_add_it' flag to indicate that
      	  we don't need to do anything fancy.
      e605d42e
  14. 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
  15. 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
  16. 31 Aug, 2000 1 commit
    • Jody Goldberg's avatar
      New base class for Cells. Convert everything to access the elements that · 8b5866fb
      Jody Goldberg authored
      
      2000-08-30  Jody Goldberg <jgoldberg@home.com>
      
      	* dependent.[ch] : New base class for Cells.
      	  Convert everything to access the elements that are now
      	  in the cell's base.
      	s/Cell::sheet/Cell::Dependent::sheet/
      	s/Cell::cell_flags/Cell::Dependent::flags/
      
      	* Makefile.am : Because of XL we need to build plugins before src.
      	  That will need changing.
      
      	* src/func.c (function_marshal_arg) : Use expr_array_intersection.
      
      	* src/expr.c (eval_expr_real) : Do implicit conversions from strings
      	  to numbers if possible.
      	  Access the first element of an array.  NOTE : This is WRONG
      	  We need to implement array expression behavior some day.
      	(expr_array_intersection) : New routine.
      8b5866fb
  17. 21 Aug, 2000 1 commit
    • Jody Goldberg's avatar
      Improve regexps. · 9ad38a63
      Jody Goldberg authored
      
      2000-08-21  Jody Goldberg <jgoldberg@home.com>
      
      	* src/number-match.c (format_create_regexp) : Improve regexps.
      
      	* src/formats.c (cell_format_is_number) : Format always uses standard
      	  decimal chars.
      
      	* src/format.c (gnumeric_setlocale) : New routine that clears cached
      	  locale info.
      	(format_get_decimal) : Improve use mon_decimal.
      	(format_get_thousand) : Improve use mon_thousands_sep.
      	(format_get_arg_sep) : New func.
      	(format_get_col_sep) : New func.
      	(format_destroy) : Use GPtrArray.
      	(render_number) : Improve localization.
      	(format_add_thousand) : rename format_toggle_thousands. De-localize.
      	(find_decimal_char) : De-localize.
      	(format_remove_decimal) : Ditto.
      	(format_add_decimal) : Ditto.
      	(format_number) : Ditto.
      
      	* src/expr.c (do_expr_tree_to_string) : Use format_get_arg_sep.
      
      	* src/cell.c (cell_get_format) : Update for the changes to StyleFormat.
      
      	* src/auto-format.c (auto_style_format_suggest) :
      	  style_format_new -> style_format_new_XL
      
      	* src/mstyle.c (mstyle_element_dump) : There is no direct access to
      	  the format string anymore.
      	(mstyle_set_format_text) : Add a warning.
      
      	* src/gutils.[ch] (float_get_from_range) : Delete.
      	(int_get_from_range) : Ditto.
      
      	* src/parser.y : Revamp lexer to use strtol, and strtod for number
      	  parsing.  Begin hooks for supporting row & col selection. (3:4 or A:B)
      
      	* src/print-info.c (render_value_with_format) : Changes to StyleFormat.
      
      	* src/sheet.h : Move SpanCalcFlags.
      	* src/gnumeric.h : here.
      
      	* src/style.[ch] : Privatize StyleFormat, move it to format.[ch]
      
      	* src/value.c (value_get_as_string) : Correctly localize things for
      	  output.
      
      	* src/workbook-format-toolbar.c (modify_cell_format) : format
      	  modification callback modifies the StyleFormat.
      
      	* src/workbook.c (workbook_set_auto_expr) : Use gnumeric_setlocale.
      
      	* src/xml-io.c (xml_workbook_read) : Use gnumeric_setlocale.
      	(xml_workbook_write) : Ditto.
      	(xml_read_cell) : Use style_format_new_XL.
      	(xml_write_cell_and_position) : Store the number formats in non localized XL form.
      	(xml_write_style) : Ditto.
      
      	* src/dialogs/dialog-cell-format.c (fmt_dialog_init_format_page) :
      	  Display localized number formats.
      	(fillin_negative_samples) : Not need to localize generated number
      	  formats.
      
      	* src/dialogs/dialog-function-wizard.c (formula_guru_set_expr) : Use
      	  format_get_arg_sep.
      
      	* src/dialogs/dialog-stf-format-page.c
      	  (stf_dialog_format_page_prepare) : StyleFormats are now explicitly
      	  stored in a locale neutral format.
      
      	* src/functions/fn-string.c (gnumeric_text) : changes to
      	  style_format_new.
      
      	* src/functions/fn-financial.c (coupdayb) : Silence some warnings.
      
      	* src/functions/fn-information.c (translate_cell_format) : This should
      	  now work for different locales.
      
      2000-08-18  Jody Goldberg <jgoldberg@home.com>
      
      	* src/number-match.c (compute_value) : Extend the match algorithms to
      	  handle the new regexps.
      
      	* src/format.c (format_get_thousand) : provide a better default for
      	  countries using ',' as a decimal point.
      9ad38a63
  18. 31 May, 2000 1 commit
  19. 24 May, 2000 1 commit
    • Morten Welinder's avatar
      Style now needs to be initialised before formats. · 169f4952
      Morten Welinder authored
      2000-05-24  Morten Welinder  <terra@diku.dk>
      
      	* src/main.c (gnumeric_main): Style now needs to be initialised
       	before formats.
      
      	* src/number-match.c (format_match): Take a StyleFormat ** instead
       	of a char ** for the suggested format.  All callers changed.
      	(format_parse_t): rename member format to format_str and
       	introduce new member format, a StyleFormat *.
      	(format_match_define): Get a style at this point.
      
      	* src/datetime.c (datetime_value_to_serial_raw): Don't supply a
       	format return variable to format_match since we aren't interested
       	in the result.
      
      	* src/parse-util.c (parse_text_value_or_expr): Return a
       	StyleFormat * instead of a char *.  All callers changed.
      
      	* src/expr.c (expr_parse_string): Take a StyleFormat ** instead of
       	a char ** for the suggested format.  All callers changed.
      
      	* src/parser.y (make_string_return): Turn parser_desired_format
       	into a StyleFormat **.
      	(gnumeric_expr_parser): Take a StyleFormat ** instead of a char **
       	for the suggested format.  All callers changed.
      
      	* src/auto-format.c (auto_style_format_suggest): New function.
      
      
      	* src/sheet-style.c (sheet_style_optimize): Include adjacent
       	ranges in the list of styles to consider.  Handle intervening
       	styles better.  Don't stop searching for matching pairs just
       	because we merge -- only when the merge kills the slave.
      
      	* src/ranges.c (range_dump): Don't print "\n".  All callers
       	changed as needed.
      
      	* src/sheet-style.c (sheet_style_optimize, sheet_styles_dump):
       	Send all debugging output to stderr.  (As opposed to half stderr
       	and half stdout.)
      169f4952
  20. 03 May, 2000 2 commits
    • 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
    • Almer. S. Tigelaar's avatar
      s/strcasecmp/g_strcasecmp/ · 4741a7a5
      Almer. S. Tigelaar authored
      2000-05-03  Almer. S. Tigelaar.  <almer1@dds.nl>
      
      	* *.c: s/strcasecmp/g_strcasecmp/
      4741a7a5
  21. 01 May, 2000 1 commit
    • Jody Goldberg's avatar
      ExprName -> NamedExpression ArrayRef -> ExprArray · 8d168628
      Jody Goldberg authored
      
      2000-05-01  Jody Goldberg <jgoldberg@home.com>
      
      	* ExprName -> NamedExpression
      	  ArrayRef -> ExprArray
      
      	change ExprTree to be a union of similar types and split
      	the elements into discrete types.
      	    ExprConstant
      	    ExprFunction
      	    ExprUnary
      	    ExprBinary
      	    ExprName
      	    ExprVar
      	    ExprArray
      
      	    expr->oper -> expr->any.oper
      
      2000-04-29  Jody Goldberg <jgoldberg@home.com>
      
      	* src/value.c (value_new_empty) : Don't allocate any memory.
      	(value_release) : Don't free any either.
      
      	* src/sheet-style.c (border_check) : Init outer_style to remove a
      	  warning.
      8d168628
  22. 29 Apr, 2000 1 commit
  23. 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
  24. 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
  25. 06 Apr, 2000 1 commit
  26. 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
  27. 10 Feb, 2000 1 commit
    • Jody Goldberg's avatar
      Remove inclusion of cell.h. Adjust includes to loosen things a bit more. · f6b62c13
      Jody Goldberg authored
      
      2000-02-10  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.h : Remove inclusion of cell.h.  Adjust includes to loosen
      	  things a bit more.
      
      	* src/colrow.h : Remove margin_a_pt margin_b_pt.  Margins are NOT
      	  scaled by resolution or zoom.
      	  Rename units -> size_pts and store as float rather than double.
      	  Rename pixels-> size_pixels
      	  hard_size -> use gboolean rather than a 1 element bitfield
      
      	* src/style.h : Move the typedefs from here.
      	* src/gnumeric.h : to here.
      
      	*.[ch] : Catch up with the renames and include changes.
      f6b62c13
  28. 13 Jan, 2000 1 commit
  29. 21 Dec, 1999 1 commit
    • Jody Goldberg's avatar
      Implicit intersection is done. · 7e7b6e01
      Jody Goldberg authored
      Now all we need is implicit iteration for array formulas.
      I've added a comment on a possible heuristic to use to evaluate the
      which for of iteration to use.
      
      1999-12-21  Jody Goldberg <jgoldberg@home.com>
      
      	* src/expr.c (expr_implicit_intersection) : New routine split from
      	  function_call_with_list.
      	(compare) : Handle intersection.
      	(eval_expr_real) : Ditto.  Add verbose comment on a possible heuristic
      	  for the final piece of this ugly evaluation mechanism, array
      	  interation.
      	(cell_ref_get_abs_col_row) : Adjust to take a CellPos.
      
      	* src/func.c (function_iterate_do_value) : Split the implicit
      	  intersection out into a new function.  Use intersection for
      	  strings as well as float & bool args.  Correct memory leak
      	  when intersetion was used.
      	(function_call_with_list) : Ditto.
      
      	* *.c : Adjust to change in EvalPosition to use CellPos.
      
      	* gnumeric.spec.in : Update the libglade dependancy.
      
      	* src/workbook.c (wb_edit_key_pressed) : Do not select the current
      	  cell address and do not move the cursor to the start of the cell
      	  address when F4 is hit.
      7e7b6e01
  30. 24 Oct, 1999 1 commit
  31. 22 Oct, 1999 1 commit
  32. 14 Sep, 1999 1 commit
    • Morten Welinder's avatar
      Make static. · a7fa8a8c
      Morten Welinder authored
      1999-09-14  Morten Welinder  <terra@diku.dk>
      
      	* src/dialogs/dialog-analysis-tools.c (tools): Make static.
      
      	* src/functions/fn-eng.c (eng_functions_init): Arg fix.
      	* src/functions/fn-string.c (string_functions_init): Ditto.
      	* src/functions/fn-stat.c (stat_functions_init): Ditto.
      	* src/functions/fn-sheet.c (sheet_functions_init): Ditto.
      	* src/functions/fn-misc.c (misc_functions_init): Ditto.
      	* src/functions/fn-math.c (math_functions_init): Ditto.
      	* src/functions/fn-lookup.c (lookup_functions_init): Ditto.
      	* src/functions/fn-logical.c (logical_functions_init): Ditto.
      	* src/functions/fn-information.c (information_functions_init):
       	Ditto.
      	* src/functions/fn-financial.c (finance_functions_init): Ditto.
      	* src/value.c (value_terminate): Ditto.
      
      	* gnumeric.spec.in (Requires): Update gnome-print dependency.
      a7fa8a8c
  33. 13 Sep, 1999 1 commit
    • Jukka-Pekka Iivonen's avatar
      Moved the error functions to information functions file. · b4c1ef87
      Jukka-Pekka Iivonen authored
      1999-09-13  Jukka-Pekka Iivonen  <iivonen@iki.fi>
      
      	* src/functions/fn-misc.c, src/functions/fn-information.c: Moved the
      	error functions to information functions file.
      
      	* src/functions/fn-math.c, src/function/fn-lookup.c: Moved TRANSPOSE
      	to lookup functions file.
      b4c1ef87
  34. 10 Sep, 1999 1 commit
  35. 09 Sep, 1999 1 commit
  36. 16 Aug, 1999 1 commit
  37. 07 Aug, 1999 1 commit
  38. 02 Aug, 1999 2 commits