- 12 Aug, 1998 3 commits
-
-
Arturo Espinosa authored
Ok, fixed the problems with the bounds in the ItemCursor, but i still cant get events after I do a gnome_canvas_grab for the case of the dragging selection.
-
Arturo Espinosa authored
-
Arturo Espinosa authored
Work on the clipboard
-
- 11 Aug, 1998 1 commit
-
-
Arturo Espinosa authored
Ok, finally got recalculation working as it is supposed to work. This piece of code is so clean that it was actually a clean fix :-)
-
- 10 Aug, 1998 1 commit
-
-
Arturo Espinosa authored
Autocalc works (but I managed to break the recursive detection stuff, will fix that tomorrow). Quick-computations on the selected area (like Excel) works with different user-selectable functions. Fixed the horrible crash due to not removing my strings from the hash table ;-) Miguel
-
- 08 Aug, 1998 3 commits
-
-
Arturo Espinosa authored
It autocalcs! My technique is incredibly cool! The engine should support most excel features for recursive computations (we just need the dialog boxes now). It still has a wierdo crash from a mismatched string ref/unref but that is going to be trivial to fix. Next step: Functions in Perl.
-
Arturo Espinosa authored
-
Arturo Espinosa authored
Today it probably does not compile, but I have to leave now. This is basically the framework for getting computations working. My current approach is to register areas of interest for a cell. This is not perfect, but good enough: The idea is to walk the expression tree and look for cell references (cell references or ranges) and register those areas of "interest" for a cell. When a new text is entered into a cell, the "regions" of interest list is checked and if a match is found, then the cells on that region of interest are queued for recomputation. Of course, I do not know yet how to handle the recursive references. One option is to keep a counter (that starts at zero) during recomputation, ie something like: eval_cell (Cell *cell) { cell->use_count++; if (cell->use_count > threshold) return "Cycle too depth"; ... on value lookup: eval_cell (cell); ... cell->use_count--; }
-
- 07 Aug, 1998 7 commits
-
-
Arturo Espinosa authored
More GNOME vaporware code. I am actually commiting empty files, just to increase our line count. Miguel.
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
Arturo Espinosa authored
Lots of work as usual :-) Cell lookup is still broken. More functions! COUNT, AVERAGE, AND, OR. Changed the function framework: it is now easier to write functions that take multiple arguments. Added some documentation on writing functions. Miguel.
-
- 06 Aug, 1998 1 commit
-
-
Arturo Espinosa authored
Lots of things today: - New functions implemented: SELECTION(), SUM(), IF() - Autocompute of an expression that applies to the selection. - Added comparission to the expression grammar. - Added array values. Bug fixes as usual and lots other thingies I forget. Miguel
-
- 05 Aug, 1998 5 commits
-
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
Arturo Espinosa authored
More changes GUI changes
-
Arturo Espinosa authored
We got functions today. Miguel.
-
- 04 Aug, 1998 2 commits
-
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
- 31 Jul, 1998 1 commit
-
-
Federico Mena Quintero authored
1998-07-30 Federico Mena Quintero <federico@nuclecu.unam.mx> * src/sheet.c (canvas_bar_realized): * src/gnumeric-sheet.c (gnumeric_sheet_realize): Neat X hack: set the window backing pixmap to NULL, so that the window does not get cleared when it receives an exposure event. It will just leave whatever bits were on the window when the expose happened. This allows us to avoid flicker. *** MIGUEL, LOOK AT THIS *** * src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible): Fixed width/height confusion (cut&paste bug). * src/sheet.c (new_canvas_bar): Set outrageously big scrolling limits. This has to be fixed to use the real sheet's dimensions. (sheet_new): Use correct table expansion parameters.
-
- 30 Jul, 1998 5 commits
-
-
Federico Mena Quintero authored
1998-07-30 Federico Mena Quintero <federico@nuclecu.unam.mx> * src/sheet.c (sheet_set_zoom_factor): Use gnome_canvas_scroll_to(). * src/gnumeric-sheet.c (gnumeric_sheet_set_top_row): Scroll using gnome_canvas_scroll_to(). (gnumeric_sheet_set_top_col): Likewise. (gnumeric_sheet_make_cell_visible): Get the offsets using gnome_canvas_get_scroll_offsets(). (gnumeric_sheet_make_cell_visible): Use gnome_canvas_scroll_to().
-
Federico Mena Quintero authored
1998-07-30 Federico Mena Quintero <federico@nuclecu.unam.mx> * src/gnumeric-sheet.c (gnumeric_sheet_color_alloc): Query the colormap with gtkdget_get_colormap(), because the canvas structure no longer has a colormap field in it. (gnumeric_sheet_set_top_row): Use the canvas layout adjustment to scroll. (gnumeric_sheet_set_top_col): Use the canvas layout adjustment to scroll. (gnumeric_sheet_make_cell_visible): Get the values from the canvas adjustments. * src/sheet.c (new_canvas_bar): Call gnome_canvas_new() correctly. (scroll_to): New helper function to scroll a canvas. (sheet_set_zoom_factor): Use scroll_to(). * src/gnumeric-sheet.c (gnumeric_sheet_create): Do not call gnome_canvas_construct() at is does not exist anymore. (gnumeric_sheet_new): Use outrageously big values for the canvas scrolling region, for now. This needs to be fixed. (gnumeric_sheet_make_cell_visible): Use the canvas layout adjustment to scroll.
-
Arturo Espinosa authored
-
0 authored
1998-07-30 <miguel@nuclecu.unam.mx> * src/parser.y (alloc_clean): Free the record that tracks the allocation records. (alloc_clean): Handle Strings. (alloc_list_free): New function: cleans up the allocation list. * src/gnumeric-sheet.c (gnumeric_sheet_load_cell_val): Fix to use the new Strings. * src/cell.h: Use the new Strings instead of the Symbols. That was just a stupid idea. * src/str.c (string_ref): New file: Implements string sharing. * src/symbol.c (symbol_install): Use our copy of the allocated key when installing the symbol. 1998-07-29 <miguel@nuclecu.unam.mx> * src/symbol.c (symbol_unref_ptr): New function that does symbol unreferencing and if the reference count reaches zero, it also sets the value pointed to NULL. * src/sheet.c (cell_set_text): Release evaluation tree after entering new contents in a cell. * src/sheet.h (Cell): We now keep all of the character information as refcounted Symbols. * src/expr.c (eval_node_release): Renamed and made static. New allocation strategy: EvalTree's top node are now refcounted to simplify cell duplication. (eval_expr): Now it takes column and row arguments for evaluating the expression in that context. (expr_parse_string): Same. * src/parser.y: Renamed EvalNode to EvalTree. (return_cellref): CellRefs now contain offsets relative to the current column/row if the references are not absolute. * src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible): Use new helper routines for doing the scrolling. Scroll vertically. (gnumeric_sheet_set_top_row, gnumeric_sheet_set_top_col): New routines for keeping the contents of the canvas and the bars in sync. (gnumeric_sheet_new): Take the ItemBars for the columns and rows as a parameter now. * src/sheet.c (sheet_select_all): New routine: select the complete spreadsheet. * src/item-bar.c (item_bar_class_init): Signal now takes an extra argument which indicates the beginning of a column selection. * src/sheet.c (sheet_selection_col_extend_to, sheet_selection_row_extend_to): New methods for implementing the extending column and row selection. (sheet_row_selection_changed, sheet_col_selection_changed): Now they use the new parameter to start the selection.
-
Vincent Renardias authored
* Sync some i18n bits...
-
- 29 Jul, 1998 1 commit
-
-
Arturo Espinosa authored
syncetysync
-
- 28 Jul, 1998 2 commits
-
-
Arturo Espinosa authored
-
Arturo Espinosa authored
-
- 27 Jul, 1998 2 commits
-
-
Arturo Espinosa authored
-
Miguel de Icaza authored
1998-07-27 Miguel de Icaza <miguel@nuclecu.unam.mx> * src/main.c (main): Rename currentWorkbook to current_workbook, so that it follows the style of the rest of my code ;-) * src/item-cursor.c (item_cursor_init): Add a timeout handler for drawing the anted animation. (item_cursor_set_bounds): Setup the Canvas Item bounding box when the bounds of the cursor change. * src/gnumeric-sheet.c (start_cell_selection): Create the selection cursor at the same position the regular cursor is. (gnumeric_sheet_init): Share colors between items and the canvas.
-
- 26 Jul, 1998 1 commit
-
-
Daniel Veillard authored
-
- 25 Jul, 1998 4 commits
-
-
Arturo Espinosa authored
Weee! Regular strings are now treated as values (so they can be used in cell expressions). This means you can actually start typing expressions and they will actually make sense (note that no recalc is yet supported). The code to do interactive selections is there, but for some reason the cursor is not paying much attention to me. This feature lets you select a cell for an expression if you type in a formula in the spreadsheet (just type '=' and use the arrow keys to see my buggy code).
-
Tom Tromey authored
-
Tom Tromey authored
Sat Jul 25 14:10:23 1998 Tom Tromey <tromey@cygnus.com> * src/Makefile.am (test_parser_LDADD): Added INTLLIBS. (test_format_LDADD): Likewise. (check_PROGRAMS): Renamed from noinst_PROGRAMS. * src/format.c (do_roundup): Renamed from roundup (my Linux install has a 2-argument `roundup' macro in sys/types.h). Now static.
-
Nuno Ferreira authored
Don't know why it thinks stamp-h.in is changed. Oh well...
-
- 24 Jul, 1998 1 commit
-
-
Arturo Espinosa authored
More work.
-