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. 09 May, 2000 2 commits
  3. 07 May, 2000 1 commit
    • Jody Goldberg's avatar
      Size the content if it has not yet been sized. · 1d26df50
      Jody Goldberg authored
      2000-05-07  Jody Goldberg <jgoldberg@home.com>
      	* src/sheet.c (sheet_cell_calc_span) : Size the content if
      	  it has not yet been sized.
      	* src/commands.c (cmd_area_set_text_redo) : Do not queue the
      	  resize, rerender, and respan until after the recalc.
  4. 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
      	(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.
  5. 04 May, 2000 1 commit
    • 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.
  6. 03 May, 2000 2 commits
    • Jody Goldberg's avatar
      Fix leak morten found. · 43002eb0
      Jody Goldberg authored
      Fix leak morten found.
      2000-05-03  Jody Goldberg <jgoldberg@home.com>
      	* src/cell.c (cell_set_array_formula) : Add some invariants to catch
      	  inverted arrays.  The function should use the supplier's
      	  reference.  It should not re-reference the supplied expression.
      	  Document this.
    • 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.
  7. 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.
  8. 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.
  9. 09 Apr, 2000 1 commit
  10. 05 Apr, 2000 1 commit
    • Jody Goldberg's avatar
      Continue slow progress towards correctly updating the status region. · ac07ca90
      Jody Goldberg authored
      2000-04-05  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.c (cmd_paste_cut_undo) : Use sheet_update and force a
      	  status update.
      	(cmd_paste_cut_redo) : Ditto. Change the selection here.
      	* src/sheet.c (sheet_flag_status_update_range) : Handle NULL ranges.
      	* src/selection.c (sheet_selection_add_range) : Use
      	  sheet_flag_status_update_range rather than an immediate call
      	  to selection_changed_hook (that is deprecated).
      	(sheet_selection_move) : Delete.
      	(sheet_selection_paste) : Use sheet_update.
      	* src/clipboard.c (clipboard_paste_region) : Remove unnecessary and
      	  incorrect code to do status updates.  The selection mechanism
      	  handles it already.
      	(x_selection_received) : Use sheet_update.
      	* src/about.c (dialog_about) : Add Almer.
  11. 04 Apr, 2000 1 commit
    • 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.
  12. 26 Mar, 2000 1 commit
    • Jody Goldberg's avatar
      Make a happy TigerT. · ccc0ed7c
      Jody Goldberg authored
      2000-03-26  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook-format-toolbar.c (change_font_size_in_selection_cmd) :
      	  default size is 10 points.
      	(workbook_create_format_toolbar) : Switch the size selector over to
      	  gtk-combo-text too.
      2000-03-26  Jody Goldberg <jgoldberg@home.com>
      	* gtk-combo-text.c : Add a hash to be used for proper lookup of
      	  entries made directly in the edit area.  Yes morten it leaks.
      	(gtk_combo_text_construct) : Make scrolling
      	(gtk_combo_text_add_item) : Add some brute force mouse over effects.
      	  Still need autoscroll, and cancel.
  13. 25 Mar, 2000 1 commit
    • Jody Goldberg's avatar
      Call setup_rotation unconditionally it will decide when to rotate. Honour · 6ce206e2
      Jody Goldberg authored
      2000-03-25  Jody Goldberg <jgoldberg@home.com>
      	* src/print.c (print_page) : Call setup_rotation unconditionally it
      	  will decide when to rotate.  Honour the repeat_{top,left}.use flags.
      	(print_page) : Add a clip path around the entire page to ensure that spans
      	  get clipped at the margin.
      	(print_job_info_init_sheet) : Use the repeat_{top,left}.use flags.
      	* src/commands.c (cmd_ins_del_row_col_{redo,undo}) : Use sheet_update.
      	* src/sheet.c (sheet_insert_{cols,rows}, sheet_delete_{cols,rows}) :
      	  Set the visibility notification flags.
      	(sheet_restore_row_col_sizes) : Ditto.
  14. 22 Mar, 2000 1 commit
    • Jody Goldberg's avatar
      Fix span bugs. · 99ec14fe
      Jody Goldberg authored
      2000-03-22  Jody Goldberg <jgoldberg@home.com>
      	* src/sheet.c (sheet_reposition_comments) : Merged from
      	  sheet_reposition_comments_from_row and
      	(sheet_update) : New function.  Use the new update flags from
      	  SheetPrivate that are set in the col/row resize functions
      	  to do delayed resizing and updates.  This allows the resizing to be
      	  batched for an entire logical operation.
      	(sheet_{col,row}_set_size_pixels) : Set the update flags.
      	* src/workbook-cmd-format.c (workbook_cmd_format_{row,column}_auto_fit) : No need to
      	  worry about redraws.  Use sheet_update.
      	(workbook_cmd_format_{row_height,column_width}) : Ditto.
      	* src/sheet-view.c (sheet_view_redraw_cell_region) : No need to
      	  recalculate the spans,  Use the pre-calculated versions.
      	(sheet_view_col_size_changed) : Use sheet_update.
      	(sheet_view_row_size_changed) : Ditto.
      	* src/sheet-style.c (re_dimension_cells_cb) : Use cell_calc_dimensions.
      	(sheet_cells_update) : No need to redraw per cell and guess the bound.
      	  It is simpler and more correct to calc dimension per cell, and
      	  redraw the region BEFORE and AFTER to handle spans.
      	* src/cell.[ch] (cell_style_changed) : Delete.
      	* src/cell-draw.c (cell_draw) : continue syncing with print code.
      	  Be even more careful in the possible presence of style bugs.
      	* src/item-grid.c (item_grid_draw) : Ditto.
      	* src/print-cell.c (print_cell) : Ditto.
      	* src/analysis-tools.c (correlation_tool) : Use sheet_update.
      	(covariance_tool) : Ditto.
      	(ttest_paired_tool) : Ditto.
      	(ttest_eq_var_tool) : Ditto.
      	(ttest_neq_var_tool) : Ditto.
      	(ftest_tool) : Ditto.
      2000-03-21  Jody Goldberg <jgoldberg@home.com>
      	* src/sheet-private.h : Add status flags to accumulate state changes
      	  for later redraw.
      	* src/commands.c (cmd_format_redo) : Use sheet_update
      	  in case the row/col sizes changed due to font size changes.
      	(cmd_format_undo) : Ditto.
      	* src/widgets/gtk-combo-box.c (cb_state_change) : Only pseudo-prelight
      	  the display when over the arrow, not vice versa.
      	(gtk_combo_box_init) : Ditto.
      	(gtk_combo_box_set_display) : Ditto.
      	* src/sheet.c (sheet_row_get_distance_pts) : Enable reversed indicies.
      	(sheet_col_get_distance_pts) : Ditto.
      	* src/plugin.c (plugin_load) : Add more version checking to ensure
      	  that very old plugins that do not check their versions can not be
      2000-03-20  Jody Goldberg <jgoldberg@home.com>
      	* src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible) : When
      	  forcing a scroll do a hard reset of the visible ranges.
      	(gnumeric_sheet_compute_visible_ranges) : Ditto.
      	(gnumeric_sheet_set_top_row) : Remove extraneous scroll.
      	(gnumeric_sheet_set_left_col) : Remove extraneous scroll.
  15. 05 Mar, 2000 1 commit
    • Jody Goldberg's avatar
      - Strike through - initial format dialog support for underline and · 7f8319da
      Jody Goldberg authored
      - Strike through
      - initial format dialog support for underline and strikethrough.
      - Printing of underlines and strikethroughs.
      2000-03-05  Jody Goldberg <jgoldberg@home.com>
      	* src/dialogs/dialog-cell-format.c : Enable the underline and
      	  strikethrough elements. TODO : redo the preview for the font
      	  tab to support underlining and friends.
      	* src/dialogs/cell-format.glade : Rename the underline combo and
      	  strikethrough button.
      	* src/xml-io.c (xml_write_style) : Add strikethrough.
      	(xml_read_style) : Ditto.
      	* src/workbook-format-toolbar.c (workbook_feedback_set) : Only show
      	  the underline button for single underlines.
      	* src/sheet-view.[ch] : rename select_all -> select_all_btn.
      	  remove unused element.
      	* src/sheet-object.h : Remove silly self inclusion.
      	* src/print-cell.c : Support underlining and strikethrough.
      	  Move even closer into sync with drawing code.
      	* src/mstyle.c : Add strikethrough and cleanup includes.
      	* src/main.h : Add include for popt.h.
      	* src/item-grid.c (item_grid_draw_border) : No more need for BOTTOM or
      	(item_grid_draw_cell) : Delete, and merge with draw_cell.
      	* src/commands.c (cmd_set_text_undo) : Use cursor_set rather than
      	* src/corba-sheet.c (Sheet_cursor_move) : Ditto.
      	(gnumeric_sheet_key_mode_sheet) : Ditto.
      	* src/workbook.c (workbook_parse_and_jump) : Ditto.
      	* src/cell-draw.c : Clean includes, add support for strikethrough.
  16. 22 Feb, 2000 1 commit
    • Jody Goldberg's avatar
      Some border improvements. · e18beddb
      Jody Goldberg authored
      - Use DASH_ON_OFF to correctly handle borders for cells with a background
      - Prefer Top/Left vs Bottom/Right.  This works around problems with borders
        for cells with backgrounds..  BUT does not solve it for importing.  That
        will require the next generation border code that has yet to be designed.
      - A crappy implementation of double borders.  Does NOT handle cells with
        backgrounds, or the myriad intersection cases.
      - Improve handling of undo and redraw for borders.
      2000-02-21  Jody Goldberg <jgoldberg@home.com>
      	* src/sheet.c (sheet_cursor_set) : Be religous about handing edit_pos
      	* src/commands.c (cmd_format) : save for formats for a range 1 cell
      	  thick around the selection so that borders are handled.
      	* src/sheet-view.c (sheet_view_redraw_cell_region) : Redraw a border
      	  around the selected region to handle thick borders */
      	* src/sheet-object.c (sheet_object_canvas_event) : Ignore mouse wheel
      	* src/border.c (style_border_set_gc_dash) : Use GDK_LINE_ON_OFF_DASH
      	  so that background colours show through.
      	* src/sheet-style.c (sheet_range_set_border) : Prefer top vs bottom
      	  and left vs right.  This will simplify drawing eventually.
  17. 16 Feb, 2000 1 commit
    • Jody Goldberg's avatar
      Remove 1/2 of the glaring performance hit associated with redrawing · af5e3da8
      Jody Goldberg authored
      every time we set the width/height of a col/row.
      2000-02-15  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook-cmd-format.c (workbook_cmd_format_{column,row}_auto_fit) :
      	  Handle repositioning and redrawing here in preparation to adding undo.
      	(workbook_cmd_format_column_width) : Ditto.
      	(workbook_cmd_format_row_height) : Ditto.
      	* src/sheet.c (sheet_reposition_comments_from_{row,col}) : publicize.
      	(sheet_recompute_spans_for_col) : Ditto.
      	(sheet_save_row_col_sizes) : Store cols/rows of 'default' size as 0.
      	(sheet_restore_row_col_sizes) : Restore cols/rows to true default state.
      	(sheet_{col,row}_set_size_pts) : document, and REMOVE calls to reposition
      	  and redraw.
  18. 11 Feb, 2000 1 commit
  19. 10 Feb, 2000 1 commit
    • Jody Goldberg's avatar
      Some improvements to the default sizes of things to resizing. · 676c70fb
      Jody Goldberg authored
      We will need to tweak this to get things to match properly.
      2000-02-09  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c (change_displayed_zoom_cb) : Add a '%' at the end of
      	  the zoom specification.
      	(workbook_create_standard_toobar) : Adjust the list of zoom labels.
      	* src/style.c (font_init) : Add comment explaining that the default
      	  fonts are not scaled by resolution, and that we depend on that.
      	* src/sheet.c (sheet_init_default_styles) : Set the default sizes
      	  based on the size of the default font not on pixels.
      	* src/sheet-view.c (new_canvas_bar) : Don't set the size or scroll
      	  region here.
      	(sheet_view_construct) : Call sheet_view_set_zoom_factor with a factor
      	  of 1 to set sizes and scroll regions.
      	(sheet_view_set_zoom_factor) : Do not hard code the sizes of the free
      	  dimensions.  Set them based on the font used for the headers.
  20. 06 Feb, 2000 1 commit
    • ERDI Gergo's avatar
      Added myself to the contributors list · b3e9a312
      ERDI Gergo authored
      2000-02-01  ERDI Gergo  <cactus@cactus.rulez.org>
      	* src/about.c (dialog_about): Added myself to the contributors list
      	* src/widgets/gtk-combo-box.c (gtk_combo_box_popup_hide):
      	explicitly cast function pointers to avoid a warning
      	* src/solver-lp.c (simplex_step_three): Default value for `min' to
      	eliminate a warning
      	* src/dialogs/dialog-advanced-filter.c: Included ranges.h
      	(removing an `implicit declaration' warning)
      	* src/commands.c: Included `dialogs.h'
      	* src/workbook.c (workbook_standard_toolbar_orient): Hide the zoom
      	combo box on vertical toolbars
      	* src/widgets/gtk-combo-text.[ch]: New widget: easy-to-use combo box
      2000-01-28  ERDI Gergo  <cactus@cactus.rulez.org>
      	* src/workbook.c (workbook_create_standard_toobar): Added a zoom
      	button to the toolbar as requested
  21. 04 Feb, 2000 1 commit
    • Jody Goldberg's avatar
      - Fix some of the problems with the resolution scaling. · 3e12961e
      Jody Goldberg authored
      - Implement an initial version of paste_cut undo.
      2000-02-05  Jody Goldberg <jgoldberg@home.com>
      	* src/sheet.[ch] (sheet_row_info_set_{height, width}) : Make static.
      	* src/cell.c (cell_calc_dimensions) : The size is already scaled.
      	* src/item-bar.c (item_bar_event) : Only scale by the zoom.
      	  The item-grid canvas is zoomed by the zoom factor, not by the
      	  resolution adjustment.
      	(item_bar_start_resize) : Ditto.
      	* src/selection.c (sheet_selection_paste) : Use cmd_paste_cut.
      	* src/commands.c (cmd_paste_cut) : Implement.
      2000-02-04  Jody Goldberg <jgoldberg@home.com>
      	* src/widgets/widget-font-selector.c (font_selector_set_points) : new
      	* src/dialogs/dialog-cell-format.c (fmt_dialog_init_font_page) : Use it.
  22. 31 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      Move more of the pure view elements into WorkbookPrivate. · a038ab94
      Jody Goldberg authored
      2000-01-31  Jody Goldberg <jgoldberg@home.com>
      	* src/worksheet.h : Move more of the pure view elements into
      	* src/sheet.h : Remove include of workbook.h
      	* *.c : manually include workbook.h only where we need it.
      	* src/ranges.c (parse_range) : Move here from dialog-analysis-tools.c
      	  to avoid warnings.
      	* src/corba-workbook.c (Workbook_save_to) : Adjust to new calling
      	* src/corba-workbook-factory.c (WorkbookFactory_read) : Ditto.
      	* src/parser.y : Support interbook references.
      	* src/item-bar.c : Ignore scroll-wheel events. Eventually the app will
      	  handle these rather than the grid.
  23. 29 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      - Do NOT clear a cell and save its value when we start editing. I assume this · 523b03fc
      Jody Goldberg authored
        was done so that contents of spanning cells would not be visible when editing
        began.  Rather than doing that I've adjusted the grid to pretend the cell
        being edited is empty.
      - Some cleanup editing and assigning text into cells.  Still can not directly
        call redo from the cmd.  Something screws up the memory associated with the
        text entry widget ??
      2000-01-29  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.c (cmd_set_text_undo) : Special case VALUE_EMPTY.
      	  Move to the previous cell only after reverting its value so that the
      	  edit area is updated.
      	(cmd_set_text) : Retrieve the old text of the cell directly.
      	* src/sheet.c (sheet_set_current_value) : Delete and merge into...
      	(sheet_accept_pending_input) : Here.  Harmonize the logic with.
      	(sheet_cancel_pending_input) : this function.
      	(sheet_set_text) : Publicize.
      	(sheet_stop_editing) : Removed storage of value of cell being edited.
      	(sheet_start_editing_at_cursor) : Ditto.
      	* src/workbook.c (accept_input) : Use sheet_accept_pending_input.
      	(redo_cmd, undo_cmd) : cancel pending input.
      2000-01-28  Jody Goldberg <jgoldberg@home.com>
      	* src/item-grid.c (item_grid_draw) : Pretend that the cell being
      	  edited (and anything it spans) are empty.
      	* src/sheet.c (sheet_duplicate_colrow) : Delete unused.
  24. 27 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      - Some xml fixes - Row/col ins/del undo fix. - Mouse scroll fix, and · d99c96e7
      Jody Goldberg authored
      - Some xml fixes
      - Row/col ins/del undo fix.
      - Mouse scroll fix, and scrollbar speedup.
      2000-01-27  Jody Goldberg <jgoldberg@home.com>
      	* *.c : convert to using Workbook::current_sheet rather than
      	* src/workbook.c : Add a current_sheet member to Workbook.
      	Delete some old test code.
      	(do_focus_sheet) : Cancel inputs and update edit area with new cell.
      	(workbook_focus_current_sheet) : Update current_sheet.
      	(workbook_get_current_sheet) : Delete.
      	* src/sheet.c (sheet_cursor_{move, set}) : Delete call to
      	* src/sheet.c (sheet_{row,col}_add) : Use sheet_view_scrollbar_config.
      	  We should not be touching GUI directly.
      	* src/sheet-view.c (sheet_view_scrollbar_config) : Set the scrollbar's
      	  value as well as it max and page info.
      	* src/gnumeric-sheet.[ch] (gnumeric_sheet_cursor_set) : Delete.
      	  The scrollbars reflect the visible range, not the cursor cell.
      	* src/item-cursor.c (item_cursor_set_bounds_visibly) : Remove call to
      2000-01-26  Jody Goldberg <jgoldberg@home.com>
      	* src/xml-io.c (xml_workbook_write) : Do not save the current
      	  edit-text.  We don't save the current cell or the current selection
      	  so restoring the text of the ex-cursor is quite confusing.
      	(xml_workbook_read) : Restore window size.
      	(gnumeric_xml_sheet_{read,write}) : Delete unused.
      	(xml_get_range) : Utility routine.
      	(xml_read_selection_info) : Utility routine to restore the selection.
      	* src/sheet.c (sheet_{insert,delete}_{cols,rows}) : Do the
      	  insert/delete even if it looks like there are no cells there.
      	  There may be styles.
  25. 22 Jan, 2000 1 commit
  26. 20 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      - Col/Row hide undo - Keep selection extension cell visible - Improve · 4f0abdd2
      Jody Goldberg authored
      - Col/Row hide undo
      - Keep selection extension cell visible
      - Improve selection overlap range fragmentation, and debugging.
      2000-01-20  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook-cmd-format.c (workbook_cmd_format_{col,row}_{hide,unhide}) :
      	  Use the undo framework.
      	* src/sheet.c (sheet_fill_selection_with) : Take a context.
      	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : Add
      	  Alt-Pg{Up,Down}.  sheet_fill_selection_with now takes a context.
      	* src/commands.c (cmd_hide_selection_rows_cols) : Implement undo for
      	  row/col hiding.
      	(cmd_hide_row_col_{undo,redo,destroy}) : Ditto.
      	* src/item-grid.c (context_{col,row}_{hide,unhide}) : Use undo support.
      	* src/selection.c (selection_get_ranges) : Improve heuristics.
      	(sheet_selection_extend_{horizontal,vertical}) : Ensure that the cell
      	  being moved stays visible.
  27. 19 Jan, 2000 1 commit
    • JP Rosevear's avatar
      Modularize a bit more for the sort dialog. Use GLADE_FILE macro. · ce29fe57
      JP Rosevear authored
      2000-01-19  JP Rosevear  <jpr@arcavia.com>
      	* src/dialogs/dialog-cell-sort.c (dialog_cell_sort): Modularize a
      	bit more for the sort dialog.  Use GLADE_FILE macro.
      	(dialog_cell_sort_ok): New function connected to the sort
      	dialog ok button.  Builds the clause data and then calls cmd_sort.
      	(dialog_cell_sort_adv): Use GLADE_FILE macro.
      	(clip_range_to_finite): New function, reduces an infinite range to
      	an appropriate finite range.
      	* src/commands.c (cmd_sort): New function for new command
      	(cmd_sort_redo): ditto
      	(cmd_sort_undo): ditto
      	(cmd_sort_destroy): ditto
      	* src/sort.c (sort_compare_values): The former compare_values
      	function from dialog_cell_sort.c.
      	(sort_compare_values2): Does comparisons on original order
      	for undo.
      	(sort_qsort_func): The former qsort_func function from
      	(sort_qsort_func2): Quicksort function for undo.
      	(sort_range): Performs the sort.  Much the same as the
      	sort_cell_range function that was in dialog_cell_sort.c.
      	Sorts the data of a CmdSort object, creating it if necessary.
      	Takes the quicksort function to call as an argument.
      	* src/sort.h : New header file
      	* src/ranges.h: Prototype range_name.
      	* src/ranges.c (range_name): New function that returns a
      	const char * to "A1:B5" type range name.
  28. 18 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      - gnome-xml is is CVS now. Prepare for release and require it. · 943bf40e
      Jody Goldberg authored
      - Row/Col hiding.
      2000-01-18  Jody Goldberg <jgoldberg@home.com>
      	* src/xml-io.c (xml_write_colrow_info) : Save whether or not a row/col
      	  is hidden.
      	(xml_read_colrow_info) : Restore the hidden-ness.
      	* src/gnumeric-sheet.c (gnumeric_sheet_compute_visible_ranges) :
      	  Col/Row pixel width < 0 indicates the row is hidden.
      	(gnumeric_sheet_make_cell_visible) : Ditto.
      	(colrow_set_units) : Ditto.
      	(sheet_{row,col}_info_set_{height,width}) : Ditto.
      	(sheet_{row,col}_set_internal_{height,width}) : Ditto.
      	(sheet_{row,col}_get_distance) : Ditto.
      	(sheet_{row,col}_get_unit_distance) : Ditto.
      	(sheet_{row,col}_is_hidden) : Utility routines.
      	(sheet_find_boundary_{vertical,horizontal}) : Skip hidden rows/cols.
      	(sheet_row_col_visible) : Mark a contiguous set of rows/cols as
      	  visible or hidden.
      	* src/sheet.c (sheet_compute_col_row_new_size) : Ditto.
      	* src/item-bar.c (item_bar_draw) : Ditto.
      	(is_pointer_on_division) : Ditto.
      	(get_col_from_pos) : Ditto.
      	* src/item-grid.c (item_grid_find_{col,row}) : Ditto.
      	(item_grid_draw) : Skip cells in hidden rows cols.
      	(item_grid_paint_empty_cell) : Ditto, just in case.
      	(item_grid_draw_cell) : Ditto.
      	(context_{col,row}_{hide,unhide}) : New functions.
      	(item_grid_context_menu) : Add new menu items.
      	* src/selection.c (selection_row_col_visible) : New function.
      	cb_row_col_visibility : Utility function.
      	* src/workbook-cmd-format.c
      	(workbook_cmd_format_{column,row}_{hide,unhide}) : New functions.
      	(workbook_cmd_format_column_std_width) : Stub.
      	(workbook_cmd_format_row_std_height) : Stub.
      	* src/workbook.c : Add hide/unhide to the row/col format menus.
      2000-01-18  Jody Goldberg <jgoldberg@home.com>
      	* configure.in : Add test for gnome-xml >= 1.8.5. This is
      	  required to support the problems with versions 1.8.[234].
      	* gnumeric.spec.in : Ditto.
  29. 17 Jan, 2000 1 commit
    • Morten Welinder's avatar
      New file. New file. · 5f38af0a
      Morten Welinder authored
      2000-01-16  Morten Welinder  <terra@diku.dk>
      	* src/datetime.c: New file.
      	* src/datetime.h: New file.
      	* src/format.c (split_time): Use datetime functions.
      	* src/commands.c (cmd_set_date_time_redo): Do proper rounding.
      	* src/functions/fn-date.c: Move date handling to datetime.c
      	* src/utils.c: Move date stuff to datetime.c.  Renamed
       	systematically; all callers changed.
      	* src/Makefile.am (GNUMERIC_BASE_SOURCES): Add datetime.c and
  30. 15 Jan, 2000 2 commits
    • Jody Goldberg's avatar
      Use cmd_clear_selection. · 1a96d682
      Jody Goldberg authored
      2000-01-15  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c (clear_{all,formats,comments,content}_cmd) : Use
      	* src/sheet.c (sheet_clear_region) : Merge all types of deletion into
      	  this routine and add some bit flags to enable the different types.
      	(sheet_clear_region_content) : Delete.
      	(sheet_clear_region_comments) : Delete.
      	(clear_cell_format) : Delete.
      	(sheet_clear_region_formats) : Delete.
      	(sheet_move_range) : Adapt to changes in sheet_clear_region.
      	* src/selection.c (cb_sheet_selection_clear) : Delete.
      	(sheet_selection_clear) : Delete.
      	(cb_sheet_selection_clear_content) : Delete.
      	(sheet_selection_clear_content) : Delete.
      	(sheet_selection_clear_comments) : Delete.
      	(sheet_selection_clear_formats) : Delete.
      	(selection_get_ranges) : New function split out from selection_apply.
      	(selection_apply) : Use selection_get_ranges.
      	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : Use
      	* src/item-grid.c (context_clear_cmd) : Ditto.
      	* src/corba-sheet.c (Sheet_clear_region) : Adapt to new clear_region
      	  calling convention.
      	(Sheet_clear_region_content) : Use sheet_clear_region.
      	(Sheet_clear_region_comments) : Ditto.
      	(Sheet_clear_region_formats) : Ditto.
      	* src/commands.c (cmd_ins_del_row_col_{undo,redo}) : Reload the the
      	  edit bar just in case.
      	(cmd_set_date_time_{undo,redo}) : Ditto.
      	(cmd_clear{,_undo,_redo,_destroy}) : Implement.
      	* src/clipboard.c (paste_cell) : No need to flag the existance of
      	(paste_cell_flags) : Ditto.
      	(do_clipboard_paste_cell_region) : Don't recalc here.
      	(x_selection_received) : Recalc here.
      	(clipboard_paste_region) : Only use the X selection if the user does
      	  not pass in a CellRegion. Only use the clipboard_paste_callback_data
      	  if we are going through the X selection.
    • Miguel de Icaza's avatar
      Removed extern from he too. · b9ceda43
      Miguel de Icaza authored
      2000-01-14  Miguel de Icaza  <miguel@gnu.org>
      	* src/mstyle.c: Removed extern from he too.
      	* src/commands.c (cmd_set_text): Kill extern from here.
  31. 14 Jan, 2000 2 commits
    • Jody Goldberg's avatar
      - Bug fix for SUMIF - Support (but no UI) for hiding grid lines - Suppress · 4a550121
      Jody Goldberg authored
      - Bug fix for SUMIF
      - Support (but no UI) for hiding grid lines
      - Suppress some warnings in the autocorrect tool.
      2000-01-14  Jody Goldberg <jgoldberg@home.com>
      	* src/dialogs/dialog-autocorrect.c (autocorrect_tool) : Suppress
      	* src/commands.h : Do not declare autocorrect_tool here.
      	* src/item-grid.c (item_grid_draw) : Add support for hiding the
      	* src/sheet.c (sheet_new) : Init show_grid.
      	* src/functions/fn-math.c (gnumeric_sumif) : Do not ignore empty cells
      	  if there is a result range that we need to stay in sync with.  Fix
      	  handling of inter-sheet references.
    • Jukka-Pekka Iivonen's avatar
      New tool added. Most things should work but not all have been completed. · 9639111b
      Jukka-Pekka Iivonen authored
      2000-01-14  Jukka-Pekka Iivonen  <iivonen@iki.fi>
      	* src/dialog-autocorrect.c, src/autocorrect.glade,
       	src/autocorrect-exceptions.glade: New tool added.  Most things
       	should work but not all have been completed.
      	* workbook.c: Created `Data' menu and moved `Sort' into it.
        	Added `AutoCorrect' tool.
  32. 13 Jan, 2000 2 commits
  33. 10 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      - undo works undor bonobo now. · 4c82ff1c
      Jody Goldberg authored
      - format toolbar looks better when vertical.
      - More commands dummied up for undo.
      2000-01-09  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.c (cmd_insert_cols) : Be kinder to translators.
      	(cmd_insert_rows) : Ditto.
      	(cmd_rename_sheet_{undo,redo,destroy}) : Implement.
      	(cmd_rename_sheet) : Implement.
      	(cmd_set_date_time_{undo,redo,destroy}) : Implement.
      	(cmd_set_date_time) : Implement.
      	(cmd_resize_row_col_{undo,redo,destroy}) : Implement.
      	(cmd_resize_row_col) : Implement.
      	* src/workbook.c (insert_at_cursor) : Delete.
      	(insert_current_time_cmd) : Use cmd_set_date_time.
      	(insert_current_date_cmd) : Ditto.
      	(sheet_label_text_changed_signal) : Use cmd_rename_sheet.
      	(sheet_action_rename_sheet) : Ditto.
      	* src/corba-workbook.c (Workbook_sheet_rename) : Use cmd_rename_sheet.
      	* src/workbook-cmd-format.c (workbook_cmd_format_sheet_change_name) : Ditto.
      	(workbook_format_toolbar_orient) : New function to hide font selector
      	  when vertical.
      	(workbook_create_format_toolbar) : Connect to workbook_format_toolbar_orient.
      	* src/workbook-view.c (workbook_view_set_undo_redo_state) : Enable
      	  Bonobo version.
      	(change_menu_label) : Ditto.
      	(workbook_view_set_paste_special_state) : Ditto.
  34. 09 Jan, 2000 1 commit
    • Jody Goldberg's avatar
      Undo for - Renaming a sheet - Inserting current date/time - Simplify · ae564e24
      Jody Goldberg authored
      Undo for
      - Renaming a sheet
      - Inserting current date/time
      - Simplify wording for translators.
      2000-01-09  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.c (cmd_insert_cols) : Be kinder to translators.
      	(cmd_insert_rows) : Ditto.
      	(cmd_rename_sheet) : Implement.
      	(cmd_set_date_time_{undo,redo,destroy}) : Implement.
      	(cmd_set_date_time) : Implement.
      	* src/workbook.c (sheet_label_text_changed_signal) : Use
      	(insert_at_cursor) : Delete.
      	(insert_current_time_cmd) : Use cmd_set_date_time.
      	(insert_current_date_cmd) : Use cmd_set_date_time.