1. 29 Nov, 1998 1 commit
    • Miguel de Icaza's avatar
      New routine to mark a sheet as not modified. · 8156f3fa
      Miguel de Icaza authored
      1998-11-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet.c (sheet_mark_clean): New routine to mark a sheet as
      	not modified.
      
      	* src/workbook.c (workbook_mark_clean): New routine to mark a
      	workbook as not modified.
      8156f3fa
  2. 28 Nov, 1998 1 commit
    • Miguel de Icaza's avatar
      OH MY GOD! This has been on my laptop for AGES! and it never went into CVS. What a dork I am · 11be5291
      Miguel de Icaza authored
      So, here it is:
      
      1998-11-13  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet-autofill.c (autofill_cell): Simplify by using
      	cell_set_formula_tree
      
      	* src/expr.c (expr_parse_string): Take a sheet argument
      	(expr_decode_tree): Same
      
      	* sheet.c (cellref_name): Now takes a sheet argument and decodes the
      	cellref depending on the sheet.
      
      	* cell.c (CellRef): Now they include the sheet location.
      11be5291
  3. 24 Nov, 1998 1 commit
    • Miguel de Icaza's avatar
      formula_cell_list *ONLY* exists in the Workbook, not on the Sheet. · ff553ef5
      Miguel de Icaza authored
      1998-11-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet.h: formula_cell_list *ONLY* exists in the Workbook,
      	not on the Sheet.
      
      	* src/sheet.c (sheet_cell_formula_link,	sheet_cell_formula_unlink):
      	Keep the formula on the Workbook, not on the Sheet.  Thanks to
      	Havoc for reporting these bugs.
      
      	* src/cell.c (cell_set_formula): Use cell_set_rendered_text to
      	propery set the error messages.
      	(cell_get_text): If value is NULL, use the rendered version of the
      	text instead of re-rendering it.
      ff553ef5
  4. 13 Nov, 1998 1 commit
    • Miguel de Icaza's avatar
      Use case-insenstive routines when creating the hash table. · 3cbc7cdc
      Miguel de Icaza authored
      1998-11-12  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/parser.y:
      
      	* src/workbook.c (workbook_new): Use case-insenstive routines when
      	creating the hash table.
      	(workbook_sheet_get_free_name): Find an unused name for a sheet.
      	(workbook_sheet_lookup): Looks up a sheet by name in a Workbook.
      	(insert_sheet_cmd): New command to insert a sheet into a workbook.
      
      	* src/utils.c (gnumeric_strcase_hash, gnumeric_strcase_equal):
      	Routines used for strings hash tables that are not case
      	sensitive.
      
      1998-11-12  Morten Wellinder <terra@diku.dk>
      
      	* test-parser.c: Fix to compile with the new API
      
      	* parser.y: Make the code more maintainable.
      3cbc7cdc
  5. 11 Nov, 1998 1 commit
    • Michael Meeks's avatar
      Removed fatal bug, and accelerated code by testing for DV in MULBLANK · e36eb87f
      Michael Meeks authored
      1998-11-11  Michael Meeks    <michael@imaginator.com>
      
      	* plugins/excel/ms-biff.h, plugins/excel/ms-excel.c: Removed fatal
      	bug, and accelerated code by testing for DV in MULBLANK case.
      
      	* plugins/excel/ms-excel.c(ms_excel_set_cell_xf): Out by one indexes
      	causing serious attribute offset grief in fonts.
      
      	* Rememberance_Day:
      	They went with songs to the battle, they were young,
      	Straight of limb, true of eye, steady and aglow.
      	They were staunch to the end against odds uncounted,
      	They fell with their faces to the foe.
      
      	They shall grow not old, as we that are left grow old,
      e36eb87f
  6. 10 Nov, 1998 1 commit
    • Miguel de Icaza's avatar
      Two things that have been on my hard disk for a long time: · dbf9667e
      Miguel de Icaza authored
      
      
      Two things that have been on my hard disk for a long time:
      
      1. Comments-on-cells code is working.  We just need the nice dialog to
      actually type something in.
      
      It needs xml-io.c support though, hopefully Daniel will add this soon.
      
      2. Dropped cell->entered_text.  We now only store the parsed version
      of the cell (either as an ExprTree or as a Value).  This should help
      mmeeks with his Excel-formula importing code, it should be possible
      to do the right thing now instead of constructing a string representation
      of the formula and re-parsing it.
      
      Various fixes here and there as well.
      
      Miguel
      
      1998-11-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet-view.c (sheet_view_comment_get_points): Scale properly
      	the points to be in window cordinates.
      
      	* src/sheet.c (sheet_col_set_width): Move comments on column
      	change.
      
      	* src/cell.c (cell_copy): Duplicated cells get col, row and sheet
      	values set to NULL.
      
      1998-11-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/fn-misc.c: Add ctype.h
      
      	* src/sheet-view.c (sheet_view_comment_get_points): New utility
      	routine used.
      	(sheet_view_comment_relocate): New function used to relocate a
      	comment canvas item in a cell to its new location.
      
      	* src/cell.c (cell_relocate): Move the comments with the cell.
      	(cell_realize, cell_unrealize, cell_comment_realize,
      	cell_comment_unrealize): New functions used to create and destroy
      	view-specific cell components (the comments are canvas objects
      	that need to be created on a per-view basis).
      dbf9667e
  7. 07 Nov, 1998 1 commit
  8. 28 Oct, 1998 1 commit
    • Miguel de Icaza's avatar
      Use extra argument. · 4443c9f4
      Miguel de Icaza authored
      1998-10-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/parser.c (dump_tree): Use extra argument.
      
      	* src/expr.c (function_call_with_values): Use the extra argument
      	to symbol_lookup
      
      	* src/func.c (constants_init): Use the extra argument to symbol_install.
      
      	* src/main.c (main): Invoke global_symbol_init.
      
      	* src/symbol.h: Symbol routines now take an extra argument; the
      	symboltable they work on.  Now the code can have multiple symbol
      	tables (this is required for the cell range name bindings in a
      	per-sheet fashion.
      4443c9f4
  9. 13 Oct, 1998 1 commit
    • Jakub Jelinek's avatar
      New functions. (item_grid_event): If x or y is out of canvas bounds, do · 718822fb
      Jakub Jelinek authored
      1998-10-13  Jakub Jelinek  <jj@ultra.penguin.cz>
      
      	* src/item-grid.c (item_grid_stop_sliding,
      	item_grid_sliding_callback, item_grid_start_sliding):
      	New functions.
      	(item_grid_event): If x or y is out of canvas bounds,
      	do sliding for both cell and formula selection.
      	For button release from formula selection, make cell
      	being edited visible afterwards.
      	(item_grid_button_1): If not extending selection with
      	shift, make cursor cell visible.
      
      	* src/gnumeric-sheet.c (move_cursor,
      	gnumeric_sheet_key_mode_sheet): Make cursor cell visible.
      
      	* src/sheet.c (sheet_select_all): Make home visible.
      	(sheet_make_cell_visible): New function.
      	(sheet_cursor_move, sheet_cursor_set): Don't make cursor
      	visible, caller has to do it himself if desired.
      
      	* src/sheet.h (sheet_make_cell_visible): New prototype.
      
      	* src/workbook.c (workbook_parse_and_jump): Make cursor
      	cell visible.
      718822fb
  10. 12 Oct, 1998 1 commit
    • Jakub Jelinek's avatar
      Add base_col and base_row arguments. Move cursor to that location, so that · 4ded61c3
      Jakub Jelinek authored
      1998-10-07  Jakub Jelinek  <jj@ultra.penguin.cz>
      
      	* src/sheet.c (sheet_cursor_set): Add base_col and
      	base_row arguments. Move cursor to that location, so
      	that it really reflects base of the selection.
      
      	* src/sheet.h (sheet_cursor_set): Ditto.
      
      	* src/clipboard.c (x_selection_received): Callers changed.
      
      	* src/gnumeric-sheet.c (gnumeric_sheet_set_selection): Ditto.
      	(move_cursor): Ditto.
      
      	* src/item-cursor.c (item_cursor_autofill_event): Ditto.
      	(item_cursor_init): Fix a typo.
      4ded61c3
  11. 08 Oct, 1998 1 commit
    • Miguel de Icaza's avatar
      New routine: loads a couple of default fonts to be used in Gnumeric. · 1e3d41ad
      Miguel de Icaza authored
      1998-10-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/style.c (font_init): New routine: loads a couple of default
      	fonts to be used in Gnumeric.
      
      	* src/item-bar.c (bar_draw_cell): Make the SELECTION cells display
      	with a bold font.
      	(item_bar_realize, item_bar_unrealize): reference and unreference
      	the gnumeric_default_bold_font.
      
      1998-10-07  Jakub Jelinek  <jj@ultra.linux.cz>
      
      	* src/item-grid.c (item_grid_button_1): Handle shift+click
      	on cells (removes last selection and selects from last base
      	to current mouse location).
      	(item_grid_event): Don't lock up if mouse is moved during
      	selection behind left or top margin of sheet canvas (later
      	on we should move the current view).
      
      	* src/cell.c (cell_formula_changed): Cast void * to something
      	reasonable.
      
      	* src/item-bar.c (draw_bar_cell): Switch from 2 state bars
      	to 3 state: whole column/row is selected in one of the current
      	selections, some cells are selected in one of the selections
      	or nothing is selected. Get rid of ci->selected, compute it
      	from the selections.
      	(item_bar_draw): Ditto.
      
      	* src/cell.h (selected): Ditto.
      
      	* src/sheet.c (sheet_init_default_styles, sheet_init_dummy_stuff):
      	Ditto.
      	(sheet_selection_row_extend_to, sheet_selection_col_extend_to):
      	Remove.
      	(sheet_all_is_selected): True if any of the selections covers whole
      	sheet.
      	(sheet_col_selection_type, sheet_row_selection_type): New functions.
      	(sheet_selection_set): New function.
      
      	* src/sheet-view.c (sheet_view_row_set_selection,
      	sheet_view_col_set_selection): Remove.
      	(sheet_view_col_selection_changed, sheet_view_row_selection_changed):
      	Handle shift+click and ctrl+click on whole columns/bars as well.
      	(sheet_view_col_size_changed, sheet_view_row_size_changed): Use
      	sheet_*_selection_type instead of ci->selected.
      
      	* src/item-bar.h (ItemBarSelectionType): Enum for the new 3 state
      	column/row titles.
      	(ItemBarClass): selection_changed takes modifier mask as argument.
      
      	* src/sheet-view.h (sheet_view_*_set_selection): Remove prototypes.
      
      	* src/sheet.h (sheet_selection_*_extend_to): Ditto.
      	(sheet_selection_set, sheet_*_selection_type): New prototypes.
      
      1998-10-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      1e3d41ad
  12. 06 Oct, 1998 1 commit
    • Miguel de Icaza's avatar
      Cells from the clipboard do not have a Sheet parameter attached. · 85cff8c7
      Miguel de Icaza authored
      1998-10-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/cell.c (cell_modified): Cells from the clipboard do not have
      	a Sheet parameter attached.
      
      	* src/sheet.c (sheet_cell_add): Check the computed style:  if the
      	computed style includes a format, then turn on the cell flag for
      	format is set to avoid the auto guess of cell content.
      	(sheet_style_compute): Now can return the flags of the style that
      	were not part of the default style.
      
      	* src/file.c (dialog_query_load_file, workbook_save_as): Put the
      	window close to the mouse.
      
      	* src/workbook.c (sheet_check_dirty, workbook_close): Do not
      	cancel without warning the user if the workbook has changed.
      	(workbook_new, workbook_can_close, workbook_window_destroy,
      	quit_cmd, close_cmd): Reorganized the code to suit the new code to
      	prevent inadvertent quits.
      85cff8c7
  13. 05 Oct, 1998 1 commit
    • Miguel de Icaza's avatar
      New function, used to tag a modified cell in a sheet. · 4a1b760f
      Miguel de Icaza authored
      1998-10-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/cell.c (cell_modified): New function, used to tag a modified
      	cell in a sheet.
      
      	* src/fn-math.c (gnumeric_average): Display error on division by
      	zero.  Make the code not depend on the types returned by
      	gnumeric_sum and gnumeric_count.
      	(callback_function_sum): Keep sum as integers as long as
      	possible instead of using floating point all the time.
      4a1b760f
  14. 30 Sep, 1998 2 commits
    • Arturo Espinosa's avatar
    • Miguel de Icaza's avatar
      New routine to paint a little red triangle if the cell hsa notes. · 890ae3fd
      Miguel de Icaza authored
      
      1998-09-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/cell.c (cell_draw_comment): New routine to paint a little
      	red triangle if the cell hsa notes.
      
      	* src/cell.c (cell_destroy): Destroy the comment.
      	(str_trim_spaces): New routine.  Trims the spaces on a string.
      	(cell_draw): Trim the leading and trailing spaces on every string
      	of a multi-line text.
      
      	* src/color.c (color_init): Allocate a red for tagging the
      	spreadhseet notes.
      
      	* src/dialog-cell-format.c (format_list_fill): Apply the
      	traslation when adding the format.
      
      	* doc/tranlating.sgml: New document that describes how to
      	internationalize and localize Gnumeric properly.
      
      	* src/workbook.c (recalc_cmd): Provide a way to force a recomputation.
      	(insert_current_time_cmd): New function.  insert the current time.
      	(insert_current_date_cmd): New function.  insert the current date.
      	(insert_at_cursor): New utility function.
      
      	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Handle control-home
      890ae3fd
  15. 28 Sep, 1998 2 commits
    • Miguel de Icaza's avatar
      Allow the lists to include an asterisk to be able to distinguish between · 0551a214
      Miguel de Icaza authored
      
      
      1998-09-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet-autofill.c (matches_list): Allow the lists to include
      	an asterisk to be able to distinguish between abbreviations and
      	full descriptions.
      
      	* src/clipboard.c (x_selection_to_cell_region): New routine.
      	Creates a CellRegion of type text based on the selection provided
      	by X.
      	(paste_cell_flags): New function, decoupled from
      	do_clipboard_paste_cell_region.   Handles new type in CellCopy.
      
      	* src/sheet.c (sheet_selection_paste): Simplified as most of the
      	work is now
      
      	* src/clipboard.c (x_selection_received): Perform the paste
      	operation, moved most of the logic from sheet.c.  This does both
      	internal paste and paste from the X selection (and everything
      	works the way the user expects it to behave).
      0551a214
    • Miguel de Icaza's avatar
      Check the return value from symbol_lookup. · ae3dda69
      Miguel de Icaza authored
      
      1998-09-27  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/expr.c (function_call_with_values): Check the return value
      	from symbol_lookup.
      
      1998-09-26  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet-object.c (sheet_view_object_realize): Swap coordinates
      	before passing to the canvas item.
      
      	* plugins/python/python.c (init_plugin): Use the system
      	installation directory to load the python scripts.
      
      	* autogen.sh: Hack to make libtool add library dependcy
      	information (it modifies the libtool file after it has been
      	created).
      
      	* src/workbook.c (workbook_set_filename): New routine to set the
      	filename being edited of the workbook.
      
      	* src/sheet-object.c (create_object): Swap arguments to the
      	ellipse object to guarrantee we pass valid information.
      
      	* src/render-ascii.c (cell_region_render_ascii): Ok, remove the
      	leaks now.
      ae3dda69
  16. 26 Sep, 1998 2 commits
    • Arturo Espinosa's avatar
      New workbook routine to set the title Hack in autogen.sh to sed the · eee0eb83
      Arturo Espinosa authored
      
      
      New workbook routine to set the title
      Hack in autogen.sh to sed the libtool script and allow library dependecies
      Python plugin now loads its startup file from a system directory.
      eee0eb83
    • Miguel de Icaza's avatar
      new routine that renders a cell selection into a an ascii string. IT HAS · 33e12497
      Miguel de Icaza authored
      1998-09-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/render-ascii.c (cell_region_render_ascii): new routine that
      	renders a cell selection into a an ascii string.  IT HAS PILES OF
      	LEAKS.  I have to go to the movies, will fix later tonight.
      
      	* src/clipboard.c (x_clipboard_bind_workbook): New function used
      	to connect the selection signals for a workbook.
      	(x_selection_handler): New function: X selection handler.
      	(clipboard_export_cell_region): New function: Export our clipboard
      	to the X selection.
      	(clipboard_copy_cell_range): call clipboard_export_cell_region
      
      	* src/plugin-manager.c (plugin_manager_new), plugin.c: Add
      	internationalization support.
      33e12497
  17. 25 Sep, 1998 1 commit
    • Miguel de Icaza's avatar
      New version that makes sure the column information has been allocated. · d3276a42
      Miguel de Icaza authored
      1998-09-25  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet.c (sheet_selection_row_extend_to,
      	sheet_selection_col_extend_to): New version that makes sure the
      	column information has been allocated.
      
      	* src/workbook.c (workbook_parse_and_jump): Maximum ranges were a
      	little bit off.
      
      	* src/parser.y (return_cellref): Fixed the same bug we had in
      	parse_cell_name:  The parsing of the column name to a column index
      	was wrong here too.
      
      	* src/sheet.c (sheet_row_info_set_height,
      	sheet_col_info_set_width): New functions based on the older
      	non-ColRowInfo versions.
      
      	* src/sheet-view.c (sheet_view_row_size_changed,
      	sheet_view_col_size_changed): Apply changes globaly if the whole
      	sheet is selected.
      d3276a42
  18. 24 Sep, 1998 2 commits
    • Arturo Espinosa's avatar
      Warning fix · 80006a01
      Arturo Espinosa authored
      80006a01
    • Miguel de Icaza's avatar
      New: · 169d1191
      Miguel de Icaza authored
      
      
      New:
      
      	- Bold button works properly (ie, it detects what sort of
      	  stuff you have and presses/unpresses accordingly).
      
      	- GNumeric now has operation modes: sheet and object.
      	  Using delete/backspace/edit-cut will let you kill
      	  objects.
      
      	- Lots of the bug fixes reported by Adrian/Federico.
      
      Here is the detailed changelog:
      
      1998-09-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/xml-io.c: Destroy the extra style.
      
      	* src/main.c (main): No need to init colors as they are auto-inited.
      
      	* src/style.c (font_compute_hints): At font creation time store a
      	couple of the font attributes for quick retrieval.
      
      	* src/sheet-view.c (sheet_view_construct): Do not allow this
      	button to have the focus either.
      
      	* src/item-bar.c (item_bar_draw): If the whole sheet is selected,
      	draw all of the columns in pressed presenstation
      
      	* src/sheet.c (sheet_is_all_selected): Return wheter all the sheet
      	is selected.
      
      	* src/utils.c (cell_name): Fixed cell name computation.
      	(parse_cell_name): Fixed parsing of the cell name.
      169d1191
  19. 23 Sep, 1998 2 commits
    • Miguel de Icaza's avatar
      At font creation time store a couple of the font attributes for quick · f7e3b6a2
      Miguel de Icaza authored
      1998-09-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/style.c (font_compute_hints): At font creation time store a
      	couple of the font attributes for quick retrieval.
      
      	* src/sheet-view.c (sheet_view_construct): Do not allow this
      	button to have the focus either.
      
      	* src/item-bar.c (item_bar_draw): If the whole sheet is selected,
      	draw all of the columns in pressed presenstation
      
      	* src/sheet.c (sheet_is_all_selected): Return wheter all the sheet
      	is selected.
      
      	* src/utils.c (cell_name): Fixed cell name computation.
      f7e3b6a2
    • Miguel de Icaza's avatar
      I got too agressive with the test so no Strings + Numbers were being · d4cf4336
      Miguel de Icaza authored
      1998-09-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet-autofill.c (string_has_number): I got too agressive
      	with the test so no Strings + Numbers were being autofilled.
      
      	* src/workbook.c (workbook_setup_edit_area): Remove the CAN_FOCUS
      	flags form the accept and cancel buttons.  Bind the buttons.
      	(buttons): Neither Zoom-in and Zoom-out can take the focus.
      	(change_selection_font): New function to change the fonts of a
      	cell range.
      
      	* src/sheet.c (sheet_accept_pending_input): Renamed from
      	sheet_accept_pending_output.
      
      	* samples/: Added a new sample file: hypothetical-sales.
      d4cf4336
  20. 09 Sep, 1998 1 commit
    • Arturo Espinosa's avatar
      Ok, finally objects are fully editable. · 5837f657
      Arturo Espinosa authored
      
      
      Ok, finally objects are fully editable.
      
      We need support for saving the graphical objects.  It should be
      pretty simple, as things are kept nicely on a list of SheetObjects
      which can be dumped and restored from disk easily.
      
      Miguel.
      5837f657
  21. 08 Sep, 1998 1 commit
  22. 07 Sep, 1998 1 commit
    • Miguel de Icaza's avatar
      Color style is now a single color · c15908cc
      Miguel de Icaza authored
      1998-09-07  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/style.h: Color style is now a single color
      
      1998-09-06  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet-object.c: New file.  The support for adding graphical
      	objects to the spreadhseet is here.  The main entry point is
      	sheet_set_mode_type which hooks to the signal handlers for object
      	creation.
      
      	Various routines for per-view creation, destruction are provided.
      c15908cc
  23. 05 Sep, 1998 1 commit
    • Miguel de Icaza's avatar
      Add unary '+' · d31d1eaf
      Miguel de Icaza authored
      1998-09-05  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/parser.y: Add unary '+'
      
      	* src/gnumeric-sheet.c: Add keybinding for Control-Enter which
      	fills the selection with the current text.
      
      	* src/sheet.c (sheet_set_text): New function: sets the contents of
      	an arbitrary cell to the text as if it were typed by the user.
      	(sheet_fill_selection_with): Fill the selection with a string.
      d31d1eaf
  24. 02 Sep, 1998 1 commit
    • Miguel de Icaza's avatar
      New file, new routines to deal with file save and file load dialog boxes. · 0ef3dbc4
      Miguel de Icaza authored
      1998-09-02  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/file.c (workbook_save_as, workbook_save,
      	dialog_query_load_file): New file, new routines to deal with file
      	save and file load dialog boxes.
      
      	* src/workbook.c: Improved our toolbar with new actions.
      
      	* src/xml-io.c: Fixed the order in which parameters were passed to
      	sheet_cell_get/sheet_cell_new
      0ef3dbc4
  25. 29 Aug, 1998 1 commit
  26. 28 Aug, 1998 1 commit
    • Arturo Espinosa's avatar
      Today: · ed3cc889
      Arturo Espinosa authored
      
      
      Today:
      
         Gnumeric had a big design problem:  It did not support
         multiple vies of the same sheet, this has been now fixes.
      
         Huge changes to adapt to the new SheetView object that is
         a per-view object.
      
         Some things might be a little broken due to these changes.
      
      miguel.
      ed3cc889
  27. 27 Aug, 1998 1 commit
    • Arturo Espinosa's avatar
      Today: · 89dcab7c
      Arturo Espinosa authored
      
      
      Today:
      
      	- Finally implemented the selection correctly using the
      	  cool techniques Raster and Owen described to me on my
      	  visit to cool RHAD-land.
      
      	  This basically means Gnumeric does not look sharewareish
      	  when you select a range of cells.
      
      	- Zoom dialog box (copy from Excel)
      
      	- Various other sheet-editing facilities are now in place.
      
      	- Scrol-bar fixes and feature additions.
      
      Next:
      
      	I really need to do the file load/save code.
      	I really need some sane font code.
      
      15,011
      89dcab7c
  28. 26 Aug, 1998 1 commit
    • Arturo Espinosa's avatar
      Today: · 061a1e74
      Arturo Espinosa authored
      
      
      Today:
      
      	- Column delete and Row delete work.  Bindings all over the
      	  place are working (context menus, menus, etc).
      
      	- Made scrollbars usable and include a tooltip-like thing
      	  like Excel does.
      
      	  They still are kind of inacurrate, and I just figured
      	  out a terrible design mistake that will be fixed tomorrow
      	  (it is kind of big).
      
      	- Various bug fixes to little things I had overlooked in
      	  cell insert/shift routines.
      
      Miguel.
      061a1e74
  29. 24 Aug, 1998 1 commit
    • Arturo Espinosa's avatar
      Lots of changes during the weekend: · ba7fbc1f
      Arturo Espinosa authored
      
      
      Lots of changes during the weekend:
      
      	- New style management code:  All styles are now managed by
      	  regions on a sheet (the default region, is attached to the
      	  complete sheet).
      
      	- Styles can now be partial: Only some parts of the style
      	  might be valid (this is very important).
      
      	- Insert column/Insert row/Shift rows has been fixed and
      	  it now computes properly the dependencies on any
      	  data change.
      
      	- Linking/unlinking formulas now takes care also of
      	  adding/removing the dependencies of the cell.
      
      Miguel.
      ba7fbc1f
  30. 22 Aug, 1998 1 commit
    • Miguel de Icaza's avatar
      Today: · ac57f8df
      Miguel de Icaza authored
      
      
      Today:
      
      	- Row insertion works.
      
      	- Dialog box for adding various things (equivalent to
      	  excel's Insert/Cells dialog box, any similarities
      	  with Excel are accidental).
      
      	- Plus the usual exciting features you would expect.
      
      Miguel
      
      1998-08-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/dialog-insert-cells.c: New file.  Handle the insert cells
      	dialog box.  This uses GtkCauldron for the first time.  That
      	routine is soooo cool!
      
      	* src/sheet.c (sheet_cell_remove): Remove the memory used by the
      	key in the hashtable as well.
      	(sheet_insert_col): new routine used to insert columns in the
      	spreadsheet, it is pretty elaborate.
      	(sheet_col_destroy, sheet_row_destroy): New routine used by the
      	column-overflow logic in the insertion routines.
      	(sheet_cell_add): Only attach a style to a cell if it does not
      	have any yet.
      	(sheet_move_row): New routine: shifts a row a number of columns.
      	(sheet_verify_selection_simple): New routine for warnging about
      	the multiple-selections case.  In the future it should provide a
      	help context.
      	(sheet_insert_row): Implement this new routine.
      
      	* src/clipboard.c (paste_cell): Simplify.
      
      	* src/cell.c (cell_make_value, cell_formula_relocate): New routines
      	based on the code that was done for the clipboard.  Now they are
      	used in other places as well.  cell_make_value actually fixes a
      	potential bug that caused formulas to reappear magically on
      	paste-values commands (never hit the bug, but it was there, I
      	swear to god).
      ac57f8df
  31. 21 Aug, 1998 2 commits
    • Arturo Espinosa's avatar
      Last night hacking got us: · 04ea538e
      Arturo Espinosa authored
      
      
      Last night hacking got us:
      
      	- Column insertion.
      	- COlumn shifting (insert and delete).
      
      Next step: row insertion.
      
      Miguel.
      04ea538e
    • Arturo Espinosa's avatar
      Format fixes · 4ee2ee43
      Arturo Espinosa authored
      
      
      Format fixes
      
      Paste works just like Excel now.  Dragging a selection
      moves the cursor and the selection properly.
      
      Move the paste-special dialog box to its own file.
      
      Other misc fixes.
      
      Miguel.
      4ee2ee43
  32. 19 Aug, 1998 2 commits
    • Miguel de Icaza's avatar
      Basically: · af81b693
      Miguel de Icaza authored
      
      
      Basically:
      
      	- auto-alignment on cells without style works.
      
      	- Clean ups (use the new cell_ routines).
      
      	- Couple of bug fixes.
      
      	- Figured that aligment code works better if you
      	  actually call the routine on the cell.
      
      Miguel
      
      1998-08-19  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/sheet.c (sheet_cursor_set): New function.  Use this instead
      	of the view-specific routine (gnumeric_cursor_set).
      
      	* src/gnumeric-sheet.c (gnumeric_sheet_can_move_cursor): ':' is a
      	valid separator for activating the cursor-cell selection mode.
      
      	* src/cell.c (cell_auto_align): New function.  This tries to
      	auto-align the cell contents depending on the value type.
      
      	* src/dialog-cell-format.c (cell_properties_apply): Create a
      	single style that is attached to a region and let each property
      	page fill the structure in.
      	(apply_align_format): Implement.  No wonder it was not working
      	last night.
      	(apply_number_formats): Fill the passed Style structure only.
      	Remove obsolete code.
      
      	* src/sheet.c (sheet_cell_new): New cells are born with auto-style
      	flag turned on.
      
      	* src/clipboard.c (paste_cell): Render the cell after computation
      	is finished.  Clean up the usage of the cell manipulation;  make
      	auto-style work on pasted cells.
      
      	* src/str.c (string_ref): Return the value referenced.
      af81b693
    • Arturo Espinosa's avatar
      Drag and Drop editing actions work now: · c3468eb6
      Arturo Espinosa authored
      
      
      Drag and Drop editing actions work now:
      
      	- Copy cells by contorl-dragging the border of a selection
      	- Move cells by dragging border of a selection
      	- Do other operations by right-button-dragging the selection border
      
      Miguel
      c3468eb6
  33. 18 Aug, 1998 1 commit
    • Miguel de Icaza's avatar
      Make the selected column and row be always fully visible (ie, use the · 3c5f135d
      Miguel de Icaza authored
      1998-08-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>
      
      	* src/gnumeric-sheet.c (gnumeric_sheet_compute_visible_ranges):
      	Make the selected column and row be always fully visible (ie, use
      	the ->last_full_[col|row] instead of last_visible_[col|row].
      
      	* src/cell.c (cell_set_format): Call cell_queue_redraw after
      	changing the cell contents.
      3c5f135d