1. 15 May, 2000 1 commit
    • Jody Goldberg's avatar
      Fix typo breaking row/col ins/del breakage :-( · a5e04f49
      Jody Goldberg authored
      Make some minor improvements in status display for row/col selection.
      2000-05-14  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.h : Reformat.
      	* src/commands.c (cmd_ins_del_row_col_{undo,redo}) : unant the
      	  selection when the topology changes.
      	* src/workbook.c (workbook_expr_relocate) : Fix typo.
      	* src/sheet-view.c (sheet_view_{col,row}_selection_changed) : Call
      	  sheet_update after a change.
  2. 13 May, 2000 1 commit
    • Michael Meeks's avatar
      Fix a load of evil embeddable-grid bugs, fix oaf activation. · 67608b01
      Michael Meeks authored
      Fix a load of evil embeddable-grid bugs, fix oaf activation.
      2000-05-11  Michael Meeks  <michael@helixcode.com>
      	* src/embeddable-grid.c (grid_view_activate): grab widget focus.
      	* src/workbook-format-toolbar.c (workbook_feedback_set): make it
      	cope with no format toolbar.
      	* src/workbook.c (workbook_init): g_new0 for safety and to blank
      	* src/embeddable-grid.c (grid_view_new): set a sensible default
      	size so we actually see something. (grid_view_activate): Fix with
      	state boolean. (set_header_visibility): implement.
      	(embeddable_grid_set_header_visibility): update.
      	(grid_view_destroy): kill. (grid_view_new): kill evil private list
      	of views.
      	* gnumeric.oafinfo: another fix, evil bug from oaf conversion script.
  3. 11 May, 2000 1 commit
  4. 10 May, 2000 1 commit
    • Jody Goldberg's avatar
      Make accelerators possible in gnumeric_toolbars. · 897c7caf
      Jody Goldberg authored
      Make accelerators possible in gnumeric_toolbars.
      Enable the workbook close optimization that clears the formula list before
      removing the cells.
      Add some (currently broken) accelerators for font attributes.
  5. 09 May, 2000 1 commit
    • Jody Goldberg's avatar
      Mark the changed cell for status update. · 912ae5b5
      Jody Goldberg authored
      2000-05-09  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.c (cmd_set_date_time_{undo,redo}) : Mark the changed cell for
      	  status update.
      	* src/Makefile.am (INCLUDES) : Remove extra '/' at end.
      	* src/workbook.c (insert_current_time_cmd) : fix cut-n-paste-o.
  6. 08 May, 2000 1 commit
  7. 06 May, 2000 1 commit
    • Michael Meeks's avatar
      Add 3D dependency support. (cb_single_hash_to_list, · 479bddb8
      Michael Meeks authored
      2000-05-06  Michael Meeks  <michael@helixcode.com>
      	* src/eval.c (handle_cell_range_deps): Add 3D dependency support.
      	(cb_single_hash_to_list, cb_range_hash_to_list): Re-arrange handling of
      	where the list is collated. (do_deps_destroy): update.
      	(cell_drop_dependencies): remove cretinism here.
      	(drop_cell_range_dep, handle_cell_single_dep): return on NULL deps structure.
      	* src/sheet-style.c (sheet_style_attach): enable cache trash avoidance code.
      	* src/sheet.c (sheet_cell_remove_internal): short circuit for NULL
      	* src/expr.c (expr_rewrite): update to handle workbook case.
      	* src/eval.c (workbook_deps_destroy): update for speed.
      	(sheet_deps_destroy): split body into (do_deps_destroy): here.
      	* src/workbook.c (workbook_delete_sheet): destroy the sheet's
      	dependencies here as well; very silly. (workbook_do_destroy): destroy
      	deps of all sheets up front.
  8. 04 May, 2000 4 commits
    • Jody Goldberg's avatar
      NULL the undo, redo lists after clearing them. · d4c03b6e
      Jody Goldberg authored
      NULL the undo, redo lists after clearing them.
      2000-05-04  Jody Goldberg <jgoldberg@home.com>
      	(workbook_delete_sheet) : NULL the undo, redo lists after they are
      	(workbook_do_destroy) : Ditto.
    • Michael Meeks's avatar
      don't shrink. sheet sized ranges. (sheet_style_compute): add precondition · eb1b5e70
      Michael Meeks authored
      2000-05-04  Michael Meeks  <michael@helixcode.com>
      	* src/sheet-style.c (sheet_style_delete_colrow): don't shrink.
      	sheet sized ranges. (sheet_style_compute): add precondition for
      	* src/workbook.c (workbook_new_with_sheets): kill ' ' in
      	sheet names.
      	* corba-test/test-gnumeric-corba.c (do_test): ditto.
    • Jody Goldberg's avatar
      Desensitize the '=' during editing. · 786d336b
      Jody Goldberg authored
      Fix typ in toolbar init.
      Fix typo in sheet deletion.
      2000-05-04  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c : Fix typo that was calling undo for redo toolbar.
      	({redo,undo}_cmd) : Use workbook_finish_editing directly.
      	(cb_auto{function,sum}) : If we are already editing do not start.
      	  When the wizard is in place bring it up.
      	(workbook_start_editing_at_cursor) : Make the '=' insensitive while
      	(workbook_finish_editing) : Make the '=' sensitive.
      	(sheet_action_delete_sheet) : Fix typo and rename parm
      	  'current_sheet' -> 'sheet' to avoid confision with
    • Jody Goldberg's avatar
      new function. Handle. Handle. · 9a04a8ea
      Jody Goldberg authored
      2000-05-03  Jody Goldberg <jgoldberg@home.com>
      	* src/command-context.c (gnumeric_error_invalid) : new function.
      	* src/command-context-gui.c (ccg_error_invalid) : Handle.
      	* src/command-context-corba.c (ccc_error_invalid) : Handle.
      	* src/commands.c (cmd_rename_sheet_{undo,redo}) : Pass a context to
      	* src/workbook.c (workbook_rename_sheet) : Sheet names can not be
      	  empty.  Take a CommandContext and report the error.  Invert the
      	  return value.
  9. 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]
      	* 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
      	* 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
      	* 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
      	* src/functions/fn-stat.c (gnumeric_linest) : Handle inverted ranges.
      	(gnumeric_logest) : Ditto.
      	* src/functions/fn-information.c (gnumeric_countblank) : Use
      	(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.
  10. 01 May, 2000 2 commits
    • Michael Meeks's avatar
      Handle oafinfo.in · af769d68
      Michael Meeks authored
      2000-05-01  Michael Meeks  <michael@helixcode.com>
      	* configure.in: Handle oafinfo.in
      	* src/sheet-object.c (sheet_set_mode_type_full): oafize.
      	* src/sheet-object-container.c (sheet_object_container_new_from_goadid):
      	* src/sheet.c (sheet_insert_object): always launch via.
      	bonobo_object_activate regardless of monikers.
      	* idl/Gnumeric.idl: add a comment telling people to look elsewhere if
      	they want to write bonobo components.
      	* src/workbook.c (insert_object_cmd): update for oaf.
      	* src/main.c (gnumeric_main): Check for NULL ctx, on corba failure.
      	* src/corba-args.c (gnumeric_arg_parse): NULL ctx.
      	* src/corba-workbook-factory.c (_WorkbookFactory_init): update to
      	use od_server_register.
      	(WorkbookFactory_create_object): use Bonobo_stringlist not GNOME_stringlist,
      	when was this last compiled ...
      	* src/corba-args.c (gnumeric_arg_parse): update for OAF.
      	* acconfig.h: USING_OAF
      	* configure.in: ditto.
      2000-05-01  Michael Meeks  <michael@helixcode.com>
      	* HACKING: make it more explicit.
    • Miguel de Icaza's avatar
      Put a space there, to avoid having "Sheet 1" and then "Sheet1" in the same · b163b79b
      Miguel de Icaza authored
      2000-04-30  Miguel de Icaza  <miguel@helixcode.com>
      	* src/workbook.c (workbook_new_with_sheets): Put a space there, to
      	avoid having "Sheet 1" and then "Sheet1" in the same workbook.
      2000-04-29  Miguel de Icaza  <miguel@helixcode.com>
      	* src/application.c (application_init): Oops.
  11. 29 Apr, 2000 2 commits
  12. 27 Apr, 2000 3 commits
    • Jody Goldberg's avatar
      No need to translate "%s%d". · b6d97a5a
      Jody Goldberg authored
      2000-04-27  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c (workbook_sheet_get_free_name) : No need to translate "%s%d".
      	* src/gutils.c (PLUGIN_SUFFIX) : typo.
    • Morten Welinder's avatar
      Don't access memory that isn't ours to access. Constify. · b9b2b802
      Morten Welinder authored
      2000-04-27  Morten Welinder  <terra@diku.dk>
      	* src/plugin.c (plugin_load_plugins_in_dir): Don't access memory
       	that isn't ours to access.  Constify.
      	(plugin_data_last_modified): Constify.
      	(plugin_data_get_title): Constify.
      	(plugin_data_get_descr): Constify.
      	(plugin_data_get_size): Constify.
      	(plugin_data_get_user_data): Constify.
      2000-04-25  Morten Welinder  <terra@diku.dk>
      	* numtheory.c (gnumeric_ithprime): Up limit to 1000000.
      	(ithprime): Rework memory handling; up limit; optimize to not even
       	try even numbers.
      	(function_names): rename "nt_ithprime" back to "ithprime" as no
      	conflict is likely.
    • Jody Goldberg's avatar
      Improve versioning. Fix a few bugs. · 2c8b64d0
      Jody Goldberg authored
      Improve versioning.
      Fix a few bugs.
      2000-04-26  Jody Goldberg <jgoldberg@home.com>
      	* src/command-context.c (gnumeric_error_sys_err) : New function.
      	* src/command-context-gui.c (ccg_error_sys_err) : Support it.
      	* src/gnumeric-util.c (gnumeric_glade_xml_new) : Use gnumeric_error_sys_err.
      	* src/gutils.c (gnumeric_sys_{data,lib,glade,plugin)_dir) : New functions.
      	(gnumeric_usr_dir, gnumeric_usr_plugin_dir) : New functions.
      	* src/plugin.c (load_all_plugins) : Use
      	  gnumeric_usr_plugin_dir, and  gnumeric_sys_plugin_dir.
      	* src/item-edit.c (point_is_inside_range) : Handle non-singleton
      	  expr start characters.
      2000-04-25  Jody Goldberg <jgoldberg@home.com>
      	* *.c : glade_new_xml -> gnumeric_glade_new_xml
      	  Localize GNUMERIC_GLADEDIR so that plugins can use it too.
      	* src/gnumeric-util.c (gnumeric_glade_xml_new) : New function.
      	* */Makefile.am : Set 'DATADIR' rather than GLADEDIR.  And version
      	  the glade file the same way the plugins are set.  This should
      	  probably expand to include architecture akin to gcc.
      	* src/widgets/widget-editable-label.c (el_button_press_event) :
      	  Clicking in another window accepts the changes.  Once we have
      	  reliquished our grab push the button event back on the queue
      	  so that it can be forwarded on to the appropriate recipient (9007).
      	* src/parse-util.c (parse_text_value_or_expr) : Watch for 1 character
      	  strings which could start an expression.
  13. 24 Apr, 2000 1 commit
    • Jody Goldberg's avatar
      Rename ea_status -> selection_descriptor Moved ea_entry here and called it · c2687829
      Jody Goldberg authored
      2000-04-24  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook-private.h : Rename ea_status -> selection_descriptor
      	Moved ea_entry here and called it edit_line.
      	* src/workbook.c (workbook_get_entry) : new routine.
      	* src/dialogs/function-select.glade : Made this a dialog, not a popup.
      	* src/summary.c (summary_item_free) : format police.
      	* src/value-sheet.c (value_area_foreach) : Ditto.
      	* src/sheet.c (sheet_new) : Init the update flags to FALSE, rather
      	  than TRUE now that the system seems to be getting their initial
      	  state correct when importing, paging and the like.
      	(sheet_load_cell_val) : Use workbook_get_entry.
      	(sheet_find_boundary_horizontal) : format police.
      	(sheet_find_boundary_vertical) : Ditto.
      	(sheet_range_splits_array) : Ditto.
      	(sheet_delete_{cols,rows}) : Ditto.
      	(sheet_restore_row_col_sizes) : Ditto.
      	(sheet_col_get_distance_{pixels,pts}) : Ditto.
      	(sheet_row_get_distance_pixels) : Ditto.
      	(sheet_row_get_distance_pts) : Ditto, Init accumulator.
      	* src/selection.c (sheet_selection_set) : format police.
      	(selection_check_for_array) : Ditto.
      	(sheet_selection_walk_step) : Ditto.
      	* src/sheet-view.c (horizontal_scroll_event) : Ditto.
      	(vertical_scroll_event) : Ditto.
      	* src/dialogs/dialog-cell-format.c : Ditto.
      	* src/dialogs/dialog-printer.c : Ditto.
      	* src/dialogs/dialog-workbook-attr.c : Ditto.
      	* src/functions/fn-eng.c : Ditto.
      	* src/functions/fn-lookup.c : Ditto.
      	* src/functions/fn-string.c : Ditto.
      	* src/pattern.c (gnumeric_sheet_patterns) : Add a few patterns for
      	  applix.  More are needed, and these are not available in the format
      	  dialog yet.
      	* src/number-match.c (compute_value) : Use g_strtod.
      	(format_match) : Ditto.
      	* src/item-edit.c : Use workbook_get_entry.
      	* src/item-bar.c (item_bar_event) : format police.
      	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : Do not set
      	  the focus directly.  Leave that to workbook_start_editing.
      	(gnumeric_sheet_new) : Use workbook_get_entry.
      	* src/format.c (render_number) : format police.
      	* src/complex.c (complex_from_string) : Use g_strtod.
      	* src/functions/fn-database.c : Ditto.
      	* src/colrow.c (cb_row_col_visibility) : format police.
      	* src/main.c (gnumeric_main) : Move the workbook_style_test to the
      	  empty case.
      	* src/mstyle.c (mstyle_set_pattern) : Add some safety.
      	* src/number-match.c (format_match) : Handle empties.
  14. 22 Apr, 2000 1 commit
    • Almer. S. Tigelaar's avatar
      Fixed Bug #9007 Note : Does not fix the mouse click problem, just the · 415c2aef
      Almer. S. Tigelaar authored
      2000-04-22  Almer. S. Tigelaar.  <almer1@dds.nl>
      	Fixed Bug #9007
      	Note : Does not fix the mouse click problem, just the focus
      	* src/workbook.c
      	(workbook_attach_sheet) : Attaches a signal handler for
      	the "editing_stopped" signal of the editable label.
      	(sheet_label_editing_stopped_signal) : The signal handler
      	of the "editing_stopped" signal.
      2000-04-22  Almer. S. Tigelaar.  <almer1@dds.nl>
      	* widget-editable-label.c : Added new event "editing_stopped",
      	this signal is emmited when the user presses "ESC" or presses
      	the mouse button(s) outside the editable label.
  15. 21 Apr, 2000 2 commits
  16. 20 Apr, 2000 2 commits
    • Jody Goldberg's avatar
      Fix last minute header change. · adc4b852
      Jody Goldberg authored
    • 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
      	(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_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
      	(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
      	(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
      	* 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
      	* 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
      	(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
      	(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.
  17. 18 Apr, 2000 1 commit
  18. 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.
  19. 09 Apr, 2000 3 commits
    • Jody Goldberg's avatar
      Do not change the target style if editing has not yet been enabled. · cd9b6682
      Jody Goldberg authored
      2000-04-09  Jody Goldberg <jgoldberg@home.com>
      	* src/dialogs/dialog-cell-format.c : Do not change the target style if
      	  editing has not yet been enabled.
      	* src/workbook.c (workbook_set_saveinfo) : If the save function is
      	  NULL default to xml.
      	* src/format.c (format_value) : Add some error checking.
      	* src/cell.c (calc_text_dimensions) : Make static
      	* src/main.c : Add main.h
      2000-04-03  Dom Lachowicz <dominicl@seas.upenn.edu>
       	* src/workbook.c (sheet_action_reorder_sheet): Right click on a
       	sheet tab, and if there's more than one sheet, you'll get an
       	option to bring up the re-order sheets dialog
       	* src/dialogs/dialog-plugin-manager.c (refresh_right_frame) :  Do not
      	  override default fonts and colours.
      	* src/dialogs/sheet-order.glade,
      	* src/dialogs/sheet-order.glade.h,
      	* src/dialogs/dialog-sheet-order.c (row_cb, delete_clicked_cb,
      	  up_clicked_cb, down_clicked_cb, close_clicked_cb,
      	  dialog_sheet_order_impl) : Improve look by moving buttons to the
      	  right edge rather than using stock buttons on the bottom and side.
      2000-04-07  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c (workbook_finish_editing) : resensitize the toolbars
      	  after editing.
      	(workbook_start_editing_at_cursor) : Desensitize the toolbars when we
      	  start to edit.
    • Jon K Hellan's avatar
      Put "cell_changed" signal back in. · eff5af9d
      Jon K Hellan authored
      2000-04-09  Jon K Hellan  <hellan@acm.org>
      	* src/workbook.[ch] (workbook_class_init): Put "cell_changed"
      	signal back in.
      	* src/sheet.c (sheet_load_cell_val): Ditto.
      2000-04-09  Jon K Hellan  <hellan@acm.org>
      	* gtk-combo-text.[ch]: Fix problem with mouseover: Mouseover from
      	last time popup was up persists if popup was last dismissed with
      	* gtk-combo-text.h (_GtkComboText): Add member to remember which
      	entry widget we are caching.
      	* gtk-combo-text.c (gtk_combo_text_destroy): Disconnect
      	(cb_enter): Remember which entry widget we are caching.
      	(cb_pop_down): New callback function. Forget cached entry widget.
      	(gtk_combo_text_construct): Note that we're not yet caching any
      	entry widget.
      	(gtk_combo_text_new): Connect cb_pop_down to pop_down_done.
      	* gtk-combo-box.c (gtk_combo_popup_tear_off): Add missing cast to
      	kill warning.
      	(gtk_combo_tearoff_bg_copy): It's not in use. #ifdef 0 it, and add
      	comment about when it would be needed.
      	(gtk_combo_popup_reparent): Add FIXME comment about code which
      	isn't used, but will be needed.
    • Morten Welinder's avatar
      Make auto-format work for sheet-relative cellrefs like "=sum(a1:a10)". · 9b636fcb
      Morten Welinder authored
      2000-04-09  Morten Welinder  <terra@diku.dk>
      	* src/sheet.h (ParsePositions): Add sheet.
      	* src/expr.c (parse_pos_init): New arg sheet.  All callers changed.
      	* src/parser.y (gnumeric_expr_parser): Use pp->sheet.
  20. 07 Apr, 2000 3 commits
    • Jon K Hellan's avatar
      Replace member name with name_quoted and name_unquoted. In name_quoted, · 699e8bf7
      Jon K Hellan authored
      2000-04-08  Jon K Hellan  <hellan@acm.org>
              * src/sheet.h (struct _Sheet): Replace member name with
      	name_quoted and name_unquoted. In name_quoted, names with spaces
      	or quote characters are protected with quotes.
      	* src/analysis-tools.c (prepare_output): Use
      	workbook_sheet_get_free_name to ensure that we don't create more
      	than one sheet with the same name.
      	* src/eval.c (dump_cell_list, sheet_dump_dependencies): Dump
      	sheet->name_unquoted instead of sheet->name.
      	* src/expr-name.c (name_sheet_title): Make value from
      	sheet->name_quoted instead of sheet->name. FIXME: Is this correct?
      	* src/gnumeric-sheet.c (selection_insert_selection_string): Make
      	selection string from sheet->name_quoted instead of quoting
      	sheet->name here.
      	* src/print-info.c (render_tab): Render sheet->name_unquoted
      	instead of sheet->name.
      	* src/print-preview.c (create_toplevel): Use sheet->name_unquoted
      	instead of sheet->name in window title.
      	* src/selection.c (sheet_selection_to_string, range_to_string):
      	Make reference string from sheet->name_quoted instead of quoting
      	sheet->name here.
      	* src/sheet.[ch] (sheet_quote_name): Rename to
      	sheet_name_quote. Take name_unquoted parameter, not a sheet.
      	* src/sheet.c (sheet_rename, sheet_new): Set both
      	sheet->name_quoted and sheet->name_unquoted.
      	(sheet_destroy): Free both sheet->name_quoted and
      	(cellref_name): Make reference from sheet->name_quoted instead of
      	quoting sheet->name here.
      	* src/test.c (thrash_sheet): Use sheet->name_unquoted instead of
      	sheet->name in debug output.
      	* src/value-sheet.c (value_dump): Dump sheet->name_quoted instead
      	of quoting sheet->name here.
      	(encode_cellref): Use sheet->name_quoted instead of quoting
      	sheet->name here.
      	* src/workbook.[ch] (workbook_sheet_get_free_name): Make it more
      	generally useful: Add "base" and "always_suffix" parameters. The
      	caller should now select the base to make the name from
      	(e.g. "Sheet"), and specify whether or not a suffix should be
      	added when the name "base" is not in use.
      	* src/workbook.c (insert_sheet_cmd): Use new signature of
      	(workbook_rename_sheet): Insert unquoted name in hash table.
      	(sheet_label_text_changed_signal): Remove test for quote
      	characters in sheet name.
      	(sheet_action_delete_sheet): Prompt with name_unquoted instead of
      	(sheet_action_rename_sheet, workbook_attach_sheet): Use
      	name_unquoted instead on name.
      	(workbook_detach_sheet): Use sheet->name_unquoted as hash key
      	instead of sheet->name.
      	* src/workbook-cmd-format.c
      	(workbook_cmd_format_sheet_change_name): Use name_unquoted instead
      	on name.
      	* src/xml-io.c (xml_sheet_write): Output sheet->name_unquoted
      	instead of sheet->name.
      	* src/dialogs/dialog-sheet-order.c (dialog_sheet_order_impl): Make
      	list header passive.
      	(add_to_sheet_clist, delete_cb): Substitute sheet->name_unquoted
      	for sheet->name.
      	* src/dialogs/dialog-zoom.c (dialog_zoom_impl): Ditto.
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* graphic-context.c (graphic_wizard_guess_series): Substitute
      	sheet->name_quoted for sheet->name.
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* ms-excel-read.c (ms_excel_set_xf, ms_excel_read_formula,
      	ms_excel_read_sheet):  Use
      	gnum_sheet->name_unquoted instead of gnum_sheet->name in debug
      	(ms_excel_read_workbook): Remove unused variable to silence
      	* ms-excel-write.c (write_externsheets): Output
      	gnum_sheet->name_quoted instead of gnum_sheet->name. FIXME: Is
      	this correct?
      	(write_sheet): Use gnum_sheet->name_unquoted instead of
      	gnum_sheet->name in debug output.
      	(write_workbook): Output gnum_sheet->name_unquoted instead of
      	* ms-formula-read.c (ms_excel_parse_formula): Use
      	gnum_sheet->name_unquoted instead of gnum_sheet->name in debug
      	* ms-obj.c (object_anchor_to_position): Ditto.
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* html.c (html_write_wb_html32, html_write_wb_html40): Output
      	sheet->name_unquoted instead of sheet->name.
      	(html_read): Gettextize sheet name template.
      	* latex.c (html_write_wb_latex, html_write_wb_latex2e):  Output
      	sheet->name_unquoted instead of sheet->name.
      	* roff.c (write_wb_roff): Ditto
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* lotus.c (attach_sheet): Remove \n from sheet name. Gettextize
      	sheet name template.
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* oleo.c (attach_sheet): Remove \n from sheet name. Gettextize
      	sheet name template.
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* pln.c (pln_read_workbook): Use workbook_set_saveinfo instead of
      2000-04-08  Jon K Hellan  <hellan@acm.org>
      	* text-io.c (writeTextSheet): Output sheet->name_unquoted instead of
      	(readTextWorkbook): Ungettextize name of sheet to
      	create. text_parse_file is supposed to rename it.
    • Jody Goldberg's avatar
      Fix typo, did this ever work ? · cf3f1e00
      Jody Goldberg authored
      2000-04-07  Jody Goldberg <jgoldberg@home.com>
      	* src/embeddable-grid.h (GridViewClass) : Fix typo, did this ever work ?
      	* src/workbook.c (workbook_move_sheet) : Mark the book as dirty when a
      	  sheet moved.
      	(insert_sheet_cmd) : Mark book as dirty when sheet is added.
      	(workbook_attach_sheet) : Add a precondition to avoid failing in the
      	  bonobo case.
    • Jody Goldberg's avatar
      Fix minor thinko in eval_expr. · 0f4097ca
      Jody Goldberg authored
      Improve status update after load.
      2000-04-06  Jody Goldberg <jgoldberg@home.com>
      	* src/xml-io.c (gnumeric_xml_read_workbook) : No need to recalc, the
      	  loader handles it.
      	* src/file.c (workbook_read) : Do a recalc and sheet_update after loading.
      	  Wrap entire process in deep_{freeze,thaw}.
      	* src/expr.c (eval_expr) : Fix thinko.
  21. 06 Apr, 2000 3 commits
  22. 04 Apr, 2000 2 commits
    • Jody Goldberg's avatar
      Improve status update. · 56a9e1f0
      Jody Goldberg authored
      Simplify a few command paths in preparation for registration.
      Hopefully fix bug 3961
      2000-04-04  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c (workbook_class_init) : Remove CELL_CHANGED.
      	(workbook_finish_editing) : At LAST! cmd_set_text is responsible for
      	  setting the text directly :-)
      	* src/workbook-format-toolbar.c (change_font_size_in_selection_cmd) :
      	  cmd_format takes care of the height adjustments.
      	* src/dialogs/dialog-cell-format.c (cb_fmt_dialog_dialog_apply) : Ditto.
      	* src/sheet.c (Sheet): Add flags edit_pos_changed, selection_content_changed.
      	(sheet_new) : init them.
      	(sheet_flag_status_update_cell) : New function that sets the flags.
      	(sheet_flag_status_update_range) : Ditto.
      	(sheet_update) : Fix typo. Add support for new flags.
      	(sheet_update_auto_expr) : Const correctness.
      	(sheet_update_controls) : Ditto.
      	(sheet_load_cell_val) : Ditto. Delete unused signal.
      	(sheet_set_text) : Use sheet_flag_status_update_range.
      	(sheet_set_edit_pos) : New routine.
      	(sheet_cursor_move) : Delete.
      	(sheet_fill_selection_with) : Remove.
      	* src/selection.c (sheet_selection_changed_hook) : const correctness.
      	(sheet_selection_change) : merge into sheet_selection_set.
      	(sheet_selection_extend_to) : Use sheet_selection_set.
      	(sheet_selection_set) : Merge with sheet_selection_change and use the
      	  sheet_cursor accessors rather than changing things directly.
      	(sheet_selection_walk_step) : Use sheet_selection_set, and sheet_set_edit_pos.
      	(sheet_is_all_selected) : const correctness.
      	(sheet_is_cell_selected) : New routine.
      	(sheet_is_range_selected) : New routine.
      	* src/item-grid.c (item_grid_draw_background) : Adjust to rename of
      	* sheet_selection_is_cell_selected -> sheet_is_cell_selected.
      	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : Cleanup the
      	  logic for creating fills and arrays so that it can have undo
      	  - Change the heuristic for selecting what type of characters can start
      	    an edit session.  Rather than using fixed Latin1 centric codes,
      	    guess that the 'length' field of the event is >0 if the character is
      	    printable.  Be more careful NOT to forward characters to the entry
      	    if we are not editing.
      	  - Use sheet_update.
      	* src/commands.c (command_pop_list_top) : Delete.
      	(cmd_format_redo) : Apply the height adjustment here.
      	(cmd_set_area_*) : Implement.
      	(*) : Use sheet_update.
      	* src/colrow.c (rows_height_update) : Moved here and generalized from
      	* src/clipboard.c (sheet_paste_selection) : No need to call
      	  sheet_cursor_set.  sheet_selection_add_range already does that.
      	(clipboard_paste_region) : Flag updates to the status display if
      	  something changes.
    • Jon K Hellan's avatar
      Call gnumeric_sheet_make_visible only if sheet widget is realized. · affafc8a
      Jon K Hellan authored
      2000-04-04  Jon K Hellan  <hellan@acm.org>
      	* src/sheet-view.c (sheet_view_set_zoom_factor): Call
      	gnumeric_sheet_make_visible only if sheet widget is realized.
      	(sheet_view_make_edit_pos_visible): New function: Make cell at
      	edit position visible.
      	(sheet_view_size_allocate): Add call to
      	* src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible): Add
      	* src/xml-io.c (xml_sheet_read): Read zoom into a local variable
      	before calling sheet_set_zoom_factor. Otherwise,
      	sheet_set_zoom_factor would assume that it had already initialized
      	this factor.
      	* src/workbook.c (change_zoom_in_current_sheet_cb): No longer call
      	change_displayed_zoom_cb, sheet_set_zoom_factor will call it
      	* src/workbook.[ch] (workbook_class_init,
      	workbook_focus_current_sheet, workbook_create_standard_toobar):
      	Rename "sheet_changed" signal to "sheet_entered".  Remove
      	"cell_changed" signal.
      	(workbook_focus_current_sheet): Rename "sheet_changed" signal to
      	(workbook_zoom_feedback_set): New function: Update zoom combo in
      	toolbar when zoom changes.
      	* src/sheet.c (sheet_update_zoom_controls): New function: Update
      	zoom controls when zoom changes.
      	(sheet_set_zoom_factor): Use it.
      	(sheet_load_cell_val): Do not emit "cell_changed".
      	* src/dialogs/dialog-cell-format.c (cb_fmt_dialog_dialog_apply):
      	Call sheet_update_controls to update toolbar controls.
      	* src/history.c (file_history_cmd): Remove pristine workbook when
      	a new one is read in. For consistency with File/Open, File/Import
      	and Bonobo File/History.
      	* src/dialogs/dialog-workbook-attr.c
      	(cb_attr_dialog_dialog_apply): Include workbook-view.h to get
      	prototype for workbook_view_pref_visibility.
      	* src/border.h (style_border_print): Remove bogus const in  prototype.
      	Reported by Aron Griffis.
  23. 01 Apr, 2000 2 commits
    • Jody Goldberg's avatar
      Regenerate. · e6add3d7
      Jody Goldberg authored
      2000-04-01  Jody Goldberg <jgoldberg@home.com>
      	* docs/C/func.defs, docs/C/functions.sgml : Regenerate.
      	* src/functions/*.c : Adjust some 'See Also' tags to point to existing
      	* src/workbook.c (workbook_menu_format_sheet) : Do not use
      	  GNOMEUIINFO_TOGGLEITEM as it requires an xpm, and bonobo crashes
      	  when fed a NULL xpm.
    • Jody Goldberg's avatar
      Fix the silly edit bug tha was being reported. · fce11703
      Jody Goldberg authored
      Some major work on item-edit.
      2000-03-31  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c : Switch over to useing GNOMEUIINFO_ITEM_ where
      	(cb_editline_focus_in) : Do not start editing if we are already
      	* src/utils.c (parse_cell_name) : constness.
      	* src/style.c (style_font_gdk_font) : constness.
      	(style_font_gdk_font) : ditto.
      	(style_font_gnome_font) : ditto.
      	(style_font_get_height) : ditto.
      	* src/sheet.c (sheet_set_zoom_factor) : redimension all cells, rather
      	  than the sparse sheet region.  Do not auto-resize.
      	(sheet_cell_add) :  Adjust to new calling convention for
      	(sheet_stop_editing) : Rename from sheet_destroy_edit_cursor.
      	* src/sheet-view.c (sheet_view_get_style_font) : constness.
      	* src/gnumeric-sheet.c (gnumeric_sheet_create_editing_cursor) :
      	  No need to set all those arguments.
      	(destroy_item_editor) : Merge into gnumeric_sheet_stop_editing.
      	(gnumeric_sheet_stop_editing) : Renamed from
      	* src/cell.[ch] (cell_set_rendered_text) : Adjust to new calling
      	  convention for cell_calc_dimensions.
      	(cell_calc_dimensions) : Adjust calling convetion to make auto
      	  resizing optional.
      	(calc_text_dimensions) : Adjust calling convention to directly set size.
      	* src/sheet-style.c (re_dimension_cells_cb) :  Adjust to new calling
      	  convention for cell_calc_dimensions.
      	* src/item-edit.c : Major rework to behave better at margins,
      	  correctly handle cells whose display contents span differently than
      	  their displayed values, multi-line display mechanics, and a blinking
      	  cursor :-)