1. 02 Jun, 2001 2 commits
    • Almer S. Tigelaar's avatar
      Implement group undo/redo (cmd_group_redo): Idem. (cmd_group_destroy): · e301f704
      Almer S. Tigelaar authored
      2001-06-02  Almer S. Tigelaar  <almer@gnome.org>
      
              * src/commands.[ch] (cmd_group_undo): Implement group undo/redo
        	(cmd_group_redo): Idem.
        	(cmd_group_destroy): Idem.
        	(cmd_group): Idem.
      
        	* src/workbook-control-gui.c (cb_data_group): Implement.
        	(cb_data_ungroup): Idem.
        	(group_ungroup_colrow): Utility function to determine if
        	columns or rows need to be grouped/ungrouped.
      
        	* src/sheet.[ch] (sheet_col_row_group_ungroup): New, high level routine
       	for adjusting outlines.
       	(sheet_col_row_fit_gutter): Dynamically adjust gutter size.
       	(cb_outline_level): Callback for the above.
       	(sheet_col_row_can_group): Query if a range of cols/rows
       	can actually group/ungroup.
       	(sheet_col_row_set_outline_level): Deprecated, remove.
      
       	* src/colrow.[ch] (colrow_set_outline): Set outline on a col/row.
      
        	* src/GNOME_Gnumeric.xml: DataOutlineUnGroup change to
        	DataOutlineUngroup.
      
      2001-06-02  Almer S. Tigelaar  <almer@gnome.org>
      
      	* colrow.glade: New simple dialog.
      
      	* dialog-simple-input.c, dialogs.h
      	(dialog_choose_cols_vs_rows): New, let user choose
      	between columns or rows.
      
      2001-06-02  Almer S. Tigelaar  <almer@gnome.org>
      
      	* (ms_excel_read_row): Set outline using
      	new functions.
      	(ms_excel_read_colinfo): Idem.
      e301f704
    • Jody Goldberg's avatar
      rewrite, not quite done. · f423353e
      Jody Goldberg authored
      
      2001-06-01  Jody Goldberg <jgoldberg@home.com>
      
      	* src/format.c (format_compile) : rewrite, not quite done.
      
      	* src/commands.c (cmd_set_text_undo) : queue a recalc.
      	(cmd_clear_redo) : ditto.
      	* src/corba-sheet.c (Sheet_clear_region) : ditto.
      	(Sheet_clear_region_content) : ditto.
      	* src/gui-clipboard.c (x_selection_handler) : ditto.
      	* src/sheet-merge.c (sheet_merge_add) : ditto.
      
      	* src/eval.c : switch the depend lists to be singly linked.
      	(dep_slist_filter_sheet) : convenience routine.
      	(dependent_unqueue_sheet) : Used here.
      	(dependent_unlink_sheet) : and here.
      
      	* src/workbook-control-gui.c (display_formulas) :  convert the single
      	  lists.
      f423353e
  2. 31 May, 2001 1 commit
    • Jody Goldberg's avatar
      Use cell_eval in place of cell_eval_content. · c42dae7a
      Jody Goldberg authored
      
      2001-05-31  Jody Goldberg <jgoldberg@home.com>
      
      	* src/solver-lp.c : Use cell_eval in place of cell_eval_content.
      
      	* src/eval.c (cb_range_hash_invalidate) : disconnect the list from the
      	  dep record while removing its contents.  We don't want to modify the
      	  list while we are walking it.  This is also an optimization in that
      	  we don't need to modify the list.
      	(cb_single_hash_invalidate) : ditto.
      	(depsingle_dtor) : Ensure that the list has already been cleared.
      	(deprange_dtor) : ditto.
      	(dependent_unlink) : short circuit if we are destroying.
      
      	* src/sheet.c (sheet_destroy) : Clear the controls first.
      c42dae7a
  3. 30 May, 2001 1 commit
    • Jon K Hellan's avatar
      Previous attempt to commit failed. Trying again. · 37876eb7
      Jon K Hellan authored
      2001-05-30  Jon K Hellan  <hellan@acm.org>
      
      	Previous attempt to commit failed. Trying again.
      
      	* src/sheet-control-gui-priv.h: New file. Implementation details
      	for SheetControlGUI and methods directly accessible from the GUI
      	layer.
      
      	* src/Makefile.am: Add sheet-control-gui-priv.h
      
      	* src/sheet-control-gui.h: Move struct _SheetControlGUI to
      	sheet-control-gui-priv.h. Remove declarations of methods which
      	have been made virtual.
      
      	* src/sheet-control-gui.c: Include sheet-control-gui-priv.h instead
      	of sheet-control-gui.h.
      	Casts and temp variables because:
      	- virtual scg methods now take a SheetControl parameter.
              - sheet member now lives in SheetControl.
      	Make following methods static - externally available only as
      	virtual SheetControl method: scg_redraw_all,
      	scg_redraw_cell_region, scg_redraw_headers, scg_update_cursor_pos,
      	scg_resize, scg_unant, scg_ant, scg_cursor_bound,
      	scg_compute_visible_region, scg_make_cell_visible. Initialize
      	class object with these as virtual methods together with
      	scg_set_zoom_factor, scg_adjust_preferences, scg_scrollbar_config
      	and scg_mode_edit.  Rename context_menu_hander (sic!) to
      	context_menu_handler.
      
      	*src/sheet-control.c (SC_VIRTUAL_FULL): Fix typo.
      	(sc_destroy): Comment out unused variable.
      	(sheet_control_init_state): Rename to sc_init_state.
      	(sc_sheet): New accessor - returns sheet attribute.
      	(sc_invalidate_sheet): New function - sets sheet attribute to
      	NULL.
      	(resize, set_zoom_factor, redraw_all, redraw_cell_region,
      	redraw_headers, ant, unant, adjust_preferences, update_cursor_pos,
      	scrollbar_config, mode_edit, compute_visible_region,
      	make_cell_visible, cursor_bound): New virtual methods.
      
      	* src/sheet-control.h: Declare new methods in sheet-control.c
      
      	* src/selection.c: Use sc_redraw_cell_region, sc_redraw_headers
      	instead of scg methods.
      
      	* src/sheet.c (sheet_unant): Use sc_unant instead o scg_unant.
      	(sheet_ant): Use sc_ant instead of scg_ant.
      	(sheet_redraw_all): Use sc_redraw_all instead of scg_redraw_all.
      	(sheet_redraw_all): Use sc_redraw_headers instead of
      	scg_redraw_headers.
      	(sheet_new_scg): Use sc_cursor_bound instead of scg_cursor_bound.
      	(sheet_detach_scg): Rename to sheet_detach_control. Change
      	parameter from SheetControlGUI to SheetControl. Use sc_sheet and
      	sc_invalidate_sheet instead of direct attribute access.
      	(sheet_set_zoom_factor): Use sc_set_zoom_factor instead of
      	scg_set_zoom_factor.
      	(sheet_update_only_grid): Use sc_compute_visible_region instead of
      	scg_compute_visible_region.
      	(sheet_col_row_gutter): Use sc_resize instead of scg_resize.
      	(sheet_redraw_cell_region, sheet_redraw_partial_row,
      	sheet_redraw_cell): Use sc_redraw_cell_region instead of
      	scg_redraw_cell_region.
      	(sheet_make_cell_visible): Use sc_make_cell_visible instead of
      	scg_make_cell_visible.
      	(sheet_cursor_set): Use sc_cursor_bound instead of
      	scg_cursor_bound.
      	(sheet_update_cursor_pos): Use sc_update_cursor_pos instead of
      	scg_update_cursor_pos.
      	(sheet_scrollbar_config): Use sc_scrollbar_config instead of
      	scg_scrollbar_config.
      	(sheet_adjust_preferences): Use sc_adjust_preferences, sc_resize
      	and sc_redraw_all instead of scg_adjust_preferences, scg_resize
      	and scg_redraw_all.
      
      	* src/sheet.h (SHEET_FOREACH_CONTROL): Take list of SheetControls
      	instead of SheetControlGUIs.
      
      	* src/workbook.c (workbook_sheet_detach): Use sc_mode_edit instead
      	of scg_mode_edit.
      
      	* src/embeddable-grid.h: Include sheet-control-gui-priv.h instead
      	of sheet-control-gui.h.
      
      	* src/sheet-object-graphic.c: Ditto.
      
      	* src/gnumeric-sheet.c: Include sheet-control-gui-priv.h instead
      	of sheet-control-gui.h.
      	Casts and temp variables because:
      	- virtual scg methods now take a SheetControl parameter.
              - sheet now lives in SheetControl.
      
      	* src/item-bar.c: Ditto.
      
      	* src/item-cursor.c: Ditto.
      
      	* src/item-edit.c: Ditto.
      
      	* src/item-grid.c: Ditto.
      
      	* src/sheet-object-cell-comment.c: Ditto.
      
      	* src/sheet-object-cell-container.c: Ditto.
      
      	* src/sheet-object-item.c: Ditto.
      
      	* src/sheet-object-widget.c: Ditto.
      
      	* src/workbook-control-gui.c: Ditto.
      
      	* src/workbook-object-toolbar.c: Ditto, but don't include
      	sheet-control-gui-priv.h
      
      	* src/sheet-object.c (sheet_object_realize): Cast control to
      	SheetControlGUI.
      37876eb7
  4. 28 May, 2001 1 commit
  5. 27 May, 2001 1 commit
    • Jody Goldberg's avatar
      If successful queue everything for recalc. (xml_cell_set_array_expr) : no · b740bf75
      Jody Goldberg authored
      
      2001-05-26  Jody Goldberg <jgoldberg@home.com>
      
      	* xml-sax-read.c (xml_sax_file_open) : If successful queue everything
      	  for recalc.
      	(xml_cell_set_array_expr) : no need to queue a recalc for arrays.
      
      2001-05-26  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.c (colrow_move) : no need to queue recalc here.
      	(cb_sheet_cell_copy) : Actually copy the array values.
      
      	* src/cell.c (cell_relocate) : Just relink, no need to queue a recalc.
      	(cell_set_array_formula) : Remove the ability to queue the recalc at
      	  this level.  Just link the formulas in.  Reorder the the arguments
      	  to match the standard approach.
      
      	* src/eval.c (workbook_recalc_all) : Used here.
      	(workbook_queue_all_recalc) : new function.
      
      	* src/xml-io.c (xml_workbook_read) : Queue everything for recalc.
      	(xml_cell_set_array_expr) : no need to queue a recalc here.
      
      	* src/commands.c (cmd_autofill_redo) : queue the recalc here.
      	(cmd_area_set_text_redo) : we need to manually queue a recalc for
      	  arrays now.
      
      	* src/sheet.c (sheet_cell_set_text) : we need to queue a recalc for
      	  both expressions and values now.
      	(sheet_range_set_text) : queue recalcs for the region as a block.
      
      	* src/graph-vector.c (graph_vector_new) : Just use dependent_link if
      	  we don't want a recalc.
      b740bf75
  6. 24 May, 2001 3 commits
    • Jody Goldberg's avatar
      new function. Init recursive_dirty_enabled. Use recursive_dirty_enabled. · 65288fd6
      Jody Goldberg authored
      
      2001-05-24  Jody Goldberg <jgoldberg@home.com>
      
      	* src/workbook.c (workbook_enable_recursive_dirty) : new function.
      	* src/workbook-private.c (workbook_private_init) : Init
      	  recursive_dirty_enabled.
      	* src/sheet.c (sheet_cell_remove) : Use recursive_dirty_enabled.
      	* src/eval.c (dependent_changed) : ditto.
      
      	* src/workbook-view.c (wb_view_open_custom) : while loading disable
      	  recursive depend dirtying.  We are loading everything it is up to
      	  the loader to handle the queuing correctly (either queuing all, or
      	  just those necessary)
      65288fd6
    • Jody Goldberg's avatar
      optionally queue the dependents of this cell for recalc. · 7c1b3f75
      Jody Goldberg authored
      
      2001-05-23  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.c (sheet_cell_destroy) : optionally queue the dependents
      	  of this cell for recalc.
      7c1b3f75
    • Jody Goldberg's avatar
      Revamp the recalc queue · af206304
      Jody Goldberg authored
      2001-05-22  Jody Goldberg <jgoldberg@home.com>
      
      	* gnumeric.spec.in : bump version of libole2
      	* README : ditto.
      	* configure.in : ditto.
      
      2001-05-19  Jody Goldberg <jgoldberg@home.com>
      
      	* src/workbook.c (workbook_is_pristine) : no need to check the recalc
      	  queue.  If there are no dependents there is nothing to put on the
      	  eval queue.
      
      	* src/func.c (cb_iterate_cellrange) : rename from
      	  iterate_cellrange_callback remove 'generation' mechanism.
      
      	* src/cell.c (cell_cleanout) : Clear both recalc flags,
      	  in_queue and needs
      	(cell_copy) : ditto.
      	(cell_eval_content) : No need to render the value.  assign_value
      	  already does it.
      	(cell_content_changed) : deleted.
      
      	* src/Makefile.am : merge dependent.[ch] into eval.[ch]
      
      2001-05-18  Jody Goldberg <jgoldberg@home.com>
      
      	* src/eval.c : reorg and merged with dependent.[ch]
      
      	* src/sheet.c (sheet_cell_set_text) :
      	  s/cell_content_changed/cell_queue_recalc/
      	(sheet_cell_set_expr) : ditto.
      	(sheet_cell_set_value) : ditto.
      	(colrow_move) : ditto.
      	(sheet_destroy_contents) :
      	  s/dependent_unqueue_recalc_sheet/dependent_unqueue_sheet/
      
      	* src/cmd-edit.c (cmd_select_cur_row) : Make behavior match XL.
      	(cmd_select_cur_col) : Make behavior match XL.
      
      	* src/format.c (render_number) : avoid temporaries.
      	(do_render_number) : ditto.
      
      2001-05-17  Jody Goldberg <jgoldberg@home.com>
      
      	* src/expr.c (eval_range) : delete.
      	(eval_expr_real) : Use workbook_foreach_cell_in_range rather than
      	  range_eval.  Remove 'generation' mechanism.
      	(cb_range_eval) : a simple pass through
      
      	* src/eval.c (sheet_region_recalc_deps) : rename from
      	  sheet_recalc_dependencies and merge in sheet_region_get_deps.
      	  Use the new foreach style interfaces.
      	(cb_single_recalc_all_depends) : rename from cb_single_get_all_depends
      	  and simplify.
      	(cb_range_recalc_all_depends) : rename from cb_sheet_get_all_depends and simplify.
      	(cb_dependent_queue_recalc) : new wrapper.
      	(cb_region_contained_depend) : renamed from search_range_deps and simplify.
      	(cell_foreach_dep) : rename from cell_get_dependencies and switch to
      	  an in place api rather than creating a list.
      	(cell_foreach_single_dep) : switch to in place api
      	(cell_foreach_range_dep) : ditto.
      	(search_cell_deps) : ditto.
      	(cell_recalc_deps) : ditto.
      	(cell_eval) : ditto.
      	(cb_generation_queue) : new utility.
      
      	* src/dependent.c (dependent_list_filter) : delete.
      
      	* src/cmd-edit.c (cb_collect_deps) : new function split from.
      	(cmd_select_cur_depends) : here. So that we can use the new depend
      	  api.
      
      	* src/sheet.c (sheet_move_range) : use sheet_region_recalc_deps.
      	(sheet_{insert,delete}_{cols,rows}) : ditto.
      	(sheet_cell_remove_simple) : Use in place depend interface.
      
      	* src/cell.c (cell_content_changed) : Use in place depend interface.
      	* src/clipboard.c (clipboard_paste_region) : ditto.
      	* src/commands.c (cmd_area_set_text_redo) : ditto.
      	(cmd_autofill_redo) : ditto.
      
      2001-05-21  Jody Goldberg <jgoldberg@home.com>
      
      	* Makefile.am : remove gnorba and modernize a bit.
      af206304
  7. 16 May, 2001 1 commit
    • Jody Goldberg's avatar
      - Fix lack of array merge test for paste_copy · 6f6a117b
      Jody Goldberg authored
      - Fix range checking for expr range fill
      
      2001-05-15  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.c (sheet_stop_range_selection) : delete.
      
      	* src/commands.c (cmd_paste_copy) : call splits_region to check for
      	  partial arrays and merged regions.
      
      	* src/sheet.c (cb_set_cell_content) : Use the bounding box.
      	(sheet_range_set_text) : set the bounding box.
      6f6a117b
  8. 14 May, 2001 1 commit
    • Almer S. Tigelaar's avatar
      Add shrink flag. (cb_autofit_height_no_shrink): Callback function for new · aca66eeb
      Almer S. Tigelaar authored
      2001-05-14  Almer S. Tigelaar  <almer@gnome.org>
      
      	* src/colrow.c (rows_height_update): Add shrink flag.
      	(cb_autofit_height_no_shrink): Callback function for new
      	autofit without shrinking functionality.
      
      	* src/commands.c (cmd_paste_cut_redo): Adjust for change
      	to rows_height_update.
      	(cmd_paste_copy_undo): Idem.
      	(cmd_autoformat_undo): Idem.
      	(cmd_format_undo): Idem.
      
      	* src/clipboard.c (clipboard_paste_region): Idem.
      
      	* src/sheet.c (sheet_clear_region): Idem.
      	(sheet_apply_style): Idem.
      aca66eeb
  9. 13 May, 2001 1 commit
    • Jody Goldberg's avatar
      Use the new CLEAR_NORESPAN flag. It is premature to respan the content of · c9031b0a
      Jody Goldberg authored
      
      2001-05-13  Jody Goldberg <jgoldberg@home.com>
      
      	* src/clipboard.c (clipboard_paste_region) : Use the new CLEAR_NORESPAN
      	  flag.  It is premature to respan the content of surrounding cells.
      	  That should only happen AFTER the new content goes in.
      
      	* src/sheet.c (sheet_cell_calc_span) : check for spans into this cell
      	  even if this cell is a merged cell.
      	(sheet_clear_region) : Make the respan conditional on a new flag.
      
      	* src/workbook-control-gui.c (cb_change_zoom) : Always update the zoom
      	  combo in case the entry does not match what was used.
      c9031b0a
  10. 12 May, 2001 1 commit
    • Jody Goldberg's avatar
      add sheet_merge. (xml_sax_start_element) : add sheet_merge, and · eb7517d7
      Jody Goldberg authored
      2001-05-11  Jody Goldberg <jgoldberg@home.com>
      
      	* xml-sax-read.c (xml_sax_characters) : add sheet_merge.
      	(xml_sax_start_element) : add sheet_merge, and sheet_merged_regions.
      	(xml_sax_end_element) : call xml_sax_parse_merge.
      	(xml_sax_parse_merge) : new function.
      	(xml_sax_parse_sheet_end) : new function to set the zoom after the
      	  content.
      	(xml_sax_parse_sheet_start) : renamed from xml_sax_parse_sheet.
      	(xml_parse_sheet_zoom) : just store the zoom don't set till later.
      	(xml_sax_cols_rows) : new function.
      
      2001-05-10  Jody Goldberg <jgoldberg@home.com>
      
      	* xml-sax-read.c (xml_sax_parse_attr_bool) : new function.
      	(xmlSaxParseSheet) : use it here.
      	(xml_sax_parse_wb) : fix inverted cmp.
      	(xmlSaxParseSheet) : no sheet yet here.  Just store the prefs for
      	  later.
      	(xmlSaxParseSheet) : use any saved prefs.
      	(xml_sax_file_open) : typo.
      
      2001-05-11  Jody Goldberg <jgoldberg@home.com>
      
      	* src/application.c (application_real_time_auto_expr_recalc) : new
      	  function.
      
      	* src/sheet.c (auto_expr_timer_clear) : new function.
      	(sheet_update) : toggle the selection_content_changed flag here and
      	  use a timer rather than an idle handler.
      
      	* src/workbook-edit.c (wbcg_edit_ctor) : Init the sensitivity timer.
      
      	* src/workbook-control-gui.c (workbook_setup_edit_area) : Use
      	  wbcg_edit_ctor.
      	(wbcg_destroy) : use wbcg_edit_dtor.
      
      	* src/main.c (gnumeric_main) : setlocale (LC_ALL, NULL) to force
      	  initialization of LC_* from the environment.
      eb7517d7
  11. 10 May, 2001 1 commit
    • Jody Goldberg's avatar
      typo. Use the child not the parent node. (xml_write_selection_info) : Save · 35bb5752
      Jody Goldberg authored
      
      2001-05-09  Jody Goldberg <jgoldberg@home.com>
      
      	* src/xml-io.c (xml_read_selection_info) : typo.  Use the child not
      	  the parent node.
      	(xml_write_selection_info) : Save the real position.
      
      	* src/sheet.c (sheet_new_scg) : set cursor bound, not the details.
      	(sheet_cursor_set) : add some sanity checks.
      	(sheet_clone_selection) : use the real edit_pos.
      35bb5752
  12. 09 May, 2001 3 commits
    • Jody Goldberg's avatar
      Round 3 of the great rangesel cursor cleanup · 79f8f44b
      Jody Goldberg authored
      Still some bugs but things are much closer
      
      2001-05-08  Jody Goldberg <jgoldberg@home.com>
      
      	* src/selection.c (sheet_selection_set_internal) : split this out into.
      	* src/sheet-merge.c (sheet_merge_find_container) : here.
      	* src/sheet-control-gui.c (scg_rangesel_changed) : and here.
      
      2001-05-08  Jody Goldberg <jgoldberg@home.com>
      
      	* src/xml-io.c (xml_read_selection_info) : Use sheet_set_edit_pos.
      
      	* src/selection.c (sheet_selection_extend) : merge into
      	  scg_cursor_extend.
      
      	* src/sheet-control-gui.c (scg_cursor_move_to) : rename from
      	  scg_cursor_move.
      	(scg_cursor_extend) : merge scg_cursor_extend_[hv]
      	(scg_cursor_move) : merge scg_cursor_move_[hv]
      	(scg_rangesel_extend) : merge scg_rangesel_extend_[hv]
      	(scg_rangesel_move) : merge scg_rangesel_move_[hv]
      	(scg_rangesel_start) : cleanup.
      
      	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : fix handling
      	  of Home. Simplify the function pointers for move vs extend by
      	  merging horizontal and vertical versions.
      79f8f44b
    • Jody Goldberg's avatar
      missed commit · 08755640
      Jody Goldberg authored
      08755640
    • Jody Goldberg's avatar
      s/scg_stop_range_selection/scg_rangesel_stop/ · 534405d6
      Jody Goldberg authored
      
      2001-05-08  Jody Goldberg <jgoldberg@home.com>
      
      	s/scg_stop_range_selection/scg_rangesel_stop/
      
      	s/scg_set_cursor_bounds/scg_cursor_bound/
      	s/scg_cursor_vertical_extend/scg_cursor_extend_v/
      	s/scg_cursor_horizontal_extend/scg_cursor_extend_h/
      	s/scg_cursor_vertical_move/scg_cursor_move_v/
      	s/scg_cursor_horizontal_move/scg_cursor_move_h/
      	s/scg_cursor_vertical_extend/scg_rangesel_extend_v/
      	s/scg_cursor_horizontal_extend/scg_rangesel_extend_h/
      	s/scg_cursor_vertical_move/scg_rangesel_move_v/
      	s/scg_cursor_horizontal_move/scg_rangesel_move_h/
      
      	* src/sheet-control-gui.[ch] : Move the rangesel info from
      	  gnumeric-sheet into here in preparation for panes.
      	(scg_rangesel_extend_v) : merge content from
      	  gnumeric-sheet equivalent.
      	(scg_rangesel_extend_h) : ditto.
      	(scg_rangesel_move_v) : ditto.
      	(scg_rangesel_move_h) : ditto.
      	(scg_rangesel_start) : ditto.
      	(scg_rangesel_stop) : ditto.
      	(start_range_selection) : moved from gnumeric-sheet.
      	(scg_rangesel_possible) : renamed from
      	    gnumeric_sheet_can_select_expr_range.
      	(scg_rangesel_changed) : renamed from scg_range_selection_changed
      	  and make this the point that rationalizes the cursor points.
      	(scg_cursor_bound) : renamed from scg_set_cursor_bounds
      	  and make this the point that raionalizes the cursor points.
      	(scg_ant) : changes to item_cursor_set_bounds.
      	(scg_colrow_select) : rangesel support is now in scg.
      	(scg_select_all) : ditto.
      
      	* src/workbook-edit.c : cleanup includes.
      
      	* src/item-grid.c (item_grid_event) : rangesel support is now in scg.
      	(item_grid_button_1) : ditto.
      
      	* src/item-cursor.h : privatize the structure and class.
      
      	* src/item-cursor.c (cb_autofill_scroll) : changes to
      	  item_cursor_set_bounds_visibly signature.
      	(cb_move_cursor) : ditto.
      	(item_cursor_set_bounds_visibly) : changes to item_cursor_set_bounds
      	  signature.
      	(item_cursor_selection_event) : ditto.
      	(item_cursor_set_bounds) : simplify.
      
      	* src/item-bar.c (is_pointer_on_division) : rangesel support is now in scg.
      
      	* src/gnumeric-sheet.[ch] : move the rangesel logic up into scg.
      
      2001-05-08  Jody Goldberg <jgoldberg@home.com>
      
      	From Juan Pablo Mendoza <pablo_juan@yahoo.com>
      	* src/sheet.c: (sheet_clone_colrow_info): Clone col and row
      	  default size.
      534405d6
  13. 08 May, 2001 1 commit
    • Almer S. Tigelaar's avatar
      New, combine all the enabling/disabling of menu items here including the · 86c531df
      Almer S. Tigelaar authored
      2001-05-08  Almer S. Tigelaar  <almer@gnome.org>
      
      	* src/workbook-control-gui.c (wbcg_menu_state_update): New, combine
      	all the enabling/disabling of menu items here including the newly
      	added show/hide menu items.
      	(wbcg_menu_state_enable_insert): Remove.
      	(wbcg_menu_state_paste_special): Remove.
      	(workbook_control_gui_ctor_class): Init menu_state_update callback
      	and remove paste_special and enable_insert initializations.
      	(workbook_control_gui_init): Initialize show/hide menu items.
      
      	* src/workbook-control-gui-priv.h: Add show/hide detail menu items
      	and tidy structure lay-out.
      
      	* src/workbook-control-priv.h: Remove menu_state_enable_insert
      	and menu_state_paste_special callbacks and add menu_state_update
      	callback.
      
      	* src/workbook-control.[ch]: Add wb_menu_state_update and
      	remove wb_menu_state_paste_special and wb_menu_state_enable_insert.
      	(wb_control_sheet_add): call wb_menu_state_update, Remove
      	call to menu_state_paste_special.
      
      	* src/sheet-private.h: Add enable_showhide_detail.
      
      	* src/sheet.c (sheet_new): Initialize menu state booleans.
      	(sheet_menu_state_enable_insert): Use wb_control_menu_state_update.
      
      	* src/workbook-view.c (wb_view_menus_update): Idem and
      	remove call to wb_control_menu_state_paste_special.
      
      	* src/application.c (application_clipboard_clear): Idem.
      	(application_clipboard_copy): Idem.
      	(application_clipboard_cut): Idem.
      
      	* src/selection.c (sheet_selection_set_internal): Add comment for
      	show/hide detail enabling/disabling, something we can't do just yet.
      86c531df
  14. 07 May, 2001 2 commits
    • Jody Goldberg's avatar
      More warning suppression. · 2469741e
      Jody Goldberg authored
      2001-05-07  Jody Goldberg <jgoldberg@home.com>
      
      	* ms-escher.c (ms_escher_get_data) : suppress warnings.
      	(ms_escher_read_ClientTextbox) : no side effects in precondition.
      
      	* ms-excel-read.c (ms_excel_formula_shared) : ditto.
      
      2001-05-07  Jody Goldberg <jgoldberg@home.com>
      
      	* src/item-cursor.c (item_cursor_event) : ignore events while editing.
      
      	* src/functions/fn-string.c (gnumeric_value) : s/free/g_free/
      	* src/parse-util.c (parse_cell_name_list) : ditto.
      
      	* src/parser.y (gnumeric_expr_parser) : reorganize slightly to improve
      	  readability.
      
      	* src/sheet.c (sheet_range_contains_region) : doh!.  forgot to invert
      	  logic when I renamed the function.
      2469741e
    • Jody Goldberg's avatar
      fragment the selection just in case. (cb_unmerge_cells) : ditto. Thanks · df48a66b
      Jody Goldberg authored
      
      2001-05-06  Jody Goldberg <jgoldberg@home.com>
      
      	* src/workbook-format-toolbar.c (cb_merge_cells) : fragment the
      	  selection just in case.
      	(cb_unmerge_cells) : ditto.  Thanks Juan Pablo.
      
      	* src/commands.c (cmd_unmerge_cells) : remove ugly hack cast.
      	(cmd_merge_cells) : ditto.  DO NOT DO THAT !
      
      	* src/sheet.c (sheet_range_splits_region) : implement the optional
      	  ignore feature for merged regions too.
      df48a66b
  15. 06 May, 2001 1 commit
    • Jody Goldberg's avatar
      update the edit_pos if necessary. · ba8c408f
      Jody Goldberg authored
      
      2001-05-05  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet-merge.c (sheet_merge_add) : update the edit_pos if
      	  necessary.
      
      	* src/sheet.c (sheet_update_only_grid) : fix typo.
      ba8c408f
  16. 05 May, 2001 1 commit
    • Jody Goldberg's avatar
      Make the displaying the warning optional. (sheet_range_splits_region) : · 48d59bf8
      Jody Goldberg authored
      
      2001-05-04  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.c (sheet_range_splits_array) : Make the displaying the
      	  warning optional.
      	(sheet_range_splits_region) : ditto.
      	(sheet_range_contains_region) : implement.
      
      	* src/workbook-control-gui.c (sort_cmd) : no need to check for merges
      	  or arrays here.
      	* src/dialogs/dialog-cell-sort.c (dialog_cell_sort) : or here.
      
      	* src/commands.c (cmd_sort) : it belongs here.
      
      	* src/print.c (print_page) : in the case of grid lines we were off by
      	  a point.  In the case without gridlines we need not display the
      	  leading cell margins.
      48d59bf8
  17. 04 May, 2001 1 commit
    • Jody Goldberg's avatar
      s/clipboard_release/cellregion_free/ s/range_copy/range_dup/ · 32bde6ee
      Jody Goldberg authored
      
      2001-05-04  Jody Goldberg <jgoldberg@home.com>
      
      	s/clipboard_release/cellregion_free/
      	s/range_copy/range_dup/
      	s/cell_region_render_ascii/cellregion_to_string/
      	s/clipboard_release/cellregion_free/
      
      	* src/commands.c (cmd_autofill) : Use sheet_range_contains_region.
      	(cmd_autofill_redo) : no need to test here.
      	(cmd_paste_cut) : test destination for validity and ensure that it
      	  does not slice up any merged regions or arrays.  Make the descriptor
      	  an argument so that other commands can use this one.
      	(cmd_ins_del_colrow_redo) : use colrow_max.
      	(cmd_area_set_text_redo) : use sheet_ranges_split_region.
      	(cmd_colrow_outline_change) : suppress warning.
      
      	* src/gui-clipboard.c (x_selection_to_cell_region) : simplify by using
      	  some of the convenience routines.
      
      	* src/gutils.c (gnumeric_sys_data_dir) : warning suppression.
      	(gnumeric_sys_lib_dir) : ditto.
      
      	* src/item-bar.c (item_bar_draw) : add missing warning.
      
      	* src/item-cursor.c (item_cursor_drag_event) : Don't assume the
      	  release came from the button that started the grab (think about
      	  multiple simultaneous button downs.
      	(item_cursor_selection_event) : ditto.
      	(item_cursor_do_drop) : changes to selection_first_range.
      
      	* src/parse-util.c (col_name_internal) : new routine split from
      	  col_name with better buffer handling.
      	(col_name) : used here.
      	(cols_name) : and in this new function.
      
      	* src/print.c (sheet_print_selection) : changes to
      	  selection_first_range.
      
      	* src/print-info.c (print_info_new) : default even_if_only_styles to
      	  false.  This is probably what most people want.
      
      	* src/ranges.c (range_translate) : don't invert.
      	(range_height) : new util.  could probably be #define.
      	(range_width) : new util.  could probably be #define.
      	(range_is_infinite) : use range_is_full.
      	(range_is_full) : new util.
      
      	* src/search.c (calculate_replacement) : warning suppression.
      
      	* src/selection.c (sheet_selection_cut) : Use
      	  sheet_range_splits_region and selection_first_range.
      	(sheet_selection_copy) : Use selection_first_range and remove TODO
      	  about supporting not paste by content for partial arrays.
      	(selection_first_range) : Add optional error reporting if there are
      	  multiple selection ranges.
      
      	* src/format.c (format_get_currency) : diddle the logic to get
      	  undefined to work the way people expect for locale C.
      
      	* src/sheet-merge.c (sheet_merge_relocate) : remove some dead code.
      	(sheet_merge_add) : changes to sheet_range_splits_array.
      
      	* src/sheet-object-widget.c (sheet_widget_checkbox_construct) :
      	  changes to selection_first_range.
      
      	* src/sheet.c (sheet_delete_{cols,rows}) : changes to
      	  sheet_range_splits_array.
      	(sheet_insert_{cols,rows}) : use sheet_range_splits_array.
      	(avoid_dividing_array_vertical) : delete.
      	(avoid_dividing_array_horizontal) : delete.
      	(sheet_is_pristine) : constness.
      	(sheet_mark_clean) : delete.
      	(sheet_clear_region) : changes to sheet_range_splits_array.
      	(sheet_ranges_split_region) : renamed from selection_check_for_array.
      	(sheet_range_splits_region) : new routine to check arrays and merged
      	  regions.
      	(sheet_range_splits_array) : improve and add hooks to be used for
      	  overlapping checks.
      	(cb_check_array_vertical) : report the array being split.
      	(cb_check_array_horizontal) : report the array being split.
      
      	* src/stf-parse.c (stf_parse_region) : use cellregion_new.
      	(stf_parse_is_valid_data) : simplify.
      
      	* src/value-sheet.c (value_area_get_width) : warning suppression.
      	(value_area_get_height) : warning suppression.
      	(value_area_fetch_x_y : signedness.
      	(value_area_get_x_y) : signedness.
      
      	* src/value.c (value_array_resize) : signedness.
      	(value_array_set) : signedness.
      
      	* src/workbook-control-gui.c (wbcg_error_splits_array) : signature
      	  change.
      	(cb_insert_rows) : use selection_first_range
      	(cb_insert_cols) : ditto.
      	(sort_cmd) : ditto.
      	(cb_workbook_debug_info) : clean out some deadwood.
      
      	* src/workbook-edit.c (auto_complete_matches) : warning suppression.
      
      	* src/workbook.c (workbook_sheet_detach) : warning suppression.
      	(g_ptr_array_insert) : warning suppression, moved to gutils.
      
      	* src/xml-io.c (xml_write_attributes) : warning suppression.
      	(xml_read_selection_clipboard) : use cellregion_new and tidyup.
      
      	* src/clipboard.c (paste_link) : Only make the link sheet specific if
      	  we need to.
      	(clipboard_paste_region) : constness, support being able to paste
      	  content only as link or value.
      	(clipboard_prepend_cell) : check for arrays.
      	(clipboard_copy_range) : use cellregion_new
      	(cellregion_new) : new function
      	(cellregion_free) : renamed from clipboard_release.
      	(cellregion_to_string) : moved here from render-ascii.
      
      	src/cmd-edit.c (cmd_paste) : more protection. Merge in
      	  application_paste.
      	(cmd_paste_to_selection) : handle changes to selection_is_simple and
      	  use selection_first_range
      	(cmd_shift_rows) : changes to cmd_paste_cut.
      	(cmd_shift_cols) : ditto.
      
      	* src/command-context-priv.h : change signature of splits array.
      	* src/command-context.h : ditto.
      	* src/command-context.c (gnumeric_error_splits_array) : ditto.
      
      	* src/application.c (application_clipboard_clear) :
      	(application_set_selected_sheet) : remove #warning, it is not portable.
      
      	* src/commands.c
      	* src/Makefile.am : remove render-ascii.[ch]  Move their content into
      	  clipboard.
      
      2001-05-01  Jody Goldberg <jgoldberg@home.com>
      
      	* src/clipboard.c (clipboard_prepend_cell) : remove ugly
      	  implementation.
      
      	* src/workbook-edit.c (auto_complete_matches) : remove warning.
      
      	* src/xml-io.c (xml_write_attributes) : remove warning.
      32bde6ee
  18. 02 May, 2001 1 commit
    • Almer S. Tigelaar's avatar
      Callback timer routine, re-enables the toolbars. · 1a5a3140
      Almer S. Tigelaar authored
      2001-05-02  Almer S. Tigelaar  <almer@gnome.org>
      
      	* src/workbook-edit.c (cb_thaw_ui_toolbar): Callback timer
      	routine, re-enables the toolbars.
      	(workbook_edit_set_sensitive): Add a ui timer to eliminate
      	toolbar flickering.
      
      	* src/sheet.c (sheet_menu_state_enable_insert): Clean-up.
      1a5a3140
  19. 01 May, 2001 1 commit
    • Almer S. Tigelaar's avatar
      Use sheet_unant. (application_clipboard_clear): Idem. · e6d66e4a
      Almer S. Tigelaar authored
      2001-05-01  Almer S. Tigelaar  <almer@gnome.org>
      
      	* src/application.[ch] (application_clipboard_unant): Use
      	sheet_unant.
      	(application_clipboard_clear): Idem.
      	(application_clipboard_copy): Use sheet_ant.
      	(application_clipboard_cut): Idem.
      	(application_clipboard_is_cut): New function, is the area
      	on the clipboard marked for cutting or for copying?
      
      	* src/selection.[ch] (sheet_selection_ant): Deprecated, remove.
      	(sheet_selection_unant): Idem.
      
      	* src/sheet-control-gui.[ch] (scg_selection_ant): Rename
      	to scg_ant and add a ranges parameter where the ranges to
      	ant can be specified.
      	(scg_selection_unant): Rename to scg_unant.
      	(scg_destroy): Make sure to un-ant everything.
      	(scg_construct): Ant all anted regions on the sheet.
      
      	* src/sheet.[ch] (sheet_ant): New, ants one or more regions
      	on the sheet.
      	(sheet_unant): New, unants all currently anted region on the
      	sheet.
      	(sheet_destroy): Make sure to free the ant list.
      
      	* src/commands.c (cmd_ins_del_colrow_undo): Remove ugly ant-hack,
      	this is no longer needed, application_clipboard_cut/copy handles
      	this now.
      	(cmd_ins_del_colrow_redo): Idem
      	(cmd_ins_del_colrow): Oh dear, we were actually storing both
      	the cut and copied area as a cut area and we were actually
      	cutting even if the range was a copied area after shifting.
      e6d66e4a
  20. 27 Apr, 2001 1 commit
    • Chema Celorio's avatar
      add the header for clone_sheet · 2ba8959f
      Chema Celorio authored
      2001-04-27  Chema Celorio  <chema@celorio.com>
      
      	* src/sheet-object.h: add the header for clone_sheet
      
      	* src/sheet-object.c (sheet_object_clone): implement
      	(sheet_object_clone_sheet): implemnt.
      
      	* src/sheet-object-widget.c (SOW_MAKE_TYPE): add read_xml, write_xml
      	and clone methods to macro
      	(sheet_object_widget_clone): implement.
      	Implement for X in label, frame, button, checkbox
      	(sheet_widget_x_construct_with_label):
      	(sheet_widget_x_destroy):
      	(sheet_widget_x_clone):
      	(sheet_widget_x_write_xml):
      	(sheet_widget_x_read_xml):
      
      	(sheet_object_widget_register): implement
      
      	* src/sheet-object-impl.h: add the clone method
      
      	* src/sheet-object-graphic.c (sheet_object_graphic_clone): implement.
      	(sheet_object_filled_clone): implement.
      
      	* src/sheet-object-cell-comment.c (cell_comment_clone): implement
      2ba8959f
  21. 23 Apr, 2001 1 commit
    • Almer S. Tigelaar's avatar
      Give focus to the edit line when an error is encountered. Don't store the · 78d888e3
      Almer S. Tigelaar authored
      2001-04-23  Almer S. Tigelaar  <almer@gnome.org>
      
      	* src/workbook-edit.c (workbook_finish_editing): Give focus
      	to the edit line when an error is encountered.
      	* src/workbook-control-gui.c
      	(wbcg_close_control) : Don't store the partially entered expression
      	when we are going to close.
      	(cb_file_quit) : Idem.
      	(cb_notebook_switch_page) : Idem, for switching between tabs
      	when we are _not_ in a subexpression.
      
      	* src/parser.y : Correct off-by-one glitches and strtod exponent
      	out of range error problem.
      
      	* src/expr.[ch] (expr_parse_string): Use a ParseError struct
      	instead of an error string.
      
      	* src/commands.c (cmd_area_set_text_redo): Use expr_parse_string
      	in the newly corrected fashion.
      	* src/expr-name.c (expr_name_create): Idem, require a ParseError
      	struct to be passed instead of a char** aswell.
      	* src/parse-util.c (parse_text_value_or_expr): Idem.
      	* src/sheet-object-widget.c (cb_checkbox_config_clicked): Idem.
      	* src/test-parser.c (main): Idem.
      	* src/xml-io.c (xml_cell_set_array_expr): Idem.
      
      	* src/sheet.c (sheet_clone_names): Use expr_name_create which now
      	uses ParseError instead of char **.
      	* src/xml-io.c (xml_read_names): Idem.
      
      2001-04-23  Almer S. Tigelaar  <almer@gnome.org>
      
      	* dialog-define-names.c (cb_name_guru_add):
      	Correct use of expr_parse_string.
      78d888e3
  22. 21 Apr, 2001 1 commit
    • Jody Goldberg's avatar
      new function. (ms_excel_read_sheet) : called from here. · 00eb6d86
      Jody Goldberg authored
      2001-04-20  Jody Goldberg <jgoldberg@home.com>
      
      	* ms-excel-read.c (ms_excel_read_wsbool) : new function.
      	(ms_excel_read_sheet) : called from here.
      
      	* ms-excel-write.c (write_wsbool) : new function.
      	(write_sheet_bools) : called from here.
      
      2001-04-21  Jody Goldberg <jgoldberg@home.com>
      
      	* src/workbook-control-gui.c (wbcg_menu_state_sheet_prefs) : add some
      	  new prefs for outline mode.
      
      	* src/colrow.c (colrow_adjust_outline_dir) : new stub.  implement
      	  later.
      
      	* src/sheet-control-gui.c (scg_set_gutters) : delete.
      	(scg_resize) : split from.
      	(scg_set_zoom_factor) : here. change signature to use zoom associated
      	  with sheet.  No need to pass it in.
      
      	* src/sheet.c (sheet_col_row_gutter) : Use scg_resize.
      	(sheet_set_zoom_factor) : signature change.
      	(sheet_adjust_preferences) : Adjust signature to optionally call
      	  scg_resize.
      
      
      	* src/item-bar.c (compute_pixels_from_indent) : Support disabling
      	  outlines.
      
      2001-04-20  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.c (sheet_new) : init outline_symbols_{below,right},
      	  and display_outlines
      00eb6d86
  23. 19 Apr, 2001 1 commit
    • Jody Goldberg's avatar
      clear old span when an expression is assigned. (sheet_cell_set_text) : · 02adb706
      Jody Goldberg authored
      
      2001-04-18  Jody Goldberg <jgoldberg@home.com>
      
      	* src/sheet.c (sheet_cell_set_expr) : clear old span when an
      	  expression is assigned.
      	(sheet_cell_set_text) : ditto.
      
      	* src/application.c (application_init) : add new icons.
      
      	* src/workbook-control-gui.c : Use the new icons.
      	* src/GNOME_Gnumeric.xml : ditto.
      02adb706
  24. 18 Apr, 2001 1 commit
    • Jon K Hellan's avatar
      Change return type to GnumericExprEntry. (workbook_set_entry): Change type · eb52c908
      Jon K Hellan authored
      2001-04-18  Jon K Hellan  <hellan@acm.org>
      
      	* src/workbook-edit.[ch] (workbook_get_entry,
      	workbook_get_entry_logical): Change return type to
      	GnumericExprEntry.
      	(workbook_set_entry): Change type of entry argument to
      	GnumericExprEntry.
      
      	* src/gnumeric-sheet.c (move_cursor): Move to scg::scg_move_cursor
      	(cursor_horizontal_move): Move to scg::scg_cursor_horizontal_move
      	(cursor_horizontal_extend): Move to
      	scg::scg_cursor_horizontal_extend
      	(cursor_vertical_move): Move to scg::scg_cursor_vertical_move
      	(cursor_vertical_extend): Move to scg::scg_cursor_vertical_extend
      	(selection_remove_selection_string,
      	selection_insert_selection_string): Remove. GnumericExprEntry
      	widget now handles this.
      	(start_cell_selection_at): Rename to start_range_selection_at.
      	(start_cell_selection): Rename to start_range_selection.
      	(gnumeric_sheet_start_cell_selection): Rename to
      	gnumeric_sheet_start_range_selection.
      	(gnumeric_sheet_stop_cell_selection): Rename to
      	gnumeric_sheet_stop_range_selection. Remove clear_string parameter
      	and selection string manipulation.
      	(rangesel_horizontal_move): Make non-static, rename to
      	gnumeric_sheet_rangesel_horizontal_move, remove selection string
      	manipulation.
      	(rangesel_vertical_move): Make non-static, rename to
      	gnumeric_sheet_rangesel_vertical_move, remove selection string
      	manipulation.
      	(rangesel_horizontal_extend): Make non-static, rename to
      	gnumeric_sheet_rangesel_horizontal_extend, remove selection string
      	manipulation.
      	(rangesel_vertical_extend): Make non-static, rename to
      	gnumeric_sheet_rangesel_vertical_extend, remove selection string
      	manipulation.
      	(gnumeric_sheet_key_mode_sheet): Use movefn's from scg instead of
      	from GnumericSheet.
      
      	* src/gnumeric-sheet.h (gnumeric_sheet_start_cell_selection):
      	Rename to gnumeric_sheet_start_range_selection.
      	(gnumeric_sheet_stop_cell_selection): Rename to
      	gnumeric_sheet_stop_range_selection. Remove clear_string
      	parameter.
      	(gnumeric_sheet_rangesel_horizontal_move,
      	gnumeric_sheet_rangesel_vertical_move,
      	gnumeric_sheet_rangesel_horizontal_extend,
      	gnumeric_sheet_rangesel_vertical_extend): Declare.
      
      	* src/gnumeric-util.[ch] (gnumeric_entry_at_subexpr_boundary_p):
      	Rename to gnumeric_expr_entry_at_subexpr_boundary_p and move to
      	gnumeric_expr_entry widget.
      
      	* src/item-grid.c (item_grid_button_1, item_grid_event): Use scg
      	methods instead of methods from GnumericSheet.
      
      	* src/sheet.[ch] (sheet_stop_cell_selection): Rename to
      	sheet_stop_range_selection.
      
      	* src/sheet-control-gui.c (scg_colrow_select): Use scg methods
      	instead of methods from GnumericSheet.
      	(scg_stop_editing): Add call to scg_stop_cell_selection.
      	(scg_range_selection_changed): New function. Notify ExprEntry that
      	the expression range has changed.
      	(scg_move_cursor): Moved here from GnumericSheet.
      	(scg_rangesel_cursor_extend): Add call to
      	scg_range_selection_changed.
      	(scg_rangesel_cursor_bounds, scg_rangesel_horizontal_move,
      	scg_rangesel_vertical_move, scg_rangesel_horizontal_extend,
      	scg_rangesel_vertical_extend): New functions. Call GnumericSheet
      	counterpart and notify ExprEntry.
      	(scg_cursor_horizontal_move, scg_cursor_horizontal_extend,
      	scg_cursor_vertical_move, scg_cursor_vertical_extend): Moved here
      	from GnumericSheet.
      	(scg_get_sel_cursor_pos): New function. Return selection cursor
      	position.
      
      	* src/sheet-control-gui.h (scg_range_selection_changed,
      	scg_move_cursor, scg_rangesel_cursor_bounds,
      	scg_rangesel_horizontal_move, scg_rangesel_vertical_move,
      	scg_rangesel_horizontal_extend, scg_rangesel_vertical_extend,
      	scg_cursor_horizontal_move, scg_cursor_vertical_move,
      	scg_cursor_horizontal_extend, scg_cursor_vertical_extend,
      	scg_get_sel_cursor_pos): Declare.
      
      	* src/sheet-control-gui.[ch] (scg_stop_cell_selection): Rename to
      	scg_stop_range_selection. Notify ExprEntry that range selection
      	has stopped.
      
      	* src/sheet-object-widget.c (cb_checkbox_config_focus): Call
      	gnumeric_expr_entry_select_absolute.
      	(sheet_widget_checkbox_user_config): Use GnumericExprEntry. Attach
      	it to the scg.
      
      	* src/workbook-control-gui.c (cb_notebook_switch_page): Use new
      	function name sheet_stop_range_selection.
      
      	* src/workbook-control-gui-priv.h (struct
      	_WorkbookControlGUI::struct edit_line): entry and temp_entry are
      	now GnumericExprEntries.
      	(struct _WorkbookControlGUI): Remove select_abs_col,
      	select_abs_row, select_full_col, select_full_row and
      	select_single_cell.
      
      	* src/workbook-control-gui.c (wbcg_finish_editing,
      	wb_edit_key_pressed, cb_autofunction, workbook_setup_edit_area,
      	auto_complete_matches): Entry must now be cast to GtkEntry.
      	(workbook_control_gui_init): select_abs_col, select_abs_row,
      	select_full_col, select_full_row and select_single_cell no longer
      	exist.
      
      	* src/workbook-edit.c (workbook_finish_editing, entry_changed,
      	workbook_start_editing_at_cursor): entry must now be cast to
      	GtkEntry.
      	(workbook_start_editing_at_cursor): Attach scg to
      	ExprEntry. wbcg->select_abs_col and select_abs_row no longer
      	exist.
      	(workbook_edit_select_absolute): Move to ExprEntry widget.
      	(workbook_edit_toggle_absolute): New function. Probably remove it
      	again.
      	(workbook_edit_init): Remove redundant 'g_assert != NULL'. Use
      	GnumericExprEntry widget.
      
      2001-04-18 Jon K Hellan  <hellan@acm.org>
      
      	* src/dialogs/dialog-define-names.c (struct NameGuruState):
      	Change type of expr_text to GnumericExprEntry.
      	(name_guru_set_expr, name_guru_update_sensitivity,
      	name_guru_set_expr, cb_name_guru_add): expr_text must now be
      	cast to GTK_ENTRY.  (cb_name_guru_value_focus): Use
      	gnumeric_expr_entry_set_absolute. w argument is now expected
      	to be a GnumericExprEntry.  (cb_name_guru_set_focus): New
      	function. Make anted selection go away when a widget other
      	than expr_text receives focus.  (name_guru_init): Create a
      	GnumericExprEntry and insert in the dialog. Attach it to the
      	current sheet. Connect cb_name_guru_set_focus to dialog's
      	set-focus signal, and remove the focus-in handler from
      	name_value.
      
      	* src/dialogs/dialog-function-wizard.c (struct ArgumentState):
      	Change type of entry to GnumericExprEntry.
      	(formula_guru_set_expr): Change type of new_entry to
      	GnumericExprEntry. Cast to GTK_ENTRY where necessary.
      	(formula_guru_set_expr, cb_formula_guru_rolled_entry_changed,
      	cb_formula_guru_entry_changed, formula_guru_init):
      	ArgumentState->entry must now be cast to GTK_ENTRY.
      	(formula_guru_set_rolled_state): Change type of new_entry to
      	GnumericExprEntry. Cast to GTK_ENTRY where necessary.
      	(formula_guru_arg_new): Create a GnumericExprEntry instead of
      	a GtkEntry and insert in the dialog. Attach it to the current
      	sheet.  (formula_guru_init): Create a GnumericExprEntry for
      	rolled_entry and insert in the dialog. Attach it to the
      	current sheet.  (dialog_formula_guru): Value returned by
      	workbook_get_entry must now be cast to GTK_ENTRY.
      
      	* src/dialogs/formula-guru.glade: Remove 'rolled_entry'
      	GtkEntry. A GnumericExprEntry is now added at runtime instead.
      
      	* src/dialogs/names.glade: Remove 'expr_text' GtkEntry. A
      	GnumericExprEntry is now added at runtime instead.
      eb52c908
  25. 15 Apr, 2001 1 commit
    • Almer S. Tigelaar's avatar
      Reverted this · e93ad113
      Almer S. Tigelaar authored
      2001-04-14  Almer S. Tigelaar  <almer@gnome.org>
      
      	Reverted this
      
      	* src/commands.c (cmd_paste_cut) : Init saved_sizes.
      	(cmd_paste_cut_destroy) : Free saved_sizes.
      	(cmd_paste_cut_redo) : Store saved_sizes and don't allow
      	shrinking when autofitting row heights.
      	(cmd_paste_cut_undo) : Restore saved_sizes.
      	(cmd_paste_copy_undo) : Store/Restore saved_sizes, don't
      	set PASTE_UPDATE_ROW_HEIGHT flag. It's been removed. Also,
      	don't allow shrinking when autofitting row heights.
      	(cmd_paste_copy_destroy) : Free saved_sizes.
      	(cmd_paste_copy) : Init saved_sizes.
      	(cmd_format_undo) : Allow shrink when autofitting row heights.
      	(cmd_autoformat_undo) : Idem.
      
      	* src/sheet.c (sheet_apply_style) : Allow shrink when autofitting
      	row heights.
      	(sheet_clear_region) : Idem.
      
      	* src/clipboard.c (clipboard_paste_region) : Remove the
      	PASTE_UPDATE_ROW_HEIGHT flag.
      
      	* src/colrow.c :
      	(rows_height_update) : Add an extra flag allow_shrink, if set rows
      	will be autofitted even if this means that the size of the row must
      	be reduced.
      	(cb_autofit_height) : Add support for allow_shrink.
      e93ad113
  26. 14 Apr, 2001 1 commit
    • Almer S. Tigelaar's avatar
      Init saved_sizes. (cmd_paste_cut_destroy) : Free saved_sizes. · 18651ef5
      Almer S. Tigelaar authored
      2001-04-14  Almer S. Tigelaar  <almer@gnome.org>
      
      	* src/commands.c (cmd_paste_cut) : Init saved_sizes.
      	(cmd_paste_cut_destroy) : Free saved_sizes.
      	(cmd_paste_cut_redo) : Store saved_sizes and don't allow
      	shrinking when autofitting row heights.
      	(cmd_paste_cut_undo) : Restore saved_sizes.
      	(cmd_paste_copy_undo) : Store/Restore saved_sizes, don't
      	set PASTE_UPDATE_ROW_HEIGHT flag. It's been removed. Also,
      	don't allow shrinking when autofitting row heights.
      	(cmd_paste_copy_destroy) : Free saved_sizes.
      	(cmd_paste_copy) : Init saved_sizes.
      	(cmd_format_undo) : Allow shrink when autofitting row heights.
      	(cmd_autoformat_undo) : Idem.
      
      	* src/sheet.c (sheet_apply_style) : Allow shrink when autofitting
      	row heights.
      	(sheet_clear_region) : Idem.
      
      	* src/clipboard.c (clipboard_paste_region) : Remove the
      	PASTE_UPDATE_ROW_HEIGHT flag.
      
      	* src/colrow.c :
      	(rows_height_update) : Add an extra flag allow_shrink, if set rows
      	will be autofitted even if this means that the size of the row must
      	be reduced.
      	(cb_autofit_height) : Add support for allow_shrink.
      18651ef5
  27. 13 Apr, 2001 2 commits
    • Jody Goldberg's avatar
      rename gnumeric.xml GNOME_Gnumeric.xml. · e15d0a2c
      Jody Goldberg authored
      
      2001-04-12  Jody Goldberg <jgoldberg@home.com>
      
      	* src/Makefile.am : rename gnumeric.xml GNOME_Gnumeric.xml.
      
      	* src/sheet.c (sheet_col_add) : update the max outline_level.
      	(sheet_row_add) : ditto.
      
      	* src/xml-io.c (xml_read_colrow_info) : restore the col/row outline
      	  level data.
      	(xml_write_colrow_info) : store it here.
      e15d0a2c
    • Jody Goldberg's avatar
      Outline mode events and undo/redo are working. · c0aa8960
      Jody Goldberg authored
      2001-04-12  Jody Goldberg <jgoldberg@home.com>
      
      	* src/colrow.c (colrow_set_visibility) : don't collapse things unless
      	  they are at the end of the region.  Always uncollapse things.
      
      2001-04-11  Jody Goldberg <jgoldberg@home.com>
      
      	* src/item-bar.c (item_bar_draw) : tweak the redraw a bit to match
      	  event handling
      
      	* src/mstyle.c (mstyle_elements_equal) : remove pointless asserts and
      	  correct the logic.
      	(mstyle_element_equal) : Stop passing structs.
      	(mstyle_elements_equal) : adjust here.
      	(mstyle_elements_compare) : and here.
      
      2001-04-12  Jody Goldberg <jgoldberg@home.com>
      
      	* src/colrow.c (colrow_set_visibility) : collapse state changes can
      	  occur more than once within a range.
      
      	* src/sheet.c (sheet_col_row_gutter_pts) : simplify, no need to store
      	  sizes in pts.  Outline level is enough.
      	  s/sheet_col_row_gutter_pts/sheet_col_row_gutter/
      c0aa8960
  28. 12 Apr, 2001 1 commit
  29. 31 Mar, 2001 1 commit
    • Jody Goldberg's avatar
      Some improvements to blip loading. · 186ac28d
      Jody Goldberg authored
      and some tuning that greatly improves startup time.
      
      2001-03-30  Jody Goldberg <jgoldberg@home.com>
      
      	* ms-container.c (ms_container_init) : Take a parent container.
      	(ms_container_finalize) : handle NULL blips smoothly.
      	(ms_container_get_blip) : check the container if we are empty.
      
      	* ms-escher.c (ms_escher_read_Blip) : always register a blip, even if
      	  it is NULL, otherwise the index gets confused.  Move the
      	  registration here.
      	(ms_escher_blip_new) : from here.
      	(ms_escher_read_ClientData) : replace blips we can't understand with
      	  rectangles.
      
      	* ms-chart.c (ms_excel_chart) : Pass in the charts container.
      
      	* ms-excel-read.c (ms_excel_workbook_new) : workbook have no parents.
      	(ms_excel_sheet_new) : Sheets are contained by workbooks.
      
      2001-03-30  Jody Goldberg <jgoldberg@home.com>
      
      	* src/workbook-control-gui.c (wbcg_sheet_remove_all) : clear the
      	  notebook BEFORE deleting it to avoid updating during destuction.
      
      	* src/cellspan.c (cell_calc_span) : Cells in hidden columns can not
      	  have spans.
      
      	* src/file.c (file_finish_load) : no need to manually respan this will
      	  happen via sheet_update.  This gives us a nice speed up.
      
      	* src/sheet.c (sheet_cell_calc_span) : don't reregister spans that
      	  have not changed.
      	(sheet_new) : init all flags to true to ensure things get updated.
      186ac28d
  30. 30 Mar, 2001 1 commit
    • Jody Goldberg's avatar
      remove style_debug option tha was unused. It was only mostly unused :-) · bd9663e4
      Jody Goldberg authored
      
      2001-03-30  Jody Goldberg <jgoldberg@home.com>
      
      	* src/main.c : remove style_debug option tha was unused.
      	* src/mstyle.c (mstyle_elements_equal) : It was only mostly unused :-)
      
      	* src/workbook-control-gui.c (wbcg_menu_state_sheet_count) : fix.
      
      	* src/item-bar.c (is_pointer_on_division) : robustify in the face of
      	  clicking out of bounds.
      	(item_bar_event) : ditto, also simplfy a bit.
      bd9663e4
  31. 28 Mar, 2001 1 commit
  32. 27 Mar, 2001 1 commit
    • Morten Welinder's avatar
      New function, extracted from cmd_search_replace_do. · 9afef623
      Morten Welinder authored
      2001-03-26  Morten Welinder  <terra@diku.dk>
      
      	* src/workbook.c (workbook_cells): New function, extracted from
       	cmd_search_replace_do.
      
      	* src/sheet.c (sheet_cells): New function, extracted from
       	cmd_search_replace_do.
      
      	* src/cell.c (cell_has_comment_pos): New function for those cells
       	that aren't really there.
      
      	* src/commands.c (cmd_search_replace_do): Use workbook_cells and
       	sheet_cells.
      	(cmd_search_replace_do_cell): Change to take position instead of
       	cell.  Handle missing cells without crashing.
      9afef623
  33. 17 Mar, 2001 1 commit
    • Jody Goldberg's avatar
      Handle outline mode. (ms_excel_read_colinfo) : ditto. (ms_excel_read_guts) · e1a87d5f
      Jody Goldberg authored
      
      2001-03-15  Jody Goldberg <jgoldberg@home.com>
      
      	* ms-excel-read.c (ms_excel_read_row) : Handle outline mode.
      	(ms_excel_read_colinfo) : ditto.
      	(ms_excel_read_guts) : ditto.
      
      2001-03-16  Jody Goldberg <jgoldberg@home.com>
      
      	* src/item-bar.c (item_bar_calc_size) : rename from
      	  item_bar_fonts_init.
      
      	* src/sheet-control-gui.c (scg_set_zoom_factor) : prepare for panes by
      	  zooming the col/row header canvases.  We need this as we transition
      	  to using gnumeric-sheets instead of canvases to hold the item-bars.
      
      2001-03-15  Jody Goldberg <jgoldberg@home.com>
      
      	* src/colrow.c (colrow_equal) : handle outline&collapse.
      	(colrow_copy) : ditto.
      
      	* src/item-bar.c (outline_button_press) : new function.
      	(item_bar_event) : used here.
      
      2001-03-15  Jody Goldberg <jgoldberg@home.com>
      
      	* src/item-bar.c (compute_pixels_from_pts) : new function.
      	(item_bar_fonts_init) : resize the indent gutters based on the zoom.
      	(item_bar_realize) : add another gc for outline drawing.
      	(item_bar_unrealize) : ditto.
      	(item_bar_draw) : implement drawing for groupings.
      	(set_cursor) : handle cursor in the presence of groupings.
      
      2001-03-14  Jody Goldberg <jgoldberg@home.com>
      
      	* Makefile.am : update the handling of the oaf file.
      
      	* src/sheet.c (sheet_col_row_default_calc) : rename from
      	  sheet_col_row_default_init.
      
      2001-03-13  Jody Goldberg <jgoldberg@home.com>
      
      	* src/xml-io.c (xml_write_print_repeat_range) : PrintRepeatRange now
      	  uses a simple Range.
      	(xml_read_print_repeat_range) : ditto.
      	* src/print-info.c (print_info_new) : ditto.
      	(save_range) : Ditto.
      	* src/dialogs/dialog-printer-setup.c (do_fetch_page_info) : ditto.
      	* src/print.c (print_range_used_units) : ditto.
      	(print_range_right_then_down) : ditto.
      	(print_range_down_then_right) : ditto.
      	(print_page_repeated_intersect) : ditto.
      	(print_page_repeated_cols) : ditto.
      	(print_page_repeated_rows) : ditto.
      	(print_page) : ditto.
      
      	* src/sheet-control-gui.c (scg_set_zoom_factor) : The sizing has moved
      	  into the itembar.
      
      	* src/item-bar.c : s/orientation/is_col_header/
      	(item_bar_fonts_init) : Init the ideal cell size.
      	(item_bar_update) : Begin to support grouping.
      	(item_bar_draw) : ditto.
      	(item_bar_init) : init the new members.
      
      	* src/print-cell.c (print_cell) : re-enable halign FILL.
      	* src/cell-draw.c (cell_draw) : ditto.
      e1a87d5f